v2.8.1¶
v2.8.1 brings full Arduino board support to OpenMV IDE, adding firmware
loading for the Arduino Nano RP2040 Connect and Nano 33 BLE boards alongside a
tabbed editor and a code minimap. The release stays on the Qt Creator 4.0.2
base and bundles the new 4.1.0 OpenMV firmware. There are breaking changes:
automatic indentation is now off by default and the combined openmv.bin /
openmv.dfu firmware images were dropped for OPENMV2/3/4/4P, OPENMVPT, and
PORTENTA boards, which are workflow and behavior changes for anyone relying on
those defaults or filenames.
Highlights¶
Arduino board firmware loading for the Nano RP2040 Connect and Nano 33 BLE, programmed via the new bundled
bossac(SAM-BA) andpicotool/elf2uf2/rp2040loadtoolchains.Tabbed editor so open files appear as switchable tabs across the top of the editor, with shortcuts to switch and reorder tabs.
Code minimap scrollbar that renders a miniature overview of the document, with a Text Editor settings page to toggle it and set its width.
New Arduino and Portenta examples, including a full Nano RP2040 Connect example set and ten Portenta-H7 WiFi scripts.
Bundled firmware updated to 4.1.0 across all OpenMV cameras and the Arduino Nano 33 / Nano RP2040 images.
Windows USB drivers for the Arduino Nano RP2040 Connect and Portenta H7 are now installed by the installer.
New features¶
Arduino board support: Added full firmware-loading support for the Arduino Nano RP2040 Connect and Nano 33 BLE boards, programming them via the bundled
bossac(SAM-BA) andpicotool/elf2uf2/rp2040loadtoolchains driven by newbossac.txt/boards.txtdescriptors (plus the existingpicotool.txt) (deccee676, 34e0c0ee1, ef5334782, eb9c00a33).Tabbed editor: Added an editor tab bar plugin so open files appear as switchable tabs across the top of the editor, with shortcuts for previous/next tab (
Ctrl+Page Down/Ctrl+Page Up) (325cd8d87, 5501a4082).Code minimap: Added a code minimap scrollbar plugin with a Text Editor settings page (enable toggle, width, line-count threshold, and scrollbar slider alpha) that renders a miniature overview of the document in the scrollbar (325cd8d87).
Portenta-H7 WiFi examples: Added ten WiFi example scripts (connect, scan, static IP, DNS, NTP, HTTP client, HTTP-SSL client, MJPEG streamer, MQTT publish/subscribe) (b2133f9f5).
Other changes and improvements¶
Tab reordering: Added shortcuts to move the current tab left or right (
Ctrl+Shift+Page Down/Ctrl+Shift+Page Up) and disabled the editor’s conflicting defaultCtrl+PgUp/Ctrl+PgDown/Ctrl+Up/Ctrl+Downbindings so the tab-bar shortcuts work (5501a4082).Nano RP2040 Connect examples: Bundled a complete set of Python example sketches covering basics, IMU sensor, BLE, WiFi, audio FFT, and thermal camera (91847b183).
Arduino connect prompts: Added two new connect-flow dialogs: a recovery hint instructing users to short
RECtoGNDand reset the board when an old Arduino RP2040 USB PID is detected, and an information notice that the Nano 33 BLE has no onboard data flash disk when a flash-FS erase is requested (91847b183).Additional Arduino and Portenta examples: Added new Python examples for the Arduino Nano 33 BLE Sense (blinky), Portenta H7 BLE temperature, improved Portenta H7 PWM control, an updated Portenta H7 Ethernet peer-to-peer script, and an updated
ulabfilter example (45a4564f4), plus a Portenta H7 Ethernet cable-test example (af1b2fcff).OpenMV WiFi-Shield example: Added a new
http_post.pyHTTP POST example under14-WiFi-Shield(c73d9fdcf).WiFi read timeouts: Split read timeouts so WiFi connections get a longer stall timeout (3000ms vs 1000ms serial) and re-transmit the pending command after a WiFi stall instead of failing (81f00ac58).
Simplified editor chrome: Hid the editor toolbar’s split and close-split buttons and forced high-DPI auto-scaling on Linux to keep the editor layout consistent (bc14a2290).
Offline documentation: Refreshed the bundled offline documentation, adding per-sensor camera pinout images (H7 OV7725, H7 Plus OV5640, M4/M7 variants) and updating the IDE overview and tutorial pages (97ff73ebd).
Bug fixes¶
Fixed the RP2040 (PICO) flash-erase offset used during firmware programming so the correct flash region is erased (91847b183).
Made the bundled Linux/macOS
bossacandpicotoolbinaries executable so firmware loading works on those platforms, and guarded the minimap renderer to only run on Qt >= 5.6 (76613152f).Fixed the firmware-upgrade prompt to honor its dialog buttons (checking
QDialog::Accepted) and made serial/TCP transfer stall handling restart its timers when new data arrives so long transfers no longer time out spuriously (dd4ce12a5).
Platform and tool support¶
Qt Creator base: 4.0.2.
Bundled firmware: Updated the bundled OpenMV firmware to the 4.1.0 release (
firmware.txt: 4.0.2 -> 4.1.0) (b78603045); earlier in the cycle the same file was stepped through the intermediate 4.0.1 and 4.0.2 builds (beec4d25b, eb9c00a33).New flash toolchains: Bundled
bossacand thepicotool/elf2uf2/rp2040loadtoolchain for all platforms (windows/osx/linux32/linux64/arm/aarch64).Windows USB drivers: Added signed driver installation for the Arduino Nano RP2040 Connect and Portenta H7 boards, run via the installer (bc14a2290, a8ae96e1b).
New sensors recognized: Added the PAJ6100 image sensor (914546e78) and the GC2145 (
0x21) and MT9M114 camera sensors to the bundledshare/qtcreator/firmware/sensors.txtsensor table (9a8b1c762); MT9M114’s ID was initially0x81and later corrected to0x2481(eb9c00a33).
Breaking changes¶
User-visible workflow and behavior breaks in this release.
Automatic indentation is now off by default. The editor’s auto-indent default was flipped to off (and forced off on load) and the tab key no longer indents; the
Auto indentandTab key performs auto-indentcontrols were removed from theText Editor>Behaviorsettings page, so typing no longer auto-indents new lines unless changed in firmware/source (bc14a2290).The combined
openmv.bin/openmv.dfufirmware images (onlyopenmv.binfor OPENMVPT, which never shipped anopenmv.dfu) were removed for OPENMV2/3/4/4P, OPENMVPT, and PORTENTA boards; only the separatebootloader/firmware/uvcimages remain (84cd4cd2d).The
vsync_gpio_outputexamples (in both theOpenMVandArduino/Portenta-H702-Board-Controlexample sets) now require the firmware’s newset_vsync_callbackAPI instead ofset_vsync_output, and the callback now togglesLED_BLUErather than the IR LED (f13453bdc).