Commit Graph

438 Commits

Author SHA1 Message Date
Scott Shawcroft
4be904fd4a
Switch to gpio mux to disable/enable pwm signal 2021-07-27 12:38:18 -07:00
Scott Shawcroft
e87e1d8175
Block when setting duty_cycle until the new value is taken 2021-07-27 12:37:35 -07:00
Scott Shawcroft
daf90aae83
Merge remote-tracking branch 'adafruit/main' into pulseout_switch 2021-07-26 18:48:59 -07:00
Scott Shawcroft
412eb87080
Switch to pin, frequency and duty_cycle PulseOut
Passing in a PWMOut still works but is deprecated. It will be
removed in CircuitPython 8.0.0

This also switches STM32 timer indices and channel indices to
0-based in our pin data rather than `- 1` everywhere. The latter is
more bug prone.

Most of the way for #3264

Tested on Metro M0, Metro M4, Feather S2, Feather nRF52840, Feather
STM32F4 and Arduino RP2040.
2021-07-26 18:35:49 -07:00
Tod Kurt
0d401e7bc8 fix whitespace on new flash chip for Arduino Nano RP2040 2021-07-24 13:22:02 -07:00
Tod Kurt
dcd5b5ab50 added Arduino Nano RP2040 Connect alternate flash chip 2021-07-24 13:12:44 -07:00
Nathan Young
04ce6a6e8c Check jmp_pin specified when JMP PIN opcodes used 2021-07-23 13:35:20 +02:00
Nathan Young
8221a12cf6 Added support for specifying the JMP pin (RP2 PIO) 2021-07-22 18:39:04 +02:00
Scott Shawcroft
109bd2886b
Fix Arduino RP2040 flash size
For RP2040 boards, we now change the default flash size based on
the configured flash. We will still try to read the size from the
flash first.

