SDS BIG: firmware changelog: Porovnání verzí

Řádek 14: Řádek 14:
  
 
== 9.1.2023 ==
 
== 9.1.2023 ==
* FC verze 0x11
+
* FC verze 0x11 (+ odpovídající FULLC.EXE)
* firmware pro HW varianty BIG2-DP a BIG2-DP-DS84
+
* firmware pro všechny HW varianty BIG, BIG2-DP a BIG2-DP-DS84
 
* web: doplněno zobrazení surových hodnot, čtených z 1-Wire zařízení  
 
* web: doplněno zobrazení surových hodnot, čtených z 1-Wire zařízení  
* FC: přidána funkce SDS_onewire_config()
+
* FC: přidána funkce SDS_onewire_config() pro varianty -DS84
* FC: doplněna funkčnost FC WatchDog
+
* FC: doplněna funkčnost FC WatchDog (pro situaci, pokud spadne program na chybu a je zastaven, tak FC Watchdog pokračuje a provede restart FC programu)
* FC: doplněna archivace poslední chyby FC programu, a zobrazení na webu
+
* FC: doplněna archivace poslední chyby FC programu, a zobrazení na webu (i v případě restartu FC Watchdogem)
* FC: funkce pro prohledání složky
+
* FC: funkce pro prohledání složky (file_opendir, file_readdir, file_closedir)
* oprava PWM3 a PWM4 na BIG2-128
+
* oprava PWM3 a PWM4 na BIG2-64/128 - funkce, ukládání nastavení
* RTC běžící na baterii na všech HW variantách DS84
+
* HW BIG2 DS84: RTC běží na baterii na všech HW variantách DS84 - udržuje běžící aktuální čas i při vypnutém napájení
* FC: přidána funkce SDS_onewire_search_bus
+
* FC: přidána funkce SDS_onewire_search_bus()
* a další - bude dopsáno
+
* FC: přidány indexy 132..136 , indexy 2488..2499, 2986..2997
 
 
  
 
== 1.12.2022 ==
 
== 1.12.2022 ==

Verze z 9. 1. 2023, 20:01

SDS-BIG , SDS-SMALL(2), SDS-STSW a všechny OEM

Tato stránka se věnuje změnám ve firmware a v HW pro výrobek SDS-BIG a SDS-SMALL a SDS-STSW.

Změny jsou seřazeny tak, že nejnovější verze (která je stáhnutelná z webu) je popsána jako první.

Proč je vydáván nový firmware? Protože operativně řešíme požadavky uživatelů, a jsou doplňovány nové funkce.

Firmware poskytujeme zcela zadarmo po celou dobu životnosti výrobku. Děláme to vše pro Vás.


9.1.2023

  • FC verze 0x11 (+ odpovídající FULLC.EXE)
  • firmware pro všechny HW varianty BIG, BIG2-DP a BIG2-DP-DS84
  • web: doplněno zobrazení surových hodnot, čtených z 1-Wire zařízení
  • FC: přidána funkce SDS_onewire_config() pro varianty -DS84
  • FC: doplněna funkčnost FC WatchDog (pro situaci, pokud spadne program na chybu a je zastaven, tak FC Watchdog pokračuje a provede restart FC programu)
  • FC: doplněna archivace poslední chyby FC programu, a zobrazení na webu (i v případě restartu FC Watchdogem)
  • FC: funkce pro prohledání složky (file_opendir, file_readdir, file_closedir)
  • oprava PWM3 a PWM4 na BIG2-64/128 - funkce, ukládání nastavení
  • HW BIG2 DS84: RTC běží na baterii na všech HW variantách DS84 - udržuje běžící aktuální čas i při vypnutém napájení
  • FC: přidána funkce SDS_onewire_search_bus()
  • FC: přidány indexy 132..136 , indexy 2488..2499, 2986..2997

