Kodara

Firmware za mikrokontroler: što definirati prije razvoja

Ulazi, izlazi, komunikacija i ponašanje pri prekidu veze: praktičan početak specifikacije firmwarea.

Napišite što uređaj radi u stvarnoj uporabi

Firmware je program koji radi na uređaju i povezuje elektroniku s traženim ponašanjem. Za početak nije dovoljno navesti samo model mikrokontrolera. Potrebno je opisati što uređaj očitava, čime upravlja i tko mu šalje naredbe. U Cronics projektu razvijam firmware za ESP32-C6 Smart Hub; druge pločice imaju svoje zahtjeve.

Popišite ulaze, izlaze i ograničenja

Dogovorite ponašanje kada nešto prestane raditi

Za primjer uređaja koji prima mrežne naredbe treba odrediti što se događa bez Wi-Fi-ja, bez poslužitelja i nakon ponovnog uključivanja. Naredba za uključivanje nije isto što i potvrda da je izlaz uključen. Dogovorite povratnu informaciju i pravila za ponovljene ili zastarjele naredbe.

Primjer kriterija provjere: nakon prekida mreže uređaj zadržava unaprijed dogovoreno stanje, a nakon ponovnog spajanja javlja stvarni status. Vrijeme ponovnog spajanja i prihvatljivo ponašanje određuju se za konkretan uređaj. Ovaj primjer opisuje test, a ne izmjeren rezultat prototipa.

Planirajte ažuriranje i završnu provjeru

Ako trebate OTA ažuriranje, dogovorite isporuku nove verzije, provjeru autentičnosti i oporavak nakon neuspješnog ažuriranja. ESP-IDF za ESP32-C6 podržava mehanizam povratka prethodne aplikacije, ali ga treba konfigurirati i provjeriti. Samo postojanje OTA funkcije ne dokazuje pouzdan oporavak.

Za upit pripremite shemu ili model pločice, opis namjene, popis senzora i nekoliko očekivanih scenarija. Ako već postoji kod, navedite tehnologiju i stanje projekta. Pristup repozitoriju dogovara se zasebno.

Programiranje mikrokontrolera i razvoj firmwarea

Pogledajte firmware u projektu Cronics

Dokumentacija: ESP32-C6 OTA i povratak verzije (Espressif)