Commit Graph

1238 Commits

Author SHA1 Message Date
Phil Howard 049a121974 Dot Matrix: Allow set char from string. 2023-03-27 15:11:30 +01:00
Phil Howard 140fe913ae MicroPython: Don't include wireless pack in W builds. 2023-03-27 15:11:30 +01:00
Philip Howard 9f71c04ea8
Merge pull request #731 from pimoroni/patch-wifi-examples
MicroPython: Various networking fixes to code & examples.
2023-03-27 11:16:44 +01:00
Phil Howard 0d0dc6a781 MicroPython: Various networking fixes to code & examples.
Replaces https://github.com/pimoroni/pimoroni-pico/pull/712, https://github.com/pimoroni/pimoroni-pico/pull/632 and https://github.com/pimoroni/pimoroni-pico/pull/630

Co-authored-by: ben4github <ben4github@users.noreply.github.com>
Co-authored-by: Alexander Gee <bostwickenator@gmail.com>
2023-03-27 11:06:36 +01:00
Philip Howard 2303702c15
Merge pull request #730 from pimoroni/patch-boot-py
Move boot.py to modules_py.cmake
2023-03-27 10:59:25 +01:00
Phil Howard 0148e5f5e7 MicroPython: Move boot.py to modules_py.cmake.
The cppmem module *must* be switched into MicroPython heap mode or C++ code will inevitably run out of RAM.

Thus boot.py needs to be included in every build.
2023-03-27 10:41:16 +01:00
Phil Howard f5859ad371 Badger: Drop deprecated cmake files. 2023-03-27 10:31:12 +01:00
Phil Howard 393879581a Badger 2040: Add deprecation warnings and firmware links. 2023-03-27 10:30:19 +01:00
Philip Howard c6b4a30c09
Merge pull request #725 from pimoroni/patch-frame-convert-heap
MicroPython: Magic C++ Memory Management.
2023-03-27 10:28:16 +01:00
Janos P Toth be1b827cfc
Update README.md 2023-03-25 10:14:58 -07:00
Phil Howard 2c0310ca9a MicroPython: Switch C++ allocation mode in boot.py. 2023-03-24 20:37:26 +00:00
Phil Howard 667faf70d1 MicroPython: Magic C++ allocator module.
This module redirects all pre-init object memory allocations into a static, fixed-sized, linear, non-freeing memory pool.

It then auto-switches into "MICROPYTHON" mode, whereupon all C++ `new` and `delete` calls are remapped to `m_malloc` and `m_free` respectively.
2023-03-24 15:11:07 +00:00
Hel Gibbons 0666dc885a
Scroll Pack: Fix demo.py 2023-03-21 14:24:03 +00:00
Hel Gibbons 5392c5aa03
Merge pull request #713 from pimoroni/examples/inky_frame
Inky Frame: add new examples and update sample images
2023-03-20 14:18:43 +00:00
Phil Howard f9b46ba3a7 Pico Scroll: PicoGraphics scrolling text example. 2023-03-16 17:34:52 +00:00
helgibbons ec4c6c83f4 Inky Frame: correct typo 2023-03-16 17:13:23 +00:00
helgibbons 6f06ab246c Inky Frame: update image_gallery.py 2023-03-16 17:10:16 +00:00
Phil Howard 1b0b783a2f Pico Scroll: Add support for PicoGraphics. 2023-03-16 16:59:31 +00:00
helgibbons 9aa0465d8b hub75: function correction 2023-03-16 16:52:17 +00:00
Phil Howard b83bdbf198 MicroPython: Pico W parity with Pico build. 2023-03-16 15:02:32 +00:00
Phil Howard f2751ba6e9 Pico Unicorn: Add support for PicoGraphics. 2023-03-16 15:02:28 +00:00
Phil Howard 3eb42336e6 Pico Unicorn: Refactor into class.
Borrow heavily from Galactic/Cosmic Unicorn for the PIO/chained-DMA setup.
2023-03-16 13:25:19 +00:00
Phil Howard 044313551b Pico Scroll: Refactor to class. 2023-03-16 13:25:19 +00:00
Phil Howard bd3651d97d Pico RGB Keypad: Refactor to class.
Because `mp_tracked_calloc` does not survive a soft reset but the memory region will, resulting in half-initialised frankenclasses that behave unpredictably.

Using the class pattern fixes this since it's always guaranteed to be initialised when a user instantiates it, and __del__ can handle cleanup.
2023-03-16 13:25:19 +00:00
Phil Howard 9964ed716b Servo/Motor: Use m_new instead of new. 2023-03-16 13:25:19 +00:00
Phil Howard a45eeb1623 Pico Wireless: Use tracked alloc. 2023-03-16 13:25:19 +00:00
Phil Howard aa91450f59 Pico Unicorn: Use tracked alloc. 2023-03-16 13:25:19 +00:00
Phil Howard dd7ea6fdc3 Pico Scroll: Use tracked alloc. 2023-03-16 13:25:19 +00:00
Phil Howard e4cb7ce95f Pico RGB Keypad: Use tracked alloc. 2023-03-16 13:25:19 +00:00
Phil Howard 157841f9db MicroPython: Add tracked alloc/free class helpers. 2023-03-16 13:25:19 +00:00
Phil Howard 1f0302bd66 BME280: Check read status and throw error on fail. 2023-03-16 13:25:19 +00:00
Phil Howard 375df60ff3 PicoGraphics: Switch to string_view.
MicroPython's GET_STR_DATA_LEN macro returns a const byte array and len, which std::string would copy into heap.