1.12.2022

  • bezpečnostní aktualizace (dle nahlášené záležitosti a testu)
  • trvalé zobrazení archivovaného HW faultu v Logu (pokud dojde k faultu, je hned před restartem zařízení archivován a trvale zobrazován ve výpisu, i po libovolném novém spuštění)
  • odstraněno eventuální čekání (a následný WDG restart) při komunikaci s externími I2C zařízeními (specifické chipy na sandwich deskách uživatelů)

30.11.2022

  • FC: zvýšena výkonnost (512: optimalizace pro až několika-násobné celkové zrychlení vykonávání programu) (64,128: byť jen menší zrychlení, ale přece + zvětšená konzole echo.htm)
  • zrychleno webové rozhraní (zpomaleno zřejmě o dvě verze zpět, byť to bylo bez vlivu na funkci, je vhodnější když to nezdržuje při zobrazování v prohlížeči)
  • FC: přidán index 137
  • zlepšena interní obsluha sériových linek (COMx/RS485), odstraněno možné náhodné zpoždění (byť jen ve specifickém případě a jen o několik msec, ale i tak se toto vyřešilo)

22.11.2022

  • FC (64/128/512): verze 0x10
  • dns_resolv správně hlásí chybu 516 a 517 při výpadku připojení v průběhu dotazu

18.11.2022

  • FC (64/128): verze 0x10
  • FC: nová funkce SDS_set_RTC
  • FC: nové funkce pro práci s float
  • oprava pro mounting některých typů SD karet

14.11.2022

  • FC: oprava výpočtů v 64-bit doméně
  • FC: file_expand() - detailnější rozvrstvení návratových chybových hodnot
  • web: rozšířeny zobrazované informace o probíhajícím připojování SD karty
  • web server: vrací korektně 503 pro soubory na SD kartě, které jsou zablokovány FC programem
  • FC: rozšířena a zásadně zlepšena implementace printf/sprintf/snprintf/sscanf - viz detaily v návodu na wiki
  • FC: zlepšen výpis (informace na web) při určitých chybách v FC programu, plus další drobky kolem echo.htm

16.10.2022

  • tento firmware (od této verze) podporuje i hardware SDS 64/128/512 ve variantě DP
  • podpora pro 4 PWM výstupy (pro vhodný hardware - BIG2)
  • odpověď na (webový) příkaz /sv? , má doplněný obsah http hlavičky, takže by ji mělo být snazší zpracovat
  • FC: watchdog programu je (nově) pozastaven po dobu mountování SD karty (protože je pozastaven i program)
  • FC: zápis do indexu 999 funguje jak má
  • FC: verze 0x0F (nové funkce PWMx)

5.10.2022

  • pouze vše řady 512 (ostatní bez tohoto problému) - důležitá oprava situace kdy někdy chybně došlo ke smazání nahraného FC programu při nahrání nového UWEB projektu do SDS

30.9.2022

  • FC: oprava běhu programu v situaci kdy v kódu je vnořený (nested) switch() v rámci jiného switch() (původně chybné chování, teď opraveno)

28.9.2022

  • FC: oprava výsledků maker (define), kdy chybně docházelo k pevnému přetypování na int32_t, což je teď opraveno (odstraněno)

1.8.2022

  • správně zobrazovaná hláška (nápověda) na úvodní webové stránce ohledně stavu konfigurace
  • FC: přidáno tlačítko (odkaz) pro restart FULLC programu (např. pokud skončil a chcete jej ručně spustit znovu)
  • FC: do výpisu chyby při pádu programu je přidán UTC čas (pro identifikaci, kdy se chyba stala)
  • FC: spolehlivostní úpravy při startu programu (načtení z DF), a při zápisu nového programu (práce s DF)

11.7.2022

  • FC: verze 0x0E
  • FC: přidána funkce mktime()
  • FC: přidána funkce gmtime()
  • FC: přidána funkce localtime()
  • opraveno zachování konfigurace ipwdg (webové rozhraní) a obsluhy relé ipwdg