Fixes #4874
2021-07-21 11:02:55 -07:00
Scott Shawcroft
8723a0335f
Merge pull request #5032 from DavePutz/multi_pulseout
Moved global variables to support multiple RP2040 PulseOuts
2021-07-21 10:26:17 -07:00
Scott Shawcroft
e14923028f
Merge pull request #5030 from dhalbert/update-to-raspberrypi-pico-sdk-1.2.0
Update pico-sdk to 1.2.0, using raspberrypi repo
2021-07-21 08:14:13 -07:00
root
b2d6203c63 fix formatting 2021-07-21 10:05:09 -05:00
root
0559fcd1c0 Moved global variables to support multiple PulseOuts 2021-07-21 09:52:17 -05:00
Scott Shawcroft
db0adf1253
Merge pull request #5025 from DavePutz/issue_5016
Turn off PWM pin during PulseOut construct
2021-07-20 17:25:10 -07:00
root
8fe4fa0114 Turn off PWN pin during PulseOut construct 2021-07-20 17:17:41 -05:00
Dan Halbert
0293ec261a Update pico-sdk to 1.2.0, using raspberrypi repo 2021-07-20 17:31:29 -04:00
Dan Halbert
128bedae7e
Merge pull request #5019 from DavePutz/issue_5016
Ensure RP2040 pin is left low after PulseOut
2021-07-19 17:57:42 -04:00
Dan Halbert
d2f2afe57b
Merge pull request #4925 from microDev1/update-run-mode
Add RunMode.UF2 and update esp32s2 run-modes
2021-07-19 16:37:46 -04:00
root
8d79d4e5ee Ensure pin is left low after PulseOut 2021-07-19 11:46:09 -05:00
microDev
3c25d8e2a0
Merge pull request #5013 from DavePutz/issue_5012
Issue #5012 - RP2040 moved globals to PulseIn object to fix multiple instances
2021-07-19 00:21:55 +05:30
root
43275e0b0d Made suggested changes (mostly) 2021-07-18 12:00:37 -05:00
microDev
9ac607dffa
update run-mode
- add microcontroller.RunMode.UF2
- add UF2, NORMAL and BOOTLOADER run-modes to esp32s2
2021-07-18 00:00:58 +05:30
root
1c80696746 iFix formatting 2021-07-16 17:18:06 -05:00
root
588a19a1ab Issue #5012 - Moved globals to PulseIn object to fix multiple instances 2021-07-16 15:59:08 -05:00
Scott Shawcroft
bba611336c
Merge pull request #4964 from DavePutz/issue_4937
Fix for issue #4937 - Implement minimum PulseOut time
2021-07-16 11:29:32 -07:00
root
eebddbb16d Change min pulse calculation 2021-07-15 21:27:23 -05:00
Scott Shawcroft
c2685970af
Merge pull request #4987 from DavePutz/issue_4983
Fix for Issue #4983 - stop state machine before restarting
2021-07-13 12:16:33 -07:00
root
5c9823d8cb Change order of operations in restart 2021-07-13 11:17:03 -05:00
root
490f263a41 Added code to reset SM program counter during a restart 2021-07-12 14:09:11 -05:00
root
9d5fbea7a3 Fix for Issue #4983 - stop state machine before restarting 2021-07-11 21:02:28 -05:00
root
0ea750b2d0 Fix handling of short pulses 2021-07-11 16:38:24 -05:00
DavePutz
25e799e51a
Add LED and GP25 for Cytron Maker Pi Pico 2021-07-09 20:49:59 -05:00
Scott Shawcroft
58fdf9e940
Merge pull request #4975 from DavePutz/issue_4945
Issue #4945 - handle multiple PulseIns
2021-07-09 11:03:16 -07:00
root
4046b0fb0a Issue #4945 - handle multiple PulseIns 2021-07-08 14:09:21 -05:00
Dan Halbert
ab52a92704 Disallow ctrl-C interrupts of RP2040 SPI and PIO 2021-07-08 13:42:24 -04:00
Dan Halbert
a843b8a0d4 Merge remote-tracking branch 'adafruit/main' into rp2040-audio-and-spi-fixes 2021-07-08 08:22:21 -04:00
Dan Halbert
bd6826496c Fix various RP2040 audio dma things: (see detailed commit message)
1. Check for correct error values from dma_claim_unused_channel.
2. Introduce a .stereo flag for simplicity.
3. Clarify PWM carrier frequency choice.
4. Start introducing quiescent audio value. Still need to ramp up/down.
5. Redo audio stop logic a bit.
6. Fix (unrelated) displayio dependency things.

There is still an interference problem between other DMA users and audio. Still debugging this.
2021-07-08 08:14:49 -04:00
root
f98ec0cfd6 Fix formatting 2021-07-06 14:43:46 -05:00
root
bfa777c55a Add check for timer success 2021-07-06 14:34:15 -05:00
Daniel Griswold
2519b06478 fix spi definition 2021-07-06 01:15:32 -04:00
root
b2e72b2912 fix formatting 2021-07-05 23:13:18 -05:00
root
6e4613f1a1 Fix formatting 2021-07-05 12:30:26 -05:00
root
9814386d2e Fix for issue #4937 - Implement minimum pulseout time 2021-07-05 11:38:05 -05:00
Dan Halbert
33bbb8b1f4 RP2040 PWMAudioOut: Release DMA channels after play has finished. 2021-07-01 17:36:29 -04:00
Radomir Dopieralski
b8c4f7d685 MacroPad RP2040: Add initialization for the OLED display 2021-06-29 17:38:14 +02:00
Kattni Rembor
2c2d541e7c Adding pins to match silk and other RP2040 boards. 2021-06-28 17:10:15 -04:00
Scott Shawcroft
061d3a16ff
Merge pull request #4911 from DavePutz/issue_4908
Fix for issue #4908 - pulseout leaving line high
2021-06-24 15:32:48 -07:00
Dan Halbert
836db4e4a1
Merge pull request #4816 from hierophect/rp2040-alarms
RP2040: add Alarm module
2021-06-24 08:15:57 -04:00
root
ab1d7429f1 Fix for issue #4908 - pulseout leaving line high 2021-06-23 21:09:27 -05:00
Lucian Copeland
1f3d69d87c Clean up sleep memory, mark as not-implemented 2021-06-20 17:57:51 -04:00
Jeff Epler
268717e427 ParallelImageCapture: Switch to taking a list of pins
.. adopting validate_pins from RGBMatrix into shared-bindings

