v1.0.0

v1.0.0 is the first public release of OpenMV IDE, a customized Qt Creator build (Qt Creator 4.0.2) tailored for developing on the OpenMV Cam. It adds USB serial discovery and connection, on-cam script execution, a live frame buffer and histogram, and Python traceback navigation. There are no breaking changes, as this is the initial release.

Highlights

  • OpenMV-branded Qt Creator with its own splash screen, an Examples menu, and a Python editor that opens new untitled .py files pre-filled with a sensor snapshot template for the OpenMV Cam.

  • Connect enumerates serial ports matching the OpenMV Cam VID/PID and reads back the board firmware version, shown in the status bar.

  • Run on cam with Connect/Disconnect/Start/Stop toolbar controls: Start (Ctrl+R) sends the current script to the cam and Stop halts it.

  • Live Frame Buffer viewer with zoom-to-fit, optional JPEG compression, a disable toggle for maximum performance, and a live FPS readout.

  • Live Histogram panel switchable between RGB, Grayscale, LAB, and YUV color spaces (Grayscale/LAB recommended for color tracking).

  • Traceback navigation parses Python errors from the cam and jumps the editor to the offending file and line.

New features

  • OpenMV IDE shell. The application launches with the OpenMV IDE display name and an OpenMV splash screen, adds an Examples submenu built by scanning the bundled examples directory, and overrides the New action so untitled .py files open pre-filled with an import sensor snapshot template and generic Python highlighting.

  • Connect / firmware version. Connect enumerates available serial ports filtering on the OpenMV Cam USB VID/PID (0x1209/0xABD1), prompts a port-selection dialog when more than one matches, opens the port, reads the board firmware version, and displays it in the status bar.

  • Script execution controls. Connect, Disconnect, Start, and Stop actions drive the camera. Start (Ctrl+R) sends the current editor’s script to the cam for execution, Stop halts the running script, and the IDE tracks running state to enable or disable the Stop button.

  • Frame Buffer viewer. A Frame Buffer panel renders frames streamed from the cam, with zoom-to-fit, an optional JPEG-compression toggle for higher framerate, a disable toggle for maximum performance, and a live FPS label.

  • Save image and templates. Right-click context actions on the Frame Buffer save an image to disk (BMP/JPG/PNG/PPM), save a template image (BMP/JPG/PGM/PPM), or save a keypoint/feature descriptor (.lbp/.ff) directly onto the cam’s drive. When a rubber-band region is dragged over the frame, all three actions operate on the cropped selection and their menu labels change accordingly (for example Save Image selection to PC); otherwise they use the full displayed frame.

  • Histogram panel. A Histogram panel plots the current frame’s channel distribution and can be switched between RGB, Grayscale, LAB, and YUV color spaces.

  • Traceback navigation. Python tracebacks printed by the cam are parsed live; the IDE opens or focuses the offending file (resolving files on the cam’s drive when needed), jumps to the reported line, and pops the error message. Serial output is also forwarded to the Message Manager terminal.

  • Cam drive association. The IDE associates a removable FAT/msdos drive with the connected cam via the Drive: status-bar button, enabling on-cam file save targets and traceback file resolution.

  • Help menu and persisted state. The Help menu adds OpenMV Docs, Forums, an About OpenMV Cam pinout link, and an About OpenMV IDE dialog. Window state, including splitter positions, zoom, JPG compression, the disable-frame-buffer toggle, the histogram color space, and the last serial port, persists across sessions.

Other changes and improvements

  • On Linux, a permission-denied connect failure prompts the sudo usermod -a -G dialout dialout-group fix.

Platform and tool support

  • Qt Creator base: 4.0.2.

  • The plugin communicates with the cam over a custom USB-debug serial protocol. Several protocol-level capabilities are present in the IO layer but are not surfaced in the UI in this release: a flash bootloader (start, reset, erase, write), camera-attribute controls (contrast, brightness, saturation, gain ceiling), a system-reset command, and a frame-update path. None of these are wired to a menu, button, or widget for users yet.

Breaking changes

None. This is the initial release of OpenMV IDE.