v5.0.0#

v5.0.0 is a major release. It introduces the OpenMV Viewer — a separate, read-only build for showing off a finished product — a new OpenMV Cam Settings Editor, the v2 camera debug protocol for v5.0.0 cameras, and a large set of editor, terminal, firmware, and machine-vision workflow improvements. It is built on Qt Creator 14.0.2.

The version jump to 5.0.0 marks the arrival of the v5.0.0 camera generation and the tooling that supports it; existing v4 projects and workflows continue to work unchanged.

Highlights#

  • OpenMV Viewer — a new, separately installed build variant that runs the IDE as a locked-down, read-only telemetry viewer. It shows the camera’s frame buffer, serial terminal, and histogram and can run a fixed script, but hides the authoring, AI/model, and settings tools, so a customer can demonstrate a product built on OpenMV without the full development environment.

  • OpenMV Cam Settings Editor — a graphical editor for the camera’s on-board settings configuration file, so you can view and change board settings from a form instead of hand-editing the file.

  • v2 camera debug protocol — v5.0.0 cameras use a new, more robust debug protocol with header CRC validation, sequence-gap recovery, and a split frame-rate display that reports the on-camera FPS and the IDE display FPS separately.

  • Load Custom Firmware from a .zip — the firmware installer now accepts a board’s build-output .zip bundle directly, making it easy to flash a custom or locally built firmware image.

  • Serial Terminal protocol debug logging — a toggle in the Serial Terminal logs the camera debug protocol with readable, emoji-tagged lines for diagnosing connection issues.

  • Reworked Help menu and in-editor docs — an OpenMV Docs submenu replaces the old flat links, F1 opens the documentation for the Python symbol under the cursor, hovering an API name shows its documentation inline, and the About dialog was modernized.

