.. _changelog_v4_8_1: v4.8.1 ====== v4.8.1 is a maintenance release on top of v4.8.0 — camera and IDE-streaming fixes, a PAG7936 image-quality improvement, and a new GenX320 event-mode bias-tuning script. It introduces **no breaking API changes**: scripts that ran on v4.8.0 run unchanged on v4.8.1. .. contents:: On this page :local: :depth: 1 Highlights ---------- - **OV5640 fixed on 400 MHz OpenMV H7 cameras** — the pixel clock is now scaled for 400 MHz H7 parts instead of being driven at the 480 MHz rate. - **PAG7936 image quality** — the sensor driver now applies bad-pixel correction. - **IDE frame-buffer streaming fixes** — raw transfer over the legacy V1 protocol and the raw-stream → JPEG fallback both work correctly again. - **New GenX320 bias-tuning script** for event-streaming mode. - **No breaking API changes** — reflash and your v4.8.0 scripts run unchanged. New features ------------ - **GenX320 event-mode bias tuning** — a new ``genx320_event_mode_biases.py`` example for tuning the GenX320 event sensor's biases while running in event-streaming mode. (`f2e4e234c `__) Other changes and improvements ------------------------------ - **PAG7936 bad-pixel correction** — the PAG7936 global-shutter sensor driver now applies bad-pixel correction, improving image quality on boards using that sensor. (`b405fa176 `__) - **Alif Device Family Pack updated to 1.3.4** — the Alif I2C/I3C driver was updated to match, affecting :class:`machine.I2C` on Alif (AE3) boards. (`7388ef403 `__, `d79086cdc `__) Bug fixes --------- Camera and sensors: - OV5640 pixel clock is now reduced for 400 MHz STM32H7 OpenMV H7 cameras (H7 Plus boards are 480 MHz); it was previously driven too fast on 400 MHz parts. (`cd9bb2d09 `__) - Fixed the one-shot capture configuration on the STM32 DMA multi-buffer path. (`61ffb7403 `__) Host/IDE streaming: - Fixed the raw-stream → JPEG fallback: the destination image width/height and ``PIXFORMAT_JPEG`` are restored after raw-stream processing, so JPEG capture and streaming after a raw stream work correctly. (`36a8b627b `__) - Fixed raw frame-buffer transfer over the legacy V1 (USBDBG) protocol, restoring reliable IDE frame-buffer preview. (`75963a623 `__) Firmware update: - Fixed the bootloader not exiting its main loop after a DFU detach on some hosts (a USB-polling thread on the host kept the device mounted), so ``dfu-util`` / OpenMV IDE reliably reset the board after flashing. (`3a1e8dab7 `__) Hardware and board support -------------------------- - **OpenMV H7** — the OV5640 pixel clock is now scaled for 400 MHz H7 units (480 MHz on H7 Plus). - **PAG7936** — bad-pixel correction is applied by the sensor driver. - **Alif (AE3)** — Device Family Pack 1.3.4 with an updated I2C/I3C driver. Breaking API changes -------------------- v4.8.1 introduces **no breaking Python API changes**. Scripts that ran on v4.8.0 run unchanged on v4.8.1 — just reflash the firmware. The only fork-facing changes are build/tooling. .. _v4_8_1_tooling: Build / tooling *(tooling)* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ None of this affects MicroPython scripts. ``.dfu`` image generation was dropped from the STM32 and i.MX RT ports (the files were unused). The bootloader now embeds a header and encodes its version in the USB ``bcdDevice`` so host tools and firmware can identify the bootloader version at runtime; an STM32 combined-image padding bug was fixed, the ROMFS resource build (``mkromfs``) was parallelized, and the Alif Device Family Pack moved to 1.3.4. See the `firmware repository `__ history for fork-relevant detail. Migration checklist ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Nothing to do — reflash the firmware; your v4.8.0 scripts run unchanged.