v4.0.2¶
v4.0.2 introduces the initial RP2040 port (Raspberry Pi Pico / Arduino
Nano RP2040 Connect board files), PixArt PAJ6100 and MT9M114 sensor support, a
PDM audio filter library, and sensor improvements. STM32 ADC and the
image-transfer path changed — read the breaking changes below.
Highlights¶
Initial RP2040 port — Raspberry Pi Pico / Arduino Nano RP2040 Connect board files.
New sensors — PixArt PAJ6100 and a working MT9M114 driver.
PDM audio filter library;
sensor.set_framerate()works for any FPS.Breaking: the STM32 ADC driver was aligned with upstream and full MDMA image-transfer offload was enabled — see the breaking changes.
New features¶
RP2040 port — added the RP2040 port with Raspberry Pi Pico and Arduino Nano RP2040 Connect board files (initial bring-up; WiFi/Bluetooth land in v4.1.0).
PixArt PAJ6100 camera sensor support and a working MT9M114 driver.
PDM audio filter library added to the audio path.
Sensor —
sensor.set_framerate()now works for any FPS, a method to read the actual XCLK frequency was added, additional sensor resolutions are supported, and adisable_full_flushframebuffer option was added.
Other changes and improvements¶
Snapshot error messages were made clearer; Ethernet updates and a low-power mode were added (Portenta).
Bug fixes¶
Fixed the
pyb.Servotimer channel state, the LSM6Dx IMU driver, the STM32 H7dma_nohal_init, and a missing framesize init check.
Hardware and board support¶
Raspberry Pi Pico / Arduino Nano RP2040 Connect — initial board files.
PixArt PAJ6100 and MT9M114 camera sensors.
Breaking API changes¶
User-visible API breaks between v4.0.1 and v4.0.2.
Both breaking changes are behavior changes (same API, different results) — re-check affected scripts. Each commit hash links to its diff on GitHub.
STM32 ADC alignment and full MDMA offload (behavior)¶
The STM32 ADC driver was aligned with the upstream MicroPython
implementation, so machine.ADC behavior/readings may differ slightly from
previous releases. Separately, full MDMA offload of image transfers was
enabled, which speeds up capture but changes the transfer path and timing.
Re-check ADC-dependent code and timing-sensitive captures.
Migration checklist¶
Re-validate any machine.ADC readings and timing-sensitive capture code
against the aligned ADC driver and full MDMA offload
(the behavior changes). All other scripts run
unchanged.