Commit Graph

585 Commits

Author SHA1 Message Date
Philip Howard 91b3ffb7d8
Merge pull request #240 from pimoroni/patch-bump-mpy-1.18
Bump MicroPython to v1.18
2022-01-27 13:10:51 +00:00
Philip Howard 08f60d81d1
Merge pull request #242 from pimoroni/patch-scd41-demo
SCD41: Add i2c pins to MicroPython example
2022-01-27 13:09:10 +00:00
Phil Howard f763bae3f4 SCD41: Add i2c pins to MicroPython example 2022-01-27 11:13:22 +00:00
Phil Howard 07687bcf77 Update main README 2022-01-26 12:10:33 +00:00
Phil Howard 520757d14b Fix code example for #229 2022-01-26 10:07:17 +00:00
Phil Howard 9fddf89111 Remove set_backlight from TOC for #92 2022-01-26 09:50:37 +00:00
Philip Howard 5509d63235
Merge pull request #241 from SamStudio8/patch-1
Clarify BME68X humidity and gas resistance units
2022-01-26 09:42:13 +00:00
Sam Nicholls 7ee3d74a4a
Clarify BME68X humidity and gas resistance units 2022-01-25 22:33:04 +00:00
Phil Howard 25bebd888f Use .begin() and .size() as per #213
Correct `I2C::write_bytes` to accept a `const uint8_t*` for the array of bytes.
2022-01-25 18:20:54 +00:00
Phil Howard 64dbdd56e7 Bump MicroPython to v1.18
* Bump Blinka to 6.20.1 (from 6.14.1)
* Bump PlatformDetetc to 3.19.3 (from 3.15.3)
2022-01-25 12:14:25 +00:00
Philip Howard ab602135b6
Merge pull request #232 from waveform80/rgbgrbrg
Fix ordering of tuple returned by WS2812.get
2022-01-25 11:10:49 +00:00
Philip Howard 9c05e69573
Merge pull request #235 from mozz100/patch-1
Fix "repeat_time" docs in README
2022-01-25 11:01:29 +00:00
Philip Howard fcf7b47c31
Merge pull request #237 from pimoroni/patch-plasma-update
Plasma/MP: bind update method for #236
2022-01-25 10:56:13 +00:00
Philip Howard 553f3dee60
Merge pull request #174 from pimoroni/driver/scd4x
Driver for SCD4X series CO2 sensors
2022-01-25 10:29:28 +00:00
Phil Howard 52df22a16a Plasma/MP: bind update method for #236 2022-01-07 16:04:46 +00:00
Richard Morrison aea0756fb8
Update README.md
Fix documentation around `Button` class's `repeat_time` behaviour.
2022-01-04 22:09:38 +00:00
Dave Jones 1a66c9f6d6 Fix ordering of tuple returned by WS2812.get
(and types of numbers returned by both WS2812.get and APA102.get)
2021-12-23 00:39:22 +00:00
Hel Gibbons 19c23f0e78
Merge pull request #231 from pimoroni/helgibbons-tweak-resources
tweak resources links
2021-12-21 14:57:25 +00:00
Hel Gibbons fe80fb4788
tweak resources links 2021-12-21 14:51:06 +00:00
Phil Howard 6d6803612a Add SCD41 MicroPython bindings 2021-12-16 11:39:34 +00:00
Phil Howard 0eeada72d7 New driver for SCD4X series CO2 sensors
Submodule Sensirion's embedded-i2c-scd4x driver
Add i2c_hal.cpp to binds it to Pimoroni::I2C
Port (loosely) scd4x_i2c_example_usage.c to Pico
2021-12-16 11:39:11 +00:00
Philip Howard 9f6ddb86ae
Merge pull request #218 from ProgramMax/main
Improve ST7789 frame rate ~4x
2021-12-08 15:50:48 +00:00
Philip Howard c322717eb2
Merge pull request #193 from pimoroni/pure-cpp-i75
Pure C++ HUB75 example
2021-12-08 15:25:53 +00:00
Philip Howard 33ca1b6e22
Merge pull request #226 from pimoroni/patch-ws2812-rgbw
Plasma: Add WS2812 W suppot for #220
2021-12-08 15:22:30 +00:00
Philip Howard ce1f8adeef
Merge pull request #227 from helgibbons/main
Couple of festive examples for Plasma 2040
2021-12-07 12:29:08 +00:00
Phil Howard 556d8cb57d HUB75: Add expansion and feature pins 2021-12-06 14:37:04 +00:00
helgibbons 2aace8cac9 linting examples 2021-12-05 19:57:38 +00:00
helgibbons 1c1cf528f9 Couple of festive examples for Plasma 2040 2021-12-05 19:53:45 +00:00
Phil Howard 580d8cf7a2 Plasma: Add WS2812 W suppot for #220 2021-12-03 10:50:06 +00:00
Chris Blume 9e788f7379 Correct Pico Display 2 baud
The Pico Display 2 example specifies a baud of 74 * 1000 * 1000.
However, the highest baud the Raspberry Pi Pico can achieve is
62,500,000.