Using string_view lets us wrap the existing const values.
2023-03-16 13:25:19 +00:00
Phil Howard b74b371d2b JPEGDEC: Don't pass filename through std::string.
The result of GET_STR_DATA_LEN should be null terminated, so converting to a std::string and then using .c_str() is both redundant and need
s heap.
2023-03-16 13:25:19 +00:00
Hel Gibbons d0e2425e07
Merge pull request #655 from pimoroni/patch/i75-userbutton
i75/i75w: Auto-detect board and set up user button.
2023-03-16 11:58:59 +00:00
Hel Gibbons 60fe949fc5 fix link 2023-03-15 16:57:15 +00:00
Hel Gibbons 0e6dbc1a6c add link 2023-03-15 11:22:23 +00:00
Hel Gibbons 9bee6d7431 tweak carbon intensity example 2023-03-15 10:39:54 +00:00
Michael Mogenson 2f26c172ed clock.py: constrain hour to 0 to 24
Use a modulo to constrain the displayed hour to 0 - 24 after applying
the UTC offset.
2023-03-14 21:22:59 -04:00
Hel Gibbons 2db116ccec update readme 2023-03-14 14:29:20 +00:00
Hel Gibbons 9ed2c40808 add carbon intensity example 2023-03-14 14:22:28 +00:00
Hel Gibbons 9730fee753 update readmes 2023-03-13 17:12:29 +00:00
Hel Gibbons 0138980849 update images, add new random image example 2023-03-13 16:56:28 +00:00
helgibbons 6f73f8fc83 Inky Frame: add more space images 2023-03-09 23:56:28 +00:00
Phil Howard 13599b55a1 MicroPython: Tidy up CMake files for our boards.
* Feature parity between Badger 2040 and Tufty 2040.
* Add ulab to Tufty 2040.
* Don't include modules_py modules for boards that don't use/need them.
* Tweak modules_py.cmake so modules can be copied by parent CMake files.
* Simplify copy_module function to avoid repetition.
2023-03-09 11:36:55 +00:00
Philip Howard faf4efac34
Merge pull request #702 from pimoroni/docs/inky73
Inky 7.3 tweaks & docs
2023-03-08 21:02:06 +00:00
Phil Howard a448043870 Inky Frame: Document buttons & LEDs.
Expand upon memoryview caveat with Inky 7.3.
2023-03-08 20:48:58 +00:00
Phil Howard 75d56d04ad Inky Frame: Use PWMLED for button LEDs. 2023-03-08 20:31:30 +00:00
Phil Howard f255f419a1 Inky Frame: Use new PWMLED for led_busy and led_wifi. 2023-03-08 20:15:38 +00:00
Phil Howard 3f92caee22 Inky Frame: Better document colour constants. 2023-03-08 16:57:33 +00:00
Hel Gibbons 3d597e7d03 Inky Frame: make image_gallery work with all sizes 2023-03-08 16:54:36 +00:00
Phil Howard 83f88c034d PicoGraphics: Enable thickness for all pens. Document. 2023-03-08 14:34:28 +00:00
Phil Howard aed14aca22 PicoGraphics: Expose line thickness support. 2023-03-08 12:08:47 +00:00
Phil Howard cacb5749ae Inky Frame: Add thickness support for Hershey text. 2023-03-08 11:35:07 +00:00
Anton Mosich aee0a2879b
Fix small typo in README 2023-03-06 23:28:47 +01:00
Phil Howard 63d4c23cd5 Inky Frame: Basic RTC demo. 2023-03-06 10:51:21 +00:00
Phil Howard a6e35e207d Inky Frame: Check current button state in woken_by_button.
Makes it easier to test wakeup logic in Thonny by holding a button when hitting "Run."
2023-03-06 10:51:21 +00:00
Phil Howard 07a5aac48f Inky Frame: Python Documentation. 2023-03-06 10:51:16 +00:00
Hel Gibbons f194715108
Merge pull request #701 from LionsPhil/autobrightstandalone
Contribute an automatic display brightness example
2023-03-03 11:34:16 +00:00
Phil Howard 56e5878b62 Inky Frame: Fix button masks, fakesleep on USB. 2023-03-03 10:56:50 +00:00
Phil Howard b6d0e54803 Inky Frame: Add RTC helper functions to Python module. 2023-03-02 17:33:30 +00:00
Phil Howard 9e120995b2 Inky Frame: Add colour constants to Python module. 2023-03-02 13:09:55 +00:00
Phil Howard f4f5c6319a Inky Frame: Add dithering example. 2023-03-02 13:09:14 +00:00
Phil Howard 64632559f9 Inky 7.3: Raise error on PicoGraphics buffer operations. 2023-03-02 13:08:44 +00:00
Philip Howard 6be46dd429
Merge pull request #700 from pimoroni/examples/galactic-co2
Galactic: add CO2 breakout example
2023-03-02 11:44:04 +00:00
LionsPhil 0a6d6b91b3 Contribute an automatic display brightness example
Standalone smoothed display auto-brightness, reactive to the on-board
LUX and battery ADC sensors, with debugging keys so it's easier to test
(and play with).