1.7.2022

  • FC: verze 0x0D
  • FC: upravena funkce SDS_TOPB_keyboard_status() pro lepší předané výsledky
  • FC: přidána funkce SDS_TOPB_keyboard_updn()
  • FC: přidána funkce SDS_rescan_onewire()
  • FC: odstraněno náhodné hlášení o už probíhajícím nahrávání programu při nahrávání z EXE
  • BIG 64/128 prodloužen čas pro sestavení Ethernetového spojení, což řeší problém s některými USB síťovými kartami atd.
  • opraveno HTTP POST nastavení položek NTP
  • opraveno HTTP POST který teď neuzavře spojení dříve než má, pokud mazání NVM pro nový FW (nebo nový UserWeb) trvá dlouho

12.4.2022

  • doplněna informační stránka o vnitřním stavu OneWire Master (pro snazší identifikaci problémů při používání sběrnice)
  • oprava v bootloaderu pro řadu 512 - vyžaduje přeprogramování u výrobce pro všechna SDS řady 512 s FW starším než 14.2.2022

3.4.2022

  • FC verze 0x0C
  • FC: přidána funkce SDS_I2C_rw
  • OneWire stabilnější

21.1.2022

  • prioritu mají vybrané konfigurační položky v NVM (jsou-li tam platné) před baterií zálohovanou pamětí
  • aktivován HTTP POST protokol pro nahrávání a konfiguraci SDS (viz SDS:POST_upload)

18.1.2022

  • RSTD zapíše do NVM všechny konfigurační položky (i to co nenuluje), pro jistotu že v NVM bude vše skutečně zapsáno
  • načítání konfigurace upraveno (větší spolehlivost)

15.1.2022

  • přidána stránka cfgstatus.htm - pro možnost kontroly stavu uložené konfigurace v pevné paměti (např. co nemáte uloženo)
  • přidán M2M výstup ip.xml
  • FC: přidán algoritmus SHA-256 do funkce SDS_crypto()
  • FC: každý program má unikátní identifikátor, podle kterého lze např. kontrolovat či zpětně poznat co máte v SDS nahráno
  • identifikátor FC programu přidán na webové rozhraní a do M2M výstupů, a do exe aplikace
  • zobrazeno unikátní identifikační čislo SDS hardware (napevno spojeno s modulem SDS, nezměnitelné), teď i ve M2M výstupech
  • SNMP: nové položky .8.90 , .8.91 , .8.99
  • FC: nové get(u32) položky 2 a 87

31.12.2021

  • možnost vyřadit NTP z činnosti zadáním adresy 127.0.0.1 (vhodné pro uživatele kteří získávají čas odjinud, např. přes LoRA)
  • web: informace na web (p=8) o stavu připojování SD karty (mounting...) a o stavu kdy je FC program pozastaven (PAUSED)
  • web: opraven zámek zvětšené konzole (echo)
  • důslednější kontrola platnosti konfigurace při startu

27.12.2021

  • opravena chyba kdy na webu nešlo nastavit 100 procent PWM duty (jen 0 až 99, teď už jde i 100)
  • FC: několikanásobně zvětšena konzole (echo.htm)
  • HW: při poruše hlavního zdroje hodin (krystal) se použije záložní zdroj
  • HW: využíváme RTC pro udržení času při přechodu přes reset (drží čas dokud zase nepřijde NTP)
  • aktualizován bootloader (aktualizace bootloaderu jen prostřednictvím přeprogramování u výrobce) - umí znovu nahrát FW pokud se v SoC poškodí
  • vydána varianta 512 - vlastní soubor s firmware

25.12.2021

  • pouze interní vydání

26.3.2021

  • FC: oprava nesprávného zacházení s unsigned typy (na některých místech interně přemapovány na signed)
  • FC: chování varianty if pro speciální kombinaci signed/unsigned dle specifikace standardu C

