Phil Howard
b66da12c1b
ST7789/PicoDisplay: Update C++ examples. Rename GenericST7789 -> PicoDisplayST7789.
2022-06-13 20:11:09 +01:00
Phil Howard
65788ae6bf
ST7789/PicoGraphics: Faster RGB332 mode lookups.
...
Replace palette search in RGB332 mode with a simple return of the RGB565 colour packed to RGB332,
since this is identical to its index in the palette.
2022-06-13 20:11:09 +01:00
Phil Howard
13f0813d8a
ST7789/PicoDisplay: Collapse make_new into one using pimoroni_bus.
2022-06-13 20:11:09 +01:00
Phil Howard
9b8d215cd3
ST7789/PicoGraphics: Update C++ libs and examples.
2022-06-13 20:11:09 +01:00
Phil Howard
c13f53092d
ST7789/PicoGraphics: Fix palette bugs, add reserve.
2022-06-13 20:11:09 +01:00
Phil Howard
a483b2aad4
ST7789/PicoGraphics: Refactor for init & rotation.
2022-06-13 20:11:09 +01:00
Phil Howard
ef6179e77d
ST7789/PicoGraphics: Refactor & make modes more explicit.
2022-06-13 20:11:09 +01:00
Phil Howard
73f73a0ac5
Make colour truncation from 565 to 332 optional
2022-06-13 20:11:09 +01:00
Phil Howard
3f9f28c60b
Add measure_text, fixed default palette init
2022-06-13 20:11:09 +01:00
Phil Howard
51ad7edb09
Prefer RGB332, add palette management functions
2022-06-13 20:11:09 +01:00
Phil Howard
7abe4aae7f
ST7789: Experimental 8bit framebuffer.
2022-06-13 20:11:09 +01:00
Jonathan Williamson
7f5546f29a
Tufty2040: Initial screen bringup.
2022-06-13 20:11:09 +01:00
Phil Howard
83b6331094
Drop obsolete MicroPython binding compat constructors.
2022-05-30 11:52:37 +01:00
Phil Howard
f7c42e90a8
ADC FFT library & MicroPython Bindings
2022-05-23 16:12:22 +01:00
Charlie Birks
8be98da0e5
Use float pow for pico unicorn gamma
...
Looks like that was intended based on the float cast and all the f suffixes...
2022-05-23 14:09:50 +01:00
Charlie Birks
a4f91a93ee
Replace int pow(2, x) in pico unicorn
...
Using double pow here seems a bit inefficient (even if it's init code)
2022-05-23 14:07:31 +01:00
Charlie Birks
b9a8c0a536
Make global variables static in pico unicorn
2022-05-23 14:04:00 +01:00
Philip Howard
db60553322
Merge pull request #327 from pimoroni/feature/merged-st7789
...
ST7789: Create generic display driver
2022-05-18 13:37:56 +01:00
Phil Howard
8a68015eac
ST7789: Update README.md
2022-05-18 11:55:02 +01:00
Phil Howard
8e1e9df002
ST7789: Refactor and Bugfixes
...
* Make ST7789 accept only full config with SPI pins
* Make Generic ST7789 wrapper library handle "slot"
* Update Round LCD and 240x240 Square LCD
* Remove Python Round LCD and 240x240 LCD modules (we need the space!)
* Remove C++ Round LCD and 240x240 LCD libraries (they're a little redundant!)
* Fix garbage collected framebuffer bug in Python ST7789
* Deprecate "flip" in favour of "configure_display"
* Tidy up ST7789, remove dead/unused/commented code
2022-05-12 18:58:33 +01:00
ZodiusInfuser
305462d33c
Merge branch 'main' into motor-and-encoder
2022-05-12 17:02:50 +01:00
Phil Howard
65fb478b6e
ST7789: Port C++ examples to generic driver.
2022-05-12 16:02:56 +01:00
Phil Howard
1315af4e41
PicoDisplay: Use pins for buttons.
...
Swap the button constants to use pins, just in case someone tries to use these with Button() or PicoZero.
2022-05-12 12:44:00 +01:00
Phil Howard
813b7a401a
ST7789: Support rotation for PD and PD2.
2022-05-12 12:04:55 +01:00
ZodiusInfuser
15e5eaa890
Finished C++ examples and tweaked MP examples
2022-04-28 21:23:18 +01:00
ZodiusInfuser
415a1e559a
Setup and partial implementations of C++ examples
2022-04-26 23:15:13 +01:00
ZodiusInfuser
652612fc31
Removed old C++ motor implementation
2022-04-22 13:59:40 +01:00
ZodiusInfuser
8ef0d33f0c
Finalised more examples
2022-04-20 18:55:39 +01:00
ZodiusInfuser
180df9e085
Merge branch 'motor-pio' into motor-and-encoder
2022-04-19 16:28:12 +01:00
Luyáš Říha
746b47a601
fix micropython breakout_roundlcd rendering of graphics primitives
2022-04-18 20:40:05 +02:00
ZodiusInfuser
c113f30da6
Changed the motor implementation on PicoExplorer to used breaking mode
2022-04-13 10:47:42 +01:00
ZodiusInfuser
96070f61af
Started on motor readme, and updated API elements accordingly
2022-04-12 17:00:39 +01:00
ZodiusInfuser
ac3edafbf4
Contined motor dev
2022-04-05 16:53:36 +01:00
ZodiusInfuser
9a9c3832a2
Various motor work
2022-04-04 20:00:03 +01:00
Philip Howard
dbb9a3d181
Merge pull request #332 from pimoroni/feature/unicode-ish
...
Fonts: Ungracefully handle accented characters.
2022-04-01 16:26:31 +01:00
Phil Howard
3b8740fab6
Bitmap Fonts: Add letter spacing.
2022-04-01 15:38:48 +01:00
Phil Howard
0d43973326
Bitmap Fonts: Refactor and support for pound/degrees.
2022-04-01 15:38:42 +01:00
Phil Howard
b2ff46b516
Bitmap Fonts: Simplify and add support for 16bit fonts.
2022-04-01 15:38:34 +01:00
Phil Howard
e4bde0985a
Bitmap Fonts: Add final five chars.
2022-04-01 15:38:29 +01:00
Phil Howard
6a9bc8688f
Bitmap Fonts: Add accent rendering.
...
Render accents above and below the 64 characters > 127.
Different offsets for upper/lower case characters.
2022-04-01 15:38:20 +01:00
Phil Howard
ef940cc5ea
Fonts: Ungracefully handle accented characters.
...
Introduce a lookup table for the 64 accented characters > 127.
Remaps these characters back to a printable, non-accented version.
2022-03-31 16:13:30 +01:00
Mike Bell
a4acf4b94e
Fix buffer overrun on out of bounds rectangle height/width
2022-03-30 22:23:09 +01:00
ZodiusInfuser
e59bdc34c4
Added initial structure of new motor classes
2022-03-30 15:50:12 +01:00
ZodiusInfuser
8a36102c53
Merged in old motor implementation
2022-03-30 15:50:12 +01:00
Phil Howard
348b90225f
Badger 2040: Avoid sub 1 scale vanishing pixel font text.
2022-03-30 15:10:52 +01:00
Phil Howard
40d3c9e0be
Badger2040: Use bitmap measure functions.
2022-03-30 15:10:52 +01:00
Phil Howard
90ea262496
Bitmap Fonts: Add measure functions.
2022-03-30 15:10:52 +01:00
Phil Howard
3b8dcecd8e
Pico Graphics: Move bitmap fonts into generic library.
...
* Add bitmap font support into Badger 2040
2022-03-30 15:10:52 +01:00
Phil Howard
24819734b7
Separate Hershey Fonts into their own library.
2022-03-30 15:10:52 +01:00
ZodiusInfuser
41d55b1115
Ported the majority of Servo2040 MP examples to C++
2022-03-30 14:29:02 +01:00
ZodiusInfuser
f46deb1c5b
Ported the majority of Servo2040 MP examples to C++
2022-03-30 14:29:02 +01:00
ZodiusInfuser
e4bb26b081
Renamed LED_DAT to LED_DATA
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
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
2e58841b5e
Started a hardware PWM servo class, with calibration support
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
5b6c220e2a
Actually use full screen image process, and fix it
2022-03-29 23:16:18 +01:00
Mike Bell
b1dddff291
Badger2040: Fix rectangle handling for thickness, use fast draw for dithered rectangle
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
Philip Howard
66254ab743
Merge pull request #312 from deodre/patch-wireless-include-drivers
...
Updated path to esp32 drivers in /libraries/pico_wireless/pico_wireless.cmake
2022-03-29 14:12:21 +01:00
Phil Howard
b1fd8936cf
Badger2040: Enforce minimum update blocking time.
2022-03-25 10:57:30 +00:00
Mike Bell
fe943a05f7
Include USER button in button state
2022-03-24 23:24:10 +00:00
Teodor Cervinski
58ae6edb24
Updated path to esp32 drivers in /libraries/pico_wireless/pico_wireless.cmake
2022-03-23 11:34:52 +02:00
Phil Howard
249f54fae4
ST7789: Create generic display driver for #299
2022-03-21 17:02:46 +00:00
Phil Howard
39e9728b0e
Badger2040: Fix text rotation aliasing for #290
...
Fix text rendering at 90, 180 and 270 degree rotations by avoiding float -> int truncation.
2022-03-11 13:48:41 +00:00
Mike Bell
6975610fdc
Don't use wait_for_press because that waits for the button to be released
2022-03-09 23:53:56 +00:00
Mike Bell
fefa6f8880
Change internal state of Badger2040 to protected
2022-03-09 23:47:12 +00:00
Mike Bell
bbb995a062
Reboot on button press when halted but still have power
2022-03-09 23:32:52 +00:00
Mike Bell
d26bb1701c
Minor fixes to Badger2040 library
2022-03-02 21:08:17 +00:00
Phil Howard
f90559ed41
Badger2040: Add support for colour inverted mode
2022-02-25 14:49:28 +00:00
Phil Howard
2c27296cc4
Badger2040: Add image & icon support
2022-02-25 11:08:32 +00:00
Jonathan Williamson
e69115ea2e
added new meaasure_text() and measure_glyph() methods
2022-02-25 11:08:32 +00:00
Phil Howard
a4f7d05fe5
Badger2040: Move startup block on held buttons to launcher.py
...
Blocking on held buttons is bad for MicroPython, since it makes nothing happen on startup-
We need the button to be held but are waiting for a button release after some arbitrary amount of time.
Additionally running code while holding down a button would block normal MicroPython event execution and crash the host's USB bus quite severely.
2022-02-25 11:08:32 +00:00
Phil Howard
6ff5c39c1b
Badger2040: Bugfixes, danger LUTs, examples
2022-02-25 11:08:32 +00:00
Phil Howard
669e96598d
Badger2040: Fix input handling
...
Fixes input handling by clearing the button states to 0 when "wait_for_press".
2022-02-25 11:08:32 +00:00
Jonathan Williamson
07c62a849a
added rotation by angle in degrees to text() and glyph() methods
2022-02-25 11:08:32 +00:00
Phil Howard
a38dc98199
Badger2040: Comment out meh fonts
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
5a0fe00149
Badger2040: Fix typo, comment out explodey wfi
2022-02-25 11:08:32 +00:00
Phil Howard
0a0aecf3f7
Badger2040: Set pull-down on inputs
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
ad0ebee16b
added image demo for badger2040
2022-02-25 11:08:31 +00:00
Jonathan Williamson
f7d61b587a
added support for badger2040
2022-02-25 11:08:31 +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
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
Philip Howard
1a9e2802fe
Merge pull request #206 from pimoroni/driver/pwm3901
...
C++ and MP drivers and examples for Optical Flow sensors
2021-10-06 11:19:29 +01:00
Phil Howard
efdc05805f
Drop redundant library and example
2021-09-08 13:56:03 +01:00
ZodiusInfuser
9906fdec38
C class and MP bindings for PicoDisplay2
2021-09-08 13:56:03 +01:00
Phil Howard
9ba3a6cfab
320x240 LCD library + tweaks to ST7789 driver
...
Add the init required for the 320x240 2.0" LCD.
Add an option to set baudrate, 320x240 needs 74MHz for 60FPS
Add library and example for 320x240 2.0 LCD.
2021-09-08 13:55:57 +01:00
ZodiusInfuser
77f082a984
Initial setup for PMW/PAA flow sensor
2021-09-07 16:23:32 +01:00
Phil Howard
ab3951cd15
Pico Unicorn: fix MP soft reset & cleanup
...
* Enhance the soft reset guard to properly reinitialise the PIO/DMA and resume display operation
* Remove dead code and debug pin wiggle.
2021-08-26 21:58:37 +01:00
ZodiusInfuser
0faa312358
Updated micropython example to use working submodule
2021-08-19 15:16:40 +01:00
ZodiusInfuser
3d34d70722
Removed unneeded statics
2021-08-19 14:22:43 +01:00
ZodiusInfuser
8e763f5efe
Added a plasma2040 namespaces
2021-08-19 14:12:56 +01:00
ZodiusInfuser
823729dc24
Move apa and ws PIO into drivers so they can be easily used with more boards
2021-08-19 13:40:46 +01:00
ZodiusInfuser
64e6d248d5
Updated rainbow example to be consistant across languages
2021-08-19 12:58:13 +01:00
Phil Howard
6ce80cd289
Plasma WS2812: Add RGBW and color-order support
2021-08-02 14:37:07 +01:00