Wykres commitów

413 Commity (patch-img-open_file)

Autor SHA1 Wiadomość Data
Phil Howard ef0d80b151 Hub75: Remove 128x128 panel rotation hack. 2025-01-22 16:44:01 +00:00
Phil Howard 5d883cc14d ST7789: Add RAMCTRL mentioned in #1040. 2025-01-16 16:32:34 +00:00
Mike Bell d10fa81395 Hub75: Fix LED ghosting. 2025-01-16 16:32:34 +00:00
Mike Bell 4fc8323e9a Hub75: Reformat loop for performance.
~3.09ms to ~2.87ms per frame without overclock.
2025-01-16 16:32:34 +00:00
Phil Howard 44ffeeed3f 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-01-16 16:32:34 +00:00
Phil Howard 9985daf56b Plasma: Add support for GPIOs >=32.
For both APA102 and WS2812 the pins used on the same PIO must be in the same range.
The GPIO base offset applies to the whole PIO and not individual state machines.

This means that for APA102 both data and clock must be in the same pin range,
ie: either 16-48 inclusive or 0-31 inclusive.
2025-01-16 16:32:34 +00:00
Phil Howard a340b47e69 PicoGraphics: Support multiple layers in more types. 2025-01-16 16:32:34 +00:00
Phil Howard 3a9cdc8f39 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-01-16 16:32:34 +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
Jaeheon Shim cb06a20cb4 Remove duplicate busy_wait() in update function of inky73 2024-12-24 16:57:08 -05:00
Philip Howard 63461337b1
Merge pull request #1006 from PiPicoDev/display_28
Add Pico Display Pack 2.8 and fix SPI for st7789 on Pico2
2024-12-11 17:24:40 +00:00
Charlie Birks e70c40b706
hub75: also don't disable that IRQ 2024-12-04 16:07:37 +00:00
Charlie Birks 0bf63ca881
hub75: don't enable an unrelated IRQ
DREQs are not IRQs, `DREQ_PIO0_TXn` happens to align with `TIMER_IRQ_n` so this enabled a timer IRQ.
2024-12-04 14:17:13 +00:00
Phil Howard b6f657f9fc pcf85063a: Set PICO_INCLUDE_RTC_DATETIME.
And remove set_datetime and get_datetime gracefully when it's not set.

This is a temporary work-around for RP2350 lacking an RTC and not
requiring the datetime_t type. These functions should be re-implemented
in terms of C standards.
2024-11-25 13:19:44 +00:00
Phil Howard c08f496ecf pcf85063a: Drop hardware_rtc.
With datetime_t moved to types there is no need to include this as a dependency.
2024-11-25 12:33:54 +00:00
Phil Howard 0d545981dc SCD4X: Bump submodule to master. 2024-11-18 10:34:26 +00:00
Phil Howard 078f3e6a39 PicoGraphics: Support for Explorer. 2024-10-31 09:34:41 +00:00
Phil Howard 2b25e791a7 UC8151: Do *not* power off display.
Leave the IC powered so that it drains residual voltage into its circuits, rather than the display itself.

Or so the theory holds.
2024-10-25 15:02:56 +01:00
Philip Howard 3b03a30963
Merge pull request #1008 from pimoroni/feature/sdk-2.0.0
More fixes for SDK 2.0.0
2024-10-24 12:10:06 +01:00
Phil Howard 3543bab83d pcf85063a: Replace hardware/rtc with pico/types. 2024-10-02 09:18:02 +01:00
peardox 080e6adcf3 Add display_pack_28 and demo with FPS, fix spi for rp2350 in st7789 2024-10-01 18:43:39 +01:00
Phil Howard 1cf31cbe3b PWM Cluster: Make GCC 13.x happy. 2024-09-27 16:46:00 +01:00
Phil Howard 052dbce334 as7343: Fix channel and status order.
The astatus value was being interpreted as FZ, F2 and F1 causing bizarre
readings and all other channels to be shifted one place.

Additionally the datasheet has been updated to re-order F5, F7 and F8 to
F7, F8, F5, so these channels have been re-ordered accordingly.

Note: This will turn sensor output from confusing abject nonsense into
what looks like pretty reasonable colour data and fixes #989.
2024-09-06 09:59:59 +01:00
Phil Howard 0e45dcb908 PSRAM Display: Remove broken assert. 2024-08-08 17:07:58 +01:00
Philip Howard 0b133c750e
Merge pull request #931 from pimoroni/driver/as7343
AS7343: New driver for the 14 channel spectrometer
2024-06-03 11:34:45 +01:00
Phil Howard 5510c82564 PicoDisplay: Fix rotation offset for #562.
Pico Display would have a pixel offset at 90 and 180 degree rotations.

Add a special case offset tweak for these, and demystify the rotate_180 variable.
2024-04-17 12:44:40 +01:00
Phil Howard 8cf276b992 inky73: Add busy wait timeout.
Add a timeout to fix Inky 7.3" hanging on batteries.

Basically assumes the update has finished if it takes > 45s, and allows a subsequent attempt
rather than hanging indefinitely.

Raised, texted and fixed by w3stbam: https://github.com/pimoroni/pimoroni-pico/pull/900

Rewritten as mentioned in the PR.
2024-04-17 12:33:24 +01:00
Phil Howard 6fcbaf5616 AS7343: MicroPython bindings. 2024-04-15 11:53:34 +01:00
Phil Howard 6803f00b31 AS7343: New 14-channel spectral sensor driver. 2024-04-15 11:53:34 +01:00
Phil Howard b0d53dadb3 Hub75: avoid clobbering shared IRQ handlers.
MicroPython's DMA class uses shared IRQ handlers, which would be
clobbered by Hub75's use of an exclusive handler.

Additionally clean up some dead code (DMA_IRQ_1??), more epxlicitly
clean up the claimed PIOs and programs, and do not use a fixed
DMA channel. This seems to have fixed a bug whereupon Hub75 would
hardlock on the 5th soft reset.
2024-03-05 10:30:48 +00:00
Phil Howard c19b2276f1 st7789: Remove mystery meat command implicated by #567.
This should, in theory, fix the weird display corruption bug affecting Tufty 2040.
2024-01-23 13:14:12 +00:00
Mike Bell 34b8ac9f0c Wrap pio.h includes in NO_QSTR so a fresh Micropython build doesn't fall over. 2023-09-08 18:59:25 +01:00
Pete Favelle 8a9ef39158 Added includes to allow for libraries to be linked to out-of-tree 2023-08-31 10:05:08 +01:00
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