Unipi Software

This section includes topics related to Unipi software (FW tools, Modbus TCP server, repository, et c.)

Apt Repository

All tools are distributed via a Debian repository available at https://repo.unipi.technology/debian/

Currently, the packages are supported only for Axon and Neuron generations - Evok for Unipi 1 & lite should be installed as described

Apt is already preconfigured on our Neuron and Axon official images. This guide should be followed only when installing on a clean Debian/Raspbian OS.

Follow the steps in the README file located in the repository https://repo.unipi.technology/debian/README.apt

Make sure to reboot the system in order to apply the changes!

After reboot, you can check the service status by

systemctl status unipitcp

The internal firmware is NOT automatically flashed to the latest version installed using apt. This has to be done manually. To check the FW of internal MCUs (alter the -i 0 with -i 1 or 2 depending on the size of the controller)

/opt/unipi/tools/fwspi -i 0


Firmware (aka the Software running within the Hardware) is a big part of our hardware (except Unipi 1.1) and gets updated during the time as things are getting fixed or new functionality is being added.

The Firmware is a standard part of our OS images and is also distributed in our repository in the unipi-firmware package.

Upgrading firmware in Neuron/Axon family PLC controllers

The firmware can be manually upgraded or checked using the fwspi tool which resides in /opt/unipi-bin/ (newly in /opt/unipi/tools/).

To check the firmware on the first group of IOs:

/opt/unipi/tools/fwspi -i 0

To check the FW of other IO groups run

/opt/unipi/tools/fwspi -i 1


/opt/unipi/tools/fwspi -i 2


The upgrade to the latest version of the Firmware should be done in while the unit is connected to the internet.

Firmware upgrade can be done automatically on all groups available using command

/opt/unipi/tools/fwspi -v --auto
Online firmware installation
  • 1. Obtain the latest firmware version
    apt update
    apt install unipi-firmware
  • 2. Check the current FW version installed in the HW
    /opt/unipi/tools/fwspi -i 0
  • 3. Update to the latest obtained FW version
    /opt/unipi/tools/fwspi -i 0 -P
  • 4. Re-check the current FW version installed in the HW
    /opt/unipi/tools/fwspi -i 0
Offline firmware installation

Online installation is always preffered because the firwmare package can have other packages are dependencies (such as firmware-tools, kernel driver, …). Please always use the online installation.

  • 1. Download the latest version of the unipi-firmware package from https://repo.unipi.technology/debian/pool/ Then it is needed to get it to the unit. There are two ways to do that:
  • 2.a - Using SCP
    • Copy if from your PC to the unit using SCP (a WinSCP, Filezilla or other software can be used) to the /tmp/ folder
    • Install the package using dpkg, for example
      dpkg -i /tmp/unipi-firmware_5.32_all.deb
  • 2.b - Via USB flash
    • Copy the downloaded file from your PC to the root of the FAT32 formated USB flash and insert the USB flash to any USB port of the unit.
    • Switch to root user
      sudo su
    • Find out the name of the inserted flash disk (usually it is sda1)
      fdisk -l
    • Create a mount folder for the disk
      mkdir /media/usbflash
    • Mount the disk to the newly created folder
      mount /dev/sda /media/usbflash
    • Install the package using dpkg, for example
      dpkg -i /media/usbflash/unipi-firmware_5.32_all.deb
  • 3. Check the current FW version installed in the HW
    /opt/unipi-bin/fwspi -i 0
  • 4. Update to the latest obtained FW version
    /opt/unipi-bin/fwspi -i 0 -P
  • 5. Re-check the current FW version installed in the HW
    /opt/unipi-bin/fwspi -i 0

The configuration of the group can be erased to the default state. This is done during the firmware upgrade by calling the fwspi utility also with -R parameter. E.g. /opt/unipi/tools/fwspi -i 0 -PR

Upgrading firmware in RS485 Modbus extensions

xS/xG series extensions can be upgraded in a similar way. Instead of unipispi utility, just use the alternative named unipiserial which is also included in the unipi-firmware-tools package (installed automatically with unipi-firmware). The command-line arguments are very similar as for the fwspi, except RS485 port specification.

The -p (path) parameter must be set according to the RS485 used for the extension. See section Axon serial port maps to resolve the appropriate path for each RS485 available within your unit. For example, if extension is connected to RS485-1/RS485-1.1:

/opt/unipi/tools/fwserial -p /dev/ttyNS0 -P 


Note that the fwserial assumes that extension‘s Modbus address, baudrate and parity are in the factory-default state, ie 19200 baud 8N1 with address 15.