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
Phil Howard
496c1a3b45
BME280: Correctly set device settings.
2022-06-10 11:37:13 +01:00
ZodiusInfuser
f791fa1b64
Tidied and reordered rtc class
2022-05-30 14:40:36 +01:00
Phil Howard
83b6331094
Drop obsolete MicroPython binding compat constructors.
2022-05-30 11:52:37 +01:00
Jonathan Williamson
755da537dd
fixed bug in set_timer()
2022-05-30 09:59:29 +01:00
Jonathan Williamson
4a5df45573
finishing rtc driver and demo
2022-05-30 09:59:29 +01:00
Jonathan Williamson
48c502c3a1
initial rtc driver and example
2022-05-30 09:59:29 +01:00
Phil Howard
bc0390b86c
MicroPython: Use placement new to alloc classes on GC_HEAP
2022-05-23 15:34:49 +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
Philip Howard
698dd4d2c7
Merge pull request #360 from pimoroni/patch-vl53l5cx-firmware-sideload
...
Sideload vl53l5cx firmware to avoid bloating MicroPython binary
2022-05-18 13:13:37 +01:00
ZodiusInfuser
dbb4b9d3fd
Fix for broken asserts in ServoCluster
2022-05-18 12:41:39 +01:00
Phil Howard
aeceefea59
VL53L5CX: Sideload firmware from user-supplied .bin
2022-05-17 12:33:07 +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
813b7a401a
ST7789: Support rotation for PD and PD2.
2022-05-12 12:04:55 +01:00
ZodiusInfuser
b26d13bab1
Fix for motor duty cycle not obeying direction
2022-05-10 18:34:59 +01:00