v2.4.0

v2.4.0 dibangun di atas Qt Creator 4.0.2 dan berfokus pada bootloader V3 baru (kueri tata letak flash QSPI saat memuat firmware dan penghapusan saat menghapus semua data flash onboard), pelaporan sensor dan board secara langsung di bilah status, serta protokol debug USB 32-bit baru yang sesuai dengan firmware yang disertakan. Rilis ini juga menambahkan panduan LED untuk pertama kali dijalankan dan sejumlah besar contoh baru untuk TensorFlow, Modbus, dan WiFi. Karena protokol debug berubah, kamera harus menjalankan firmware baru yang disertakan agar dapat terhubung.

Sorotan

  • Dukungan bootloader V3 melakukan kueri tata letak flash QSPI eksternal papan saat memuat firmware dan menghapusnya saat melakukan penghapusan penuh flash data onboard (d953df62f).

  • Pelaporan sensor dan board melakukan kueri modul sensor kamera yang terhubung saat koneksi dan menampilkannya di bilah status (OV2640, OV5640, OV7690, OV7725, OV9650, MT9V034, LEPTON) beserta label tipe board baru (0ffa82958).

  • Salin model TensorFlow memungkinkan Anda menyalin model .tflite ke kamera, tidak hanya file jaringan saraf .network (ad1aa98f0).

  • Hapus Flash Data Onboard adalah perintah Tools baru yang hanya menghapus flash sistem file onboard kamera, setelah konfirmasi pengguna, tanpa melakukan reflash firmware (d953df62f, 98686ac46).

  • Panduan LED pertama kali adalah dialog OpenMV Cam LED Colors baru yang menjelaskan kondisi LED onboard dan dapat ditutup secara permanen (c2d00422f).

Fitur baru

  • Bootloader V3 melakukan kueri tata letak flash QSPI saat memuat firmware dan hanya menghapus flash QSPI eksternal saat melakukan penghapusan penuh flash data onboard; connectClicked selalu menjalankan bootloaderQSPIFLayout pada board V3 tetapi hanya menjalankan bootloaderQSPIFErase jika forceFlashFSErase diatur (perintah tulis/memtest QSPI diimplementasikan di lapisan IO tetapi tidak digunakan oleh loader) (d953df62f).

  • Status sensor dan board melakukan kueri modul sensor kamera saat koneksi dan menampilkannya (OV2640, OV5640, OV7690, OV7725, OV9650, MT9V034, LEPTON) di bilah status, beserta label tipe board baru, menggunakan peta id-ke-nama sensors.txt yang baru (0ffa82958).

  • Panduan LED pertama kali menambahkan dialog OpenMV Cam LED Colors baru yang muncul setelah penundaan singkat ketika helloworld_1.py adalah dokumen yang terbuka pada pertama kali dijalankan, menjelaskan kondisi LED onboard (hijau berkedip = bootloader berjalan, biru = menjalankan main.py, putih = panik kegagalan perangkat keras); kotak centang "Don't show this message again." menyimpan penutupan ini melalui pengaturan DONT_SHOW_LED_STATES_AGAIN (c2d00422f).

  • Buka folder OpenMV Cam Drive adalah item menu Tools baru yang membuka drive yang terpasang pada kamera di browser file sistem (a49f54305).

  • Hapus Flash Data Onboard adalah perintah Tools baru yang hanya menghapus flash sistem file onboard, setelah konfirmasi pengguna, tanpa melakukan reflash firmware (d953df62f, 98686ac46).

  • Salin model TensorFlow memungkinkan dialog salin model untuk menyalin model .tflite ke kamera selain file jaringan saraf .network; filter dialog juga mendapat entri Label Files (*.txt) dan All Files (ad1aa98f0, 0ffa82958, c0dbdd9e5).

  • Pergantian versi protokol debug memecah perintah serial GetAttribute, SetAttribute, FBEnable, dan JPEGEnable saat berkomunikasi dengan firmware 3.5.3+ demi keandalan (83b9ca18f).

  • Contoh baru yang disertakan menambahkan skrip sliding-window mobilenet dan deteksi orang TensorFlow Lite beserta contoh MNIST STM32Cube.AI (nn_stm32cubeai.py), folder 32-modbus baru (modbus_rtu_slave.py, modbus_apriltag.py), tambahan shield WiFi (http_client_ssl, static_ip, mqtt_pub/mqtt_sub), Arduino UART/SPI-slave, dan CAN (e26b90d79, 42ba8f5c4).

