ZodiusInfuser
8fc1270404
Added additional PWM/ServoCluster constructors
2022-03-30 14:29:02 +01:00
ZodiusInfuser
d94a7c0718
Added set_frequency support to ServoCluster
2022-03-30 14:29:02 +01:00
ZodiusInfuser
aeb9705d15
Moved common PWM and MultiPWM out of servo driver, and renamed to cluster
2022-03-30 14:29:02 +01:00
ZodiusInfuser
06c272916c
Fix for incorrect ServoCluster duty
2022-03-30 14:28:17 +01:00
ZodiusInfuser
55cbf23f45
Function rename
2022-03-30 14:28:17 +01:00
ZodiusInfuser
565553b3a1
Added an additional case for out-of-bounds values
2022-03-30 14:28:17 +01:00
ZodiusInfuser
5a5282f099
Improved servo limits logic
2022-03-30 14:28:17 +01:00
ZodiusInfuser
d1238e802e
Added frequency limits
2022-03-30 14:28:17 +01:00
ZodiusInfuser
334ff4e9f9
Added frequency adjustment to Servo
2022-03-30 14:28:17 +01:00
ZodiusInfuser
93eafc4694
All current servo functionality now micropython bindings
2022-03-30 14:28:17 +01:00
ZodiusInfuser
196a5c6111
Much code refactoring and tidy up
2022-03-30 14:28:17 +01:00
ZodiusInfuser
413ef891ce
Partial hardware servo support added to MP
2022-03-30 14:28:17 +01:00
ZodiusInfuser
f5836e56df
Raised servo functions to a base class, and added ServoCluster which uses the PIO PWM.
2022-03-30 14:28:17 +01:00
ZodiusInfuser
d4012a271e
Improvements to servo calibration and usage
2022-03-30 14:28:17 +01:00
ZodiusInfuser
2e58841b5e
Started a hardware PWM servo class, with calibration support
2022-03-30 14:28:17 +01:00
ZodiusInfuser
5957304a46
Adding more PWM functionality
2022-03-30 14:28:17 +01:00
ZodiusInfuser
24aefc16bf
Tidied up PIO implementation + commenting
2022-03-30 14:28:17 +01:00
ZodiusInfuser
de3cb52931
More progress on Servo PIO
2022-03-30 14:28:17 +01:00
ZodiusInfuser
aca98ca747
current WIP code for PIO based PWM
2022-03-30 14:28:17 +01:00
Mike Bell
eb95636bca
Better if update_time is an underestimate
2022-03-29 23:16:18 +01:00
Mike Bell
d96a584ddd
Badger2040: Improve performance of some large frame buffer writes
2022-03-29 23:15:43 +01:00
Phil Howard
b1fd8936cf
Badger2040: Enforce minimum update blocking time.
2022-03-25 10:57:30 +00:00
Phil Howard
8ca91f8e23
PMW3901: Drop print from init.
2022-03-18 13:35:14 +00:00
Philip Howard
273ca5c56d
Merge pull request #252 from pimoroni/badger2040-support
...
Support for Badger 2040
2022-02-25 16:25:22 +00:00
Phil Howard
f90559ed41
Badger2040: Add support for colour inverted mode
2022-02-25 14:49:28 +00:00
Phil Howard
169e332917
Badger2040: Add Medium speed, drop spicy super turbo
2022-02-25 13:37:35 +00:00
Phil Howard
6ff5c39c1b
Badger2040: Bugfixes, danger LUTs, examples
2022-02-25 11:08:32 +00:00
Phil Howard
af230b5fd5
Badger2040: Refactor to fix MicroPython issues
...
Move busy wait logic into MicroPython bindings so that MICROPY_EVENT_POLL_HOOK can be called.
2022-02-25 11:08:32 +00:00
Phil Howard
5b084c1b9a
Badger2040: Add Fast/Slow LUTs, bugfix and tinkering helpers
2022-02-25 11:08:32 +00:00
Phil Howard
607320c4b6
Badger2040: Fix broken display on reset
...
Display configuration wasn't applied properly upon reset. Add additional delay to reset and configure busy_wait pulls.
2022-02-25 11:08:32 +00:00
Phil Howard
46d54072ce
Badger2040 MicroPython bindings
2022-02-25 11:08:32 +00:00
Phil Howard
5f52626a4f
Add partial update support
2022-02-25 11:08:32 +00:00
Jonathan Williamson
f7d61b587a
added support for badger2040
2022-02-25 11:08:31 +00:00
ZodiusInfuser
95142ffeb5
Fix for display glitch during screen initialisation
2022-02-14 12:57:34 +00:00
Phil Howard
c105d111af
ICP10125: Fix block indefinitely on repeated start
...
Should fix pimoroni/icp10125-python#2
2022-02-10 12:28:57 +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
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
Phil Howard
580d8cf7a2
Plasma: Add WS2812 W suppot for #220
2021-12-03 10:50:06 +00: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
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
Phil Howard
d4bf69324f
HUB75 tidyup, examples
2021-11-23 13:58:34 +00:00