Commit Graph

752 Commits

Author SHA1 Message Date
Phil Howard 4ffb94e1ad PicoW: Add common files and refactor. 2022-07-15 12:05:12 +01:00
Phil Howard afea765b71 Inky Frame: MicroPython Examples.
Co-authored-by: thirdr <ryan@pimoroni.com>
2022-07-15 12:05:11 +01:00
Phil Howard 9e81e321e8 PicoGraphics: Update MicroPython Docs. 2022-07-13 12:04:08 +01:00
Hel Gibbons d712913f36
lint readme 2022-07-12 19:50:32 +01:00
helgibbons 32455e6092 linting cheerlights example and examples readme 2022-07-12 19:43:51 +01:00
helgibbons 07ef40bc2b Add Pico Explorer examples readme 2022-07-12 18:36:01 +01:00
helgibbons 7f88ab9f02 Add cheerlights example 2022-07-12 18:33:46 +01:00
Philip Howard 42e48abd14
Merge pull request #431 from RichiH/patch-1
README.md: Fix typo
2022-07-11 15:26:51 +01:00
Hel Gibbons d9132d13e5 Update README.md 2022-07-11 13:22:10 +01:00
Hel Gibbons 05518ed0eb Add Inky Pack examples readme 2022-07-11 13:17:47 +01:00
lesley-byte 6faa188cc5
Create show_ip_address
To show the ip address on Inky pack when creating the LED is ON/ LED is OFF server for the pico W.
2022-07-08 09:07:05 -04:00
Richard Hartmann 38be814757
README.md: Fix typo 2022-07-07 16:41:16 +02:00
Hel Gibbons 1337d2abdb
Update examples to use PicoGraphics (#428)
* correct filename in name_badge.py for Tufty

* Update 240x240 round breakout examples to work with PicoGraphics

* Update colourlcd240x240demo.py to work with PicoGraphics

* Fixed rainbow.py for Pico Display and Pico Display 2.0

* Update display examples to work with PicoGraphics

* add new display example 🌈

* adventures in rainbow RAM

* add button example for pico inky pack

* tidy up examples, make names more consistent

* Update Pico Explorer and 160x80 LCD breakout examples

* Accommodate dither
2022-07-07 09:37:47 +01:00
Philip Howard 4eb54b3ec6
Merge pull request #420 from pimoroni/examples/inky_pack
Inky Pack: MicroPython Examples.
2022-07-07 09:25:03 +01:00
Hel Gibbons 997839daf0
Correct the Enviro+ LED pins (#430)
* Correct Enviro+ LED pins
2022-07-07 09:24:23 +01:00
Phil Howard f85343012a PicoGraphics: Power off added for UC8151. 2022-07-06 14:25:42 +01:00
Phil Howard fa9b4535bc Pico Inky Pack: MicroPython Examples. 2022-07-06 14:17:24 +01:00
Phil Howard 6c1556a429 PicoGraphics: 1bit/1bitY dither all drawing operations.
Note: Pen now ranges from 0 (black) to 15 (white). Values between will be dithered ala Badger 2040.
2022-07-06 11:32:56 +01:00
Phil Howard 12866a0b7b PicoGraphics/JPEGDEC: Use PicoGraphics dither. 2022-07-06 10:56:56 +01:00
Philip Howard 9c079bb1e5
Merge pull request #419 from pimoroni/patch-uc8159-3bpp
PicoGraphics/UC8159: 3bit bitplane pen mode.
2022-07-04 11:36:20 +01:00
Phil Howard feac1fed75 CI: Add Automation + Inventor to picow build. 2022-07-01 07:34:21 +01:00
Phil Howard 74083d083c CI: Add PicoW MicroPython build.
Wireless raises memory usage significantly requiring Pico Unicorn and Pico Scroll (which both need slight refactoring) to be excluded from the build.

The Flash/Filesystem split has changed from a regular Pico build and may change again. Flashing this to a regular Pico *WILL TRASH YOUR FILESYSTEM*.
2022-07-01 07:08:12 +01:00
ZodiusInfuser d9d8f4417a
Libraries and examples for Automation 2040 W (#418)
* Libraries and examples for Automation 2040 W

* Fix for initialisation error
2022-07-01 07:05:37 +01:00
ZodiusInfuser 6f8152df0f Libraries and examples for Inventor 2040 W 2022-06-30 21:30:43 +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 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
Gee Bartlett 2653cc7df5
Enviro MicroPython examples (#406)
Co-authored-by: Gee Bartlett <geeus81@gmail.com>
Co-authored-by: helgibbons <50950368+helgibbons@users.noreply.github.com>
2022-06-28 10:11:03 +01:00
Phil Howard 16aae0b1f2 PicoGraphics: Partial update/speed support. Tidyup. 2022-06-27 17:32:30 +01:00
ZodiusInfuser 1cf7e29d09 MP for new function 2022-06-27 17:23:07 +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
Philip Howard 2721ad682f
Merge pull request #381 from pimoroni/patch-optimise-breakout-rtc-args
Breakout RTC: Optimise required kwarg functions to positional.
2022-06-27 10:02:45 +01:00
Philip Howard efea8a728b
Merge pull request #401 from pimoroni/patch-badger2040-fixups
Badger2040: Move to more generic fixups hack.
2022-06-24 11:20:22 +01:00
Phil Howard 7dbec2add6 JPEGDEC: Stream from filesystem.
Avoid loading jpeg files into RAM and stream from the filesystem to handle larger files gracefully.
2022-06-24 11:03:29 +01:00
Phil Howard b497b87c95 UC8159: Port to PicoGraphics/DisplayDriver. 2022-06-24 11:03:29 +01:00
Phil Howard 9b032cb3a2 Badger2040: Move to more generic fixups hack. 2022-06-23 16:34:21 +01:00
Phil Howard 0e72369c7b UC8151: Rotation support. 2022-06-23 16:30:42 +01:00
Phil Howard e3f98d56cf PicoGraphics: UC8151 Support for Inky Pack. 2022-06-23 15:48:45 +01:00
Phil Howard 646bd1a9b0 UC8151: Refactor to uc8151_legacy. 2022-06-23 13:57:25 +01:00
helgibbons aacbef56c6 Add boot button to button test, new LED PWM example 2022-06-21 10:40:58 +01:00
Kevin McAleer 952cb4e825 updated PicoGraphics README and .gitignore 2022-06-20 21:11:19 +01:00
jon 27f1ecb596 Tufty2040: Tidy up examples. Wavy Message.
Co-authored-by: Phil Howard <phil@pimoroni.com>
2022-06-17 15:55:32 +01:00
helgibbons f20049aa26 Tufty2040: MicroPython examples. 2022-06-17 15:15:19 +01:00
Phil Howard 3cd64202fd MicroPython: Correct is not True usage.
Co-authored-by: ZodiusInfuser <christopher.parrott2@gmail.com>
2022-06-17 15:15:19 +01:00
thirdr ef1bdff2bd Tufty2040: MicroPython examples.
Co-authored-by: Phil Howard <phil@pimoroni.com>
2022-06-17 15:15:02 +01:00
ZodiusInfuser 0258247b4b PCF85063A: Change location of some constants. 2022-06-17 12:41:31 +01:00
Phil Howard 122e57aa9a CI: Build Tufty 2040 + Board fixups.
Add board fixups including Pico SDK board .h and MicroPython board dir since these are not yet upstream.
2022-06-17 11:38:19 +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
Phil Howard 5d968a5463 ulab: Support for MicroPython v1.19 2022-06-16 14:48:23 +01:00
Phil Howard 9239769368 QRCode: Support for MicroPython v1.19. 2022-06-16 10:56:17 +01:00
Phil Howard 1657a970bd PicoGraphics: Add SH1107 support to MMicroPython. 2022-06-16 09:23:29 +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 48b9e5a96e PicoGraphics: README 2022-06-15 15:50:53 +01:00
Phil Howard 92c8c70aaa PicoGraphics: Start README. Spritesheet converter. 2022-06-14 15:51:39 +01:00
Phil Howard 31ade6af72 JPEGDEC: Open just before decode to avoid seek overrun. 2022-06-14 15:38:25 +01:00
Phil Howard 27d571b473 PicoGraphics: Tidy up dithering. 2022-06-14 15:06:44 +01:00
Phil Howard b9ca8ec779 PicoGraphics: Add load_spritesheet. 2022-06-14 14:15:27 +01:00
Phil Howard eb303ae811 PicoGraphics: Integer sprite scaling. 2022-06-14 13:28:27 +01:00
Phil Howard 6a3ba0d421 MicroPython: Shim MP_REGISTER_MODULE for >1.18 compat.
MicroPython has changed MP_REGISTER_MODULE to use only *two* args and now runs the preprocessing stage on files before running makemoduledefs.py.

This change avoids the build exploding, since the new regex matches the last two args as a single argument and generates a malformed module defs include.

The pattern here exploits the fact that 1.18 and below do not preprocess files, so *both* MP_REGISTER_MODULE lines are included in the source, but *only* the three arg version is matched by regex.

In >1.18 the files will be processed and the three arg version removed before makemoduledefs.py processes it.
2022-06-14 12:08:47 +01:00
Phil Howard e63a0e7da7 AS7262: Update MicroPython example. 2022-06-13 20:17:59 +01:00
Phil Howard 5d7113e8c9 PicoGraphics: Basic 128x128 RGB332 spritesheet support. 2022-06-13 20:12:03 +01:00
Phil Howard 24f4b6fc83 MicroPython: Drop crummy PicoSystem module.
Saves about 1.5k.
2022-06-13 20:12:03 +01:00
Phil Howard c66a590142 Tufty2040: Solarized example. 2022-06-13 20:12:03 +01:00
Phil Howard 03dc1e9941 PicoGraphics: Support sensible default rotations.
Rotate Tufty to 180 degrees by default.
Rotate Pico Display to 270 degrees by default.
2022-06-13 20:12:03 +01:00
Phil Howard 582c67570a PicoGraphics: Refactor pen types into their own cpp files. 2022-06-13 20:12:03 +01:00
Phil Howard 2419f0ef45 PicoGraphics/JPEGDEC: RGB332 per channel fast dither. 2022-06-13 20:12:03 +01:00
Phil Howard 602d1b41dd PicoGraphics: Attempt at dither and scanline interrupts.
Currently both unused and both very slow.

Dither may only be feasible for <=8 colour displays.

JPEGDEC will dither to 4-bit greyscale quite happily.
2022-06-13 20:12:03 +01:00
Phil Howard 656d69399a JPEGDEC: Fix dither buffer size 2022-06-13 20:12:03 +01:00
Phil Howard d2b065d2da JPEGDEC: Use 4-bit dither. 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 8917505175 JPEGDEC: Add open_file. 2022-06-13 20:12:03 +01:00
Phil Howard 7f0fe44881 JPEGDEC: Move to libraries, use C++, draw into PicoGraphics. 2022-06-13 20:12:03 +01:00
Phil Howard 1a9ebb7b6e PicoGraphics: More pen conversion, better names. 2022-06-13 20:12:03 +01:00
Phil Howard 024518ed9a PicoGraphics: Don't require wordwrap. 2022-06-13 20:12:03 +01:00
Phil Howard bfea30b662 Pimoroni Bus: Allow SPIBus to take mosi arg, no backlight by default. 2022-06-13 20:12:03 +01:00
Phil Howard 4500497e3c PicoGraphics: Add get_buffer_size.
Take the guesswork out of correctly sizing a bytearray. Accepts a display and pen type.
2022-06-13 20:12:03 +01:00
Phil Howard 49b62515c2 PicoGraphicS: Hershey support, bugfixes, tidyup. 2022-06-13 20:12:03 +01:00
Phil Howard fc1561e54b PicoGraphics: Fix set_framebuffer. 2022-06-13 20:12:03 +01:00
Phil Howard b13470b4fb PicoGraphics: Add set_palette and set_font. 2022-06-13 20:12:03 +01:00
Phil Howard f5d7f34145 ulab: Fix broken submodule. 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 cf6b6e04f4 ST7789: Simplify MicroPython bindings.
Kwargs should not be used unless there are non-required arguments with default values.

Save ~290 bytes and a bunch of noisy lines of code.
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 dbed4a463f ST7789: Minor code tidyup. 2022-06-13 20:11:09 +01:00
Phil Howard 7068217ccb Fix linting error. 2022-06-13 20:11:09 +01:00
Phil Howard b66da12c1b ST7789/PicoDisplay: Update C++ examples. Rename GenericST7789 -> PicoDisplayST7789. 2022-06-13 20:11:09 +01:00
Phil Howard ae22838151 Pimoroni Bus: Tidy up. Print pins. 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 38efc7de62 MicroPython: Fix pimoroni.py 2022-06-13 20:11:09 +01:00
Phil Howard cf842d559e Badger2040: Remove deprecated modules. 2022-06-13 20:11:09 +01:00
Phil Howard 0264dddc2c Pico Explorer: Update examples for Motor, Buzzer, Button, ST7789. 2022-06-13 20:11:09 +01:00
Phil Howard 6ace09dbc3 Re-renable Pico Explorer and enable Pimoroni Bus 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 dbd716f78f Add Buzzer to Pimoroni module 2022-06-13 20:11:09 +01:00
Phil Howard 844a5af384 ST7789/PicoGraphics: Update some examples. 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 1cd58ed298 Remove debug print 2022-06-13 20:11:09 +01:00