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
Phil Howard
bcebccca1d
BME68X: Avoid runtime memory allocation.
2023-03-16 13:25:19 +00:00
Phil Howard
59ae107982
BME280: Avoid runtime memory allocation.
2023-03-16 13:25:19 +00:00
Phil Howard
cb39d5c0f3
PCF85063A: Remove static keyword.
...
The use of "static" in `set_datetime` meant that "data" was only getting set to the correct values *once.*
2023-03-02 15:38:08 +00:00
Phil Howard
8ff40fae6e
MLX90640: MicroPython module.
2023-02-23 16:52:59 +00:00
Phil Howard
2ff5d462c8
MLX90640: Driver and 32x32 LED matrix example
2023-02-22 13:06:55 +00:00
Phil Howard
1659139c97
Inky 7.3: Rename class.
2023-02-20 12:29:59 +00:00
Phil Howard
43382ba2c0
Inky 7.3: Add ShiftRegister driver.
2023-02-20 12:29:59 +00:00
Phil Howard
93979cb735
Inky 7.3: Rename driver to inky73.
2023-02-20 12:29:59 +00:00
AndrewCapon
0067b101a0
Inky 7.3: Direct pen & PSRAM update.
2023-02-20 12:29:52 +00:00
Phil Howard
21b4ff68d7
Change __bswap16 to __builtin_bswap16.
2023-02-10 22:12:02 +00:00
ZodiusInfuser
cacfbd174b
Previous idea did not work, so now checking color order for every pixel set
2023-01-31 14:07:14 +00:00
ZodiusInfuser
1343f23316
Attempt at adding color order support to Hub75
2023-01-31 13:00:22 +00:00
Gee Bartlett
104c819412
Hub75: Update to use Picographics ( #601 )
...
* have a basic pg working needs optimizing
* working well ported some examples from GU
* started on micropython module
* Fixes to get new Hub75 compiling in MP
* stripped down for faster compilling
* Update hub75.cmake
* added hub75 to galatic and eviro as it is needed for picographics
* Update picographics.c
* added hu75 update
* added _ModPicoGraphics_obj_t
* Update hub75.cpp
* update bindings
* some examples needs linting
* added other panel sizes and linted
* Update picographics.cpp
* Update picographics.c
* fixing gc memory allocation
* Update hub75.cpp
* Update interstate75_balls_demo.cpp
* review
* broke
* working with built in panel defs
* still borked
* not much change needs review
* Update hub75.cpp
* reverted alot of things
* adding i75 lib
* lots of updates ready to test compile mp
* Update picographics.h
* little tweaks
* an inability to count fixed!
* fixed some readme's
* lots of tiding
* fixed linting and removed experimental code
* Minor formatting
* Minor formatting and cmake tidy
* Removed unneeded parts of examples
* Final tidy
* tidy examples and adding more
* updated to new library
* documentation tweaks
* fixed inclusion of interstate75 module
* syncing some stuff
* fixed linting
Co-authored-by: ZodiusInfuser <christopher.parrott2@gmail.com>
2022-12-16 20:53:16 +00:00
Hel Gibbons
be1c39e80c
Merge pull request #555 from MichaelBell/fix-ltp305-brightness
...
Fix setting the LTP305 brightness
2022-11-08 11:26:45 +00:00
Gee Bartlett
4f4b0b277c
updated readme's
2022-11-07 18:07:48 +00:00
ZodiusInfuser
678b8d7cf9
Review of GfxPack code
2022-11-07 12:50:50 +00:00
Gee Bartlett
7be5376abf
some small fixes for easier merging later
2022-11-02 20:58:20 +00:00
Gee Bartlett
952be145ec
Merge branch 'main' into driver/st7567
2022-11-02 20:50:18 +00:00
Gee Bartlett
79eb998183
adjustments prior to micropython
2022-11-02 20:43:07 +00:00
Gee Bartlett
e85367a961
started mp
2022-10-31 13:44:23 +00:00
Mike Bell
b0d7f4c611
Fix setting the LTP305 brightness
2022-10-30 20:29:22 +00:00
Gee Bartlett
9af1081e68
gfx c libs working
2022-10-28 17:54:37 +01:00
Gee Bartlett
54018afde3
small tweeks
2022-10-12 13:10:12 +01:00
Gee Bartlett
d03c00383a
driver working for PG1Bit mode
2022-10-12 11:07:17 +01:00
Gee Bartlett
0e5e7feb7d
page 0 working
2022-10-12 09:13:38 +01:00
Gee Bartlett
fa04fef4f0
Update st7567.cpp
2022-10-10 14:33:28 +01:00
Gee Bartlett
337cd390d4
wip
2022-10-10 14:12:45 +01:00
Gee Bartlett
2f7afad12d
Update st7567.cpp
...
still trying to get this working properly
2022-10-06 12:28:22 +01:00
Gee Bartlett
8f645257c3
display running but data corrupt
2022-10-05 14:26:17 +01:00
Phil Howard
6aa1bbd271
UC8159: 0/180 degree rotation support.
2022-09-30 21:04:22 +01:00
Phil Howard
7f02501fa6
UC8159: Alternate resolution support.
2022-09-30 15:18:01 +01:00
Gee Bartlett
7b5946ef48
all complies needs testing against finished unit
2022-09-29 15:48:33 +01:00
Gee Bartlett
c48f81bc90
started on converting pico display demo
2022-09-29 12:01:35 +01:00
Gee Bartlett
3f24b442f1
inital work needs testing
2022-09-29 10:21:14 +01:00
Mike Bell
799ed0786d
Use DMA for SPI frame buffer too
2022-09-17 20:16:57 +01:00
Mike Bell
7f330d1a04
Pico Graphics: Use fixed size buffer for frame conversion
2022-08-23 23:07:13 +01:00
Philip Howard
b8100d22e8
Merge pull request #487 from MichaelBell/tufty-overclock
...
ST7789 Parallel: Work with SYS clock faster than default
2022-08-11 13:07:51 +01:00
Phil Howard
9ec77c2f10
LTR559: Lux as float.
...
Avoid truncating Lux to uint16_t.
2022-08-08 12:05:18 +01:00
Mike Bell
b8ba66f593
ST7789 Parallel: Work with SYS clock faster than 125MHz
2022-08-04 20:44:17 +01:00
jon
e9c18b109d
whoops.
2022-07-29 10:59:24 +01:00
Philip Howard
c5d4865609
Merge pull request #413 from pimoroni/patch-pms3005-i2c
...
PMS5003: Support for i2c version.
2022-07-22 15:56:36 +01:00
Phil Howard
de3ceac4a5
Pico Scroll/Unicorn: Fix static memory alloc for Pico W.
...
Pico Scroll and Pico Unicorn were allocating static buffers for gamma and font data respectively.
Make Pico Scroll's `__bitmap` static.
Move Pico Unicorn's three GAMMA tables to one 14-bit table in "pimoroni_common.hpp". Rename "GAMMA" to "GAMMA_8BIT".
2022-07-22 14:15:53 +01:00
Phil Howard
e7a4ee0282
VL53L5CX: Alloc results data & config in MPY gc_heap.
...
RAM constraints on Pico W were causing a hardlock. This change allocates the results struct, config and motion config on gc_heap to relieve system RAM pressure.
Fixes #448
2022-07-22 10:01:34 +01:00
Phil Howard
d81151a1c6
Inky Frame: Sensible limit on SDCard speed.
...
Going any faster will result in corruption- this showed up as visible lines of distortion down decoded JPEG files.
2022-07-18 15:32:58 +01:00
Phil Howard
f85343012a
PicoGraphics: Power off added for UC8151.
2022-07-06 14:25:42 +01:00
Phil Howard
103fe19049
PMS5003: Support for PMSA003I i2c module.
2022-07-05 16:05:24 +01:00
Phil Howard
cb5f8308a0
PicoGraphics/UC8159: 3bit bitplane pen mode.
...
Add a 3bit pen mode to save 1/4th the RAM needed for the 600x448 Inky Frame.
2022-06-30 15:25:02 +01:00
Philip Howard
c74210286f
Merge pull request #415 from pimoroni/patch-inky-frame-wait
...
UC8159: Timeout compiler error fix.
2022-06-29 15:29:21 +01:00
Phil Howard
589a9e1b23
UC8159: Timeout compiler error fix.
2022-06-29 11:14:11 +01:00
Philip Howard
1ec0908f2f
Merge pull request #414 from pimoroni/patch-inky-frame-wait
...
UC8159: Timeout-based busy wait.
2022-06-29 10:40:50 +01:00
Phil Howard
2d8080eada
UC8159: Timeout-based busy wait.
2022-06-29 10:32:11 +01:00
Philip Howard
24635046ef
Merge pull request #410 from pimoroni/patch-inky-pack-update-speed
...
PicoGraphics: Partial update/speed support. Tidyup.
2022-06-28 10:11:47 +01:00
Phil Howard
16aae0b1f2
PicoGraphics: Partial update/speed support. Tidyup.
2022-06-27 17:32:30 +01:00
jon
0aa7eb1141
added ability to set/get the free ram byte on pcf85063a
2022-06-27 16:49:10 +01:00
Phil Howard
b0cfb12b20
SH1107: Support for alternate i2c address.
...
Add `i2c_address` option to MicroPython PicoGraphics.
2022-06-27 14:18:24 +01:00
Phil Howard
de967fd528
fatfs: Enable FF_USE_STRFUNC for f_gets.
2022-06-24 12:41:29 +01:00
Phil Howard
b497b87c95
UC8159: Port to PicoGraphics/DisplayDriver.
2022-06-24 11:03:29 +01:00
Phil Howard
f1f3d55a8c
UC8159: Fix nibble order properly this time.
2022-06-23 16:35:33 +01:00
Phil Howard
c428329a19
UC8159: Swap nibbles. Add colours enum.
2022-06-23 16:35:33 +01:00
Phil Howard
c6074963fa
UC8159: Basic driver
2022-06-23 16:35:32 +01:00
Phil Howard
0e72369c7b
UC8151: Rotation support.
2022-06-23 16:30:42 +01:00
Phil Howard
6b232ddb30
UC8151: Invert by default..
2022-06-23 16:12:58 +01:00
Phil Howard
04d8d66390
UC8151: New DisplayDriver based UC8151 driver.
...
HACK: Adds PicoGraphics_Pen1BitY to work around the UC8151 weird addressing.
TODO: Replace hack with an in-place transform to UC8151 pixel order from Pen1Bit.
2022-06-23 14:30:36 +01:00
Phil Howard
646bd1a9b0
UC8151: Refactor to uc8151_legacy.
2022-06-23 13:57:25 +01:00
Phil Howard
76715e45f8
ST7789: Convert Parallel IO to PIO + DMA.
...
Make display updates around 4x faster. Requires a PIO + SM to run Tufty 2040.
2022-06-17 11:03:55 +01:00
jon
360bf4310c
SH1107: Add driver and example.
...
Add 1bit pen mode to PicoGraphics.
TODO:
* Rotation support
* Sizes other than 128x128 support
2022-06-15 16:57:40 +01:00
Phil Howard
1b68e498d4
ST7789/PicoGraphics: Update docs.
2022-06-13 20:12:03 +01:00
Phil Howard
62818a5f49
PicoGraphics: Palettes as RGB, Scanline convert with callback.
2022-06-13 20:12:03 +01:00
Phil Howard
a558d35cab
PicoGraphics: Remove last vestiges of template approach.
2022-06-13 20:12:03 +01:00
Phil Howard
1d32b967c2
ST7789: Separate code paths for future DMA/PIO support.
2022-06-13 20:12:03 +01:00
Phil Howard
3d489a9383
ST7789: 240x240 Handle unsupported rotations gracefully.
2022-06-13 20:12:03 +01:00
Phil Howard
4585e5ec0f
ST7789: Fix 240x240 display rotations.
2022-06-13 20:12:03 +01:00
Phil Howard
4848e7ba59
PicoGraphics/ST7789/ST3375: Fixup C++ examples and libraries.
2022-06-13 20:12:03 +01:00
Phil Howard
67f1331b23
ST7789 -> PicoGraphics
...
* Absorb ST7735 support into the generic ST7789 driver and rename to PicoGraphics
* Delete obsolete MicroPython modules
* Refactor PicoGraphics to inherited class for each pen type
* Refactor ST7789 and ST7735 to derive from DisplayDriver
* Allow user to set pen_type in MicroPython constructor for RGB565, RGB332, P8 and P4 modes
2022-06-13 20:11:49 +01:00
Phil Howard
1a251822f5
ST7735: Update 160x80 LCD to new PicoGraphics<PenRGB565>
2022-06-13 20:11:09 +01:00
Phil Howard
7e4725d1cd
ST7789/PicoGraphics: Templated framebuffer formats.
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
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
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
c526c3ce6e
PMS5003: Basic PMS5003 active-mode only driver.
2022-06-13 18:45:58 +01:00
Philip Howard
8d329ccdd4
Merge pull request #378 from pimoroni/pcf85063a
...
Support for PCF85063A RTC
2022-06-13 18:41:49 +01:00