Firmware
Firmware (tj. software fungující uvnitř hardwaru) je významnou součástí našich produktů (s výjimkou Unipi 1.1). Neustále jsou do něj přidávány nové funkce či opravovány chyby, firmware se proto průběžně aktualizuje.
Firmware pro produkty Unipi je součástí všech našich OS obrazů a rovněž je distribuován skrze náš repozitář coby součást balíčku unipi-firmware6.
Instalací / aktualizací balíku unipi-firmware6 se neprovede jeho nahrání do HW. Nahrání je potřeba provést manuálně.
Připojení přes SSH
Prvním nutným krokem je připojení se k zařízení přes SSH. Jak se připojit přes SSH je popsáno v Přístup přes SSH. Jak najít nebo nastavit heslo pro SSH můžete také nalézt v článku Hesla.
Získání balíčků pro aktualizace firmwaru
Pro aktualizace firmware je nutné nejdříve získat potřebné balíčky. Výrazně doporučujeme online aktualizaci, protože offline aktualizace vyžaduje hlubší znalost systému Debian.
Online aktualizace
- Získejte nejnovější verzi firmware
sudo apt update && sudo apt upgrade
- Je velice důležité systém RESTARTOVAT, aby se aktualizované moduly kernelu použily
sudo reboot
Offline aktualizace
Upozornění:
Online instalace je vždy preferována, neboť firmware balíčky mohou vyžadovat jiné balíčky (např. firmware-tools, kernel driver,…). Online instalaci proto využívejte kdykoliv, kdy je to možné.
- 1. Stáhněte poslední verzi balíčku unipi-firmware6 dostupného na https://repo.unipi.technology/debian/pool/. Tento balíček je pak nutné nahrát do jednotky - to lze provést dvěma způsoby:
- 2.a - Přes SCP
- Zkopírujte balíček z Vašeho PC do jednotky pomocí SCP (WinSCP, Filezilla či jiný podobný software). Balíček umístěte do složky /tmp/
- Nainstalujte balíček pomocí dpkg, například tímto příkazem:
dpkg -i /tmp/unipi-firmware_5.50_all.deb
- 2.b - Pomocí USB flash disku
- Zkopírujte balíček z Vašeho PC na USB flashdisk ve formátu FAT32 a vložte jej do jakéhokoliv USB portu na kontroléru
- Přepněte se do root uživatelského účtu
sudo su
- Zjistěte jméno vloženého USB disku (obvyklé je sda1)
fdisk -l
- Vytvořte složku pro připojení disku
mkdir /media/usbflash
- Připojte disk do nově vytvořené složky
mount /dev/sda /media/usbflash
- Nainstalujte balíček pomocí dpkg, například takto
dpkg -i /media/usbflash/unipi-firmware_5.50_all.deb
Aktualizace firmwaru
Existují dva nástroje pro správu firmware v produktech Unipi:
- fwspi - používá se pro vnitřní desky vstupů a výstupů v PLC od Unipi
- fwserial - používá se pro rozšiřující moduly od Unipi
Tyto nástroje jsou k nalezení ve složce /opt/unipi/tools/ a musí být spouštěny jako root.
Verzi firmwaru pro první sekci I/O zobrazíte tímto příkazem:
sudo /opt/unipi/tools/fwspi -u 1
Poznámka:
Pro kontrolu firmwaru ostatních I/O sekcí zadejte příkaz
sudo /opt/unipi/tools/fwspi -u 2
případně
sudo /opt/unipi/tools/fwspi -u 3
Vnitřní I/O desky
Vnitřní I/O desky jsou pevně dané, takže jediná potřebná infromace je číslo sekce.
- Zkontrolujte současnou verzi FW instalovaného na každé I/O desce
sudo /opt/unipi/tools/fwspi -u 1
- Pokud je verze firmware 5.x nebo starší, je nutné nejdříve provést upgrade firmwaru, viz sekce níže.
- Aktualizujte firmware na jeho poslední staženou verzi
sudo /opt/unipi/tools/fwspi -av
- Na výstup se vypíšou čísla staré verze a nově instalovaná verze.
Rozšiřující desky připojené přes RS-485
Sériové řady rozšiřujících modulů xS/xG jsou aktualizovány obdobným způsobem. Pokud nejsou parametry shodné s výchozími, tak se kromě Modbus adresy také zadává port a ostatní parametry RS-485.
Upozornění:
Před přehrátím Firmware se ujistěte, že daný port nepoužívá žádná jiná služba a po zahájení neodpojujte z napájení jednotku, ani Extension. Dojde k nenávratnému poškození Firmware.
Poznámka:
Nutností je specifikovat parametr -p (path), který určuje, který port má nástroj použít pro komunikaci s Extension. Přehled mapování fyzických sériových portů na porty systému Linux je k dispozici na Edge, Mapování sériových portů(Patron), Mapování sériových portů(Neuron) a Mapování sériových portů(Axon)
Příklad použití, kdy je Extension připojen do portu RS485-1/RS485-1.1:
sudo /opt/unipi/tools/fwserial -p /run/unipi-plc/by-sys/rs485-1/tty -P
Dále je třeba určit rychlost, paritu a modbusovou adresu zařízení. Ve výchozím stavu se počítá s rychlostí 19200, žádnou paritou, jedním stop bitem a adresou 15.
-b, --baud <bps> baudrate/přenosovou rychlost, výchozí hodnota 19200
-o, --stopbits <n> stop bity (1|2), výchozí hodnota 1
-r*, --parity <type> parita (N|E|O), výchozí hodnota N
* -r lze použít pouze na systémech s Debian 13 a novější
Pokud je rozšiřující modul na portu /run/unipi-plc/by-sys/rs485-1/tty, Modbus adresa 6, přenosová rychlost 9600 a parita je sudá:
- Zkontrolujte současnou verzi FW instalovaného na rozšiřujícím modulu
sudo /opt/unipi/tools/fwserial -p /run/unipi-plc/by-sys/rs485-1/tty -u 6 -b 9600 --parity E
- Pokud je verze firmware 5.x nebo starší, je nutné nejdříve provést upgrade firmwaru, viz sekce níže.
- Aktualizujte firmware na jeho poslední staženou verzi
sudo /opt/unipi/tools/fwserial -p /run/unipi-plc/by-sys/rs485-1/tty -u 6 -b 9600 --parity E -Pv
- Na výstup se vypíšou čísla staré verze a nově instalovaná verze.
Upgrade firmwaru
Přímý přechod ze staré verze firmware (5.x a nižší) není možný a musí být proveden upgrade. Jediná změna je použití parametru -U (nebo namísto -a a pro příkaz pro každou desku zvlášť) namísto parametru -P viz ukázkové příkazy:
sudo /opt/unipi/tools/fwspi -u 1 -Uv
sudo /opt/unipi/tools/fwserial -p /run/unipi-plc/by-sys/rs485-1/tty -u 15 -Uv
Další užitečné parametry
Resetování konfigurace
Konfiguraci I/O sekce lze obnovit zpět do výchozího nastavení. Lze tak učinit během aktualizace firmwaru zavoláním na nástroj fwspi s parametrem -R, tj. např.
sudo /opt/unipi/tools/fwspi -u 1 -PRv