Closes pull requests #628 and #629, which did this to the retro_badge
example, but made it too complicated.
2023-03-02 00:29:23 +00:00
Hel Gibbons 3d96ff9d92 Galactic: update examples readme 2023-03-01 14:16:12 +00:00
Hel Gibbons 421e715f06 Galactic: lint CO2 example 2023-03-01 13:55:40 +00:00
Hel Gibbons 8e91108ce5
Merge pull request #695 from pimoroni/inkyframe7-launch
Launcher for Inky Frame 7.3"
2023-03-01 12:32:38 +00:00
thirdr b66fc524ae adjustment to joke delivery position 2023-03-01 12:11:18 +00:00
thirdr 0cec01cf37 Switching from using JPEG to JSON files 2023-03-01 11:08:49 +00:00
Hel Gibbons 1dbd3ea312
Merge pull request #546 from Corteil/Galactic-Unicorn-CheerLights
CheerLights example for the Galactic Unicorn
2023-03-01 09:52:12 +00:00
Brian Corteil f882efc901 Update cheerlights.py
removed white space from line 20 in cheerlights
2023-02-28 23:39:35 +00:00
Hel Gibbons bc49a69416 Galactic: add co2 example 2023-02-28 17:51:08 +00:00
Philip Howard 5abbf9b5c8
Merge pull request #699 from pimoroni/docs/picographics_create_pen_hsv
PicoGraphics: correct hsv pen reference
2023-02-28 16:57:28 +00:00
Hel Gibbons 5ca10794a8
PicoGraphics: clarify hsv units 2023-02-28 15:43:19 +00:00
Hel Gibbons 1cb170664e
PicoGraphics: correct hsv pen reference 2023-02-28 15:16:08 +00:00
Phil Howard 07a1bf645a Cosmic Unicorn: RGB channels example in ulab/numpy. 2023-02-28 14:46:41 +00:00
thirdr 45a12892b8 adding blank secrets.py 2023-02-28 13:36:25 +00:00
Hel Gibbons de6b7e2828 Inky Frame: fix more typo 2023-02-28 13:10:44 +00:00
Hel Gibbons 579b8daa4e fix typo 2023-02-28 12:54:28 +00:00
Phil Howard 0fda232dcb Cosmic Unicorn: Melody Maker. 2023-02-28 10:10:57 +00:00
Phil Howard cbc21e52be Galactic/Cosmic Unicorn: Add sound to 80s computer. 2023-02-28 08:48:15 +00:00
Phil Howard b4d72d250d Galactic/Cosmic Unicorn: Remove loop from life.
More numpy magic to remove the Python loop and drastically increase life generation performance.
2023-02-27 23:13:44 +00:00
Phil Howard 10ea8757ea Galactic/Cosmic Unicorn: Life. 2023-02-27 22:31:52 +00:00
Phil Howard c836f9f8fe Galactic Unicorn: Backport Cosmic ulab/numpy examples. 2023-02-27 20:47:39 +00:00
Phil Howard d750532180 Cosmic Unicorn: Fix typo in lava_lamp.
Found while backporting to Galactic.
2023-02-27 20:34:03 +00:00
Phil Howard ad5e4cc10e Cosmic Unicorn: Eighties super computer in numpy/ulab. 2023-02-27 19:52:56 +00:00
Hel Gibbons ec601de9a4 Cosmic: Update examples readme 2023-02-27 16:47:08 +00:00
Hel Gibbons 6aa5aaf50c Cosmic: update examples readme 2023-02-27 16:01:37 +00:00
Hel Gibbons 8069ae0e8f Cosmic: make examples consistent 2023-02-27 15:43:38 +00:00
Hel Gibbons 3459cc5f62 Cosmic: update clock example 2023-02-27 15:09:58 +00:00
Hel Gibbons 931b3b26b2 PicoGraphics: add note about HSV pen 2023-02-27 15:09:58 +00:00
Hel Gibbons b6042e78c1 Cosmic: update function reference 2023-02-27 15:09:58 +00:00
Hel Gibbons c194fc7a2b Cosmic: add examples readme 2023-02-27 15:09:58 +00:00
Hel Gibbons 3e44edf66a Galactic/Cosmic: fix #556 2023-02-27 15:09:58 +00:00
Hel Gibbons c2b1eb47e5 Galactic - fix #661 2023-02-27 15:09:58 +00:00
Hel Gibbons 86c304d192 Cosmic - update remaining examples 2023-02-27 15:09:58 +00:00
thirdr b762ee8861 more colour and layout adjustments 2023-02-27 14:54:27 +00:00
thirdr 36458436bc oops, linting fix 2023-02-27 14:54:27 +00:00
thirdr d29666b87a colour adjustments 2023-02-27 14:54:27 +00:00