v2.9.0

v2.9.0 introduces initial FLIR Lepton thermal-camera module support (Lepton SDK, module-ID detection, 16-bit camera-bus register addressing) and switches windowing to software cropping for more reliable DMA transfers. The sensor.snapshot() line_filter keyword was removed — read the breaking changes below.

Highlights

  • FLIR Lepton — initial thermal-camera module support (Lepton SDK, module-ID detection).

  • 16-bit camera-bus registers — supports sensors (like the Lepton) with 16-bit register addresses.

  • Software cropping — windowing now uses software cropping for more reliable DMA transfer sizes.

  • Breaking: the sensor.snapshot() line_filter keyword was removed — see the breaking changes.

New features

  • FLIR Lepton — added the FLIR Lepton module, Lepton SDK, Lepton module-ID support, and the ability for sensors to override the default snapshot function (so the Lepton can provide its own capture path).

  • Camera bus — added 16-bit register-address support.

Other changes and improvements

  • Switched from DCMI hardware cropping to software cropping (fixing issues with some DMA transfer sizes), moved bayer_to_rgb565 into imlib, and added the WINC SPI prescaler to the board configuration files.

Bug fixes

  • Fixed SD-card issues (disabled the USB IRQ during non-DMA SD transfers), JPEG Bayer bounds, and added a sensor window-size check.

Hardware and board support

  • FLIR Lepton thermal-camera module (initial support).

Breaking API changes

User-visible API breaks between v2.8.0 and v2.9.0. Scope: Python C-modules in modules/ and Python libraries in scripts/libraries/.

The breaking change is minor and only affects scripts that used the line_filter snapshot keyword. Each commit hash links to its diff on GitHub.

sensor.snapshot() line_filter keyword removed (minor)

The line_filter keyword argument (a per-line filter callback) was removed from sensor.snapshot(). Scripts that passed sensor.snapshot(line_filter=...) must drop that argument and perform any per-line processing on the returned image instead.

Commits: f7e691e39

Migration checklist

Remove the line_filter keyword from sensor.snapshot() calls and process the returned image instead (the line_filter removal). All other scripts run unchanged.