{{page>cs:hw:004-edge:edge-in-development-hidden}}
====== Ostatní periférie ======
===== TPM =====
{{section>.:tpm-hidden#reduced&noheader}}
==== Technické parametry TPM ====
{{section>.:tpm-hidden#technicke_parametry&noheader}}
===== Retain =====
Retain paměť je rychlá ne-volatilní paměť použitá pro ukládání aktuálních hodnot vybraných proměnných. Je oddělena od eMMC úložiště a tudíž nesnižuje životnost hlavního úložiště.
/* Character device */
|< 100% 35% >|
| Cesta v OS | /run/unipi-plc/by-sys/retain/mem |
==== Technické parametry Retain paměti ====
|< 100% 35% >|
| Velikost paměti | 128 kB (základní) |
| Typ paměti | NVRAM |
| Sběrnice | SPI (30 MHz) | /* spi4 */
| Model | MB85RS1MT |
| Životnost | 1013 krát / byte |
/*
| Write speed | 1,7 - 2,1 MB/s |
| Chip | FRAM (MB85RS1MTPNF-G) |
==== ====
*/
===== RTC =====
RTC (Hodiny reálného času) má na starost udržovaní informace o uplynulém čase a to i v momentě kdy je zařízení vypnuto nebo není připojeno k internetu.
|< 100% 35% >|
| Cesta v OS | /dev/rtc |
==== Technické parametry RTC ====
|< 100% 35% >|
| Baterie | CR2032 lithiová baterie | /* tohle bych nechal aby se dalo najít jak dlouho to přibližně vydrží... pokud ten údaj budeme mít tak poté se tento řádek může výdrží bez napájení nahradit */ /*
| Kalibrovaná | Ano | NENÍ kalibrován na edge jen zatím na gate */
| Sběrnice | I2C | /* i2c-1 */
| Model | MCP79410 |
| Živostnost | Přibližně 10 let | /*
| Battery life without power | approx. x days |*/
==== ====
===== Hardware Watchdog =====
###
Hardwarový watchdog hlídá přítomnost periodických pulsů na pinu WDG (GPIO27) a vyresetuje jednotku s pomocí [[#studeny_restart_jednotky|úplného vypnutí napájecího zdroje]], pokud puls nepřijde v desetisekundovém časovém okně. Vzhledem k tomu, že se vyhodnocení děje na konci pevného desetisekundového okna (viz obrázek), může se stát, že k resetu dojde v čase mezi Tmin=10sec až Tmax=20sec od posledního platného pulsu. Tyto časy nelze standardním způsobem změnit. Hardwarový watchdog je neaktivní dokud není aktivován prvním pulsem.
###
###
Automatické generování pulsů na pinu WDG je ve standardním firmware zapnuté, první pulsy již generuje **uboot** obsluhující zavaděč systému a následně obsluhu po bootu přebírá démon **systemd**. Pokud běží kernel i **systemd** tak generuje jeden pasivační puls každé 4 sekundy. **Systemd** lze nastavit, aby hlídal více aplikací současně. Když aplikace neposílá zprávu do **systemd**, může tento být nastaven, aby onu službu restartoval. Více viz dokumentace nástroje **systemd**. Tato automatická ochrana pomocí **systemd** může být v upraveném image pro zákazníka vypnuta a funkcionalita přenechána pro speciální případy přímo uživatelské aplikaci. Doporučujeme ji mít však pro kritické aplikace zapnutou.
###
/*
Jednotka disponuje i funkcionalitou, nazvanou MasterWatchdog, která hlídá komunikaci I/O subsystému s jednotkou. Tato funkcionalita je na hardwarovém watchdogu nezávislá a implementována odlišně (viz sekce MasterWatchdog)
*/
{{ en:hw:edge-ig019.png?620 |}}
{{ :files:img_warning-line_b.png?nolink |}}
{{ :en:hw:08_safety-instructions_pseudo-ISO-7010-info.png?nolink |(!)}}
**Poznámka:** \\
Dedikovaný watchdog (Hardware watchdog) a [[..:02-description-of-io:01-description-of-di#mwd|Master watchdog (MWD)]] jsou dva různé systémy!
{{ :files:img_breakline_light_blue.png?nolink |}}
Dedikovaný watchdog hlídá zda OS běží správně, zato MWD je přtomný jen na jednotkách se vstupy a výstupy a hlídá komunikaci zda deska vstupů a výstupů dostává příkazy.
===== Studený restart jednotky =====
Jednotka umožňuje studený restart sama sebe s pomocí pinu GPIO26, který při nastavení do log. 1 na dobu alespoň 1 ms provede hardwarové odpojení napájecích zdrojů na dobu alespoň 50 ms a tím restartuje řídící počítač i se všemi periferiemi.
Tento proces je ve standardním operačním systému prováděn automaticky ve vhodný okamžik po spuštění příkazů **poweroff** i **reboot**. Tyto příkazy tedy oba vyvolají studený restart jednotky.
Uživatel, nebo aplikace může v případě potřeby této HW funkcionality využít.
{{ :files:img_warning-line_b.png?nolink |}}
{{ :en:hw:09_safety-instructions_pseudo-ISO-7010-attention.png?nolink |(!)}}
**Upozornění:** \\
Jednotku nelze se standardním programovým vybavením "vypnout" ani přepnout do neaktivního nebo úsporného režimu, ale pouze restartovat.
===== Servisní tlačítko =====
Vstupní zařízení napodobující stisk klávesy enter. Je také především využito k přepnutí do servisního režimu
|< 100% 35% >|
| Cesta v OS | /dev/input/event0 |
===== Uživatelské LED =====
Uživatelsky volně programovatelné LED, které mohou být použity pro indikaci události nebo stavu. Mohou být ovládány v uživatelském programu nebo přímo z OS.
|< 100% 35% >|
| Cesta v OS | /run/unipi-plc/by-sys/ULED**x**/brightness |
{{ :files:img_warning-line_b.png?nolink |}}
{{ :en:hw:08_safety-instructions_pseudo-ISO-7010-info.png?nolink |(!)}}
**Poznámka:** \\
Místo **x** napište číslo ovládané uživatelské LED.
----
|< 100% 35% >|
| Barva | Zelená |
| Hodnota vypnutí | 0 |
| Hodnota zapnutí | 1 (nebo libovolné číslo jiné než 0) |
{{ :files:img_warning-line_b.png?nolink |}}
{{ :en:hw:09_safety-instructions_pseudo-ISO-7010-attention.png?nolink |(!)}}
**Upozornění:** \\
Když budete číst hodnotu ULED z Modbus registrů, pamatujte na to, že je hodnota uložena v mezipaměti (společně s ULED coily). Vyhněte se používání Modbus a sysfs současně pro ovládání ULED, jinak může mít čtení z Modbus za následek přečtení nesprávných hodnot.