.. updating other platforms for API change
2021-06-10 11:15:18 -05:00
Ben Clifford
5c835adb10 Correct pull-down direction in parameter documentation for rp2pio 2021-06-09 20:39:56 +00:00
Limor "Ladyada" Fried
c1c101ca2d
Merge pull request #4864 from ladyada/main
macropad rev B definion and fix for SH110x addressing
2021-06-07 21:59:56 -04:00
Lucian Copeland
b6a268fca4 Further deinit additions 2021-06-07 14:13:59 -04:00
Lucian Copeland
63c1791d87 Merge remote-tracking branch 'upstream/main' into rp2040-alarms 2021-06-07 14:11:41 -04:00
Lucian Copeland
f2149edbd2 Add deinit to new boards 2021-06-07 12:48:12 -04:00
lady ada
2ff9e9766f handclang 2021-06-07 12:39:59 -04:00
Limor "Ladyada" Fried
c4f685aab1
Merge pull request #4865 from ZodiusInfuser/pimoroni_boards
Added definition for upcoming Pimoroni RP2040 board
2021-06-07 11:13:01 -04:00
lady ada
3890271f19 turn off all neopix when booting 2021-06-06 18:30:17 -04:00
lady ada
01195c2089 update to rev B 2021-06-06 15:57:41 -04:00
Scott Shawcroft
bc014cecb5
Merge pull request #4859 from DavePutz/hcsr04_fix
Fix pulsein pause and resume functions to handle HCSR04
2021-06-04 13:26:05 -07:00
root
57334c812e Fix pulsein pause and resume functions to handle HCSR04 2021-06-04 12:10:41 -05:00
ZodiusInfuser
af7557b53b
Updated with final USB PID 2021-06-04 16:02:32 +01:00
Jeff Epler
a99eba35b8
Merge pull request #4809 from DavePutz/issue_4266
Fix for Issue #4266 - second PWMAudioOut interferes with the first one
2021-06-03 19:08:28 -05:00
ZodiusInfuser
6011db3aec Added board definition 2021-06-03 15:49:23 +01:00
Dan Halbert
6af36757a7 lengthen RP2040 xosc startup time 2021-06-02 08:50:20 -04:00
root
8761e4bfd7 Initialize pacing timer 2021-05-30 12:12:38 -05:00
Kong Wai Weng
b06ec0a776 Added libraries dependency. 2021-05-30 09:57:00 +08:00
root
a2b220370e Fix formatting issue 2021-05-29 12:26:41 -05:00
root
760e8c77bd Changes to correct repeat playing on a channel 2021-05-29 11:55:10 -05:00
Kong Wai Weng
ebe4d90ac3 Updated the copyright information. 2021-05-29 10:12:22 +08:00
Lucian Copeland
feff243e8f Add RTC deep sleep alarm support 2021-05-28 13:52:05 -04:00
Kong Wai Weng
ebda9e07f4 Use 4 spaces instead of tab. 2021-05-29 01:04:13 +08:00
Kong Wai Weng
bfcb8c5896 Do not use neopixel as status LED. Also removed the unused definition. 2021-05-29 00:47:14 +08:00
Kong Wai Weng
5920ac647a Modified the essential files for Maker Pi RP2040. 2021-05-28 22:42:54 +08:00
Kong Wai Weng
321e5dd16f Use underscore instead of dash for board name. 2021-05-28 18:01:02 +08:00
Lucian Copeland
24041f34b0 Merge remote-tracking branch 'upstream/main' into rp2040-alarms 2021-05-27 18:40:40 -04:00
Lucian Copeland
8e1892ac6f Implement RP2040 Alarm module
Adds light and deep sleep functionality for the TimeAlarm and PinAlarm
alarm categories. Adds board deinit for all platforms.
2021-05-27 18:33:29 -04:00
Kong Wai Weng
da7c74f614 Initial commit. 2021-05-27 18:02:52 +08:00
root
24e641a834 Fix for Issue #4266 2021-05-25 16:06:00 -05:00
Scott Shawcroft
038c9d6194
Merge pull request #4796 from Neradoc/nera-pwmrgb-status-pimoroni
Enable the PWM status LED on Pimoroni Tiny 2040 and PicoSystem
2021-05-24 13:30:55 -07:00
lady ada
2e90d5ed07 clang a bit 2021-05-22 12:39:42 -04:00
lady ada
d52f149e84 add ESP CS pin to make wifi demos easier 2021-05-22 12:22:28 -04:00
lady ada
ac855afb48 Some pin neatening and updated PID to unused Adafruit one! 2021-05-22 11:57:46 -04:00
BlitzCityDIY
14dbec7c04 Merge branch 'main' of https://github.com/blitzcitydiy/circuitpython into main 2021-05-22 01:02:21 -04:00
BlitzCityDIY
9f4eb48e70 Updating MISO
While testing WIFI realized MISO was defined incorrectly
2021-05-22 01:02:06 -04:00
BlitzCityDIY
352281e23e Adding Arduino Nano RP2040 Connect
Re-commiting to fix local GitHub config issues. Adding CircuitPython support for the Arduino Nano RP2040 Connect. Have tested all digital and analog I/O, I2C, onboard LSM6DSOX. Uses the AT25SF128A external flash.
2021-05-21 20:44:11 -04:00
Neradoc
6808d04d53 enable the PWM status LED on Pimonoroni Tiny 2040 and PicoSystem 2021-05-21 20:13:30 +02:00
Scott Shawcroft
5643355e90
Merge remote-tracking branch 'adafruit/main' into simplify_status_led 2021-05-20 08:35:15 -07:00
Scott Shawcroft
642fbcf87a
Handle status led power
This no longer turns on status LED power before running user code.
Therefore, use of the status LED on some boards will also have to
enable the power.
2021-05-19 10:57:14 -07:00
Scott Shawcroft
9dabe882f1
Fix safe mode on rp2040 2021-05-19 10:18:43 -07:00
Limor "Ladyada" Fried
b667736110 Merge branch 'adafruit:main' into main 2021-05-18 20:55:55 -04:00
lady ada
d8b895f1d7 add LED and speaker - natch! 2021-05-18 20:53:13 -04:00
ladyada
cec9015e19 iz makropad with oled 2021-05-18 11:09:03 -04:00
root
9393467819 Update comment for spelling 2021-05-17 22:13:00 -05:00
root
ff4b1b28d2 iFormatting fixes 2021-05-17 16:43:55 -05:00
root
11ef36d09d Implement pulseout for RP2040 2021-05-17 16:24:45 -05:00
Scott Shawcroft
689ec86225
Merge pull request #4754 from dhalbert/fix-endpoint-checking
Fix endpoint checking; Clean up safe mode printing
2021-05-14 11:25:01 -07:00
Dan Halbert
fa6c06fb38 count in/out endpoints; allow more usb modules on low-endpoint boards 2021-05-13 21:59:02 -04:00
Scott Shawcroft
1a0b4193b7
Simplify the status LED to save power
This also removes the need to pin share because we don't use the
status LED while user code is running.

The status flashes fallback to the HW_STATUS LED if no RGB LED is
present. Each status has a unique blink pattern as well.

One caveat is the REPL state. In order to not pin share, we set the
RGB color once. PWM and single color will be shutoff immediately but
DotStars and NeoPixels will hold the color until the user overrides
it.

Fixes #4133
2021-05-13 14:41:20 -07:00