New features#

  • OpenMV Viewer build variant. A forced-viewer-mode build, branded and installed as OpenMV Viewer, with its own executable id, settings store, and bundle id so it coexists with the full IDE. It presents as a read-only telemetry viewer: Run/Stop and stop-on-connect work and run a script from disk (via -auto_run), File/Edit menus and Preferences remain, and firmware/ROMFS recovery is kept, while authoring tools, developer machine vision tools, developer settings categories, and AI/model/docs resources are stripped from the build and UI. ROMFS becomes load-only and is promoted to the Tools menu, and firmware-update completion dialogs are genericized (07722e78a8b, 5cd12ee260e, b97bf5447e4, 952b86de391, 1103f7988ed, f0f60261485, c743d5d67b9, b4bcdc2d71a, a37c032b6ff, 480e5668d29, 11c064cac93).

  • OpenMV Cam Settings Editor — a GUI editor for the camera’s settings configuration file, opened from the Tools menu (issue #205) (f55a0d7fa58, 2d7f80b03cf).

  • v2 camera debug protocol for v5.0.0 cameras, with header-CRC validation before any header field is trusted, sequence-gap recovery that rolls forward over dropped packets instead of stalling, and a frame-rate readout split into the on-camera rate and the IDE display rate (c377bdbaea8, a3f0488ddcb, 29108dd40f7, c15e6c02789).

  • Load Custom Firmware accepts a .zip bundle — pick a board’s build-output zip and the IDE flashes the firmware (and ROMFS) it contains (55e4eb2d900).

  • Serial Terminal debug logging — a button toggles tiered debug logging of the camera protocol, with each line emoji-tagged and rendered in the emoji font for readability (09990c62810, 42e23c3c11e, 997705548c7, d2208de77d4).

  • Copy/Convert Current Script — a Tools action that copies or converts the current script, with a guard against saving a compiled main.py/boot.py (81a954f33cd).

  • F1 documentation help on the Python symbol under the cursor, sharing the symbol resolver with the hover tooltips (c341330bc16).

  • In-editor documentation tooltips — hovering an OpenMV API name shows its documentation inline, resolved from the shipped .pyi stubs and the module’s own docs, so you can read what a function, method, constant, or module does without leaving your script (7ebde92d2a6, f225824ba13, 59ad01a364a, 02c1e61a2a6).

  • Name a camera — an IDE-local alias you can give a connected camera, shown in place of the serial port name so identical cameras are tellable apart (c600158ca34).

  • Keyboard Shortcuts page — the Preferences shortcuts page is now shown and filtered to the actions you can actually reach, with clearer sourcing and layout (4f5eae52e8e, 2d472fe5b40).

Editor, terminal, and UI improvements#

  • Help menu restructured into an OpenMV Docs submenu (dropping the old flat pinout links), with release-notes links added to the official-release version paths (e1337ff67c4, 9eacc0994e6).

  • About dialog modernized — automatic copyright year, a partner-logo table, and a single-line release-notes link (d89fb74138d).

  • Frame Buffer panel now shows the resolution readout and a frame-buffer mode label beside the fixed JPG button; the mode label is greyed so it does not look clickable (cb735f82337, 376b17d4e77, 39c6ffc3b26).

  • Histogram pane plots are spline-smoothed, the pane can compress (eliding labels and squishable plots), and the channel label sits beside the stats (327324ef7e9, 9f8c7035483, d204e93d5e4).

  • Coupled panel dividers — Ctrl/Cmd-dragging a divider moves the editor/terminal and frame-buffer/histogram splitters together, and the mini-splitter handles get a hover halo with a wider grab area (379dee250d6, 96b83984342).

  • Serial Terminal — auto-scroll is no longer re-pinned on every output chunk, so scrolling up during fast output stays put; the terminal can run a file from disk when there is no editor (af67a076e95, bc132aef536).

  • Docs commands are named by page instead of by index (a3201e9a4b4).

  • High-DPI / fractional scaling — icons, overlays, and the splash screen render correctly at fractional scale factors (125%, 150%, and the like), and the main window remembers its geometry and screen across restarts on multi-monitor setups (c60711e4950, 60901b6e13f, f241d2ea8ce, 54a1bc31fbd).

Firmware, boards, and tools#

  • A board can pin its last-shipped firmware version, so a board that no longer receives newer firmware is not flagged out of date (bd987d32f42).

  • Out-of-date firmware status text is now colored red to stand out (9b18d96bac5).

  • Bootloader-recovery hint — a bootloader.bin mismatch now hints at entering bootloader recovery mode (d46b998c76e).

  • Video playback is more robust: the FFmpeg path is surfaced when tools can’t launch it, the message is clearer when an architecture doesn’t support playback, input formats are queried with ffmpeg -demuxers, and Linux terminal fallbacks were added (0cc0e74a438, a75ec4898d0, 28e1ef10326, 51651780723).

  • Dataset Capture Script updated to the csi module (41a781651e4).

  • Windows installer wizard appearance improved (250599d9d9e).

Bug fixes#

  • Development-firmware install for .lst boards (AE3) now stages the binaries the listing references into the flash directory, and the dev/custom install stages the bundle’s ROMFS image while clearing any stale romfs*.img first, so the downloaded ROMFS is flashed instead of a leftover editor dump (3cf56e98668, 43bedc8c591).

  • libjpeg warnings for truncated/corrupt frames are filtered out of the log so a lossy stream doesn’t spam the terminal (6e2a8bed6cf, a5166abbdc1).

  • The examples list no longer shows the internal index.json (14ac8ca48a7).

  • Firmware-upgrade and onboarding pop-ups are suppressed in viewer mode so a product demo never prompts to overwrite the customer’s firmware (7b8528c3ad6).

  • Dangling and authoring-only keyboard shortcuts left over from stripped menus were disabled (be3bee8bb58, 27d1afc8705).

Localization#

  • Four new languages — Indonesian, Romanian, Thai, and Vietnamese — bringing the IDE to 37 translated languages, and every catalog was updated, translated, and cleaned across all languages (fcf04090843, c830e6c4de3, 5e22679923f).

Command line#

  • GNU-style ``–word`` option aliases are now accepted alongside the single-dash forms, and the -help output notes the equivalence (66414213dd9, 768c5d0e159).

Platform and tool support#

  • Qt Creator base: 14.0.2.

  • OpenMV IDE version bumped to 5.0.0.

  • New: the separately installed OpenMV Viewer build variant.

  • Python 3.14 support — the bundled parso parser was updated to 0.8.7, keeping code completion and the language server working with the latest Python syntax (578a4e39d97).

Breaking changes#

None for existing projects. The v2 debug protocol applies to v5.0.0 cameras; v4-generation cameras continue to use the existing protocol, and existing scripts and workflows are unaffected.