evok stopped working



  • hi all,

    i installed UniPian-Neuron-OS-2018-01-16.img.zip for my L203.
    the web if basically worked back then.
    i added some software (java, openhab ...) and now i try to develop a openhab binding for evok - only to discover that it stopped working.

    i checked the posts about my error ( ... File "/opt/evok/neuron.py", line 217, in scan_boards ... AttributeError: 'NoneType' object has no attribute 'do_scan' ) but for my untrained eye it seems that my configuration is correct.

    what did i miss ?

    tia,tja...

    config.txt:

    gpu_mem=16
    dtparam=i2c_arm=on,watchdog=on
    dtoverlay=i2c-rtc,mcp7941x
    dtoverlay=neuron-spi-new
    dtoverlay=neuronee
    dtoverlay=unipiee
    core_freq=250
    dtoverlay=pi3-disable-bt
    

    i2cdetect 1:

         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
    10: -- -- -- -- -- -- -- -- 18 -- -- -- -- -- -- -- 
    20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
    50: -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- -- 
    60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- UU 
    70: -- -- -- -- -- -- -- --           
    

    systemctl status neurontcp:

    ● neurontcp.service - Unipi Neuron Modbus/Tcp Server
       Loaded: loaded (/opt/neuron-bin/neurontcp.service; enabled; vendor preset: enabled)
       Active: active (running) since Fri 2018-02-02 17:31:58 CET; 35min ago
     Main PID: 364 (neuron_tcp_serv)
       CGroup: /system.slice/neurontcp.service
               └─364 /opt/neuron-bin/neuron_tcp_server -p 502 --check-firmware
    
    Feb 02 17:31:58 drhouse systemd[1]: Started Unipi Neuron Modbus/Tcp Server.
    

    evok startup:

    [I 180202 18:08:19 config:66] eprom: UniPi Neuron L203 version: 1.0 serial: 0x1f
    [I 180202 18:08:19 evok:1564] Starting using config file /etc/evok.conf
    [I 180202 18:08:19 config:78] YAML Definition loaded: L50x.yaml, type: 3, definition count 0
    [I 180202 18:08:19 config:78] YAML Definition loaded: M40x.yaml, type: 3, definition count 1
    [I 180202 18:08:20 config:78] YAML Definition loaded: xS50.yaml, type: 3, definition count 2
    [I 180202 18:08:20 config:78] YAML Definition loaded: xS10.yaml, type: 3, definition count 3
    [I 180202 18:08:20 config:78] YAML Definition loaded: xS30.yaml, type: 3, definition count 4
    [I 180202 18:08:20 config:78] YAML Definition loaded: CUSTOM MODBUS DEVICE.yaml, type: 3, definition count 5
    [I 180202 18:08:20 config:78] YAML Definition loaded: M20x.yaml, type: 3, definition count 6
    [I 180202 18:08:20 config:78] YAML Definition loaded: M10x.yaml, type: 3, definition count 7
    [I 180202 18:08:20 config:78] YAML Definition loaded: xS40.yaml, type: 3, definition count 8
    [I 180202 18:08:20 config:78] YAML Definition loaded: S10x.yaml, type: 3, definition count 9
    [I 180202 18:08:21 config:78] YAML Definition loaded: L20x.yaml, type: 3, definition count 10
    [I 180202 18:08:21 config:78] YAML Definition loaded: M50x.yaml, type: 3, definition count 11
    [I 180202 18:08:21 config:78] YAML Definition loaded: L51x.yaml, type: 3, definition count 12
    [I 180202 18:08:21 config:78] YAML Definition loaded: M30x.yaml, type: 3, definition count 13
    [I 180202 18:08:22 config:78] YAML Definition loaded: L40x.yaml, type: 3, definition count 14
    [I 180202 18:08:22 config:78] YAML Definition loaded: L30x.yaml, type: 3, definition count 15
    [I 180202 18:08:22 config:78] YAML Definition loaded: evok-alias.yaml, type: 2, definition count 0
    [I 180202 18:08:22 evok:1627] HTTP server listening on port: 8080
    [I 180202 18:08:22 modbusclient_tornado:125] SPI client started
    [I 180202 18:08:22 neuron:168] Reading SPI boards
    [I 180202 18:08:22 neuron:183] No board on SPI 1
    [I 180202 18:08:22 neuron:183] No board on SPI 2
    [I 180202 18:08:22 neuron:183] No board on SPI 3
    [D 180202 18:08:22 owclient:376] Entering 1wire loop
    [E 180202 18:08:22 neuron:219] 'NoneType' object has no attribute 'do_scan'
        Traceback (most recent call last):
          File "/opt/evok/neuron.py", line 217, in scan_boards
            yield self.modbus_cache_map.do_scan()
        AttributeError: 'NoneType' object has no attribute 'do_scan'
    [E 180202 18:08:23 neuron:219] 'NoneType' object has no attribute 'do_scan'
        Traceback (most recent call last):
          File "/opt/evok/neuron.py", line 217, in scan_boards
            yield self.modbus_cache_map.do_scan()
        AttributeError: 'NoneType' object has no attribute 'do_scan'
    ^C[I 180202 18:08:23 evok:1702] Shutting down
    

  • administrators

    Have you installed pigpio by any chance? Some of the GPIOs are used for SPI interrupts, which could cause the error you are seeing. Basically the error indicates that the internal SPI bus cannot see the boards it expects on it.

    If you have the option then it might be worth it to try a second backup card with a clean image, just to establish that the problem isn't in the hardware itself. (as this exact error can also be caused by overloading/shorting out the STM coprocessors)



  • hi thomas,

    thx for answering.

    i think that maybe a subsequent softwareupdate was the cause.

    but i just started over with a clean noobs/raspbian, updated all packages and installed evok and then openhab and in the moment all works fine and at the same time.

    i hope the problem will not arise again and i can happily start playing with openhab and evok.
    next time i will have a spare sd lying around so i can backup the erroneous to analyse the causes.

    wbr,tja...

    (edit)
    PS: nah i didnt install pigpio. must have been some other cause.