Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
cs:sw:04-unipi-firmware [2020/05/11 14:18]
mkudlacek
cs:sw:04-unipi-firmware [2024/04/29 07:03] (current)
kcerny [Aplikační rozhraní]
Line 1: Line 1:
 +/* FIXME -> dopnit info o tom, že je třeba sudo */
 +
 ====== Software pro produkty Unipi ====== ====== Software pro produkty Unipi ======
- +Tento článek ​obsahuje informace týkající se softwaru pro produkty Unipi (repozitáře,​ firmware apod.)
-Tato sekce obsahuje informace týkající se softwaru pro produkty Unipi (repozitáře,​ firmware apod.)+
  
 ==== APT repozitář === ==== APT repozitář ===
-Firmware pro jednotky ​Unipi, stejně jako některé aplikace vytvořené pro potřeby Unipi, je distribuován ​formou ​Debian ​repozitáře ​dostupného ​na https://​repo.unipi.technology/​debian/​+Aplikace a nástroje ​Unipi jsou distribuovány ​formou repozitáře ​Debian balíčků dostupným ​na https://​repo.unipi.technology/​debian/​
  
-<WRAP center round info 80%> +Repozitář APT je již předkonfigurován v [[files:software:os-images:00-start|oficiálních obrazech OS]].
-V současnosti jsou balíčky určené pouze pro produktové ​řady Neuron a Axon. U UniPi 1.1 a 1.1 Lite by mělo být SDK EVOK [[en:sw:02-sdks:01-evok|instalováno dle návodu]] +
-</​WRAP>​+
  
-<WRAP center round tip 80%> +<WRAP center round info 90%> 
-Oficiální SW obrazy pro jednotky Neuron a Axon jsou dodávány s již nakonfigurovaným APT. Tento návod proto využijete pouze případě, že využíváte čistý obraz Raspbian OS+V současnosti ​jsou balíčky určené pro všechny jednotky kromě Unipi 1.1 a Unipi 1.1 Lite - Evok je nutné instalovat [[en:​sw:​02-apis:​01-evok| dle oficiální dokumentace]]
 </​WRAP>​ </​WRAP>​
  
-Pro přidání repozitáře a instalace základních balíku prosím ​postupujte podle návodu na https://​repo.unipi.technology/​debian/​README.apt+Pro instalaci nástrojů na čistý Debian/​Rasbian ​postupujte podle návodu ​v README ​na oficiálním repozitáři ​https://​repo.unipi.technology/​debian/​README.apt
  
-<WRAP center round important 60%> +<WRAP center round info 90%> 
-Pro uložení změn je nutné jednotku restartovat!  +Vývojové a testovací verze
-</​WRAP>​+
  
-Po restartu můžete stav služby zkontrolovat ​íkazem +Naše nástroje jsou také distribuovány pro vývoj a testování. Pokud si některý testovací balík ​ejete nainstalovat,​ najděte jej na https://​repo.unipi.technology/​debian/​pool/​test/​ a uveďte při instalaci přes //apt install// celé jeho jméno (bez suffixu za podtržítkem,​ např. _arm64.deb).
-<​code>​systemctl status unipitcp<​/code>+
  
-Interní firmware jednotek je obsažen v balíku unipi-firmwareJeho instalací ​aktualizací se neprovede jeho nahrání do HW. Nahrání je potřeba provést manuálně.+Mějte na paměti, ​že testovací balíky nemusí být 1005 funkční. 
 +</WRAP>
  
-==== Firmware ==== +===== Aplikační rozhraní ===== 
-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. ​+Dostupná API jsou popsána v [[cs:​sw:​02-apis:​01-evok|SDK section]]. 
 + 
 +===== 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-firmware. 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-firmware.
  
-=== Aktualizace firmwaru ===+Interní firmware jednotek je obsažen v balíku unipi-firmware. Jeho instalací / aktualizací se neprovede jeho nahrání do HW. Nahrání je potřeba provést manuálně. 
 + 
 +==== Aktualizace firmwaru ​====
 Aktualizaci firmwaru či kontrolu jeho verze lze provést pomocí nástroje fwspi, který je k nalezení ve složce /​opt/​unipi-bin/​ (nově ve složce /​opt/​unipi/​tools/​). Aktualizaci firmwaru či kontrolu jeho verze lze provést pomocí nástroje fwspi, který je k nalezení ve složce /​opt/​unipi-bin/​ (nově ve složce /​opt/​unipi/​tools/​).
  
-Verzi firmwaru pro první ​skupinu ​I/O zobrazíte tímto příkazem: ​+Verzi firmwaru pro první ​sekci I/O zobrazíte tímto příkazem: ​
 <​code>​ <​code>​
 /​opt/​unipi/​tools/​fwspi -i 0 /​opt/​unipi/​tools/​fwspi -i 0
Line 39: Line 42:
  
 <WRAP center round info 60%> <WRAP center round info 60%>
-Pro kontrolu firmwaru ostatních I/O skupin ​zadejte příkaz <​code>/​opt/​unipi/​tools/​fwspi -i 1</​code>​ případně <​code>/​opt/​unipi/​tools/​fwspi -i 2</​code>​+Pro kontrolu firmwaru ostatních I/O sekcí ​zadejte příkaz <​code>/​opt/​unipi/​tools/​fwspi -i 1</​code>​ případně <​code>/​opt/​unipi/​tools/​fwspi -i 2</​code>​
 </​WRAP>​ </​WRAP>​
  
 <WRAP center round info 60%> <WRAP center round info 60%>
