Phil Howard
1157e605a1
Picovision: Remove DV stick drivers to PV repo.
2023-08-21 14:04:49 +01:00
Mike Bell
211e0aa618
DV Display: Fix unaligned read across page boundary
2023-08-14 12:40:15 +01:00
Mike Bell
b8116fc371
DV Display: Ability to load sprites in native format
2023-08-14 12:40:15 +01:00
Mike Bell
3cdfe558e8
DV Display: Ability to specify sprite blend mode
2023-08-14 12:40:15 +01:00
Mike Bell
103228a88d
DV Display: Sprites in palette mode
2023-08-14 12:40:15 +01:00
Mike Bell
3a5f069ec1
DV Display: Fix clear sprite, fix tearing
2023-08-14 12:40:15 +01:00
Mike Bell
765b8a6226
DV Display: Begin exposing sprites
2023-08-14 12:40:15 +01:00
Mike Bell
3c2c7ccc94
DV Display: Support multiple scroll offsets
2023-08-14 12:40:15 +01:00
Mike Bell
b9cd998709
DV Display: Allow scrolling by single pixel in x coordinate
2023-08-14 12:40:15 +01:00
Mike Bell
1a54f7b77d
DV Display: Ability to specify a larger frame than the display, and scroll it
2023-08-14 12:40:15 +01:00
Mike Bell
8f78e3d6bc
DV Display: Switch SWD loader back to pio0 to avoid conflict with wifi
2023-08-14 12:40:15 +01:00
Mike Bell
a396512e7f
DV Display: Expose reset functionality
2023-08-14 12:40:15 +01:00
Mike Bell
9a0b21d417
DV Display: Fix palette error
2023-08-14 12:40:15 +01:00
Mike Bell
e9779fc0e7
DV Display: Probable fix for frame corruption
2023-08-14 12:40:15 +01:00
Phil Howard
cbc05863c0
DV Display: Claim unused channels and SMs.
2023-08-14 12:40:15 +01:00
Phil Howard
7d8bbf5c08
DV Display: Claim DMA channels and cleanup unused pio_prog.
...
TODO: Use claim_unused_channel in a way that survives MicroPython soft reset.
2023-08-14 12:40:15 +01:00
Mike Bell
7e9f16d80c
DV Display: Pixel doubled palette mode
2023-08-14 12:40:15 +01:00
Mike Bell
4b57162c06
DV Display: External I2C interface option
2023-08-14 12:40:15 +01:00
Phil Howard
de4aaa80b6
DV Display: Refactor pio usage with mutex program loader.
2023-08-14 12:40:15 +01:00
Phil Howard
4afe062d19
MicroPython: Make DV display us fixed pio/dma.
2023-08-14 12:40:15 +01:00
Mike Bell
3bc215074c
Make it possible to derive from DVDisplay if you want to do fancy things with the frame header
2023-08-14 12:40:15 +01:00
Mike Bell
daf7232024
Limited support for palette and RGB888 modes
2023-08-14 12:40:15 +01:00
Mike Bell
a7435c6a5e
GPIO High and palette mode support
2023-08-14 12:40:15 +01:00
Mike Bell
360588ff67
LED control
2023-08-14 12:40:15 +01:00
Mike Bell
4ed1d61336
Ability to read EDID
2023-08-14 12:40:15 +01:00
Mike Bell
31b480d138
Support for half resolutions (pixel/line doubling in the driver)
2023-08-14 12:40:15 +01:00
Mike Bell
c7049f4ff1
Ability to choose the resolution for the display
2023-08-14 12:40:15 +01:00
Mike Bell
1d8c836635
Read button state from display driver
2023-08-14 12:40:15 +01:00
Mike Bell
5971bc9ad8
Streamline RAM writes
2023-08-14 12:40:15 +01:00
Mike Bell
a1caa9495c
Buffer sequential writes
2023-08-14 12:40:15 +01:00
Mike Bell
2e8632f2b6
Use rescue DP to always get driver into a known state before load, boot via watchdog, better logging from driver.
2023-08-14 12:40:15 +01:00
Mike Bell
da36b0ad32
Load DV Stick Driver over SWD. Currently unreliable.
2023-08-14 12:40:15 +01:00
Mike Bell
9acc270418
Growing circles - runs at 30FPS
2023-08-14 12:40:15 +01:00
Mike Bell
5f8e7556f0
Begin DV Stick display driver
2023-08-14 12:40:15 +01:00
Phil Howard
70a1b26041
ADC: Avoid re-initialising ADC.
...
Only init the ADC if it's not already running.
In MicroPython this could trounce an already initialised and configured ADC,
and would disable the temperature sensor if it had been enabled by a user
before initialising any of the affected libraries.
2023-06-04 21:46:23 +01:00
Phil Howard
bff6bd023e
Unicorn: Move gamma LUTs to pimoroni_common.
2023-06-04 21:46:12 +01:00
Phil Howard
652de85f4d
Tufty 2040: RGB565 DMA display update.
...
Use DMA to transfer a native RGB565 display buffer to PIO rather than pushing into the TX FIFO in a loop.
Co-authored by @zx64 - https://github.com/pimoroni/pimoroni-pico/issues/776
2023-05-12 13:38:19 +01:00
Philip Howard
8648196cc2
Merge pull request #774 from pimoroni/breakout_encoder_wheel
...
Support for RGB Encoder Wheel Breakout
2023-05-12 11:58:15 +01:00
ZodiusInfuser
12e38c1157
Implemented GPIO MP support for Encoder wheel
2023-05-10 14:54:32 +01:00
ZodiusInfuser
653090c89e
Exposed support for GPIO pins on encoder wheel
2023-05-10 12:46:00 +01:00
Ray Bellis
bfb6490ec8
fix dangling pointer error
2023-05-08 13:19:47 +01:00
Ray Bellis
32dfdc6a20
use __builtin_bswap32
2023-05-08 13:17:51 +01:00
Niko Kotilainen
1dcad21ed2
Pico Display Pack: Display init fixes.
2023-05-04 15:07:27 +01:00
ZodiusInfuser
e3f9f14dcf
Fix ioe reset timing out too early, and encoder reversed
2023-05-03 12:34:59 +01:00
ZodiusInfuser
1cfae8b5f8
More work on encoder wheel C++, adding reset to ioe
2023-05-02 22:55:19 +01:00
ZodiusInfuser
7c11593f7c
Fix for IOExpander address not getting changed
2023-05-02 10:22:14 +01:00
Phil Howard
07bc005958
LTR559: Refactor std::vector lookup to template.
2023-03-27 15:11:30 +01:00
Phil Howard
cc5a2bdb6f
Dot Matrix: Replace std::map to avoid excessive init heap usage.
2023-03-27 15:11:30 +01:00
Phil Howard
af2b74d65d
Servo/Motor/PWM: Avoid runtime memory alloc.
2023-03-16 13:25:19 +00:00
Phil Howard
a0ab44067f
BMP280: Avoid runtime memory allocation.
2023-03-16 13:25:19 +00:00