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
cfe031db33
Tufty 2040: Update spectrometer vector example.
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
10acd5d3de
Tufty 2040: Update polygons example.
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
cb6bf89a33
Hub75: Performance improvements and stacked mode.
...
Inline and simplify the pixel flip for a 13.2ms -> 3.8ms speedup at 128x128 on RP2350 stock.
Drop RGB565 mode.
Add the ability to stack some panels, eg: 2x128x64 in a 128x127 configuration.
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
Phil Howard
878af7c31f
PicoGraphics: Add Presto.
2025-03-28 10:31:01 +00:00
Phil Howard
95b6c213dd
PicoVector: Remove (ifdef guard) debug functions.
2025-03-28 10:31:01 +00:00
Phil Howard
089e5df243
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-03-28 10:31:01 +00:00
Phil Howard
09dbfa1e64
PicoVector: Improve text rendering and control.
2025-03-28 10:31:01 +00:00
Phil Howard
daa6603d1b
PicoVector: Big refactor, ppp primitives.
...
* Remove Polygon types in favour of primitives .circle, .rectangle etc
* Add a new Transform type for building up transformation matrices
* Add support to set/clear transform on drawing
2025-03-28 10:31:01 +00:00
Phil Howard
71bcc9d62c
PicoVector: Rewrite around new linked-lists poly.
2025-03-28 10:31:01 +00:00
Phil Howard
dd7d6262df
PicoVector: Use tile renderer for all pens.
2025-03-28 10:31:01 +00:00
Phil Howard
d39516f9e1
PicoVector: Support float types in MicroPython bindings.
2025-03-28 10:31:01 +00:00
Phil Howard
fa20fec507
PicoVector: Remove malloc from MicroPython bindings.
2025-03-28 10:31:01 +00:00
Phil Howard
177e5e8762
PicoGraphics: Add get_clip.
2025-03-28 10:31:01 +00:00
Phil Howard
df9aeb8abb
PicoVector: Remove alright_fonts.cpp from cmake.
2025-03-28 10:31:01 +00:00
Phil Howard
a415261cc9
PicoVector: Break things until they work.
2025-03-28 10:31:01 +00:00
Phil Howard
3d6ac818a1
PicoVector: alright-fonts bringup.
2025-03-28 10:31:01 +00:00
Phil Howard
2a25cfea43
PicoVector: Suppress errors.
...
Ignore sign compare and narrowing conversion errors in pretty-poly.h.
2025-03-28 10:31:01 +00:00
Phil Howard
42d7c71a38
PicoVector: Rewrite MicroPython bindings.
2025-03-28 10:31:01 +00:00
Phil Howard
e46fec7902
PicoGraphics: Layers.
...
Add preliminary support for multiple layered drawing surfaces.
Allows, for example, static content to be loaded into one layer and
remain unmodified while the above layer contains animations.
Particularly useful for drawing PNG or JPEG UI elements which are
then overdrawn with text or animated elements, without paying the
cost of loading/decoding every frame.
2025-03-28 10:31:01 +00:00
Hel Gibbons
054fca0d79
compatibility changes for microdot 2.x
2025-03-10 15:15:14 +00:00
thirdr
53e5864101
compatibility changes for use with microdot 2.x
2025-03-03 09:40:42 +00:00
Phil Howard
cfa3d1d90d
SCD4X: Add calibration commands for #1056 .
2025-02-21 10:29:38 +00:00
Philip Howard
aa1e3f18b7
Merge pull request #1029 from pimoroni/feature/scd4x-low-power
...
SCD4X: API bump and possible low power support
2025-01-15 11:59:00 +00:00
Isaac Webb
9883943dd0
Add pin mode definition to fix Button class on Pico 2
2024-12-26 17:08:15 -05:00
Hel Gibbons
e8260bf521
Merge pull request #1041 from pimoroni/examples/rp2350-display-pack
...
Display Pack: Make button example work with RP2350 boards
2024-12-24 13:50:07 +00:00
Hel Gibbons
77e6a9db6d
update display pack button example to work with RP2350 boards
2024-12-24 12:39:29 +00:00
Phil Howard
cae1b1381d
Inky Frame: Remove MicroPython build and examples.
...
Inky Frame has a new home at: https://github.com/pimoroni/inky-frame
2024-12-03 11:49:28 +00:00
Phil Howard
2b7b9efac7
Wakeup: Remove runtime init hook.
2024-12-03 11:36:36 +00:00
Phil Howard
030b59c0d1
pcf85063a: Set PICO_INCLUDE_RTC_DATETIME for MicroPython.
2024-12-03 11:36:24 +00:00
Phil Howard
185bea2065
SCD4X: Support low power periodic measurements.
2024-11-18 10:58:16 +00:00
Phil Howard
b79814cae3
SCD4X: scd4x_get_data_ready_status to scd4x_get_data_ready_flag.
...
The function name and behaviour has changed, moving the bitwise check
into the API and making it an implementation detail.
2024-11-18 10:43:00 +00:00
Philip Howard
1495805d2b
Merge pull request #947 from pimoroni/test/network-ppp
...
PPP-enabled Pico build.
2024-10-31 12:19:50 +00:00
Philip Howard
fd4b2922e4
Merge pull request #957 from pimoroni/plasma-stick-brightness
...
add brightness control to default Plasma Stick W example
2024-10-31 12:13:53 +00:00
Philip Howard
b8f4bd3f67
Merge pull request #966 from pimoroni/examples-fix-adc
...
Examples: Update ADC()
2024-10-31 12:13:24 +00:00