9.2.2021

  • FC: oprava TID v MODBUS-TCP
  • MBTC výpis rozšířen
  • FC: drobná úspora heap (více dostupného místa)
  • FC: dns resolv drobný fix
  • FC: http_get a http_post důležitý fix
  • FC: nová funkce http_close
  • FC: chyba -7 pro MODBUS-TCP a pro MQTT
  • vylepšený algoritmus S0, rozšířené možnosti nastavení detektoru S0 (nastavení přidáno ve webovém rozhraní)

22.12.2020

  • web: ruční přepnutí CBY pro relé (tzn. "kdo ovládá relé"), na "FULL-C", dané relé nevypne (off) ale ponechá jeho stávající stav (on, off)
  • security fix

10.12.2020

  • dřívější odeslání NTP požadavku po výpadku síťového spojení
  • integrovaná korekce chyby A/D měření pro HW osazený LMV324; uživatel může povolit tuto automatickou opravu chyby LMV324 ve webové administraci
  • počítání délky aktivace tarifního vstupu (doba T0 a T1 v sekundách za den) viz nové sys, pozor pro funkci vyžaduje NTP
  • automatický odečet S0 počítadel (vždy za dnešek a včerejšek), viz nové sys, pozor pro funkci vyžaduje NTP

23.11.2020

  • FC + FULLC.exe: oprava chyby v případě více #if / #ifdef / #endif bloků zapsaných hned za sebou
  • FC: makra a define lze provést i uvnitř funkce (dříve jen venku)
  • FC: detekce nesprávné dereference ukazatele

14.11.2020

  • webová administrace: stránka p=42: index ck03 se propíše i do nastavení (chybělo od 23.10.2020, web byl aktualizován, nastavení ale přebíralo ck00)

4.11.2020

  • FC + FULLC.exe: odstraněn problém při načtení nahraného FULL-C programu v SDS, kdy dříve mohlo u jedné specifické velikosti nahraného programu, dojít k jeho nespuštění kvůli neodpovídajícímu crc

3.11.2020

  • FC: zobrazení (v konzoli) čísla řádku (ve zdrojovém kódu) při chybě (což velmi zlepší ladění programů)
  • FULLC.exe: odstraněno omezení na 255 znaků na řádek
  • FULLC.exe: zrychlení nahrávání do SDS

23.10.2020

  • webová administrace: stránka p=42: změna indexu ck00 na ck03 ať se dají uživatelským skriptem všechny prvky samostatně rozlišit
  • FC: oprava http_get/post: správné vyplnění výsledků i pro situaci kdy server ukončí spojení přes TCP RST

14.10.2020

  • oprava FULL-C funkce XTEA-CRYPT (bug o dvě verze dříve)

13.10.2020

  • důležitá oprava chyby ve FULL-C (ternary operator, a další nahlášené nesrovnalosti)

13.9.2020

  • oprava detekce SD karty (některé varianty SD karet nebyly detekovány, teď už ano)

9.8.2020

  • FULL-C verze 0B (vyžaduje použít aktuální EXE pro překlad)
  • různé drobné opravy a zabezpečení
  • zobrazení auditlogu (webové rozhraní SDS)
  • FC: http_post
  • FC: MQTT klient
  • FC: MODBUS-TCP klient

4.8.2020

  • úprava obsluhy relé
  • podpora OneWire modulu SDS-1W-T-RH

3.10.2019

  • SMTP klient posílá v hlavičce i položku "Date" (ale jen za předpokladu správného času v SDS)
  • RSTD při zapnutí zařízení, ve kterém není záložní baterie (nebo je vybitá), zachová původně nastavenou MAC adresu (vše ostatní ale už jde do defaultu, což je správně)
  • SUDP: rozšířen NOP příkaz
  • SUDP: přidány další nové příkazy (master_cmd: 32, 33, 40, 42, 44, 48)

23.9.2019

  • oprava GUI (S0 Inputs)
  • SNMP nabízí možnost číst všechny sdílené proměnné (FULL-C: Sxx, Uxx, Fxx, Txx)
  • opraven nefunkční RSTD na modulu STSW-rev3

