v3.1.0¶
v3.1.0 introduces the fir thermopile module (MLX90620 / MLX90640 /
AMG8833), WiFi IDE debugging and discovery over the WINC1500, a UVC
webcam firmware, sensor.shutdown(), image.selective_search(), and
the uctypes and pyb.CAN modules. Some image methods were dropped on
the OpenMV Cam M4 — read the breaking changes below.
Highlights¶
firmodule — MLX90620 / MLX90640 / AMG8833 thermopile thermal-camera support.WiFi IDE — debug and program over WiFi (WINC1500) with UDP broadcast discovery (no hardcoded IP needed).
UVC webcam — a USB Video Class firmware to use the cam as a webcam.
New APIs —
sensor.shutdown(),image.selective_search(), and theuctypes/pyb.CANmodules.Breaking:
image.mean()andimage.morph()are no longer available on the OpenMV Cam M4 — see the breaking changes.
New features¶
fir— added the thermopile module with MLX90620 / MLX90640 / AMG8833 support:fir.init(),fir.snapshot(),fir.read_ir(),fir.draw_ir()and theFIR_MLX90640/FIR_AMG8833constants, with per-sensor Thermopile-Shield examples.WiFi IDE — WiFi programming/debug over the WINC1500 with UDP broadcast discovery so OpenMV IDE can auto-find cameras (firmware reads STA/AP settings from the IDE).
UVC webcam — added a USB Video Class webcam firmware.
sensor.shutdown()— power the camera down via the PWDN pin.image.selective_search()— region-proposal rectangles, with aselective_search.pyexample.Modules — enabled the
uctypesmodule, re-enabledpyb.CAN, and enabled additional MicroPython modules; added a USB-HID example and a function to check whether the IDE is connected.
Other changes and improvements¶
Added a per-socket receive buffer for more reliable WiFi socket
recv; theimagemath methods (top_hat/black_hat/negate/replace/add/sub/mul/div/min/max/difference/blend) are now behind anIMLIB_ENABLE_MATH_OPSbuild flag (enabled by default on standard firmware).
Bug fixes¶
Imaging and camera:
Fixed
image.save()not closing the file after writing raw images (truncated/corrupt saves) and the FLIR Lepton SPI GPIO configuration.
System and connectivity:
Worked around the STM32F7 SPI BUSY-flag errata (2.11.2), fixed the WiFi IDE-debug broadcast interval / socket cleanup / debug timer, the
openmv.iniinteger parsing, and H7 flash latency.
Hardware and board support¶
MLX90620 / MLX90640 / AMG8833 thermopile (FIR) sensors.
UVC webcam — USB Video Class firmware.
WINC1500 — WiFi IDE debugging and discovery.
Breaking API changes¶
User-visible API breaks between v3.0.0 and v3.1.0. Scope: Python C-modules in
modules/ and Python libraries in scripts/libraries/.
The breaking changes are behavior changes scoped to the OpenMV Cam M4 — re- check affected scripts. Each commit hash links to its diff on GitHub.
image.mean() / image.morph() removed on the OpenMV Cam M4 (behavior)¶
To fit flash/RAM on the OpenMV Cam M4 (OMV2), image.mean() and
image.morph() were compiled out on that board; calling them now raises an
“unavailable” error. Use a different filter (e.g. image.median() /
image.midpoint()) or run the morphology / mean filtering on a newer
camera (M7 / H7). Other boards are unaffected.
Migration checklist¶
On the OpenMV Cam M4, replace image.mean() / image.morph() with
another filter or move that processing to an M7 / H7 camera
(the M4 method removal). All other scripts run
unchanged.