-Kroky uvedené níže popisují aktualizaci firmwaru pouze pro skupinu ​1 (číslo 0 pro parametr -i). Firmware na všech ​skupinách ​lze aktualizovat automaticky příkazem <​code>/​opt/​unipi/​tools/​fwspi --auto</​code>​+Kroky uvedené níže popisují aktualizaci firmwaru pouze pro sekci 1 (číslo 0 pro parametr -i). Firmware na všech ​sekcích ​lze aktualizovat automaticky příkazem <​code>/​opt/​unipi/​tools/​fwspi ​-v --auto</​code>​
 </​WRAP>​ </​WRAP>​
  
Line 59: Line 62:
 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é. ​ 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é. ​
 </​WRAP>​. ​ </​WRAP>​. ​
-  * 1. Stáhněte poslední verzi balíčku **unipi-firmware** dostupného na https://​repo.unipi.technology/​debian/​pool/​ Tento balíček je pak nutné nahrát do kontroléru ​- to lze provést dvěma způsoby: ​+  * 1. Stáhněte poslední verzi balíčku **unipi-firmware** 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   * 2.a - Přes SCP
-      * Zkopírujte balíček z Vašeho PC do kontroléru ​pomocí SCP (WinSCP, Filezilla či jiný podobný software). Balíček ​umistěte do složky /tmp/ +      * 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: <​code>​dpkg -i /​tmp/​unipi-firmware_5.32_all.deb</​code>​+      * Nainstalujte balíček pomocí dpkg, například tímto příkazem: <​code>​dpkg -i /​tmp/​unipi-firmware_5.50_all.deb</​code>​
   * 2.b - Pomocí USB flash disku   * 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 kontoléru+      * 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 <​code>​sudo su</​code>​       * Přepněte se do root uživatelského účtu <​code>​sudo su</​code>​
       * Zjistěte jméno vloženého USB disku (obvyklé je //sda1//) <​code>​fdisk -l</​code>​       * Zjistěte jméno vloženého USB disku (obvyklé je //sda1//) <​code>​fdisk -l</​code>​
       * Vytvořte složku pro připojení disku <​code>​mkdir /​media/​usbflash</​code>​       * Vytvořte složku pro připojení disku <​code>​mkdir /​media/​usbflash</​code>​
       * Připojte disk do nově vytvořené složky <​code>​mount /dev/sda /​media/​usbflash</​code>​       * Připojte disk do nově vytvořené složky <​code>​mount /dev/sda /​media/​usbflash</​code>​
-      * Nainstalujte balíček pomocí dpkg, například takto <​code>​dpkg -i /​media/​usbflash/​unipi-firmware_5.32_all.deb</​code>​  +      * Nainstalujte balíček pomocí dpkg, například takto <​code>​dpkg -i /​media/​usbflash/​unipi-firmware_5.50_all.deb</​code>​  
-  * 3. Zkontrolujte nainstalovanou verzi firmwaru +  * 3. Zkontrolujte nainstalovanou verzi firmwaru ​<​code>/​opt/​unipi/​tools/​fwspi -i 0</​code>​ 
-  * 4. Aktualizujte firmware na poslední verzi <​code>/​opt/​unipi/​tools/​fwspi -i 0</​code>​+  * 4. Aktualizujte firmware na poslední verzi <​code>/​opt/​unipi/​tools/​fwspi -i 0 -P</​code>​
   * 5. Opět zkontrolujte verzi firmwaru <​code>/​opt/​unipi/​tools/​fwspi -i 0</​code>​   * 5. Opět zkontrolujte verzi firmwaru <​code>/​opt/​unipi/​tools/​fwspi -i 0</​code>​
  
-<WRAP center round info 60%> +<WRAP center round info 80%> 
-Konfiguraci I/O skupiny ​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ř. ./fwspi -i 0 -PR+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ř. ./fwspi -i 0 -PR
 </​WRAP>​ </​WRAP>​
 === Aktualizace firmware v rozšiřujících jednotkách Unipi === === Aktualizace firmware v rozšiřujících jednotkách Unipi ===
-Firmware v rozšiřujících jednotkách řady xS/xG lze aktualizovat podobným způsobem. Místo nástroje **fwspi** je třeba použít **fwserial**,​ který je taktéž součístí ​balíku //​unipi-firmware-tools//​ (instalovaného automaticky s balíkem //​unipi-firmware//​). Stejně tak parametry příkazové řádky ​jssou podobné.+Firmware v rozšiřujících jednotkách řady xS/xG lze aktualizovat podobným způsobem. Místo nástroje **fwspi** je třeba použít **fwserial**,​ který je taktéž součástí ​balíku //​unipi-firmware-tools//​ (instalovaného automaticky s balíkem //​unipi-firmware//​). Stejně tak parametry příkazové řádky ​jsou podobné. 
 + 
 +<WRAP center round alert 80%> 
 +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. 
 +</​WRAP>​ 
 + 
 +<WRAP center round info 80%> 
 +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 [[cs:​hw:​007-patron:​portmap|]],​ [[cs:​hw:​02-neuron:​portmap|]] a [[cs:​hw:​01-axon:​portmap|]] 
 + 
 +Příklad použití, kdy je Extension připojen do portu RS485-1.1:​ 
 +<​code>/​opt/​unipi/​tools/​fwserial -p /dev/ttyNS0 -P </​code>​
  
-Je třeba určit, ke kterému sériovému portu je rozšiřující jednotka připojena. K tomu slouží parametr -p za nímž je třeba specifikovat cestu v rámci adresáře /dev. Pro bližší informace konzultuje přehlednou tabulku na [[en:​hw:​01-axon:​portmap|]].  +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 a adresou 15**.
-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 a adresou 15.+
 </​WRAP>​ </​WRAP>​