Mike Bell
1919482eb1
LTE: Make stop and restart work.
2025-06-25 18:33:34 +01:00
Phil Howard
959e240544
QA: Fix RET503 (Missing explicit return) exceptions.
2025-06-25 09:57:15 +01:00
Phil Howard
62b3c4f97e
PicoGraphics: Make blocking updates interruptable.
2025-05-28 15:56:18 +01:00
Phil Howard
841253437a
PicoGraphics: Make Inky block by default as intended.
2025-05-09 17:11:33 +01:00
Phil Howard
fba0f1c962
PicoVector: Add tracked memory alloc, track the node buffer.
...
With a low GC threshold the node buffer was being collected (despite guards against this)
and causing further drawing operations to be corrupted.
Add a new tracked malloc method and use it for node buffers and font data.
Tweak pp_poly_add_path to accept a point count, avoiding many successive rellocs when
dealing with a known quantity of points (copying from an af_glyph_t.)
2025-05-09 17:11:27 +01:00
Phil Howard
a2e8127f57
PimoroniBus: SPIBus fix unused pin arguments.
...
Fixes #1074 .
2025-04-25 17:39:18 +01:00
Phil Howard
75f15c6a66
BME690: Add MP_ERROR_TEXT() around errors.
2025-04-25 17:39:18 +01:00
Phil Howard
a5d96397fc
MicroPython: Replace MICROPY_HW_PIN_RESERVED with hal function.
2025-04-25 17:39:18 +01:00
Phil Howard
b8d0f36caf
BME69X: Add C driver and MicroPython bindings.
...
This is just a straight copy and paste of BME68X, dropping in the BME69X
Sensor API and wishing upon a star that it works.
2025-04-25 17:33:53 +01:00
Mike Bell
eafb2db34b
PicoVector: Set optimization flags.
2025-04-25 17:33:53 +01:00
Phil Howard
c7776ee4ae
Plasma: Make PIO and pin args optional.
2025-04-25 17:33:53 +01:00
Phil Howard
cd2486b3d4
Plasma: Add is_busy method.
2025-04-25 17:33:53 +01:00
Phil Howard
0a4801da70
Plasma: Expose non-blocking update to MicroPython.
2025-04-25 17:33:53 +01:00
Phil Howard
a03ed44db1
PimoroniBus: Support machine.Pin.
2025-04-25 17:33:53 +01:00
Phil Howard
6845972ffe
PimoroniBus: Switch to mp_obj_malloc.
2025-04-25 17:33:53 +01:00
Phil Howard
9c2775228d
PimoroniBus: Clean up print function.
...
Use mp_printf to avoid fragmented output and converion into mp types.
2025-04-25 17:33:53 +01:00
Phil Howard
5ba5b29d39
MicroPython: Switch everything else to mp_obj_malloc.
2025-04-25 17:33:53 +01:00
Phil Howard
b12d0aa8ab
plasma: Support pins given as machine.Pin obj.
2025-04-25 17:33:53 +01:00
Phil Howard
b6f9027090
plasma: Drop pin definitions from C module.
...
Remove pin definitions in anticipation of them moving to pins.csv.
Eg:
from plasma2040 import BUTTON_A
machine.Pin(BUTTON_A)
Should become:
machine.Pin("BUTTON_A")
2025-04-25 17:33:53 +01:00
Phil Howard
613e3cdd38
Pimoroni I2C: Switch to mp_obj_malloc.
2025-04-25 17:33:53 +01:00
Phil Howard
26a8ce40f5
Pimoroni I2C: Support machine.Pin args.
2025-04-25 17:33:53 +01:00
Phil Howard
12228c4036
ulab: Bump from 6.5.2 to 6.7.3.
2025-04-25 17:33:53 +01:00
Phil Howard
cd2e412ef4
MicroPython: Add MP_ERROR_TEXT() for mp_raise_msg() calls.
2025-04-25 17:33:53 +01:00
Phil Howard
5ed7913a2c
MicroPython: Fix errors reporting an errno.
2025-04-25 17:33:53 +01:00
Phil Howard
5aaf5d3608
MicroPython: Add MP_ERROR_TEXT() around errors.
...
This is required for MicroPython error text compression which is
going to be enabled by default for RP2 builds.
We have a lot of error messages, so the potential flash gain here
is worth the effort of making this work.
2025-04-25 17:33:53 +01:00
Phil Howard
a22c966ddd
CI: Remove Unicorn boards.
...
These have moved to: https://github.com/pimoroni/unicorn
2025-04-25 17:33:53 +01:00
Phil Howard
8f5c04ba48
PicoVector: Basic documentation.
2025-04-25 17:33:53 +01:00
Phil Howard
9588ee1c26
PicoVector: Make Polygon().path chainable.
2025-04-25 17:33:53 +01:00
Phil Howard
cce0a7dabe
Hershey Fonts: Fix default value setting for HERSHEY_FONTS.
2025-04-25 17:33:53 +01:00
Phil Howard
c58142cf0b
Unicorns: Disable Hershey fonts to reclaim some bytes.
2025-04-25 17:33:53 +01:00
Phil Howard
fbe2851eaf
PicoVector: Improve transform handling.
...
* Store a reference to transform, so `set_transform(Transform())` is not GC'd until it is replaced
* Transformations return the transform, allowing chaining: `transform.rotate().scale().translate()`
* A new `get_transform` method for getting the currently set transform.
2025-04-25 17:33:53 +01:00
Phil Howard
a2b91340e2
PicoVector: Don't force iterated points to int().
2025-04-25 17:33:53 +01:00
Phil Howard
638ff3d8f4
Hershey Fonts: ifdef guard hershey features for eventual deprecation.
...
Hershey fonts have all but been replaced by PicoVector's "Alright Fonts"
implementation and in many case we need this flash back!
2025-04-25 17:33:53 +01:00
Phil Howard
1488a0b796
PNG/JPEGDEC: Remove finalizer.
...
Remove the finalizer from PNGDEC and JPEGDEC, since it was both redundant
and actively harmful.
The finalizer was just calling "close" which is unecessary since the file
is closed automatically after opening/rendering and not left open.
If a file did not exist and "open_file" bailed with ENOENT then it would
be left in an unknown state, and the finalizer calling "close" would
cause a hardlock.
2025-04-25 17:33:53 +01:00
Phil Howard
f533177731
PNG/JPEGDEC: Use MP_ROM_QSTR.
2025-04-25 17:33:53 +01:00
Phil Howard
2f5ac9b2db
PicoVector: Fix bug in polygon iterator.
...
list(Polygon) should return a list of points, but crashed with non-empty polygons.
We were advancing to the next path and then retriving an invalid point count for building the tuple.
Save the point count before advancing to the next path.
2025-04-25 17:33:53 +01:00
Phil Howard
660a19952b
PicoVector: Add arbitrary matrix transform.
2025-04-25 17:33:52 +01:00
Phil Howard
e1143e80f3
PicoVector: Fix bug in Polygon.regular.
2025-04-25 17:33:52 +01:00
Phil Howard
70a241ebd4
PicoGraphics: Check for out of range layers.
2025-04-25 17:33:52 +01:00
Phil Howard
85c2c659b9
PicoVector: MPY bindings for line and arc.
2025-04-25 17:33:52 +01:00
Phil Howard
950789e7fe
PicoGraphics/Hub75: Add support for 128x128.
2025-04-25 17:33:52 +01:00
Phil Howard
9359f679d7
PicoGraphics: Don't force Presto to RGB565.
2025-04-25 17:33:52 +01:00
Mike Bell
61b3e0e65f
PicoGraphics: Presto full res option.
2025-04-25 17:33:52 +01:00
Mike Bell
650fcf6697
PicoVector: Add optional text max width and max height.
2025-04-25 17:33:52 +01:00
Phil Howard
8f7c1b3c70
PicoVector: Runtime buffer allocation.
2025-04-25 17:33:52 +01:00
Phil Howard
9d7ada75a6
PicoGraphics: Non-blocking Inky update for #936 .
2025-04-25 17:33:52 +01:00
Phil Howard
0ea83622d0
PicoGraphics: Add Presto.
2025-04-25 17:33:52 +01:00
Phil Howard
85dee30657
PicoVector: Remove (ifdef guard) debug functions.
2025-04-25 17:33:52 +01:00
Phil Howard
b40818c900
PicoVector: Refactor text multiline support.
...
Drop dependence on null terminated strings, and for a final linebreak.
Bound all text processing using the text length.
2025-04-25 17:33:52 +01:00
Phil Howard
8f7e8d4334
PicoVector: Improve text rendering and control.
2025-04-25 17:33:52 +01:00