Perubahan dan peningkatan lainnya

  • Memperbarui protokol debug USB ke firmware baru: pembacaan atribut menggunakan perintah ATTR_READ_2 (0xCA) 32-bit baru, dan muatan atribut, nilai, serta aktifkan-buffer-bingkai dikirim sebagai long 32-bit alih-alih word 16-bit (55d7cfe70).

  • Mengubah nama label Save open script to OpenMV Cam menjadi Save open script to OpenMV Cam (as main.py) untuk memperjelas bahwa aksi ini menulis main.py (a49f54305).

  • Mengubah nama label Run Bootloader menjadi Run Bootloader (Load Firmware) untuk memperjelas tujuannya (ad1aa98f0).

  • Menu contoh kini diurutkan berdasarkan awalan angka folder/file, dan digit NN- di awal dihapus dari nama yang ditampilkan (ad1aa98f0).

  • Terminal output dan serial kini merender tab sebagai spasi menggunakan lebar tab terminal serial yang dapat dikonfigurasi dari pengaturan editor teks, bukan lebar hardcoded sebesar 8 (98686ac46).

  • Deteksi drive Linux kini juga menerima sistem file yang di-mount sebagai fuseblk (misalnya volume exFAT/NTFS) saat mengasosiasikan drive kamera (c0dbdd9e5).

  • Memperbarui set dokumentasi HTML MicroPython yang disertakan (referensi pustaka, tutorial esp8266/esp32, halaman dan gambar yang dihasilkan) yang ditampilkan di bantuan IDE (e69d71f7c, 90b5c6eb5, 97b0f645a).

Perbaikan bug

  • Memperbaiki overflow numerik dalam statistik histogram (rata-rata, kuartil, median, deviasi standar) dengan memperlebar akumulator dari int menjadi 64-bit, mencegah statistik yang salah pada citra besar (55d7cfe70).

  • Mengerjakan ulang pemutusan/eject di Linux: flush syncfs/closedir yang tidak andal dihapus dan drive kini di-unmount menggunakan perintah umount biasa, tanpa dialog progres (b86d5c62c, c0dbdd9e5, 30d4a7d2d).

  • Drive USB board kini hanya diasosiasikan jika firmware cukup baru atau file marker .openmv_disk ada, mencegah IDE mengambil drive removable yang salah (e464eaed4).

  • Memperbaiki logika koneksi ulang sehingga memicu operasi bootloader/erase saat terhubung kini melakukan pemutusan terlebih dahulu kemudian mencoba kembali, menghindari kondisi kerja yang macet (d953df62f).

  • Menulis ulang pemotongan komentar/whitespace yang digunakan saat mengirim skrip ke kamera sebagai mesin state berbasis string, sehingga karakter # di dalam string tidak lagi salah dikenali sebagai komentar, dan whitespace di belakang serta docstring ditangani (24dff1b2f).

  • Memperbaiki penanganan string terjemahan untuk beberapa pesan dialog koneksi/terminal sehingga perintah shell yang disematkan (sudo adduser, langkah instalasi pydfu) tidak lagi menjadi bagian dari teks yang dapat diterjemahkan dan ditampilkan dengan benar (b5705a57e).

Dukungan platform dan alat

  • Basis Qt Creator: 4.0.2.

  • Mengganti nama board/firmware OpenMV Cam H7 Plus dari OPENMV4R menjadi OPENMV4P (OMV4P_H7_32768_SDRAM) dan menyertakan firmwarenya dengan nama baru (c0dbdd9e5).

  • Memperbaiki nama tampilan board H7 Plus untuk menggunakan garis bawah alih-alih spasi (OpenMV_Cam_H7_Plus_(STM32H743_w/_SDRAM)) (75764132c).

  • Firmware yang disertakan diperbarui sepanjang rilis, berakhir pada versi 3.5.2 untuk OPENMV2/3/4/4P (pembaruan akhir di 15c07498c; pembaruan kumulatif sebelumnya di 42ba8f5c4 ke 3.4.2, a99c2e3e1 ke 3.4.3, e26b90d79 ke 3.5.0, dan 97b0f645a ke 3.5.1).

  • Versi firmware yang disertakan: 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.

  • Versi OpenMV IDE ditingkatkan dari 2.2.1 ke 2.4.0.

Perubahan yang memutus kompatibilitas

Protokol baca-atribut debug USB dialihkan dari perintah ATTR_READ (0x8A) 16-bit lama ke perintah ATTR_READ_2 (0xCA) 32-bit baru, dan muatan atribut, nilai, serta aktifkan sekarang dikirim sebagai long 32-bit; IDE juga melakukan kueri ID sensor kamera saat koneksi. Ini memerlukan firmware yang mengimplementasikan protokol baru. Firmware 1.2.15 / 1.4.11 yang disertakan menyediakannya, sehingga kamera lama harus di-flash ke firmware baru untuk dapat terhubung.