23.6.2019

  • oprava chyby objevené ve FW 28.5.2019, kdy na některých specifických SDS nefungovaly AD vstupy

28.5.2019

  • oprava funkce SD karty (pro případy kdy se stala po čase nedostupná pro FC/web)

5.5.2019

  • dořešeno hlídání stavu (načtení, atd.) SD karty i v případě provozu náročného FULL-C programu (tedy i pro hluboce vnořené smyčky)
  • oprava původně chybné implementace S-UDP příkazu "1Waccess: sub-command 8"

24.2.2019

  • překlopení z BETA do oficiálního FW
  • automatika zimní/letní čas
  • přístup na SD kartu: FULL-C pracuje se soubory (vytvoření, smazání, čtení a zápis, atd.)
  • přístup na SD kartu: web server zobrazuje soubory ze SD karty (vše ve složce \web\ a podsložkách této složky)
  • oprava čtení napětí baterie pro variantu 128K
  • shared.xml
  • odstraněno omezení délky ve shared.txt
  • zprovozněno getsv
  • verze FULL-C je teď FC 0x0A (vyžaduje použít aktuální EXE pro překlad)
  • FULL-C: nová možnost způsobu čtení teploty SoC
  • FULL-C: index 64, 65, 184, 185, 429, 430, atd.
  • FULL-C: doplněné set/get funkce pro sdílené proměnné
  • FULL-C: s/printf umí správné zpracovat požadavek na určení desetinných míst pro float
  • FULL-C: funkce pro reset FC programu
  • FULL-C: funkce pro watchdog FC programu
  • SNMP nové OIDy (dle přidaných věcí - čas, sdcard)

1.7.2018

  • SNMP: sdsS0translatedUnitT0,1 je poskytováno jako hodnota od odečtu (ne od úplného začátku měření, jak to bylo předtím)
  • FULL-C: přidán index 183 poskytující datum vydání FW který je právě nahrán v SDS

27.6.2018

  • verze FULL-C je teď FC 0x09 (vyžaduje použít aktuální EXE pro překlad)
  • FULL-C: přidána podpora pro int64_t a uint64_t
  • FULL-C: přejmenováno set a get funkce (rozlišení 32 a 64 bit)
  • FULL-C: snprintf přesně dle standardu (zrušena nevhodná změna z 20.12.2017)
  • drobné opravy
  • drobná oprava v odchozím TCP-SYN a v generátoru ISN

8.3.2018

  • oprava echo.htm - správně wrapuje obsah, a nejsou tam nadbytečné 0x00
  • vhodnější řešení rexmitu částí webových stránek a dynamických dat (ocení to zejména uživatelé s mobilním připojením pro SDS)

2.3.2018

  • aktulizace a oprava ve výpočtu "aktuálního výkonu" pro okrajové situace (např. krajní hodnoty impulsní konstanty)

11.2.2017

  • zprovozněny funkce set/get pro indexy 4000 až 4300 (alternativní přístup k číselným sdíleným proměnným)

21.12.2017

  • zvýšena stabilita spuštění po zapnutí

20.12.2017

  • dočasná změna ve FULL-C (bude zrušena): funkce snprintf() má interně posunutý limit délky zápisu o 1 (toto je záměrný rozdíl proti C99). Změna v SDS je provedena z důvodu neznalosti programátorů FC v tom, že do snprintf() limitu je potřeba započítat i jeden byte pro ukončující nulu. Ve výsledku tedy zápis "snprintf(buf, limit, ...);" je v FC interně vykonán jako "snprintf(buf, limit+1, ...);".
  • oprava ve FULL-C: výpočet platné délky bufferu funguje i pro ukazatele vytvořené offsetem ze základní alokované adresy (příklad takového bufferu je: buf=malloc(x)+offset;)
  • stav všech relé je načten z paměti vždy po zapnutí modulu, a ty relé které jsou ručně ovládány (manual control) a které byly před vypnutím v zapnutém (ON) stavu, jsou po zapnutí modulu aktivovány (zatímco relé ovládané z IP-W a FC jsou vždy po zapnutí modulu uvedeny do OFF stavu)

