v2.4.0¶
v2.4.0 este construit pe Qt Creator 4.0.2 și se axează pe noul bootloader V3 (interogarea structurii memoriei flash QSPI în timpul încărcării firmware-ului și ștergerea acesteia în timpul unei ștergeri complete a memoriei flash de date integrate), raportarea în timp real a senzorului și a plăcii în bara de stare și un nou protocol de depanare USB pe 32 de biți care corespunde firmware-ului inclus. De asemenea, adaugă un ghid LED la prima rulare și un set amplu de noi exemple TensorFlow, Modbus și WiFi. Deoarece protocolul de depanare s-a schimbat, camerele trebuie să ruleze noul firmware inclus pentru a se conecta.
Aspecte importante¶
Suportul pentru bootloaderul V3 interoghează structura memoriei flash QSPI externe a unei plăci în timpul încărcării firmware-ului și o șterge în timpul unei ștergeri complete a memoriei flash de date integrate (d953df62f).
Raportarea senzorului și a plăcii interoghează modulul senzor al camerei conectate la conectare și îl afișează în bara de stare (OV2640, OV5640, OV7690, OV7725, OV9650, MT9V034, LEPTON) alături de o nouă etichetă de tip de placă (0ffa82958).
Copierea modelelor TensorFlow vă permite să copiați modele
.tflitepe cameră, nu doar fișiere de rețea neuronală.network(ad1aa98f0).Erase Onboard Data Flash este o nouă comandă din meniul
Toolscare șterge doar memoria flash a sistemului de fișiere integrate al camerei, după un mesaj de confirmare, fără a reprograma firmware-ul (d953df62f, 98686ac46).Ghidul LED la prima rulare este un nou dialog
OpenMV Cam LED Colorscare explică stările LED-ului integrat și poate fi închis definitiv (c2d00422f).
Caracteristici noi¶
Bootloaderul V3 interoghează structura memoriei flash QSPI în timpul încărcării firmware-ului și șterge memoria flash QSPI externă doar în timpul unei ștergeri complete a memoriei flash de date integrate;
connectClickedapelează întotdeaunabootloaderQSPIFLayoutpe plăcile V3, dar ruleazăbootloaderQSPIFErasedoar atunci cândforceFlashFSEraseeste setat (comenzile QSPI de scriere/memtest sunt implementate în stratul IO, dar nu sunt utilizate de loader) (d953df62f).Starea senzorului și a plăcii interoghează modulul senzor al camerei la conectare și îl afișează (OV2640, OV5640, OV7690, OV7725, OV9650, MT9V034, LEPTON) în bara de stare, împreună cu o nouă etichetă de tip de placă, folosind o nouă mapare id-către-nume
sensors.txt(0ffa82958).Ghidul LED la prima rulare adaugă un nou dialog
OpenMV Cam LED Colorscare apare după o scurtă întârziere atunci cândhelloworld_1.pyeste documentul deschis la prima rulare, explicând stările LED-ului integrat (verde intermitent = bootloaderul rulează, albastru = ruleazămain.py, alb = panică din cauza unei defecțiuni hardware); o casetă de bifare „Don’t show this message again.” păstrează închiderea prin setareaDONT_SHOW_LED_STATES_AGAIN(c2d00422f).Open OpenMV Cam Drive folder este un nou element din meniul
Toolscare deschide unitatea montată a camerei în exploratorul de fișiere al sistemului (a49f54305).Erase Onboard Data Flash este o nouă comandă din meniul
Toolscare șterge doar memoria flash a sistemului de fișiere integrate, după un mesaj de confirmare, fără a reprograma firmware-ul (d953df62f, 98686ac46).Copierea modelelor TensorFlow permite dialogului de copiere a modelelor să copieze modele
.tflitepe cameră, pe lângă fișierele de rețea neuronală.network; filtrul dialogului a câștigat și intrărileLabel Files (*.txt)șiAll Files(ad1aa98f0, 0ffa82958, c0dbdd9e5).Comutarea versiunii protocolului de depanare împarte comenzile seriale
GetAttribute,SetAttribute,FBEnableșiJPEGEnableatunci când comunică cu firmware-ul 3.5.3+ pentru fiabilitate (83b9ca18f).Noi exemple incluse adaugă scripturi cu fereastră glisantă pentru mobilenet TensorFlow Lite și detectare de persoane, plus un exemplu MNIST STM32Cube.AI (
nn_stm32cubeai.py), un nou folder32-modbus(modbus_rtu_slave.py,modbus_apriltag.py), adăugiri pentru shieldul WiFi (http_client_ssl,static_ip,mqtt_pub/mqtt_sub), Arduino UART/SPI-slave și CAN (e26b90d79, 42ba8f5c4).
Alte modificări și îmbunătățiri¶
A fost actualizat protocolul de depanare USB la noul firmware: citirile de atribute folosesc noua comandă pe 32 de biți
ATTR_READ_2(0xCA), iar sarcinile utile de atribut, valoare și activare a tamponului de cadre sunt trimise ca numere întregi lungi pe 32 de biți în loc de cuvinte pe 16 biți (55d7cfe70).A fost reetichetat Save open script to OpenMV Cam în Save open script to OpenMV Cam (as main.py) pentru a clarifica faptul că scrie
main.py(a49f54305).A fost reetichetat Run Bootloader în Run Bootloader (Load Firmware) pentru a-i clarifica scopul (ad1aa98f0).
Meniurile de exemple sunt acum sortate după prefixul numeric al folderului/fișierului, iar cifrele inițiale
NN-sunt eliminate din numele afișate (ad1aa98f0).Terminalele de ieșire și seriale redau acum tabulatorii ca spații folosind o lățime de tabulator configurabilă a terminalului serial din setările editorului de text, în loc de o lățime fixă de 8 (98686ac46).
Detectarea unităților pe Linux acceptă acum și sistemele de fișiere montate
fuseblk(de exemplu volume exFAT/NTFS) la asocierea unității camerei (c0dbdd9e5).A fost actualizat setul de documentație HTML MicroPython inclus (referința bibliotecii, tutorialele esp8266/esp32, paginile și imaginile generate) afișat în asistența IDE-ului (e69d71f7c, 90b5c6eb5, 97b0f645a).
Corecții de erori¶
A fost remediată o depășire numerică în statisticile histogramei (medie, cuartile, mediană, abatere standard) prin extinderea acumulatorilor de la
intla 64 de biți, prevenind statistici greșite pe imagini mari (55d7cfe70).A fost reproiectată deconectarea/ejectarea pe Linux: golirea nesigură
syncfs/closedira fost eliminată, iar unitatea este acum demontată cu o comandăumountsimplă, fără dialog de progres (b86d5c62c, c0dbdd9e5, 30d4a7d2d).Unitatea USB a plăcii este acum asociată doar atunci când firmware-ul este suficient de nou sau este prezent un fișier marcator
.openmv_disk, prevenind preluarea de către IDE a unității amovibile greșite (e464eaed4).A fost remediată logica de reconectare astfel încât declanșarea unei operațiuni de bootloader/ștergere în timp ce este conectat acum se deconectează curat mai întâi și apoi reîncearcă, evitând o stare de lucru blocată (d953df62f).
A fost rescris instrumentul de eliminare a comentariilor/spațiilor albe folosit la trimiterea scripturilor către cameră ca o mașină cu stări conștientă de șiruri, astfel încât caracterele
#din interiorul șirurilor să nu mai fie confundate cu comentarii, iar spațiile albe finale și docstring-urile sunt gestionate (24dff1b2f).A fost remediată gestionarea șirurilor de traducere pentru mai multe mesaje de dialog de conectare/terminal astfel încât comenzile shell încorporate (
sudo adduser, pașii de instalarepydfu) să nu mai facă parte din textul traductibil și să se afișeze corect (b5705a57e).
Suport pentru platforme și instrumente¶
Bază Qt Creator: 4.0.2.
A fost redenumită placa/firmware-ul OpenMV Cam H7 Plus din
OPENMV4RînOPENMV4P(OMV4P_H7_32768_SDRAM) și a fost inclus firmware-ul său sub noul nume (c0dbdd9e5).A fost corectat numele afișat al plăcii H7 Plus pentru a folosi liniuțe de subliniere în loc de spații (
OpenMV_Cam_H7_Plus_(STM32H743_w/_SDRAM)) (75764132c).Firmware-ul inclus a fost actualizat de-a lungul versiunii, ajungând la versiunea 3.5.2 pentru OPENMV2/3/4/4P (incrementarea finală în 15c07498c; incrementări cumulative anterioare în 42ba8f5c4 la 3.4.2, a99c2e3e1 la 3.4.3, e26b90d79 la 3.5.0 și 97b0f645a la 3.5.1).
Versiunile de firmware incluse: OPENMV2 (Cam M4) 1.4.11, OPENMV3 (Cam M7) 1.4.11, OPENMV4 (Cam H7) 1.2.15, OPENMV4P (Cam H7 Plus) 1.2.15.
Versiunea OpenMV IDE a fost incrementată de la 2.2.1 la 2.4.0.
Modificări incompatibile¶
Protocolul de citire a atributelor de depanare USB a fost comutat de la vechea comandă pe 16 biți ATTR_READ (0x8A) la noua comandă pe 32 de biți ATTR_READ_2 (0xCA), iar sarcinile utile de atribut, valoare și activare sunt acum trimise ca numere întregi lungi pe 32 de biți; IDE-ul interoghează de asemenea ID-ul senzorului camerei la conectare. Acest lucru necesită firmware care implementează noul protocol. Firmware-ul inclus 1.2.15 / 1.4.11 îl oferă, așa că camerele mai vechi trebuie reprogramate cu noul firmware pentru a se conecta.