v2.8.1

v2.8.1 aduce suport complet pentru plăci Arduino în OpenMV IDE, adăugând încărcarea firmware-ului pentru plăcile Arduino Nano RP2040 Connect și Nano 33 BLE, alături de un editor cu file și o minihartă de cod. Versiunea rămâne pe baza Qt Creator 4.0.2 și include noul firmware OpenMV 4.1.0. Există modificări incompatibile: indentarea automată este acum dezactivată implicit, iar imaginile de firmware combinate openmv.bin / openmv.dfu au fost eliminate pentru plăcile OPENMV2/3/4/4P, OPENMVPT și PORTENTA, ceea ce reprezintă modificări de flux de lucru și de comportament pentru oricine se bazează pe acele setări implicite sau nume de fișiere.

Puncte importante

  • Încărcarea firmware-ului pentru plăci Arduino Nano RP2040 Connect și Nano 33 BLE, programate prin noile lanțuri de instrumente incluse bossac (SAM-BA) și picotool/elf2uf2/rp2040load.

  • Editor cu file, astfel încât fișierele deschise apar ca file comutabile în partea de sus a editorului, cu scurtături pentru comutarea și reordonarea filelor.

  • Bară de derulare minihartă de cod care afișează o prezentare în miniatură a documentului, cu o pagină de setări Text Editor pentru a o comuta și a-i seta lățimea.

  • Exemple noi Arduino și Portenta, inclusiv un set complet de exemple pentru Nano RP2040 Connect și zece scripturi WiFi pentru Portenta-H7.

  • Firmware-ul inclus actualizat la 4.1.0 pe toate camerele OpenMV și pe imaginile Arduino Nano 33 / Nano RP2040.

  • Driverele USB pentru Windows pentru Arduino Nano RP2040 Connect și Portenta H7 sunt acum instalate de programul de instalare.

Funcții noi

  • Suport pentru plăci Arduino: s-a adăugat suport complet de încărcare a firmware-ului pentru plăcile Arduino Nano RP2040 Connect și Nano 33 BLE, programându-le prin lanțurile de instrumente incluse bossac (SAM-BA) și picotool/elf2uf2/rp2040load, conduse de noile descriptoare bossac.txt/boards.txt (plus picotool.txt existent) (deccee676, 34e0c0ee1, ef5334782, eb9c00a33).

  • Editor cu file: s-a adăugat un plugin pentru bara de file a editorului, astfel încât fișierele deschise apar ca file comutabile în partea de sus a editorului, cu scurtături pentru fila anterioară/următoare (Ctrl+Page Down / Ctrl+Page Up) (325cd8d87, 5501a4082).

  • Minihartă de cod: s-a adăugat un plugin pentru bara de derulare cu minihartă de cod, cu o pagină de setări Text Editor (comutator de activare, lățime, prag de număr de linii și alpha al cursorului barei de derulare) care afișează o prezentare în miniatură a documentului în bara de derulare (325cd8d87).

  • Exemple WiFi Portenta-H7: s-au adăugat zece scripturi de exemplu WiFi (connect, scan, IP static, DNS, NTP, client HTTP, client HTTP-SSL, streamer MJPEG, MQTT publish/subscribe) (b2133f9f5).

Alte modificări și îmbunătățiri

  • Reordonarea filelor: s-au adăugat scurtături pentru mutarea filei curente la stânga sau la dreapta (Ctrl+Shift+Page Down / Ctrl+Shift+Page Up) și s-au dezactivat legăturile implicite conflictuale ale editorului Ctrl+PgUp/Ctrl+PgDown/Ctrl+Up/ Ctrl+Down astfel încât scurtăturile barei de file să funcționeze (5501a4082).

  • Exemple Nano RP2040 Connect: s-a inclus un set complet de schițe (sketch) de exemplu Python care acoperă noțiunile de bază, senzorul IMU, BLE, WiFi, FFT audio și camera termică (91847b183).

  • Prompturi de conectare Arduino: s-au adăugat două dialoguri noi de flux de conectare: un indiciu de recuperare care instruiește utilizatorii să scurtcircuiteze REC la GND și să reseteze placa atunci când este detectat un vechi PID USB Arduino RP2040, și o notificare informativă că Nano 33 BLE nu are un disc de date flash integrat atunci când se solicită ștergerea sistemului de fișiere flash (91847b183).

  • Exemple suplimentare Arduino și Portenta: s-au adăugat exemple Python noi pentru Arduino Nano 33 BLE Sense (blinky), temperatură BLE Portenta H7, control PWM îmbunătățit pentru Portenta H7, un script Ethernet peer-to-peer Portenta H7 actualizat și un exemplu de filtru ulab actualizat (45a4564f4), plus un exemplu de testare a cablului Ethernet Portenta H7 (af1b2fcff).

  • Exemplu OpenMV WiFi-Shield: s-a adăugat un nou exemplu HTTP POST http_post.py sub 14-WiFi-Shield (c73d9fdcf).

  • Timeout-uri de citire WiFi: s-au separat timeout-urile de citire astfel încât conexiunile WiFi primesc un timeout de blocare mai lung (3000ms față de 1000ms pe serial) și retransmit comanda în așteptare după o blocare WiFi în loc să eșueze (81f00ac58).

  • Interfață de editor simplificată: s-au ascuns butoanele de divizare și de închidere a diviziunii din bara de instrumente a editorului și s-a forțat auto-scalarea high-DPI pe Linux pentru a menține aspectul editorului consecvent (bc14a2290).

  • Documentație offline: s-a actualizat documentația offline inclusă, adăugând imagini de pinout al camerei pentru fiecare senzor (H7 OV7725, H7 Plus OV5640, variantele M4/M7) și actualizând pagina de prezentare a IDE-ului și paginile de tutorial (97ff73ebd).

