Multiple xS50 on a L513 (RS485)


  • administrators

    Ok, the issue is definitely with the extension firmware 5.6. The current version is 5.18 and for some reason, both of you received extension units with the old firmware... We do apologize for this, if it is even possible.

    The @salorob was able to flash the firmware by his own via our Windows application tool. Unfortunately, the tool is also long time waiting for the update, so the firmware version in this tool is only 5.9, instead of 5.18.

    So the official hacker's tutorial is:

    1. SSH into your controller, the user "pi", the password (if not changed) is "raspberry". If your image is Raspbian, you need to install additional packages:
    pi@raspberrypi:~ $ sudo bash
    root@raspberrypi:/home/pi# echo "deb https://files.unipi.technology/debian stretch main" > /etc/apt/sources.list.d/unipi.list
    root@raspberrypi:/home/pi# wget -O - https://files.unipi.technology/debian/unipi_pub.gpg | apt-key add
    root@raspberrypi:/home/pi# apt update
    root@raspberrypi:/home/pi# apt install -y neuron-firmware neuron-modbus-tools
    
    1. Connect the extension to the controller over RS485. If you have multiple extensions, connect only one at a time. Right now, all of them thinks they have address 15, so you need to avoid collisions.

    2. Confirm, you have a connection to extension

    root@L503-sn101:/home/pi# /opt/neuron-bin/fwserial -p /dev/extcomm/0/0 
    Boardset:     5 E-14Ro_P-11DiR485              (v1.0)
    Baseboard:    2 E-14Ro                         (v1.0)
    Firmware: v5.6
    Modbus timeout set
    
    1. Flash the firmware
    root@L503-sn101:/opt/fw# /opt/neuron-bin/fwserial -p /dev/extcomm/0/0 -PR
    Boardset:     5 E-14Ro_P-11DiR485              (v1.0)
    Baseboard:    2 E-14Ro                         (v1.0)
    Firmware: v5.6
    Modbus timeout set
    Programming page 00 ...Finished programming chunk 0, ret: 64 err: 0
    Finished programming chunk 1, ret: 64 err: 0
    Finished programming chunk 2, ret: 64 err: 0
    Finished programming chunk 3, ret: 64 err: 0
    Finished programming chunk 4, ret: 64 err: 0
    Finished programming chunk 5, ret: 64 err: 0
    Finished programming chunk 6, ret: 64 err: 0
    Finished programming chunk 7, ret: 64 err: 0
    Page written OK.
    
    Programming page 01 ...Finished programming chunk 0, ret: 64 err: 0
    ..........
    
    1. Verify the firmware. Since the flashed firmware now accepts address set by DIP switches, you need to specify the address in the parameter -u. My extension has address 3
    root@L503-sn101:/opt/fw# /opt/neuron-bin/fwserial -p /dev/extcomm/0/0 -u 3
    Boardset:     5 E-14Ro_P-11DiR485              (v1.0)
    Baseboard:    2 E-14Ro                         (v1.0)
    Firmware: v5.18
    Modbus timeout set
    
    1. Repeat the process for all of the extensions

    Let me know, how it worked. If you don't want to flash the firmware yourself, let me know and we can arrange some remote session with you.

    Thanks,
    Martin



  • @martin-kudláček Thanks a lot, it works now :) I can set another address than default now!
    Firmware is now 5.9 (it was 5.6 as you said), is there any need to upgrade to 5.18?


  • administrators

    @bsc101 So I guess you used the Windows firmware update tool as @salorob. There are definitely a bugfixes from version 5.9 with some new functionality as well. You have the tutorial above, so you can update it, if you find out you need it.



  • This post is deleted!


  • @martin-kudláček My fault, did not do step 1 in your decsription above since fwserial and firmware files were already present. It's 5.18 now, thank you!



  • Ok, took a while before I had time to do this, but now the downloads don't seem to work anymore, check below (btw, I'm using an own build image, not the Neuron image):

    root@L203-sn81:/home/pi# wget -O - https://files.unipi.technology/debian/unipi_pub.gpg | apt-key add\
    > ^C
    root@L203-sn81:/home/pi# wget -O - https://files.unipi.technology/debian/unipi_pub.gpg | apt-key add
    --2019-09-12 08:05:48--  https://files.unipi.technology/debian/unipi_pub.gpg
    Resolving files.unipi.technology (files.unipi.technology)... 86.49.170.141
    Connecting to files.unipi.technology (files.unipi.technology)|86.49.170.141|:443... connected.
    HTTP request sent, awaiting response... 302 Found
    Location: https://kb.unipi.technology/debian/unipi_pub.gpg [following]
    --2019-09-12 08:05:49--  https://kb.unipi.technology/debian/unipi_pub.gpg
    Resolving kb.unipi.technology (kb.unipi.technology)... 86.49.170.141
    Connecting to kb.unipi.technology (kb.unipi.technology)|86.49.170.141|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: unspecified [text/html]
    Saving to: 'STDOUT'
    
    -                                                     [ <=>                                                                                                       ]  13.43K  --.-KB/s    in 0.03s   
    
    2019-09-12 08:05:49 (385 KB/s) - written to stdout [13757]
    
    gpg: no valid OpenPGP data found.
    root@L203-sn81:/home/pi# apt update
    Get:1 http://archive.raspberrypi.org/debian stretch InRelease [25.4 kB]
    Get:2 http://raspbian.raspberrypi.org/raspbian stretch InRelease [15.0 kB]
    Get:3 http://raspbian.raspberrypi.org/raspbian stretch/contrib Sources [75.2 kB]      
    Get:5 http://raspbian.raspberrypi.org/raspbian stretch/non-free Sources [125 kB]                            
    Get:6 http://archive.raspberrypi.org/debian stretch/main armhf Packages [221 kB]                                                         
    Get:7 http://raspbian.raspberrypi.org/raspbian stretch/main Sources [9721 kB]                                                            
    Get:8 http://archive.raspberrypi.org/debian stretch/ui armhf Packages [45.0 kB]
    Err:4 https://kb.unipi.technology/debian stretch InRelease  
      Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
    Get:9 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages [11.7 MB]
    Get:10 http://raspbian.raspberrypi.org/raspbian stretch/contrib armhf Packages [56.9 kB]                                                                                                            
    Get:11 http://raspbian.raspberrypi.org/raspbian stretch/non-free armhf Packages [95.5 kB]                                                                                                           
    Fetched 22.1 MB in 18s (1192 kB/s)                                                                                                                                                                  
    Reading package lists... Done
    E: Failed to fetch https://files.unipi.technology/debian/dists/stretch/InRelease  Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
    E: Some index files failed to download. They have been ignored, or old ones used instead.
    root@L203-sn81:/home/pi# apt install -y neuron-firmware neuron-modbus-tools
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Note, selecting 'unipi-modbus-tools' instead of 'neuron-modbus-tools'
    E: Unable to locate package neuron-firmware
    root@L203-sn81:/home/pi# /opt/neuron-bin/fwserial -p /dev/extcomm/0/0 
    bash: /opt/neuron-bin/fwserial: No such file or directory
    


  • So I tried with an official Unipian image, but still same problem. Some security issue (gpg: no valid OpenPGP data found). Please help @tomas_hora @Martin-Kudláček


  • administrators

    The files has been moved into a new repostirory: https://repo.unipi.technology/debian/ The FW tool for extension can be found here https://kb.unipi.technology/files:software:tools:00-start#extension_firmware_update_tool



  • Thanks! I was able to flash the device using the FW update tool and now it says it v5.36 on it.

    Too bad I'm not able to try it out now, as on my test Unipi I accidentally plugged in the power supply on the RS485 port and now I get

    root@L203-sn81:/home/pi# /opt/unipi-bin/fwserial -p /dev/extcomm/0/0
    Read version failed: Connection timed out
    

    Will need to get a new Neuron for this.
    Thanks for the help! :)


  • administrators

    @boy-lenssen Yeah, that's something we are working on to protect bricking the units during the FW upgrade process. If the RUN led is dead, send it to us so we can reflash the FW.