Phil Howard
d9420d26c3
PicoGraphics: Make blocking updates interruptable.
2025-05-09 21:33:11 +01:00
Phil Howard
7ad0169528
PicoGraphics: Make Inky block by default as intended.
2025-05-09 13:25:27 +01:00
Phil Howard
e3a5365a39
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-08 16:28:11 +01:00
Phil Howard
232753a8c9
Inky73: Allow non-hacky pen types.
2025-04-25 15:36:12 +01:00
Phil Howard
9ac0ce1433
Pint: recvfrom: return IP address and port.
2025-04-25 15:36:12 +01:00
Phil Howard
89a2db24a1
Pint: Send socket config to binding.
...
Forward domain, type and proto to the socket binding.
2025-04-25 15:36:12 +01:00
Phil Howard
dfdad0dc68
Pint: Update to m_malloc_with_finaliser.
2025-04-25 15:36:12 +01:00
Phil Howard
d142db71d1
Pint: Trim some cruft from the build so it doesn't esplode.
2025-04-25 15:36:12 +01:00
Phil Howard
c285410466
Experimental: PINT module bindings.
...
P.I.N.T
Python Implementation of Network Transports.
2025-04-25 15:36:12 +01:00
Phil Howard
68e330285f
PimoroniBus: SPIBus fix unused pin arguments.
...
Fixes #1074 .
2025-04-25 15:36:10 +01:00
Phil Howard
a42a122144
PimoroniBus: SPIBus fix unused pin arguments.
...
Fixes #1074 .
2025-04-25 15:35:11 +01:00
Phil Howard
6358bac11e
BME690: Add MP_ERROR_TEXT() around errors.
2025-04-24 08:53:56 +01:00
Phil Howard
4ddd849bd3
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-14 13:44:31 +01:00
Mike Bell
dbd7ae94ec
PicoVector: Set optimization flags.
2025-03-28 10:31:01 +00:00
Phil Howard
15c3e66456
Plasma: Make PIO and pin args optional.
2025-03-28 10:31:01 +00:00
Phil Howard
422969a1e0
Plasma: Add is_busy method.
2025-03-28 10:31:01 +00:00
Phil Howard
4f4aef8602
Plasma: Expose non-blocking update to MicroPython.
2025-03-28 10:31:01 +00:00
Phil Howard
ba0bf0230d
PimoroniBus: Support machine.Pin.
2025-03-28 10:31:01 +00:00
Phil Howard
f7992d614d
PimoroniBus: Switch to mp_obj_malloc.
2025-03-28 10:31:01 +00:00
Phil Howard
37e6d7a3b7
PimoroniBus: Clean up print function.
...
Use mp_printf to avoid fragmented output and converion into mp types.
2025-03-28 10:31:01 +00:00
Phil Howard
abc4ad56a4
MicroPython: Switch everything else to mp_obj_malloc.
2025-03-28 10:31:01 +00:00
Phil Howard
731efa974e
plasma: Support pins given as machine.Pin obj.
2025-03-28 10:31:01 +00:00
Phil Howard
cee36e1bac
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-03-28 10:31:01 +00:00
Phil Howard
0703262b94
Pimoroni I2C: Switch to mp_obj_malloc.
2025-03-28 10:31:01 +00:00
Phil Howard
669a771c9b
Pimoroni I2C: Support machine.Pin args.
2025-03-28 10:31:01 +00:00
Phil Howard
e70929bfb8
ulab: Bump from 6.5.2 to 6.7.3.
2025-03-28 10:31:01 +00:00
Phil Howard
13a2263aed
MicroPython: Add MP_ERROR_TEXT() for mp_raise_msg() calls.
2025-03-28 10:31:01 +00:00
Phil Howard
973fade9fd
MicroPython: Fix errors reporting an errno.
2025-03-28 10:31:01 +00:00
Phil Howard
3d68cf0010
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-03-28 10:31:01 +00:00
Phil Howard
d307e4f759
CI: Remove Unicorn boards.
...
These have moved to: https://github.com/pimoroni/unicorn
2025-03-28 10:31:01 +00:00
Phil Howard
1532b2ca7c
PicoVector: Basic documentation.
2025-03-28 10:31:01 +00:00
Phil Howard
2a1c0402ce
PicoVector: Make Polygon().path chainable.
2025-03-28 10:31:01 +00:00
Phil Howard
01faf376b7
Hershey Fonts: Fix default value setting for HERSHEY_FONTS.
2025-03-28 10:31:01 +00:00
Phil Howard
fdfb28ebb8
Unicorns: Disable Hershey fonts to reclaim some bytes.
2025-03-28 10:31:01 +00:00
Phil Howard
a25b27aca8
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-03-28 10:31:01 +00:00
Phil Howard
b9a14a275d
PicoVector: Don't force iterated points to int().
2025-03-28 10:31:01 +00:00
Phil Howard
b3d7bd497d
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-03-28 10:31:01 +00:00
Phil Howard
7fee95d668
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-03-28 10:31:01 +00:00
Phil Howard
25627588c3
PNG/JPEGDEC: Use MP_ROM_QSTR.
2025-03-28 10:31:01 +00:00
Phil Howard
79844c6eaa
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-03-28 10:31:01 +00:00
Phil Howard
17785d9299
PicoVector: Add arbitrary matrix transform.
2025-03-28 10:31:01 +00:00
Phil Howard
ad7833e45a
PicoVector: Fix bug in Polygon.regular.
2025-03-28 10:31:01 +00:00
Phil Howard
3e7baf6906
PicoGraphics: Check for out of range layers.
2025-03-28 10:31:01 +00:00
Phil Howard
9162120b90
PicoVector: MPY bindings for line and arc.
2025-03-28 10:31:01 +00:00
Phil Howard
405cd490ea
PicoGraphics/Hub75: Add support for 128x128.
2025-03-28 10:31:01 +00:00
Phil Howard
9a43f5f371
PicoGraphics: Don't force Presto to RGB565.
2025-03-28 10:31:01 +00:00
Mike Bell
2811350c50
PicoGraphics: Presto full res option.
2025-03-28 10:31:01 +00:00
Mike Bell
c94f4607de
PicoVector: Add optional text max width and max height.
2025-03-28 10:31:01 +00:00
Phil Howard
1bf73a20cd
PicoVector: Runtime buffer allocation.
2025-03-28 10:31:01 +00:00
Phil Howard
24eee10895
PicoGraphics: Non-blocking Inky update for #936 .
2025-03-28 10:31:01 +00:00