13.1.11. Actualizări și recuperare firmware¶
IDE-ul este totodată managerul de firmware al camerei. Fiecare versiune a IDE-ului include versiunea de firmware corespunzătoare pentru fiecare placă, verificarea versiunii rulează automat la conectare, iar încărcătoarele pentru bootloaderul fiecărei familii de plăci sunt integrate – IDE-ul detectează placa și comunică folosind protocolul corect fără a i se indica acest lucru. Menținerea unei camere la zi nu necesită nimic mai mult decât conectarea ei și acceptarea solicitării.
13.1.11.1. Actualizare¶
Când conectarea găsește o cameră care rulează un firmware mai vechi decât versiunea inclusă, finalizează conectarea și apoi oferă actualizarea (poți respinge solicitarea definitiv). Acceptă-o, iar IDE-ul repornește camera în bootloaderul ei, programează noul firmware și se reconectează. Cele două casete de bifare ale dialogului de actualizare – ștergerea sistemului de fișiere din memoria flash internă și resetarea sistemului de fișiere ROM – pornesc nebifate și rețin ultima ta alegere; cu ambele dezactivate, o actualizare păstrează tot ce este stocat pe cameră. Excepția este actualizarea de la un firmware foarte vechi, caz în care dialogul forțează ștergerea și anunță acest lucru printr-un avertisment. Aceeași verificare rulează la cerere din intrarea pentru versiunea de firmware din bara de stare.
Între versiuni, Tools → Install the Latest Development Release preia și instalează versiunea de dezvoltare curentă pentru placa conectată – modalitatea de a obține o corectare sau o funcție nouă care a fost integrată, dar care nu a fost încă lansată. Versiunile de dezvoltare sunt exact asta; camerele de producție ar trebui să urmeze versiunile lansate.
Independent de firmware, IDE-ul verifică la pornire dacă sunt disponibile resurse actualizate – exemple, firmware inclus, documentație – pentru IDE-ul însuși și oferă să le instaleze. De asemenea, te anunță când o versiune mai nouă a IDE-ului este disponibilă, cu un link către pagina de descărcare.
13.1.11.2. Încărcarea unui firmware personalizat¶
Tools → Load Custom Firmware (Ctrl+Shift+L) scrie un fișier binar de firmware de pe disc în loc de versiunea inclusă – calea de implementare pentru firmware construit din sursă, cu scripturi înghețate sau cu o configurație personalizată integrată. Dialogul primește fișierul de firmware și aceleași casete de bifare pentru ștergerea sistemului de fișiere și resetarea ROMFS ca solicitarea de actualizare.
Vezi și
Construirea firmware-ului pentru a construi mai întâi acel fișier binar.
13.1.11.3. Ștergerea sistemului de fișiere¶
Tools → Erase Internal FAT File System (Ctrl+Shift+E) reformatează sistemul de fișiere din memoria flash internă a camerei, eliminând fiecare fișier stocat – main.py, biblioteci, resurse, jurnale – și recreând conținutul implicit. Este resetarea din fabrică pentru stocarea camerei: soluția pentru un sistem de fișiere corupt și un punct de plecare curat înainte de a oferi o cameră altcuiva. Firmware-ul în sine și sistemul de fișiere ROM rămân neatinse.
13.1.11.4. Recuperarea unei camere blocate¶
O cameră al cărei firmware este suficient de deteriorat încât nu mai apare ca port serial poate fi totuși salvată, deoarece bootloaderul se află sub firmware și supraviețuiește oricărei probleme cu excepția deteriorărilor hardware. Când conectarea nu găsește nicio cameră, IDE-ul întreabă dacă este atașată o cameră blocată și te ghidează prin recuperare: selectezi tipul plăcii, IDE-ul controlează interfața bootloaderului plăcii, iar firmware-ul din versiunea inclusă este instalat. Tools → Force enter OpenMV Cam bootloader execută în mod explicit pasul de repornire în bootloader pentru o cameră care încă se conectează. Plăcile au de asemenea o metodă hardware de a forța bootloaderul la pornire pentru cel mai rău caz; pagina de referință rapidă a fiecărei plăci descrie procedura ei specifică.