Corecturi de erori

  • S-a corectat offset-ul de ștergere a memoriei flash RP2040 (PICO) folosit în timpul programării firmware-ului, astfel încât regiunea de flash corectă să fie ștearsă (91847b183).

  • S-au făcut executabile fișierele binare bossac și picotool incluse pentru Linux/macOS, astfel încât încărcarea firmware-ului să funcționeze pe acele platforme, și s-a protejat redarea miniharții pentru a rula doar pe Qt >= 5.6 (76613152f).

  • S-a corectat promptul de actualizare a firmware-ului pentru a respecta butoanele dialogului său (verificând QDialog::Accepted) și s-a făcut gestionarea blocării transferului serial/TCP să-și repornească temporizatoarele când sosesc date noi, astfel încât transferurile lungi să nu mai expire în mod fals (dd4ce12a5).

Suport pentru platformă și instrumente

  • Bază Qt Creator: 4.0.2.

  • Firmware inclus: s-a actualizat firmware-ul OpenMV inclus la versiunea 4.1.0 (firmware.txt: 4.0.2 -> 4.1.0) (b78603045); mai devreme în ciclu, același fișier a trecut prin build-urile intermediare 4.0.1 și 4.0.2 (beec4d25b, eb9c00a33).

  • Lanțuri de instrumente noi pentru flash: s-au inclus bossac și lanțul de instrumente picotool/elf2uf2/rp2040load pentru toate platformele (windows/osx/linux32/linux64/arm/aarch64).

  • Drivere USB pentru Windows: s-a adăugat instalarea de drivere semnate pentru plăcile Arduino Nano RP2040 Connect și Portenta H7, rulată prin programul de instalare (bc14a2290, a8ae96e1b).

  • Senzori noi recunoscuți: s-au adăugat senzorul de imagine PAJ6100 (914546e78) și senzorii de cameră GC2145 (0x21) și MT9M114 în tabelul de senzori inclus share/qtcreator/firmware/sensors.txt (9a8b1c762); ID-ul MT9M114 a fost inițial 0x81 și ulterior corectat la 0x2481 (eb9c00a33).

Modificări incompatibile

Modificări vizibile pentru utilizator de flux de lucru și de comportament în această versiune.

  • Indentarea automată este acum dezactivată implicit. Valoarea implicită a auto-indentării editorului a fost trecută pe dezactivat (și forțată pe dezactivat la încărcare), iar tasta tab nu mai indentează; controalele Auto indent și Tab key performs auto-indent au fost eliminate din pagina de setări Text Editor > Behavior, astfel încât tastarea nu mai auto-indentează liniile noi decât dacă este modificată în firmware/sursă (bc14a2290).

  • Imaginile de firmware combinate openmv.bin / openmv.dfu (doar openmv.bin pentru OPENMVPT, care nu a livrat niciodată un openmv.dfu) au fost eliminate pentru plăcile OPENMV2/3/4/4P, OPENMVPT și PORTENTA; rămân doar imaginile separate bootloader/firmware/uvc (84cd4cd2d).

  • Exemplele vsync_gpio_output (atât din seturile de exemple 02-Board-Control OpenMV cât și Arduino/Portenta-H7) necesită acum noul API set_vsync_callback al firmware-ului în loc de set_vsync_output, iar funcția de retroapelare (callback) comută acum LED_BLUE în loc de LED-ul IR (f13453bdc).