Releases: pimoroni/pimoroni-pico
Version 1.25.0
This release includes many, many, many changes including a bump to MicroPython v1.25.0 and all of the bugfixes and tweaks since 1.24.1.
We've also made many, many improvements to PicoVector and Alright Fonts- features you may already have encountered in Presto or Interstate 75.
Over the beta releases, this release includes a fix to PicoGraphics memory allocation, avoiding some breakage when using a lower MicroPython garbage collection threshold than typical. Plus a fix to Inky Frame to avoid running as non-blocking by default.
What's Changed
- Docs: Fix .uf2 names, add pico_usb. by @Gadgetoid in #950
- TEST: Revert to v1.23.0. by @Gadgetoid in #952
- Add SPI import to SD card upload example by @johnbintz in #960
- AS7343 examples tidy by @helgibbons in #961
- Documentation: RV3028 by @thirdr in #955
- Move nano specs hack into our module cmake files. by @Gadgetoid in #968
- docs: add link to readme by @helgibbons in #969
- Docs: update GFX Pack readme by @helgibbons in #972
- Picographics: Update README.md by @helgibbons in #977
- Pico Display 2.8": Update examples by @helgibbons in #973
- CI: Pin SDK version to 1.5.1. by @Gadgetoid in #979
- CI: Bump Pico SDK to 2.0.0. 🎉 by @Gadgetoid in #980
- Tinyweb: Sync with upstream. by @Gadgetoid in #986
- Pico Display 2.x: example menus by @thirdr in #982
- Update setup instructions for macOS by @stephenhouser in #991
- as7343: Fix channel and status order. by @Gadgetoid in #993
- Pico Display 2.x: Fixed button function by @thirdr in #1003
- Plasma Stick 2040 W: add link by @helgibbons in #1016
- More fixes for SDK 2.0.0 by @Gadgetoid in #1008
- CI: Switch to action-gh-release. by @Gadgetoid in #1018
- Allow spritesheets for PenRGB565 by @waffshappen in #959
- A roundup of not necessarily related fixes from other branches by @Gadgetoid in #1020
- Add Garbage Collection to weather example by @LeePorte in #974
- Fix linting fail. by @Gadgetoid in #1021
- Bump to MicroPython v1.24.0 by @Gadgetoid in #1024
- fix: [url] placekitten.com is down, someone created a drop in replacement, placecats.com by @SteveClement in #1022
- Examples: Update ADC() by @helgibbons in #966
- add brightness control to default Plasma Stick W example by @helgibbons in #957
- PPP-enabled Pico build. by @Gadgetoid in #947
- pcf85063a: RP2350 Fixes by @Gadgetoid in #1030
- Patches for Inky on SDK 2.1.0 + MicroPython edge by @Gadgetoid in #1032
- hub75: don't enable an unrelated IRQ by @Daft-Freak in #1033
- picographics: update text docs by @Daft-Freak in #1034
- Add Pico Display Pack 2.8 and fix SPI for st7789 on Pico2 by @peardox in #1006
- Display Pack: Make button example work with RP2350 boards by @helgibbons in #1041
- Fix Button class on Pico 2W by @isaac-webb in #1043
- README: Added link to RP2350 repo by @thirdr in #1046
- PicoGraphics: Fix overflow bug in p4 pixel span. by @Gadgetoid in #1049
- Fix: Properly implement non-blocking update functions for the Inky Frame by @jaeheonshim in #1042
- SCD4X: API bump and possible low power support by @Gadgetoid in #1029
- Correct the output of the as7343 demo by @Zyuangeorge in #1055
- CI: Bump to Pico SDK 2.1.1. by @Gadgetoid in #1058
- SCD4X: Add calibration commands for #1056. by @Gadgetoid in #1057
- compatibility changes for use with microdot 2.x by @thirdr in #1061
- Examples: update Unicorn Paint for microdot 2.x by @helgibbons in #1062
- Update BME68X and BME690 examples by @helgibbons in #1073
- QA/CI: Update and apply Python and MicroPython linting rules. by @Gadgetoid in #1075
- PicoVector Enhancements & PicoGraphics Layers by @Gadgetoid in #1019
New Contributors
- @johnbintz made their first contribution in #960
- @stephenhouser made their first contribution in #991
- @waffshappen made their first contribution in #959
- @LeePorte made their first contribution in #974
- @SteveClement made their first contribution in #1022
- @peardox made their first contribution in #1006
- @isaac-webb made their first contribution in #1043
- @jaeheonshim made their first contribution in #1042
- @Zyuangeorge made their first contribution in #1055
Full Changelog: v1.23.0...v1.25.0
Version 1.25.0 - Preview
We Couldn't Wait For An Official MicroPython 1.25 Release
The impetus behind this release is mostly to make BME690 drivers available, since it's based upon BOSCH's C driver and thus compiled into our batteries included builds. If you need BME690 support, then you've come to the right place.
There are, however, many, many, many other changes including a bump to MicroPython master - ostensibly v1.25.0 - and all of the bugfixes and tweaks since 1.24.1.
We've also made many, many improvements to PicoVector and Alright Fonts- features you may already have encountered in Presto or Interstate 75.
What's Changed
- Add SPI import to SD card upload example by @johnbintz in #960
- AS7343 examples tidy by @helgibbons in #961
- Documentation: RV3028 by @thirdr in #955
- Move nano specs hack into our module cmake files. by @Gadgetoid in #968
- docs: add link to readme by @helgibbons in #969
- Docs: update GFX Pack readme by @helgibbons in #972
- Picographics: Update README.md by @helgibbons in #977
- Pico Display 2.8": Update examples by @helgibbons in #973
- CI: Pin SDK version to 1.5.1. by @Gadgetoid in #979
- CI: Bump Pico SDK to 2.0.0. 🎉 by @Gadgetoid in #980
- Tinyweb: Sync with upstream. by @Gadgetoid in #986
- Pico Display 2.x: example menus by @thirdr in #982
- Update setup instructions for macOS by @stephenhouser in #991
- as7343: Fix channel and status order. by @Gadgetoid in #993
- Pico Display 2.x: Fixed button function by @thirdr in #1003
- Plasma Stick 2040 W: add link by @helgibbons in #1016
- More fixes for SDK 2.0.0 by @Gadgetoid in #1008
- CI: Switch to action-gh-release. by @Gadgetoid in #1018
- Allow spritesheets for PenRGB565 by @waffshappen in #959
- A roundup of not necessarily related fixes from other branches by @Gadgetoid in #1020
- Add Garbage Collection to weather example by @LeePorte in #974
- Fix linting fail. by @Gadgetoid in #1021
- Bump to MicroPython v1.24.0 by @Gadgetoid in #1024
- fix: [url] placekitten.com is down, someone created a drop in replacement, placecats.com by @SteveClement in #1022
- Examples: Update ADC() by @helgibbons in #966
- add brightness control to default Plasma Stick W example by @helgibbons in #957
- PPP-enabled Pico build. by @Gadgetoid in #947
- pcf85063a: RP2350 Fixes by @Gadgetoid in #1030
- Patches for Inky on SDK 2.1.0 + MicroPython edge by @Gadgetoid in #1032
- hub75: don't enable an unrelated IRQ by @Daft-Freak in #1033
- picographics: update text docs by @Daft-Freak in #1034
- Add Pico Display Pack 2.8 and fix SPI for st7789 on Pico2 by @peardox in #1006
- Display Pack: Make button example work with RP2350 boards by @helgibbons in #1041
- Fix Button class on Pico 2W by @isaac-webb in #1043
- README: Added link to RP2350 repo by @thirdr in #1046
- PicoGraphics: Fix overflow bug in p4 pixel span. by @Gadgetoid in #1049
- Fix: Properly implement non-blocking update functions for the Inky Frame by @jaeheonshim in #1042
- SCD4X: API bump and possible low power support by @Gadgetoid in #1029
- Correct the output of the as7343 demo by @Zyuangeorge in #1055
- CI: Bump to Pico SDK 2.1.1. by @Gadgetoid in #1058
- SCD4X: Add calibration commands for #1056. by @Gadgetoid in #1057
- compatibility changes for use with microdot 2.x by @thirdr in #1061
- Examples: update Unicorn Paint for microdot 2.x by @helgibbons in #1062
- BME69X: Add C driver and MicroPython bindings. by @Gadgetoid in #1064
New Contributors
- @johnbintz made their first contribution in #960
- @stephenhouser made their first contribution in #991
- @waffshappen made their first contribution in #959
- @LeePorte made their first contribution in #974
- @SteveClement made their first contribution in #1022
- @peardox made their first contribution in #1006
- @isaac-webb made their first contribution in #1043
- @jaeheonshim made their first contribution in #1042
- @Zyuangeorge made their first contribution in #1055
Full Changelog: v1.23.0-1...v1.25.0-beta1
Version 1.24.0 - Beta 2
This release is based upon MicroPython 1.24.0 which introduces, among other things, support for the RP2350 chip found in the Pico 2 and our own boards. Since RP2350 is new, and we've been busy working on various new features and bugfixes to accompany it, this release should be considered beta.
Changes Since Beta 1
This build includes, above all else, an actual PPP build which seems to have got lost from Beta 1.
In addition to this there are many, many bugfixes to PicoVector. There's also some tentative PicoVector documentation here: https://github.com/pimoroni/presto/blob/main/docs/picovector.md
Doing A Thing With PPP
You'll notice a new "ppp" build, this includes MicroPython's new PPP support, leveraging UART to talk to networking modules like our Clipper LTE Breakout. We need a standalone build for this because PPP and networking support are bulky, requiring a 1MB/1MB filesystem split.
See https://github.com/pimoroni/pimoroni-pico-rp2350/blob/main/micropython/examples/pico_plus_2/breakouts/lte-catfacts.py for an example of how to get the LTE module up and running with Pico!
PicoVector Changes Again
We've completely overhauled PicoVector more or less from the ground up, this includes changes to drawing operations, font formats and a whole bunch of plumbing changes which render it quite incompatible with old PicoVector code. If you've got some existing code you want to port over, chime in on #1026
PicoGraphics Layers
We've introduced the concept of layers into PicoGraphics. This is a fairly memory intensive feature that lets you create a PicoGraphics
instance with multiple drawing layers. It doesn't have much practical use on RP2040 builds - ie: most of the boards supported here - but can be very useful on the RP2350. Documentation and examples are scarce while we work out how it fits into the bigger picture.
Non-blocking Inky Frame
Inky Frame has gained a non-blocking mode, so you can put that 20-second refresh time to better use. Find out more at #936
What's Changed
- Add SPI import to SD card upload example by @johnbintz in #960
- AS7343 examples tidy by @helgibbons in #961
- Documentation: RV3028 by @thirdr in #955
- Move nano specs hack into our module cmake files. by @Gadgetoid in #968
- docs: add link to readme by @helgibbons in #969
- Docs: update GFX Pack readme by @helgibbons in #972
- Picographics: Update README.md by @helgibbons in #977
- Pico Display 2.8": Update examples by @helgibbons in #973
- CI: Pin SDK version to 1.5.1. by @Gadgetoid in #979
- CI: Bump Pico SDK to 2.0.0. 🎉 by @Gadgetoid in #980
- Tinyweb: Sync with upstream. by @Gadgetoid in #986
- Pico Display 2.x: example menus by @thirdr in #982
- Update setup instructions for macOS by @stephenhouser in #991
- as7343: Fix channel and status order. by @Gadgetoid in #993
- Pico Display 2.x: Fixed button function by @thirdr in #1003
- Plasma Stick 2040 W: add link by @helgibbons in #1016
- More fixes for SDK 2.0.0 by @Gadgetoid in #1008
- CI: Switch to action-gh-release. by @Gadgetoid in #1018
- Allow spritesheets for PenRGB565 by @waffshappen in #959
- A roundup of not necessarily related fixes from other branches by @Gadgetoid in #1020
- Add Garbage Collection to weather example by @LeePorte in #974
- Fix linting fail. by @Gadgetoid in #1021
- Bump to MicroPython v1.24.0 by @Gadgetoid in #1024
- fix: [url] placekitten.com is down, someone created a drop in replacement, placecats.com by @SteveClement in #1022
- Examples: Update ADC() by @helgibbons in #966
- add brightness control to default Plasma Stick W example by @helgibbons in #957
- PPP-enabled Pico build. by @Gadgetoid in #947
- pcf85063a: RP2350 Fixes by @Gadgetoid in #1030
- Patches for Inky on SDK 2.1.0 + MicroPython edge by @Gadgetoid in #1032
- hub75: don't enable an unrelated IRQ by @Daft-Freak in #1033
New Contributors
- @johnbintz made their first contribution in #960
- @stephenhouser made their first contribution in #991
- @waffshappen made their first contribution in #959
- @LeePorte made their first contribution in #974
- @SteveClement made their first contribution in #1022
Full Changelog: v1.23.0-1...v1.24.0-beta2
... Psst... Inky Frame builds have been moved to https://github.com/pimoroni/inky-frame/releases
Version 1.24.0 - Beta 1
This release is based upon MicroPython 1.24.0 which introduces, among other things, support for the RP2350 chip found in the Pico 2 and our own boards. Since RP2350 is new, and we've been busy working on various new features and bugfixes to accompany it, this release should be considered beta.
Doing A Thing With PPP
You'll notice a new "ppp" build, this includes MicroPython's new PPP support, leveraging UART to talk to networking modules like our Clipper LTE Breakout. We need a standalone build for this because PPP and networking support are bulky, requiring a 1MB/1MB filesystem split.
See https://github.com/pimoroni/pimoroni-pico-rp2350/blob/main/micropython/examples/pico_plus_2/breakouts/lte-catfacts.py for an example of how to get the LTE module up and running with Pico!
PicoVector Changes Again
We've completely overhauled PicoVector more or less from the ground up, this includes changes to drawing operations, font formats and a whole bunch of plumbing changes which render it quite incompatible with old PicoVector code. If you've got some existing code you want to port over, chime in on #1026
PicoGraphics Layers
We've introduced the concept of layers into PicoGraphics. This is a fairly memory intensive feature that lets you create a PicoGraphics
instance with multiple drawing layers. It doesn't have much practical use on RP2040 builds - ie: most of the boards supported here - but can be very useful on the RP2350. Documentation and examples are scarce while we work out how it fits into the bigger picture.
Non-blocking Inky Frame
Inky Frame has gained a non-blocking mode, so you can put that 20-second refresh time to better use. Find out more at #936
What's Changed
- Add SPI import to SD card upload example by @johnbintz in #960
- AS7343 examples tidy by @helgibbons in #961
- Documentation: RV3028 by @thirdr in #955
- Move nano specs hack into our module cmake files. by @Gadgetoid in #968
- docs: add link to readme by @helgibbons in #969
- Docs: update GFX Pack readme by @helgibbons in #972
- Picographics: Update README.md by @helgibbons in #977
- Pico Display 2.8": Update examples by @helgibbons in #973
- CI: Pin SDK version to 1.5.1. by @Gadgetoid in #979
- CI: Bump Pico SDK to 2.0.0. 🎉 by @Gadgetoid in #980
- Tinyweb: Sync with upstream. by @Gadgetoid in #986
- Pico Display 2.x: example menus by @thirdr in #982
- Update setup instructions for macOS by @stephenhouser in #991
- as7343: Fix channel and status order. by @Gadgetoid in #993
- Pico Display 2.x: Fixed button function by @thirdr in #1003
- Plasma Stick 2040 W: add link by @helgibbons in #1016
- More fixes for SDK 2.0.0 by @Gadgetoid in #1008
- CI: Switch to action-gh-release. by @Gadgetoid in #1018
- Allow spritesheets for PenRGB565 by @waffshappen in #959
- A roundup of not necessarily related fixes from other branches by @Gadgetoid in #1020
- Add Garbage Collection to weather example by @LeePorte in #974
- Fix linting fail. by @Gadgetoid in #1021
- Bump to MicroPython v1.24.0 by @Gadgetoid in #1024
- fix: [url] placekitten.com is down, someone created a drop in replacement, placecats.com by @SteveClement in #1022
New Contributors
- @johnbintz made their first contribution in #960
- @stephenhouser made their first contribution in #991
- @waffshappen made their first contribution in #959
- @LeePorte made their first contribution in #974
- @SteveClement made their first contribution in #1022
Full Changelog: v1.23.0-1...v1.24.0-rc0
MicroPython Changelog: micropython/micropython@v1.23.0...v1.24.0
Version 1.23.0 - Bugfix 1
This release is basically v1.23.0, except that it's actually based upon MicroPython v1.23.0, plus a small fix to make our builds work.
If you're seeing hangs when you try to time.sleep()
or use led = Pin("LED", Pin.OUT)
or wireless functionality, then this is the release for you 🥳
Doing A Thing With USB
This release is based on MicroPython v1.23.0 (well, actually, just slightly past v1.23.0), which introduces USB support. We have not rolled this out to all of our builds because:
- It's new and complicated
- So we're still figuring it out...
- It's also big, and we're forever running out of firmware space
- And in many cases there's no good reason for USB... at least yet!
In lieu of this, you'll find a new build in this release: pico_usb
. This build gives you a way to play with USB on the Pico (non W for now) in conjunction with our libraries. To demo this we've added some basic code for long-time holdout Keybow 2040, which can now do keyboards things with MicroPython. You can find those here: https://github.com/pimoroni/pimoroni-pico/tree/main/micropython/examples/keybow2040
pico_usb
build uses a 1MB/1MB Flash/Filesystem split so it will erase your .py files. Back up before flashing!
What's Changed
To get an idea of what's new and what's improved, you should first read the MicroPython release notes: https://github.com/micropython/micropython/releases/tag/v1.23.0
Over here in Pimoroni Pico MicroPython land we've been busy fixing bugs and adding features-
Renamed And Less Breaky Builds
More of a personal bugbear than anything else, but I renamed our .uf2 files to drop the "pimoroni-" from the front so it's easier to scan-read down the list. I've also added a verification step to make sure we don't inadvertently produce totally broken builds- which has happened in a release at least once - or subtly broken builds - which has wasted inordinate amounts of my time spent scratching my head. If you want a tool/library to poke at Pico's binary metadata gooey innards, see: https://github.com/gadgetoid/py_decl
Updated ulab
Since we needed compatibility with some breaking changes in MicroPython v1.23.0, a bunch of extra fixes have been swept up in the ulab module. Details of the latest release can be found here: https://github.com/v923z/micropython-ulab/releases/tag/6.5.2
PNG Decode
We've added support for greyscale PNG files, which are a great way to stamp out monochrome icons from very, very small source files.
This support includes the ability to shift a greyscale PNGs "colours" to anywhere within a PicoGraphics palette. It's a hard concept to explain, but you can get two completely different recolours of artwork out of the same greyscale PNG file- @thirdr has illustrated this with an example: https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/pico_display/display_png_offset_palette.py
You'll also find basic PNG examples for Inky Frame, Pico Display and Tufty 2040 - https://github.com/pimoroni/pimoroni-pico/pull/928/files
All The Things 🎉
And here's an exhaustive list of everything we've merged since v1.22.2-
- PNGdec: Add greyscale support. by @Gadgetoid in #918
- README.md: Add link to pimoroni-pico-stubs. by @Gadgetoid in #910
- Added example for reading speeds from Inventor 2040W's encoders by @ZodiusInfuser in #923
- CI: Update actions to fix nodejs deprecation warnings. by @Gadgetoid in #925
- Fixed arg order bug by @thirdr in #929
- PNGdec: Add support for palette offsets and greyscale copy mode by @Gadgetoid in #919
- Slightly less frustrating MicroPython builds. by @Gadgetoid in #930
- LTR559: Add interrupt.py demo from #169. by @Gadgetoid in #909
- G/S/C Unicorn: Fix get_brightness to use correct max value. by @Gadgetoid in #911
- inky73: Add busy wait timeout. by @Gadgetoid in #920
- PicoDisplay: Fix misalignment on rotated Pico Displays (fixes #562.) by @Gadgetoid in #912
- Add support for 96x48 display to Interstate75 by @ConnorLinfoot in #867
- CI: Add py_decl verify step to catch binary overflows. by @Gadgetoid in #938
- Add PNG File subsection to Pico Graphics documentation by @coadkins in #939
- Add link to png by @exussum12 in #940
- Patch inky launcher by @thirdr in #942
- Examples/pngdec by @thirdr in #928
- Corrected pin definitions for OX and RED by @thirdr in #945
- Fixed button polarity by @thirdr in #944
- Fixed result status bug by @thirdr in #943
- CI: Scannable artifact and release names. by @Gadgetoid in #933
- AS7343: New driver for the 14 channel spectrometer by @Gadgetoid in #931
- i2s audio examples by @thirdr in #916
- Fixed background in SH1107 example by @thirdr in #946
- MicroPython v1.23.0 + USB-compatible Pico firmware. by @Gadgetoid in #915
- Docs: Fix .uf2 names, add pico_usb. by @Gadgetoid in #950
- TEST: Revert to v1.23.0. by @Gadgetoid in #952
Full Changelog: v1.23.0...v1.23.0-1
MicroPython Changelog: micropython/micropython@v1.22.2...v1.23.0
Note: also includes this commit: micropython/micropython@932f76c
New Contributors
- @ConnorLinfoot made their first contribution in #867
- @coadkins made their first contribution in #939
- @exussum12 made their first contribution in #940
Version 1.23.0
⚠️ Whoa There! ⚠️
I pulled in a few too many spicy, unstable post-1.23.0 commits and as a result, this release is broken. So very broken.
Please see: https://github.com/pimoroni/pimoroni-pico/releases/tag/v1.23.0-1
Doing A Thing With USB
This release is based on MicroPython v1.23.0 (well, actually, just slightly past v1.23.0), which introduces USB support. We have not rolled this out to all of our builds because:
- It's new and complicated
- So we're still figuring it out...
- It's also big, and we're forever running out of firmware space
- And in many cases there's no good reason for USB... at least yet!
In lieu of this, you'll find a new build in this release: pico_usb
. This build gives you a way to play with USB on the Pico (non W for now) in conjunction with our libraries. To demo this we've added some basic code for long-time holdout Keybow 2040, which can now do keyboards things with MicroPython. You can find those here: https://github.com/pimoroni/pimoroni-pico/tree/main/micropython/examples/keybow2040
What's Changed
To get an idea of what's new and what's improved, you should first read the MicroPython release notes: https://github.com/micropython/micropython/releases/tag/v1.23.0
Over here in Pimoroni Pico MicroPython land we've been busy fixing bugs and adding features-
Renamed And Less Breaky Builds
More of a personal bugbear than anything else, but I renamed our .uf2 files to drop the "pimoroni-" from the front so it's easier to scan-read down the list. I've also added a verification step to make sure we don't inadvertently produce totally broken builds- which has happened in a release at least once - or subtly broken builds - which has wasted inordinate amounts of my time spent scratching my head. If you want a tool/library to poke at Pico's binary metadata gooey innards, see: https://github.com/gadgetoid/py_decl
Updated ulab
Since we needed compatibility with some breaking changes in MicroPython v1.23.0, a bunch of extra fixes have been swept up in the ulab module. Details of the latest release can be found here: https://github.com/v923z/micropython-ulab/releases/tag/6.5.2
PNG Decode
We've added support for greyscale PNG files, which are a great way to stamp out monochrome icons from very, very small source files.
This support includes the ability to shift a greyscale PNGs "colours" to anywhere within a PicoGraphics palette. It's a hard concept to explain, but you can get two completely different recolours of artwork out of the same greyscale PNG file- @thirdr has illustrated this with an example: https://github.com/pimoroni/pimoroni-pico/blob/main/micropython/examples/pico_display/display_png_offset_palette.py
You'll also find basic PNG examples for Inky Frame, Pico Display and Tufty 2040 - https://github.com/pimoroni/pimoroni-pico/pull/928/files
All The Things 🎉
And here's an exhaustive list of everything we've merged since v1.22.2-
- PNGdec: Add greyscale support. by @Gadgetoid in #918
- README.md: Add link to pimoroni-pico-stubs. by @Gadgetoid in #910
- Added example for reading speeds from Inventor 2040W's encoders by @ZodiusInfuser in #923
- CI: Update actions to fix nodejs deprecation warnings. by @Gadgetoid in #925
- Fixed arg order bug by @thirdr in #929
- PNGdec: Add support for palette offsets and greyscale copy mode by @Gadgetoid in #919
- Slightly less frustrating MicroPython builds. by @Gadgetoid in #930
- LTR559: Add interrupt.py demo from #169. by @Gadgetoid in #909
- G/S/C Unicorn: Fix get_brightness to use correct max value. by @Gadgetoid in #911
- inky73: Add busy wait timeout. by @Gadgetoid in #920
- PicoDisplay: Fix misalignment on rotated Pico Displays (fixes #562.) by @Gadgetoid in #912
- Add support for 96x48 display to Interstate75 by @ConnorLinfoot in #867
- CI: Add py_decl verify step to catch binary overflows. by @Gadgetoid in #938
- Add PNG File subsection to Pico Graphics documentation by @coadkins in #939
- Add link to png by @exussum12 in #940
- Patch inky launcher by @thirdr in #942
- Examples/pngdec by @thirdr in #928
- Corrected pin definitions for OX and RED by @thirdr in #945
- Fixed button polarity by @thirdr in #944
- Fixed result status bug by @thirdr in #943
- CI: Scannable artifact and release names. by @Gadgetoid in #933
- AS7343: New driver for the 14 channel spectrometer by @Gadgetoid in #931
- i2s audio examples by @thirdr in #916
- Fixed background in SH1107 example by @thirdr in #946
- MicroPython v1.23.0 + USB-compatible Pico firmware. by @Gadgetoid in #915
Full Changelog: v1.22.2...v1.23.0
MicroPython Changelog: micropython/micropython@v1.22.2...932f76c
New Contributors
- @ConnorLinfoot made their first contribution in #867
- @coadkins made their first contribution in #939
- @exussum12 made their first contribution in #940
Version 1.22.2
Better... Later Than Neverer?
Hot on the tail of MicroPython v1.22.1 there was a patch release which included some changes to DMA interrupt handler behavior which we had to be a little cautious about embracing. It turns out that these did, in fact, expose some problems in the Hub75/Interstate75 driver which I have - hopefully - fixed. This release is mostly to track MicroPython v1.22.2, but includes a few downstream changes too.
For a complete list of MicroPython changes since v1.21.1, see micropython/micropython@v1.22.1...v1.22.2
This release also includes some fixes to PNGDEC (The PNG image decoder) to make it compatible with Badger 2040 / Inky Pack. This is useful, since PNG is a much, much better format for precisely plotting pixels on a 1-bit display.
Finally JPEGDEC gets a working width
and height
method which are usable after you open a file or stream, so you can determine the size of a JPEG before drawing it.
ULAB
ulab
- the lite, MicroPython version of numpy - can be found in the Cosmic Unicorn, Galactic Unicorn, Stellar Unicorn, Tufty 2040, Pico LiPo 4MB and Pico LiPo 16MB builds.
What's Changed
- Plasma Stick: add link by @helgibbons in #905
- JPEGDEC: Backport width/height changes from pngdec. by @Gadgetoid in #899
- Fixes for PNGDEC on Badger 2040 / Badger 2040 W by @Gadgetoid in #907
- CI: Bump MicroPython to v1.22.2. by @Gadgetoid in #904
Full Changelog: v1.22.1...v1.22.2
Version 1.22.1
Better Late Than Never
This release is - mostly - to track the latest v1.22.0 release of MicroPython and the v1.22.1 patch release, so you can start enjoying the fixes/changes.
For a complete list of MicroPython changes since v1.21.0, see micropython/micropython@v1.21.0...v1.22.1
Possible known issues:
- micropython/micropython#13380
- micropython/micropython#13377
⚠️ this release does not include patch release v1.22.2 - https://github.com/micropython/micropython/releases/tag/v1.22.2
What's Changed
- Pico Graphics: Avoid unecessary and broken polygon scanline clip. by @Gadgetoid in #862
- [Inky Frame] Fix news headline redirect example by @everyplace in #888
- [Plasma Stick 2040W] add Plasma LEDs link by @bitcdr in #886
- fix hue errors in plasma_stick_rainbows by @raybellis in #883
- Badger2040/2040W: Remove old/incompatible examples. by @Gadgetoid in #860
- fix: Only set time if the wlan is connected by @andrewjw in #813
- update picoscroll docs by @helgibbons in #876
- add adjustment for time zone offset by @pacohope in #877
- CI: Move some workflow steps into ci/micropython.sh by @Gadgetoid in #878
- CI: Bump MicroPython to v1.22.1. by @Gadgetoid in #892
- st7789: Remove mystery meat command implicated by #567. by @Gadgetoid in #898
- Add I2C pin definitions to motor2040 header by @robberwick in #890
New Contributors
- @everyplace made their first contribution in #888
- @bitcdr made their first contribution in #886
- @andrewjw made their first contribution in #813
- @pacohope made their first contribution in #877
- @robberwick made their first contribution in #890
Full Changelog: v1.21.0...v1.22.1
Version 1.21.0
MicroPython Made Me Do It
This release is - mostly - to track the latest v1.21.0 release of MicroPython, so you can start enjoying the fixes/changes
For a complete list of MicroPython changes since v1.20.6, see micropython/micropython@856e08b...v1.21.0
We have a couple of downstream fixes, too:
- JPEGDEC: If you supply bytes to
jpeg.open_RAM
it will now work as you might expect - sdcard: We've dropped our compiled
sdcard.mpy
in favour of including the micropython-lib sdcard.py
What's Changed
- Add I2C pins for PicoVision by @helgibbons in #852
- IOExpander: add I2C address change example by @helgibbons in #850
- JPEGDEC: Treat byte arrays as raw JPEG data for #435. by @Gadgetoid in #855
- CI: Bump MicroPython to v1.21.0. by @Gadgetoid in #858
Full Changelog: v1.20.6...v1.21.0
v1.20.6
(Slightly More) Glorious Vector Visuals
This release is mostly bugfixes for v1.20.5s vector graphics release.
There's also a bitmap font fix, making a space - in fixed_width mode - count as a fixed-width character, rather than the font's preconfigured space width.
What's Changed
- Tufty 2040: Vector examples. by @Gadgetoid in #837
- Fix clean Micropython build by @MichaelBell in #838
- Allow pen function for fast tile alpha blending by @MichaelBell in #839
- Initialize all matrix values by @MichaelBell in #841
- Fix newlines in rotated text by @MichaelBell in #842
- Improve pretty_poly performance by @MichaelBell in #840
- PicoVector - Fixes & Improvements by @Gadgetoid in #843
- Galactic: add links by @helgibbons in #844
- Bitmap Fonts: Fixed-width space for #765. by @Gadgetoid in #846
Full Changelog: v1.20.5...v1.20.6