I checked and even when the baud of 74 * 1000 * 1000 is specified,
it ends up using the max that the Raspberry Pi Pico can handle anyway.

This commit removes the incorrect baud parameter, using the default
parameter instead.
2021-12-02 11:42:29 -08:00
Phil Howard 1bb4383074 HUB75 Perf, C++ scrolling text, docs 2021-12-02 12:41:30 +00:00
Phil Howard 4dc3f9b9c4 HUB75 Scrolling wavy text and clock demo 2021-12-01 21:57:40 +00:00
Phil Howard 8ae311e3a5 HUB75 Drop multicore include 2021-11-30 13:04:46 +00:00
Phil Howard c70a9fbb3d HUB75 Optimize performance maybe 2021-11-26 21:36:44 +00:00
Phil Howard 4496c25a8f HUB75: Remove debug from clock, use only flip's implicit delay 2021-11-25 18:14:36 +00:00
Phil Howard 4d33649cd2 HUB75: More rational DMA/PIO setup/teardown, fixes reset bug
Defensively tear down DMA/PIO so it's in a known good state upon (soft)reset.

Issue was a race condition with DMA interrupts firing and not being achknowledged, leaving a stuck raised IRQ.

The blocking wait for DMA transactions also exacerbated this, turning a borken DMA interrupt and blank screen into an unrecoverable hardlock.

...not that the blank screen was recoverable without a soft reset anyway!
2021-11-25 17:52:44 +00:00
Phil Howard c556391be3 HUB75 Clock example, brightness tweak 2021-11-25 16:37:46 +00:00
Phil Howard e09ff78351 HUB75 Strobe invert and larger panel chaining support 2021-11-24 21:36:58 +00:00
Phil Howard 30a455a9d5 HUB75 Less RAM, DMA flip
Switch from 12-bit to 10-bit gamma to fit RGB into a uint32_t. Simplifies PIO and halves the RAM usage for F/B buffer.

Switch "flip" to *literally* swap the front and back buffers, and then asyncronously DMA the new back buffer into the front ready for the next draw.
2021-11-24 19:31:00 +00:00
Phil Howard 069ca38ae7 HUB75 Clear TX FIFOs for MicroPython soft reset glitch 2021-11-23 15:09:03 +00:00
Philip Howard f96012a395
Merge pull request #222 from eddhurst/fix/plasma-set-rgb
Fix documentation examples setting RGB LED
2021-11-23 14:08:32 +00:00
Phil Howard d4bf69324f HUB75 tidyup, examples 2021-11-23 13:58:34 +00:00
Phil Howard c07567f922 HUB75 Panel Types for FM6126A setup, fixes for 32x32 2021-11-23 11:29:41 +00:00
Phil Howard eed7992127 HUB75 Fix intermittent display corruption issue
The FM6126A register write was causing some weirdness on soft reset where the pin state wasn't predictable.

Have twiddled some pins at startup to ensure everything works as expected.

Add set_hsv and set_all_hsv (since setting individual pixels with hsv is S L O W)

Made "flip()" blocking, it was easy to accidentally get a little tearing.
2021-11-22 16:34:56 +00:00
Phil Howard 66d25d2e9c HUB75 Prevent stuck row on soft reset
TODO:

* Move this into drivers/ for C++ use too.
* Display still goes mighty weird sometimes!
2021-11-22 15:22:37 +00:00
Phil Howard 0e8c1228af HUB75 MicroPython DMA and PIO
Switch MicroPython HUB75 driver over to DMA/PIO.

TODO:

* Move this into drivers for C++ use too
* Fix hitting "Stop" in Thonny causing rows to stick on the display (this is bad, and should not happen)
* Fix "Stop -> Start" in Thonny causing weird display issues (it's not memory offets, maybe DMA/PIO issues?)
2021-11-22 14:12:18 +00:00
Edd Hurst 47259c55e8
Fix documentation examples setting RGB LED
Update the examples using set_led function and replacing to use set_rgb

Fixes #221
2021-11-21 14:05:12 +00:00
Phil Howard 01f546aaf1 HUB75 MicroPython bindings 2021-11-18 12:51:43 +00:00
Phil Howard d1e8eaa016 Rename GAMMA to avoid conflict with common GAMMA 2021-11-12 12:13:25 +00:00
Phil Howard 48689470aa Vsync flip from front to back buffer 2021-11-12 12:12:02 +00:00