Commit Graph

884 Commits

Author SHA1 Message Date
ZodiusInfuser e07e248d9e Big refactor of clusters to reduce memory and improve usability 2022-03-30 14:29:02 +01:00
ZodiusInfuser 72516b2ecc Added support for servo phase adjustment 2022-03-30 14:29:02 +01:00
ZodiusInfuser 7f90d3c529 Fixed a bug in the overrun code when load_pwm() is called multiple times between DMA reads 2022-03-30 14:29:02 +01:00
ZodiusInfuser 0838483d2b Added support for pulses with large offsets that cross the wrap level 2022-03-30 14:29:02 +01:00
ZodiusInfuser c4e39fd426 Added solution for PWMCluster not being able to reach 100% with "loading zone" 2022-03-30 14:29:02 +01:00
ZodiusInfuser 35bd03c02b Improved Servo constructors 2022-03-30 14:29:02 +01:00
ZodiusInfuser ec1f0a5ddc ServoCluster states are now only created for the servos actually assigned 2022-03-30 14:29:02 +01:00
ZodiusInfuser 8fc1270404 Added additional PWM/ServoCluster constructors 2022-03-30 14:29:02 +01:00
ZodiusInfuser d94a7c0718 Added set_frequency support to ServoCluster 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 06c272916c Fix for incorrect ServoCluster duty 2022-03-30 14:28:17 +01:00
ZodiusInfuser 55cbf23f45 Function rename 2022-03-30 14:28:17 +01:00
ZodiusInfuser 565553b3a1 Added an additional case for out-of-bounds values 2022-03-30 14:28:17 +01:00
ZodiusInfuser 5a5282f099 Improved servo limits logic 2022-03-30 14:28:17 +01:00
ZodiusInfuser d1238e802e Added frequency limits 2022-03-30 14:28:17 +01:00
ZodiusInfuser 334ff4e9f9 Added frequency adjustment to Servo 2022-03-30 14:28:17 +01:00
ZodiusInfuser 93eafc4694 All current servo functionality now micropython bindings 2022-03-30 14:28:17 +01:00
ZodiusInfuser 196a5c6111 Much code refactoring and tidy up 2022-03-30 14:28:17 +01:00
ZodiusInfuser 413ef891ce Partial hardware servo support added to MP 2022-03-30 14:28:17 +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 d4012a271e Improvements to servo calibration and usage 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 5957304a46 Adding more PWM functionality 2022-03-30 14:28:17 +01:00
ZodiusInfuser 24aefc16bf Tidied up PIO implementation + commenting 2022-03-30 14:28:17 +01:00
ZodiusInfuser de3cb52931 More progress on Servo PIO 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
Philip Howard 7c523f82df
Merge pull request #325 from MichaelBell/improve-performance
Badger2040: system_speed call, plus performance improvements
2022-03-30 13:58:19 +01:00
Mike Bell 179796b80f Very Slow to 4MHz, fix linter error 2022-03-30 00:27:28 +01:00
Philip Howard ca39554d28
Merge pull request #318 from MichaelBell/better-help
Badger2040: Improve help, info, qrgen
2022-03-29 23:17:16 +01:00
Mike Bell b78b292ff8 Don't slow down the system clock too much at the top of launcher - there's no need to save battery if the app will switch the badger off when it's finished anyway. 2022-03-29 23:16:18 +01:00
Mike Bell eb95636bca Better if update_time is an underestimate 2022-03-29 23:16:18 +01:00
Mike Bell 5b6c220e2a Actually use full screen image process, and fix it 2022-03-29 23:16:18 +01:00
Mike Bell c1c1b9f1bc Badger2040: Use new system speed call in examples and document 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 9b5e4ecfac Badger2040: Add system_speed call 2022-03-29 23:16:10 +01:00
Mike Bell d96a584ddd Badger2040: Improve performance of some large frame buffer writes 2022-03-29 23:15:43 +01:00
Philip Howard 9fc556d064
Merge pull request #316 from MichaelBell/earlier-power-init
Even better Badger wake handling
2022-03-29 23:12:55 +01:00
Philip Howard ed93acdb1d
Merge pull request #308 from pimoroni/example-furtling
Add example to set RV3028 RTC breakout
2022-03-29 14:13:28 +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
Mike Bell a5efdf8bae Badger2040: Improve help, info, qrgen 2022-03-26 17:33:13 +00:00
Mike Bell 0a11a9f555 Comment why this works 2022-03-26 12:58:36 +00:00
Mike Bell 4061b446b3 Badger2040: Make wake state access methods static 2022-03-26 12:51:55 +00:00
Mike Bell 7720bbe602 Simplify Badger Wake on the C++ side, tidy up X_to_wake on the python interface 2022-03-26 12:45:25 +00:00
Mike Bell e1a4d56993 Badger2040: Read the button state and enable 3v3 before initializing crystal 2022-03-26 11:55:56 +00:00
Philip Howard 522c83dc19
Merge pull request #313 from MichaelBell/battery-improvements
Badger2040 Micropython battery improvements
2022-03-25 16:58:33 +00:00
Mike Bell 72ff77aafa Badger2040: Sleep after writing the book, to fix possible write delay when on battery 2022-03-25 16:52:52 +00:00
Mike Bell e0e34fef42 Badger2040: Put state files in their own directory to keep things tidy 2022-03-25 16:30:06 +00:00
Mike Bell 47122d9351 Badger2040: fonts uses new framwork, clock more reactive to buttons 2022-03-25 15:58:57 +00:00
Mike Bell be0f1358d1 Merge remote-tracking branch 'origin/MichaelBell-battery-improvements' into battery-improvements 2022-03-25 15:35:48 +00:00
Mike Bell 88dd6e6e86 Badger2040: qrgen now halts 2022-03-25 15:27:37 +00:00