18.12.2017

  • UserWEB projekt má opravenu chybu, kdy nebylo možno použít delší Name Chain tabulku (tedy lze už vložit mnohem více souborů)
  • nastavená MAC adresa je zachována i po průchodu RSTD (byla-li platná)
  • opravena chyba způsobující nefunkční http_get(), teď už to opět funguje
  • aktualizace obsluhy PWM (např. lépe přepočítává zobrazovaná "procenta")
  • oprava strcat() funkce (opraveno hlídání max velikosti bufferu ze "from" na "to")

18.9.2017

  • FULL-C: printf() správně tiskne float i pokud se formátovací parametr zadá jako %d (tedy ne jako %f)
  • FULL-C: snprint() opraven (když je 'from' kratší než 'to' tak je 'to' doplněn 0x00 - je to zvláštnost, nemá se to používat, ale C99 to předepisuje, tak to dodržíme)

9.9.2017

  • vnitřní bezpečnostní aktualizace

29.8.2017

  • oprava chování RSTD - pokud je zapojen před zapnutím, nepřejde do automatického resetu po 10sec, ale RSTD je použit a SDS pracuje dále; přitom funkce "zapoj RSTD za běhu" je zachována správně
  • zásadní zlepšení odolnosti FULL-C proti chybám programátora - vnitřní hlídání rozsahů bufferu a stringů, zamezující zápisu za hranice pole (typicky chybné použití sprintf() funkce, ale toto hlídání je aplikováno obecně všude)

8.8.2017

  • oprava: FC teď správně převádí URL kód "sv?xxxx=yyyy...", na text (vypadlo 31.3. při rozšíření počtu znaků pro sdílené proměnné Txx)

10.7.2017

  • vydán firmware pro variantu "128kB" (od teď vychází dva typy firmware, pro variantu "64kB" a variantu "128kB", vyberete si tu svou dle HW který máte)
  • velká optimalizace využití paměti pro uložení a běh FULL-C programu (komprese, a zmenšení vyžadovaného heapu pro běh programu) - významně zvětšuje možnou velikost FC programu
  • pin RSTD lze teď také použít i bez vypnutí a zapnutí SDS, stačí jej na 10 vteřin za běhu zkratovat (pak se provede RSTD a SDS se rebootuje) - výhodné pro zařízení kde vypnutí nelze provést
  • drobné užitečné opravy dle hlášení uživatelů
  • verze FC zvýšena na 0x08, a přidána možnost uložit 128 proměnných do baterií zálohované pamětí (tzn. obsah přežije výpadek napájení a FC program po restartu o tyto údaje nepřijde)

2.6.2017

  • návratová hodnota funkce DF_read_page() je nastavena správně i v případě, kdy tato funkce čte data z cache (opakované čtení stejné stránky DF)

6.4.2017

  • přidána FULL-C funkce AES-128-CTR, viz SDS_crypto(0x20, ...);

31.3.2017

  • oprava RS485-MASTER drive, je teď zcela přesný (tzn. vypnut v přesném časování za úplně posledním vyslaným bitem)
  • oprava čtení konfigurace 1-W, pomocí sds_get_a()
  • přidán index 139
  • odstraněno omezení na 32 znaků pro sdílené proměnné (přenos textu) "Txx" (xx = 00 až 99)
  • fix návratových hodnot FULL-C funkcí pro práci s DF (teď to vrací správně 1 nebo 0, podle wiki)
  • upřesněn název: (z BIG na BIG-64) / (z STSW na STSW-64)
  • vyžaduje aktuální SDSLOAD.exe (6.3.2017 nebo novější) a FULLC.exe (6.3.2017 nebo novější)


starší záznamy

Nejsou k dispozici.