Commit Graph

6619 Commits

Author SHA1 Message Date
Jeff Epler
0b22a9397a mimxrt: Quiet some warnings down in the sdk
Closes #2487
2021-03-18 16:54:11 -05:00
Jeff Epler
0ba0fae495 mimxrt: Enable USB Midi
Closes #2473
2021-03-18 16:54:11 -05:00
Jeff Epler
74243fd71a metro_m7: Update board name, flash chip size 2021-03-18 16:54:11 -05:00
Scott Shawcroft
11e510a06a
Merge pull request #4419 from spe2/main
Add board definition for Sparkfun Pro Micro RP2040
2021-03-17 18:17:24 -07:00
Jeff Epler
719e8710f2
Merge pull request #4411 from mintakka/thingplus-rp2040
added board configuration for Sparkfun ThingPlus RP2040
2021-03-17 16:23:55 -05:00
Phil Howard
b8d4f9655f RP2040: Only bitbang 0-byte writes
The I2C.c for RP2040 included a special case for writes <=2 bytes to match the MicroPython implementation,
however RP2040 does support 1 and 2 byte reads, with only 0 bytes being the exception.

Signed-off-by: Philip Howard <phil@pimoroni.com>
2021-03-17 16:25:54 +00:00
Jeff Epler
bfc8c89536
Merge pull request #4403 from jepler/bitmap-read-2
bitmaptools: Add readinto, arrayblit
2021-03-17 07:57:31 -05:00
mintakka
337727ba0c renamed board folder to match board name in boards.yml 2021-03-16 21:10:10 -04:00
Jeff Epler
94fa8e8a60 disable bitmaptools on small board 2021-03-16 19:04:21 -05:00
Jeff Epler
75ba26ee7c
Merge pull request #4421 from kattni/led-pin
Adding LED for D13/L pin name.
2021-03-16 18:58:14 -05:00
Damien George
6e5aea08a9 stm32/Makefile: Allow QSTR_DEFS,QSTR_GLOBAL_DEPENDENCIES to be extended.
So a board can provide custom qstr definitions if needed.

Signed-off-by: Damien George <damien@micropython.org>
2021-03-17 10:25:16 +11:00
Mark
1be5ca7881
Merge pull request #4130 from gamblor21/rp_dp_parallel
Add RP2040 displayio.ParallelBus Support
2021-03-16 13:49:55 -05:00
spe2
dcd9a8ab91
Update ports/raspberrypi/boards/sparkfun_pro_micro_rp2040/mpconfigboard.mk
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-16 10:54:20 -07:00
spe2
5bc132a209
Update ports/raspberrypi/boards/sparkfun_pro_micro_rp2040/mpconfigboard.h
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-16 10:54:15 -07:00
mintakka
b5333f2bdf
Update ports/raspberrypi/boards/sparkfun_thingplus_rp2040/mpconfigboard.h
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-16 13:47:33 -04:00
mintakka
3d15877639
Update ports/raspberrypi/boards/sparkfun_thingplus_rp2040/mpconfigboard.mk
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-16 13:47:21 -04:00
Jeff Epler
58679dc038 Merge remote-tracking branch 'origin/main' into bitmap-read-2 2021-03-16 12:21:50 -05:00
Kattni Rembor
2b910b7292 Adding LED for D13/L pin name. 2021-03-16 12:14:40 -04:00
Jeff Epler
bc690d4070
Merge pull request #4415 from jepler/pre-commit-no-run-if-empty
pre-commit: code formatter fixes
2021-03-16 09:54:12 -05:00
gamblor21
0890b54cd9 More formatting 2021-03-16 08:29:04 -05:00
gamblor21
fb437d8280 Formatting fixes 2021-03-16 08:22:02 -05:00
gamblor21
3b01a65743 Fixed formatting 2021-03-16 08:14:49 -05:00
spe2
9de40f56f3
Add board config files 2021-03-15 22:08:19 -06:00
spe2
c9427780b3
Create pins.c 2021-03-15 22:07:24 -06:00
mintakka
49baa94446 added sparkfun_thingplus_rp2040 to .github/workflows/boards.yml and renamed board folder to include chip 2021-03-15 23:00:24 -04:00
stijn
d53a6d58b0 stm32/Makefile: Fix C++ linker flags when toolchain has spaces in path.
The GNU Make dir command uses spaces as item separator so it does not
work for e.g building the STM32 port on Cygwin with a default Arm
installation in "c:/program files (x86)/GNU Arm Embedded Toolchain".
Fix by using POSIX dirname on a quoted path instead.
2021-03-16 12:54:16 +11:00
mintakka
288415f867
Update ports/raspberrypi/boards/sparkfun_thingplus/mpconfigboard.h
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-15 21:07:31 -04:00
mintakka
30a74b3d92
Update ports/raspberrypi/boards/sparkfun_thingplus/mpconfigboard.mk
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-03-15 21:07:24 -04:00
Mark
e326d7ca80
Merge branch 'main' into rp_dp_parallel 2021-03-15 20:00:13 -05:00
Scott Shawcroft
f7a988b9b3
Merge pull request #4405 from DavePutz/issue_4237
Issue 4237 - Changed initial setting in program_struct
2021-03-15 17:51:36 -07:00
Scott Shawcroft
9cb8ce67ed
Merge pull request #4412 from kamtom480/spi_and_i2c
spresense: minor changes for i2c, spi and uart
2021-03-15 17:35:06 -07:00
Jeff Epler
d3bf1fe15d modifications by pre-commit 2021-03-15 18:11:00 -05:00
Kamil Tomaszewski
ed3f636be5 spresense: empty rx uart fifo after initialization 2021-03-15 16:14:16 +01:00
Kamil Tomaszewski
22ed0abf6c spresens: configure pin mode for i2c and spi 2021-03-15 16:14:16 +01:00
mintakka
0567d06936 added board configuration for Sparkfun ThingPlus RP2040 2021-03-15 10:27:21 -04:00
microDev
a52eb88031
run code formatting script 2021-03-15 19:27:36 +05:30
felixerdy
6c32a1f67f update pins of senseBox MCU 2021-03-15 10:27:50 +01:00
Jeff Epler
b33d77bfe8 disable bitmaptools on over-full board 2021-03-14 20:08:09 -05:00
root
9a83501982 Fixed initial settings for program_struct to allow more than 1 program per pio 2021-03-14 15:05:56 -05:00
Damien George
a9140ab09b rp2: Use core-provided cmake fragments instead of custom ones.
Signed-off-by: Damien George <damien@micropython.org>
2021-03-14 15:53:18 +11:00
Damien George
eccd73a403 extmod/extmod.cmake: Add modonewire.c to MICROPY_SOURCE_EXTMOD list.
Signed-off-by: Damien George <damien@micropython.org>
2021-03-14 15:51:28 +11:00
Dan Halbert
8e425a9354
Merge pull request #4393 from tannewt/raise_default_flash_speed
Speed up a bit more
2021-03-13 12:50:29 -05:00
Damien George
dcaf702578 rp2/modmachine: Enable machine.Signal class.
Fixes issue #6863.

Signed-off-by: Damien George <damien@micropython.org>
2021-03-14 00:19:04 +11:00
Damien George
8010b15968 rp2: Enabled more core Python features.
This brings the port's configuration closer to the stm32 and esp32 ports.

Signed-off-by: Damien George <damien@micropython.org>
2021-03-14 00:17:22 +11:00
Kevin Köck
af45d511f1 rp2: Enable uerrno module.
Fixes #6991.
2021-03-13 23:34:50 +11:00
Scott Shawcroft
1b106de4e0
Merge pull request #4262 from DavePutz/issue_4111
Issue 4111 - Implement pulseio(pulsein) for RP2040
2021-03-12 16:48:57 -08:00
Scott Shawcroft
45487f14a0
Speed up a bit more 2021-03-12 16:00:16 -08:00
DavePutz
96ce43e6d6
Added the correct files 2021-03-12 16:18:33 -06:00
DavePutz
6628f49852
Use StateMachine.c interrupt setup and simplify SM program 2021-03-12 16:06:57 -06:00
Jeff Epler
a5c6759325
Merge pull request #4392 from tannewt/lower_default_flash_speed
Lower default flash speed.
2021-03-12 13:58:44 -06:00
Scott Shawcroft
aec03a409f
Lower default flash speed.
/ 6 leads to ~40mhz. 2M and 4M have a max 0x03 read speed of 60mhz.
If the divisor is / 4 then the speed is just over 60mhz.

Fixes #4377
2021-03-12 11:06:39 -08:00
felixerdy
2009aecac3 Merge branch 'main' of github.com:felixerdy/circuitpython 2021-03-12 17:59:44 +01:00
felixerdy
de93df6444 add senseBox MCU 2021-03-12 17:57:55 +01:00
Dan Halbert
0ce5b2f594 put back pullup setting 2021-03-12 08:20:09 -05:00
Damien George
6129b8e401 tests: Rename run-tests to run-tests.py for consistency.
Signed-off-by: Damien George <damien@micropython.org>
2021-03-12 19:56:09 +11:00
gamblor21
307d2a99fe Fix after rebase 2021-03-11 20:06:50 -06:00
gamblor21
5689307798 Changed frequency to match PIO having 2 instructions 2021-03-11 19:32:44 -06:00
gamblor21
b02b1e9979 Set frequency default 60Mhz 2021-03-11 19:32:44 -06:00
gamblor21
1658fe04f9 Set the statemachine to never reset so REPL works 2021-03-11 19:32:44 -06:00
gamblor21
c384ebe5c0 Updated to initalize pindirs 2021-03-11 19:32:44 -06:00
gamblor21
7321411962 Added frequency to parallel display 2021-03-11 19:32:43 -06:00
gamblor21
56a219911f Add frequency support to parallel bus 2021-03-11 19:32:43 -06:00
gamblor21
b080d6207b Removing debug info and clean up 2021-03-11 19:32:43 -06:00
gamblor21
c6aaab6f64 Initial commit 2021-03-11 19:32:43 -06:00
Dan Halbert
c71b6cb699 move to esp-idf PR merge 2021-03-11 20:05:31 -05:00
Damien George
b24fcd7aec esp32/machine_hw_spi: Use default pins when making SPI if none given.
The default pins can be optionally configured by a board.

Fixes issue #6974.

Signed-off-by: Damien George <damien@micropython.org>
2021-03-12 10:56:25 +11:00
Lucian Copeland
6b2c9985ff Extract RTC, implement fake RTC deepsleep 2021-03-11 17:50:05 -05:00
Dan Halbert
f75a009ed4 fix unnecessary statement order change 2021-03-11 15:16:32 -05:00
Dan Halbert
b5d2cc6f46 Merge remote-tracking branch 'adafruit/main' into esp32s2-i2c-bug 2021-03-11 15:09:18 -05:00
Jeff Epler
24f4d981bd
Merge pull request #4380 from jepler/rp2040-audiomp3
raspberrypi: Enable mp3 playback
2021-03-11 12:53:46 -06:00
Scott Shawcroft
0e451a1681
Merge pull request #4383 from hierophect/stm32-uart-dereserve
STM32: Fix UART deinit
2021-03-11 10:48:01 -08:00
Scott Shawcroft
40886d198d
Merge pull request #4385 from hierophect/stm32-f407-can
STM32: add all F405 modules to F407
2021-03-11 10:45:08 -08:00
Dan Halbert
de88fa37fb Merge remote-tracking branch 'adafruit/main' into esp32s2-i2c-bug 2021-03-11 12:27:29 -05:00
Dan Halbert
061d5910cb use fixed esp-idf 2021-03-11 12:09:01 -05:00
Kamil Tomaszewski
18668f6e28 spresense: fix spi to work with only one data pin 2021-03-11 18:06:49 +01:00
Kamil Tomaszewski
76d0870fba spresense: return error as positive value for i2c 2021-03-11 18:04:01 +01:00
Lucian Copeland
0b73c7a212 Update F407 to match F405 2021-03-11 11:27:17 -05:00
Lucian Copeland
1ebbd14d0f Fix UART deinit 2021-03-11 11:02:13 -05:00
Jeff Epler
15e97f12a1
Merge pull request #4379 from jepler/rp2040-rtc
raspberrypi: RTC: Ensure a time is set
2021-03-11 09:00:31 -06:00
Andrew Scheller
b6489425c6 rp2/rp2_flash: Prevent MICROPY_HW_FLASH_STORAGE_BASE being set negative. 2021-03-12 00:57:29 +11:00
Dan Halbert
08c5dbb003 use return values in STM PWMOut constructor, not exceptions 2021-03-11 08:52:47 -05:00
robert-hh
c675452566 rp2/modmachine: Re-init UART for REPL on frequency change.
When UART is used for REPL and the MCU frequency is changed, the UART
has to be re-initialised.  Besides that the UART may have to be recreated
after a frequency change, but with USB REPL this is not a problem.

Thanks to @HermannSW for spotting and providing the change.
2021-03-12 00:49:30 +11:00
robert-hh
11cf742524 rp2/modmachine: Allow changing CPU clock frequency.
Using the standard machine.freq().

The safe ranges tested were 10 and 12-270MHz, at which USB REPL still
worked.  Requested settings can be checked with the script:
pico-sdk/src/rp2_common/hardware_clocks/scripts/vcocalc.py.  At frequencies
like 300MHz the script still signaled OK, but USB did not work any more.
2021-03-12 00:48:46 +11:00
robert-hh
0461640983 rp2/rp2_pio: Fix sm.get(buf) to not wait after getting last item.
sm.get(buf) was waiting for one item more than the length of the supplied
buffer.  Even if this item was not stored, sm_get would block trying to get
an item from the RX fifo.

As part of the fix, the edge case for a zero length buffer was moved up to
the section where the function arguments are handled.  In case of a zero
length buffer, sm.get() now returns immediately that buffer.
2021-03-12 00:39:26 +11:00
robert-hh
a075e0b7d8 rp2/rp2_pio: Allow more than 8 consecutive pins for PIO out/set/sideset.
The bitmasks supplied for initialization of out/set/sideset were only 8 bit
instead of 32.  This resulted in an error, that not more than 8 consecutive
pins would get initialized.

Fixes issue #6933.
2021-03-12 00:26:32 +11:00
robert-hh
da85cb014a rp2/machine_uart: Add support for inverted TX and RX lines.
Usage as in the other ports:

    keyword "invert"
    constants: INV_TX and INV_RX

Sample: uart = UART(1, invert=UART.INV_TX | UART.INV_RX)
2021-03-11 18:27:53 +11:00
robert-hh
8ade163fff rp2/machine_uart: Add timeout/timeout_char to read and write. 2021-03-11 18:19:15 +11:00
StereoRocker
8610bababe rp2: Enable VfsFat class for FAT filesystem support.
Allows interfacing with SD cards, for example.
2021-03-11 17:56:21 +11:00
svetelna
23ce25a7c3 mimxrt/boards: Add MIMXRT1050_EVK board, based on MIMXRT1060_EVK. 2021-03-11 16:42:38 +11:00
Mike Causer
8785acac22 esp32/Makefile: Specify port and baud on erase_flash command. 2021-03-11 15:49:10 +11:00
Jeff Epler
16bfe3b41c raspberrypi: RTC: Ensure a time is set
Until a time is set, the RTC is not running, and rtc_get_datetime()
returns false without assigning to the out-parameter.

In CircuitPython, this would manifest as arbitrary values being returned,
since uninitialized storage on the stack was being converted into a timestamp.
2021-03-10 20:20:40 -06:00
Scott Shawcroft
f0965b1ef7
Merge pull request #4350 from nitz/board-add-sparkfun-micromod-nrf52840
Add new nRF port for SF MicroMod nRF52840.
2021-03-10 18:13:11 -08:00
Jeff Epler
c95def0b32 raspberrypi: Enable mp3 playback
The rp2040 is _very_ marginal for mp3 playback, and currently sometimes triggers a bug that gives garbled audio output.  However, it does work for some limited situations.
2021-03-10 18:44:10 -06:00
Damien George
c33c749f64 stm32/boardctrl: Add MICROPY_BOARD_STARTUP hook.
Signed-off-by: Damien George <damien@micropython.org>
2021-03-11 09:04:36 +11:00
Reinhard Feger
79c186f5c9 stm32/spi: Fix baudrate calculation for H7 series.
Fixes issue #6342.
2021-03-11 01:06:52 +11:00
Peter Hinch
0facd891e7 stm32/powerctrl: Save and restore EWUP state when configuring standby.
This allows the user to enable wake-up sources using the EWUP bits, on F7
MCUs.

Disabling the wake-up sources while clearing the wake-up flags follows the
reference manual and ST examples.
2021-03-11 00:56:01 +11:00
Braiden Kindt
85ea4ac0e5 stm32/main: Fix passing state.reset_mode to init_flash_fs.
state.reset_mode is updated by `MICROPY_BOARD_BEFORE_SOFT_RESET_LOOP` but
not passed to `init_flash_fs`, and so factory reset is not executed on
boards that do not have a bootloader.  This bug was introduced by
4c3976bbca

Fixes #6903.
2021-03-10 23:50:40 +11:00
Herwin Grobben
35c602d3b8 stm32/make-stmconst.py: Allow "[]" chars when parsing source comments.
For STM32WB MCUs, EXTI offset addresses were not parsed due to the
appearance of "[31:0]" in a comment in the .h file.
2021-03-10 23:44:02 +11:00
hathach
58fb011070 clean up 2021-03-10 19:03:27 +07:00
hathach
d1c6bb0927 rp2040 add double reset to uf2, also update pico-sdk to 1.1.0 2021-03-10 18:58:23 +07:00
DavePutz
a3c3e8a0fa
fix trailing whitespace 2021-03-09 22:41:08 -06:00
nitz
d5365cb066
SDIO/QSPI pin names. ¯\_(ツ)_/¯ 2021-03-09 18:36:29 -05:00
nitz
5beb529f61
Update pins, remove unused defs from board config. 2021-03-09 17:43:13 -05:00
nitz
fe0655e121
Update pins, remove unused defs from board config. 2021-03-09 17:39:50 -05:00
DavePutz
0c58cc4772
Moved pin wait to an initial exec 2021-03-09 16:37:29 -06:00
nitz
1ae858126a
Fix the mpconfigboard.mk that was screwy? 2021-03-09 17:29:10 -05:00
Scott Shawcroft
d650849581
Merge pull request #4348 from FBSeletronica/franzininhoWIFI_wrover
Franzininho wifi ESP32-S2 Wrover
2021-03-09 13:07:19 -08:00
Scott Shawcroft
2c3002b327
Merge pull request #4370 from jposada202020/i2cperipheral_ctrlc
I2CPeripheral samd51 corrections in the CTRLC bit
2021-03-09 12:58:59 -08:00
Chris Dailey
a61db7f12e
Updated SparkFun MicroMod USB PID
As per the PID provide by TheHoff, [here](https://forum.sparkfun.com/viewtopic.php?p=223812#p223812)
2021-03-09 12:54:52 -05:00
DavePutz
f0e3274a33
Update to agree with modified StateMachine.h 2021-03-09 11:13:09 -06:00
FBSeletronica
c6eb3f98be Fixing build.yml 2021-03-09 13:55:20 -03:00
jposada202020
be90fa80e8 Initial Changes 2021-03-09 10:48:33 -05:00
DavePutz
6f4510d7aa
Merge branch 'main' into issue_4111 2021-03-08 23:28:21 -06:00
root
576da73a17 Added check for maxlen 2021-03-08 23:23:51 -06:00
root
95b7a59156 Merge branch 'issue_4111' of https://github.com/DavePutz/circuitpython into issue_4111 2021-03-08 23:22:05 -06:00
root
3db0fec267 Added check for maxlen 2021-03-08 23:20:57 -06:00
DavePutz
88650bc4d0
Removed leftover debug code 2021-03-08 22:48:57 -06:00
Andrew Leech
59a129f22f stm32/storage: Prevent attempts to read/write invalid block addresses.
A corrupt filesystem may lead to a request for a block which is out of
range of the block device limits.  Return an error instead of passing the
request down to the lower layer.
2021-03-09 15:32:50 +11:00
Dan Halbert
7029783985 funhouse board 2021-03-08 21:24:28 -05:00
Scott Shawcroft
775f1b9e0d
Merge pull request #4329 from jepler/rp2-rotaryio
raspberrypi: Implement rotaryio, improve StateMachine
2021-03-08 17:49:45 -08:00
Scott Shawcroft
4fc6c7d8c9
Merge pull request #4347 from FBSeletronica/franzininhoWIFI
Adding Circuitpython port for Franzininho WIFI board with the ESP32-S2 wroom module
2021-03-08 15:37:42 -08:00
jun2sak
c8f36e604c reset myself, not go REPL, after wakeup from deep sleep. 2021-03-09 00:42:22 +09:00
FBSeletronica
27703f3156 fix quote error 2021-03-08 10:32:37 -03:00
FBSeletronica
fe29780afb updating USB_VID and USB_PID for Espressif modules 2021-03-08 08:51:48 -03:00
FBSeletronica
2771e7fe75 Updating USB vendor ID and producfor Espressif modules 2021-03-08 08:47:33 -03:00
Jeff Epler
cdb0fda72a Merge remote-tracking branch 'origin/main' into count-flash-devices 2021-03-07 20:26:04 -06:00
Dan Halbert
26eb429cc6 restore install/delete for i2c driver 2021-03-07 18:23:14 -05:00
Jeff Epler
f1ada8e880 Automatically count EXTERNAL_FLASH_DEVICES 2021-03-07 11:48:39 -06:00
jerryneedell
a23129bc49 add GD25Q16C flash to BlackPill 2021-03-07 17:23:39 +00:00
Jeff Epler
a4133c4545
Merge pull request #4344 from jepler/vm-size-optimizations
Vm size optimizations: Get back 1500 bytes for 3.2% VM speed decrease
2021-03-07 10:09:51 -06:00
jun2sak
51c7a49853 Merge branch 'main' into nrf52-sleep 2021-03-07 20:50:53 +09:00
jun2sak
5bd1107fec Clean up. 2021-03-07 20:38:04 +09:00
jun2sak
2eed9a1735 old System OFF sleep code for future reference. 2021-03-07 20:21:33 +09:00
jun2sak
7430b92d27 address hw pin-reset while sleep. 2021-03-07 20:20:29 +09:00
jun2sak
2795c002ad disable QSPI while system ON idle loop. 2021-03-07 19:14:04 +09:00
jun2sak
cd5c0e99f7 Clean up. 2021-03-07 19:09:01 +09:00
nitz
3b76299f39
Add new nRF port for SF MicroMod nRF52840. 2021-03-07 01:06:50 -05:00
FBSeletronica
17aa9ae3f6 Update vendor ID for Espressif ESP32S2 Modules 2021-03-06 18:43:34 -03:00
FBSeletronica
4a50f1dd6f Update Vendor ID for Espressif 2021-03-06 18:36:53 -03:00
FBSeletronica
48e727f7d6 adding port for Franzininho WIFI board ESP32S2 w/Wrover 2021-03-06 17:47:27 -03:00
FBSeletronica
6cf9c5158c adding port for Franzininho WIFI board 2021-03-06 17:15:54 -03:00
jun2sak
3fab9f8b1b new wait-until-alarm design, don't use System OFF. 2021-03-07 01:09:54 +09:00
Jeff Epler
4f040af481 vm: Make the speed-size trade-off compile time settable
.. and enable for all samd21 boards
2021-03-05 18:29:27 -06:00
Jeff Epler
67fb3054b4
Merge pull request #4342 from jamesbowman/main
Enable EVE low-level for Teensy 4.0 and 4.1
2021-03-05 17:25:00 -06:00
Jeff Epler
d2056a46ee
Merge pull request #4335 from tyomitch/main
[nrf] No need to store `buffer_length` as part of `audiopwmio_pwmaudioout_obj_t`
2021-03-05 15:54:10 -06:00
Jeff Epler
bed96a98d2
Merge pull request #4337 from tyomitch/patch-1
[stm] `curr_pulseout` can be `STATIC`
2021-03-05 15:53:31 -06:00
James Bowman
bff585ffd2 Enable EVE low-level for Teensy 4.0 and 4.1 2021-03-05 11:32:58 -08:00
Jeff Epler
cd1f19020f raspberrypi: move landmine Makefile comments 2021-03-05 12:59:55 -06:00
Jeff Epler
2ae1e7de61 WIPrp2040: Implement IncrementalEncoder
Any two consecutive pins can be used for an IncrementalEncoder

Testing performed: Put a synthesized (few hundred counts per second) quadrature signal into GP2/3 and read the encoder out.  Performed filesystem operations at the same time to stress test it.

The reasons for not using common_hal_rp2pio_statemachine_readinto are commented on.
2021-03-05 10:31:29 -06:00
Dan Halbert
4cf6579e22 remove general changes; not consistent across builds 2021-03-05 10:10:50 -05:00
Artyom Skrobov
e0b96c0f43 [nrf] No need to store buffer_length as part of audiopwmio_pwmaudioout_obj_t 2021-03-05 06:01:58 -05:00
Artyom Skrobov
4720dc179a
[stm] curr_pulseout can be STATIC
Not used outside of PulseOut.c
2021-03-05 12:52:13 +02:00
Dan Halbert
c97721455a Shrink the smallest builds with compile options 2021-03-04 23:07:06 -05:00
DavePutz
a4dda3a5ba
Merge branch 'main' into issue_4111 2021-03-04 14:38:00 -06:00
DavePutz
c5c297d2c0
Update PulseOut.c 2021-03-04 13:53:19 -06:00
DavePutz
b7f03f9487
Update PulseOut.h 2021-03-04 13:52:40 -06:00
DavePutz
2d941b070f
Changed interrupt to per-word basis; cleaned up other small items 2021-03-04 13:51:46 -06:00
Jeff Epler
bc14ed31f6 StateMachine.h: Add header for declaration of mcu_pin_obj_t typedef 2021-03-04 12:28:46 -06:00
Jeff Epler
c023ec03ff PDMIn: Add missing deinit call 2021-03-04 12:28:06 -06:00
Jeff Epler
bd01d31542 rp2pio: Add pins_are_sequential
This can be used where the standard API calls for a list of pins, to check that they satisfy the requirements of the rp2pio state machine, e.g.,
```python
    def __init__(self, pin_a, pin_b):
        if not rp2pio.pins_are_sequential([pin_a, pin_b]):
            raise ValueError("Pins must be sequential")
```
2021-03-04 11:26:33 -06:00
Jeff Epler
ff62b0d2c0 StateMachine: Add pull up/down for inputs 2021-03-04 11:26:29 -06:00
Jeff Epler
68ac14b309 StateMachine: Add in_available property
I named the property `in_available` because it is similar to pyserial.
However, it indicates the number of words in the fifo, not the number
of bytes.
2021-03-04 11:14:09 -06:00
Dan Halbert
2ae8a44b2a
Merge pull request #4325 from microDev1/fix-wdt
ESP32S2: Fix watchdog deinit
2021-03-04 11:04:01 -05:00
hathach
6f99026a64 rp2040 use normal usb_irq_handler() 2021-03-04 21:29:04 +07:00
microDev
13453d35c6
fix watchdog deinit 2021-03-04 13:23:34 +05:30
Dan Halbert
71c43ca2dd
Merge pull request #4319 from jepler/feather-default-uart
feather rp2040: enable default board.UART
2021-03-03 16:46:00 -05:00
Jeff Epler
b0fca4fcda feather rp2040: enable default board.UART 2021-03-03 13:13:06 -06:00
Dan Halbert
cd48c5ee83
Merge pull request #4315 from dhalbert/rp2040-i2c-short-writes
RP2040: Implement short I2C writes (2 bytes or less) using bitbangio
2021-03-03 12:42:47 -05:00
DavePutz
88353f2f5b
Update mpconfigport.mk 2021-03-03 11:00:58 -06:00
DavePutz
ced707ed32
Update call to rp2pio_statemachine_construct 2021-03-03 10:55:08 -06:00
Scott Shawcroft
514b73bcf8
Merge pull request #4254 from gamblor21/rp2040_countio
Rp2040 countio
2021-03-03 08:47:24 -08:00
Scott Shawcroft
1d8933dd05
Merge pull request #4265 from DavePutz/pio_soft_reset
Clear out PIOs and State Machines on RP2040 soft reset
2021-03-03 08:43:57 -08:00
Dan Halbert
fb7a0f7efc add 1sec timeouts for I2C read and write 2021-03-03 09:43:57 -05:00
gamblor21
98075c5255 Fixed merge 2021-03-02 22:32:59 -06:00
Dan Halbert
e3ab394cd6 works on nearly all sensors 2021-03-02 23:27:37 -05:00
Dan Halbert
4167778bbc
Merge pull request #4312 from jepler/feather-rp2040-led
feather rp2040: add board.LED
2021-03-02 23:19:14 -05:00
DavePutz
9b96bae668
Update mpconfigport.mk 2021-03-02 21:36:00 -06:00
DavePutz
30d491e136
Update mpconfigport.mk 2021-03-02 21:30:49 -06:00
DavePutz
58fb7b9b32
Update mpconfigport.mk to get builds working 2021-03-02 21:27:46 -06:00
DavePutz
6046d37f31
Update PulseIn.c 2021-03-02 21:23:45 -06:00
Mark
37ee18349f
Merge branch 'main' into rp2040_countio 2021-03-02 19:47:53 -06:00
gamblor21
4246cc3f6d Counter and PWMOut slice conflict check 2021-03-02 19:32:06 -06:00
Jeff Epler
b27afad9cb move LED to the right spot in the file 2021-03-02 19:02:38 -06:00
Jeff Epler
efc2667b5f
Merge pull request #4186 from jepler/update-protomatter-rp2
Enable protomatter on RP2040 builds
2021-03-02 19:01:37 -06:00
Dan Halbert
15615effc2
Merge pull request #4276 from bergdahl/patch-1
Update StateMachine.c
2021-03-02 17:11:45 -05:00
Dan Halbert
0a58d451ad
Merge pull request #4306 from Neradoc/fix-reset-to-safe
press reset to safe mode on ports where reset reason is not implemented
2021-03-02 15:44:52 -05:00
Dan Halbert
f31b472309 Merge remote-tracking branch 'adafruit/main' into rp2040-i2c-short-writes 2021-03-02 15:17:12 -05:00
Dan Halbert
9939c59caa wip 2021-03-02 15:16:55 -05:00
Jeff Epler
8bfd308d37 feather rp2040: add board.LED 2021-03-02 13:16:09 -06:00
Scott Shawcroft
e4f0e47d9f
Merge pull request #4233 from pewpew-game/displayio-group-list
displayio: make Group use a python list internally
2021-03-02 09:59:58 -08:00
Scott Shawcroft
ce70b95990
Merge pull request #4177 from microDev1/nvm-rp
RP2040: Support for NVM
2021-03-02 09:57:36 -08:00
Dan Halbert
248acd07c8 shrink builds 2021-03-02 12:25:42 -05:00
Dan Halbert
f41fb6fafc
Apply suggestions from code review
copyediting
2021-03-02 12:01:50 -05:00
Dan Halbert
9f6ebf3012
Merge pull request #4310 from kamtom480/spresense_analogin
spresense: return valid reference voltage
2021-03-02 11:55:42 -05:00
Scott Shawcroft
2651e15a52
Merge pull request #4309 from jepler/rp2040-interrupt-pio
rp2pio: allow keyboard interrupt while waiting for tx fifo to empty (& stall)
2021-03-02 08:55:27 -08:00
Scott Shawcroft
722a7150ca
Merge pull request #4308 from jepler/rp2040-build-boot2
raspberrypi: allow directly specifying the original boot .S file
2021-03-02 08:54:30 -08:00
Lucian Copeland
f1792c8474 Extract EXTI, create base sleep framework 2021-03-02 11:41:53 -05:00
Jeff Epler
f560b5f3a3 raspberry: switch pico back to the boot2 for W25Q16
Presumably, switching it to generic hurt performance a bit.

I verified that the build-raspberry_pi_pico/boot2_padded_checksummed.S
built file has the same checksum as the old
bs2_default_padded_checksummed.S
2021-03-02 08:08:41 -06:00
Kamil Tomaszewski
7c921b808b spresense: Define LONGINT_IMPL as MPZ 2021-03-02 14:25:22 +01:00
Kamil Tomaszewski
f9d21637a3 spresense: return valid reference voltage 2021-03-02 14:25:22 +01:00
Radomir Dopieralski
cb2cf81136 ugame10 - disable pulseio to make more room for the French 2021-03-02 11:11:55 +01:00
microDev
b029031286
minor structural modification 2021-03-02 14:36:28 +05:30
Dan Halbert
54d11a8e2d
Merge pull request #4299 from jamesbowman/main
Add EVE support for Feather M4 Express
2021-03-01 22:56:50 -05:00
Jeff Epler
5a00862b1d raspberrypi: allow directly specifying the original boot .S file
.. all the necessary steps to transform it into a padded, checksummed
file are now done by the build system.

Since it is assigned by "?=", it _should_ be the case that individual
builds can override it.

I did not "test" this per se, but it gives the same content and checksum
(except for the identifying comment with a path) as #4302.
2021-03-01 21:08:19 -06:00
Jeff Epler
4b63a8c9b4 rp2pio: allow keyboard interrupt while waiting for tx fifo to empty (& stall) 2021-03-01 21:07:04 -06:00
Scott Shawcroft
d0eab5c561
Merge pull request #4256 from kmatch98/bt_cleanup
Add `bitmaptools` module
2021-03-01 18:24:12 -08:00
Damien George
680ce45323 stm32/rfcore: Allow BLE settings to be changed by a board.
Two of the defaults have also changed in this commit:

- MICROPY_HW_RFCORE_BLE_LSE_SOURCE changed from 1 to 0, which configures
  the LsSource to be LSE (needed due to errata 2.2.1).

- MICROPY_HW_RFCORE_BLE_VITERBI_MODE changed from 0 to 1, which enables
  Viterbi mode, following all the ST examples.

Signed-off-by: Damien George <damien@micropython.org>
2021-03-02 12:14:54 +11:00
James Bowman
0dabd1ace2 Add EVE support for Feather M4 Express 2021-03-01 14:42:48 -08:00
Scott Shawcroft
1b3bca14cb
Merge pull request #4294 from kamtom480/spresense_analogin
spresense: return the correct value for Analog In
2021-03-01 13:21:15 -08:00
Scott Shawcroft
21a8752166
Merge pull request #4297 from adafruit/tannewt-patch-1
Update flash sizes for Adafruit RP2040 boards
2021-03-01 13:19:50 -08:00
Jeff Epler
238484ec26 Merge remote-tracking branch 'origin/main' into update-protomatter-rp2 2021-03-01 15:18:32 -06:00
Scott Shawcroft
532e7db293
Merge pull request #4267 from dhalbert/rp2040-digitalinout-fixes
RP2040: change DigitalInOut direction only when necessary; strong drive strength
2021-03-01 13:14:13 -08:00
Scott Shawcroft
af9dfccab1
Update QT Py flash size 2021-03-01 10:34:25 -08:00
Scott Shawcroft
dac047db61
Update Feather RP2040 to 8MB 2021-03-01 10:33:04 -08:00
Kamil Tomaszewski
d68fdf3a3d spresense: return the correct value for Analog In 2021-03-01 15:45:10 +01:00
jun2sak
7cecd99658 remove unused debug printf's. 2021-02-28 16:04:29 +09:00
jun2sak
3e47e00291 address the pretending-to-deep-sleep issue. 2021-02-28 15:57:37 +09:00
jun2sak
498debc826 remove unused debug printf's. 2021-02-28 15:37:25 +09:00
jun2sak
9b34726c0d GPIO and GPIOTE reg dump for debug. 2021-02-28 15:36:14 +09:00
gamblor21
d7bc8a46a5 Added counters per slice 2021-02-27 15:17:27 -06:00
root
29c89a2487 Removed more includes 2021-02-26 22:35:38 -06:00
root
f3515502b7 Removed unecessary includes 2021-02-26 22:33:50 -06:00
root
6374408c06 Changed reset_rp2pio_statemachine to clean up any PIO interrupts. 2021-02-26 22:28:50 -06:00
Jonny Bergdahl
f7eac46c78
Update StateMachine.c
Changed woring to use max instead
2021-02-27 00:07:30 +01:00
Scott Shawcroft
776301c932
Typo fix: direcion -> direction 2021-02-26 15:03:56 -08:00
Scott Shawcroft
888a0c5f08
Merge pull request #4224 from microDev1/busio-uart-rp
RP2040: Support for UART
2021-02-26 14:57:23 -08:00
Dan Halbert
d9234ffa82 need to gpio_set_dir() at some point 2021-02-26 15:27:35 -05:00
root
7942932176 Requested changes 2021-02-26 14:14:55 -06:00
Scott Shawcroft
7562b0cbb8
Turn off GC opt on catwan_usbstick 2021-02-26 12:00:01 -08:00
Scott Shawcroft
2e6e91dc5c
Merge pull request #4253 from tannewt/rp2040_fix_pwm_reuse
Fix second shared PWM
2021-02-26 11:53:54 -08:00
Scott Shawcroft
7c8d7d77dd
Merge remote-tracking branch 'adafruit/main' into busio-uart-rp 2021-02-26 09:04:42 -08:00
Limor "Ladyada" Fried
caedc3bba6
Merge pull request #4270 from tannewt/rp2040_feather_pinout
Update RP2040 Feather pinout for production rev
2021-02-26 11:11:44 -05:00
Jeff Epler
1d1ff5f308 Merge remote-tracking branch 'origin/main' into update-protomatter-rp2 2021-02-26 09:56:35 -06:00
Scott Shawcroft
3f08cb47b8
Merge remote-tracking branch 'adafruit/main' into busio-uart-rp 2021-02-25 16:59:15 -08:00
Scott Shawcroft
52bc935fa7
A few minor fixes for corner cases
* Always clear the peripheral interrupt so we don't hang when full
* Store the ringbuf in the object so it gets collected when we're alive
* Make UART objects have a finaliser so they are deinit when their
  memory is freed
* Copy bytes into the ringbuf from the FIFO after we read to ensure
  the interrupt is enabled ASAP
* Copy bytes into the ringbuf from the FIFO before measuring our
  rx available because the interrupt is based on a threshold (not
  > 0). For example, a single byte won't trigger an interrupt.
2021-02-25 16:50:57 -08:00
Scott Shawcroft
f0432b9d6f
Remove neopixel power 2021-02-25 16:37:34 -08:00
jun2sak
0f8c96f424 remove trailing whitespaces. 2021-02-26 09:11:35 +09:00
jun2sak
7fd4648cd5 rase error if Alarm time >= 512 sec. 2021-02-26 09:06:11 +09:00
Kevin Matocha
ec4cd68edc More mpconfigboard.mk corrections for small builds 2021-02-25 17:48:50 -06:00
Dan Halbert
d0f1cfb039 address review; use gpio_set() carefully 2021-02-25 18:41:22 -05:00
jun2sak
277a67d876 call touchalarm funcs as well as pin/timealarm. 2021-02-26 08:11:50 +09:00
Scott Shawcroft
2b163ccd6a
Fix incorrect deinit mask 2021-02-25 14:57:46 -08:00
Scott Shawcroft
1b00d94b23
Fix second shared PWM
Fixes #4210
2021-02-25 14:49:09 -08:00
Scott Shawcroft
80f7972f72
Update RP2040 Feather pinout for production rev 2021-02-25 14:46:08 -08:00
Jeff Epler
22276710e6 rp2pio: Fix writing where the stride was 2 or 4
The wrong stride value was being checked.
2021-02-25 15:50:49 -06:00
Kevin Matocha
a7a4f93ff8 Updated build configs to turn off BITMAPTOOLS for smaller builds 2021-02-25 15:44:32 -06:00
Dan Halbert
94d7bfb1c9
Merge pull request #4264 from UnexpectedCircuitPython/main
Expanded pin names for TinyS2 + FeatherS2 pin additions for DAC1 & DAC2
2021-02-25 15:13:18 -05:00
Dan Halbert
199a8ce8b0 change DigitalInOut direction only when necessary; strong drive strength 2021-02-25 14:10:19 -05:00
root
f8eb5bc275 Cleanup PIOs and State Machines on soft reset 2021-02-25 12:38:43 -06:00
microDev
8170e26a86
more uart improvements
- address suggested changes
- refine uart instance availibility checks
- improve pin validation and rx buffer handling
2021-02-25 23:46:00 +05:30
jun2sak
2aa5aec0d5 cleanup. 2021-02-26 01:45:12 +09:00
jun2sak
c713d31d0d move externs to .h 2021-02-26 01:20:55 +09:00
Dan Halbert
bbe0602738
Merge pull request #4245 from kamtom480/spresense_usb_speed
spresense: Pass the correct USB bus speed after restart
2021-02-25 11:02:33 -05:00
jun2sak
c86ca2a4ff move externs to .h 2021-02-26 00:51:52 +09:00
jun2sak
9328d09a7a re-enable parameters check. 2021-02-26 00:50:44 +09:00
Kamil Tomaszewski
fb32e0a7fd qtpy_m0_haxpress: Change config to make it fit. 2021-02-25 09:44:33 +01:00
Seon Rozenblum
69b10d7925 Added DAC1 & DAC2 pin names for FeatherS2
Expanded pin names for TinyS2 and added some new ones for functionality I forgot to add pin names for
Cleaned up mpconfigboard
2021-02-25 17:32:34 +11:00
root
86e60f5f35 Clean up formatting 2021-02-24 17:26:35 -06:00
jun2sak
61a69daae1 raise NotImplementedError when construct TouchAlarm. 2021-02-25 08:19:03 +09:00
root
17ff5dcc99 Return NotImplementedError for PulseOut 2021-02-24 17:04:05 -06:00
root
8e15f36baa pulseio (pulsein) for RP2040 2021-02-24 16:58:29 -06:00
microDev
5d7fdafcde
implement suggested changes
- add internal buffering
- rtc initialization fix
2021-02-25 00:48:36 +05:30
jun2sak
f66896ce32 use nRF SDK function to set up memory retention. 2021-02-25 02:34:43 +09:00
Kamil Tomaszewski
e369473794 spresense: change RX and TX buffer size for CDC 2021-02-24 18:19:18 +01:00
jun2sak
9661d67cd3 replace MY_DEBUG_UART -> NRF_DEBUG_PRINT. 2021-02-25 01:49:57 +09:00
jun2sak
72b5f1a9a6 clean up my personal settings. 2021-02-25 01:38:23 +09:00
Mark
b935dcafdc
Merge branch 'main' into rp2040_countio 2021-02-23 19:46:41 -06:00
gamblor21
379f454ce6 Adding countio to rp2040 2021-02-23 19:38:05 -06:00
Scott Shawcroft
abbbb91fa8
Add state machine divisor check
This causes an exception when setting a state machine too slow or
too fast.

Fixes #4222
2021-02-23 16:30:46 -08:00
Scott Shawcroft
360475e266
Implement audiobusio and enhance PIO for it
This adds I2SOut and PDMIn support via PIO.

StateMachines can now:
 * read and read while writing
 * transfer in 1, 2 or 4 byte increments
 * init pins based on expected defaults automatically
 * be stopped and restarted
 * rxfifo can be cleared and rxstalls detected (good for tracking when
   the reading code isn't keeping up)

Fixes #4162
2021-02-23 15:50:00 -08:00
Scott Shawcroft
e41137c745
Merge pull request #4244 from UnexpectedCircuitPython/main
Added Unexpected Maker TinyS2 board definition
2021-02-23 10:40:06 -08:00
Scott Shawcroft
001d7299b2
Merge pull request #4228 from ZodiusInfuser/rp2040-boards
Added definitions for Pimoroni RP2040-based boards
2021-02-23 10:00:19 -08:00
jun2sak
0f188befb6 set RAM retention just before deep sleep 2021-02-24 00:12:25 +09:00
ZodiusInfuser
1a0bf4c33f
Added flash size for PicoSystem 2021-02-23 11:04:20 +00:00
ZodiusInfuser
a9951c9b6c
Added flash size for Keybow2040 2021-02-23 11:01:40 +00:00
ZodiusInfuser
ca9b7debe0
Added flash size for Tiny2040 2021-02-23 10:43:35 +00:00
Seon Rozenblum
78b2daa2a7 Added Unexpected Maker TinyS2 board definition 2021-02-23 17:55:17 +11:00
Dan Halbert
a30d4ad25d set SUPEROPT_VM = 0 on most non-Express SAMD21 boards 2021-02-22 23:03:11 -05:00
jun2sak
ec64fa6a29 move dump_xxx functions to debug_uart.c. 2021-02-23 12:16:37 +09:00
jun2sak
372c98626a move all the debug codes from port.c to debug_uart.c. 2021-02-23 11:56:40 +09:00
Scott Shawcroft
3fdf29e773
More parens 2021-02-22 18:35:09 -08:00
Scott Shawcroft
863981a5b8
Parens 2021-02-22 18:31:45 -08:00
jun2sak
9df0f439f3 alarm/pin/__init__.c is no longer used. 2021-02-23 10:31:49 +09:00
Scott Shawcroft
0aafeac209
Board specific flash sizes for RP2040
Stop-gap solution for #4041. Comment is there to provide info
needed in the future. (We currently run the generic "safe" settings.)
2021-02-22 17:19:18 -08:00
Damien George
53f5bb05a9 rp2,stm32: Enable MICROPY_PY_UBINASCII_CRC32 to get ubinascii.crc32().
These ports already have uzlib enabled so this additional ubinascii.crc32
function only costs about 90 bytes of flash.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-23 10:13:25 +11:00
Dan Halbert
8470f0fdb7 SAMD21: one endpoint pair for MSC now instead of two 2021-02-21 12:37:59 -05:00
jun2sak
5c858a1925 add weak board_deinit(). 2021-02-21 16:27:21 +09:00
Damien George
75db0b9079 esp32: Define MICROPY_QSTRDEFS_PORT to include special qstrs.
Fixes issue #6942.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-21 15:56:54 +11:00
Damien George
03a64f2077 stm32/boards/NUCLEO_WB55: Enable LPUART1 on PA2/PA3.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-21 15:49:33 +11:00
Chris Mason
9d674cf7ab stm32/uart: Add support for LPUART1 on L0, L4, H7 and WB MCUs.
Add LPUART1 as a standard UART.  No low power features are supported, yet.
LPUART1 is enabled as the next available UART after the standard U(S)ARTs:

    STM32WB:      LPUART1 = UART(2)
    STM32L0:      LPUART1 = UART(6)
    STM32L4:      LPUART1 = UART(6)
    STM32H7:      LPUART1 = UART(9)

On all ports: LPUART1 = machine.UART('LP1')

LPUART1 is enabled by defining MICROPY_HW_LPUART1_TX and
MICROPY_HW_LPUART1_RX in mpconfigboard.h.

Signed-off-by: Chris Mason <c.mason@inchipdesign.com.au>
2021-02-21 15:49:32 +11:00
jun2sak
1da8b9900a Merge branch 'main' into nrf52-sleep 2021-02-21 13:35:06 +09:00
jun2sak
36c59250dd some cleanups. 2021-02-21 09:57:14 +09:00
jun2sak
d659c2ce34 move port-specific debug functions from supervisor/shared/serial.c to ports/nrf/supervisor/port.c 2021-02-21 09:55:10 +09:00
jun2sak
793198909e set SleepMemory size to 256 bytes. 2021-02-21 08:19:39 +09:00
jun2sak
41d9d4e0ab call sd API only when sd enabled. 2021-02-21 08:17:57 +09:00
Dan Halbert
cf3217e6d4
Merge pull request #4232 from TG-Techie/fix_tg_watch
fix TG-Watch ble issue
2021-02-20 18:10:52 -05:00
Jonah Yolles-Murphy
a9a2145238 fix TG-Watch ble issue 2021-02-20 15:46:33 -05:00
ZodiusInfuser
52f2fd6d53
Removed trailing white space 2021-02-20 17:25:26 +00:00
ZodiusInfuser
417173b752
Removed trailing white space 2021-02-20 17:24:26 +00:00
ZodiusInfuser
9a4b8c5ed9
Removed trailing white space 2021-02-20 17:23:23 +00:00
ZodiusInfuser
dea498a51f
Added new line 2021-02-20 17:20:28 +00:00
ZodiusInfuser
9fbeb0baea
Added new line 2021-02-20 17:20:06 +00:00
ZodiusInfuser
03577ec81c
Added new line 2021-02-20 17:19:45 +00:00
ZodiusInfuser
dac81ea545
Added new line 2021-02-20 17:19:31 +00:00
ZodiusInfuser
0a00f91979
Added new line 2021-02-20 17:15:42 +00:00
ZodiusInfuser
f1df07002f
Added new line 2021-02-20 17:15:20 +00:00
jun2sak
26f8f532f1 safe mode fix. 2021-02-21 00:47:07 +09:00
ZodiusInfuser
27bc5492f5
Added other files for PicoSystem 2021-02-20 13:37:08 +00:00
ZodiusInfuser
e9c7af1dee
Added board.c for PicoSystem 2021-02-20 13:36:46 +00:00
ZodiusInfuser
fb7cce6503
Added other files for Keybow2040 2021-02-20 13:35:27 +00:00
ZodiusInfuser
7ac20bfb8b
Added board.c for Keybow2040 2021-02-20 13:35:06 +00:00
ZodiusInfuser
66dd74cd12
Added other files for Tiny2040 2021-02-20 13:33:54 +00:00
ZodiusInfuser
ad8916499d
Added board.c for Tiny2040 2021-02-20 13:32:54 +00:00
Dan Halbert
985e020936 shrink simmel build 2021-02-19 18:41:27 -05:00
Dan Halbert
67406488d1 merge from upstream; re-alphabetize 2021-02-19 14:22:50 -05:00
ZodiusInfuser
ee5a48fece
Delete pimoroni_tiny2040 2021-02-19 18:30:29 +00:00
ZodiusInfuser
db102ab1ad
Create pimoroni_tiny2040 2021-02-19 18:29:57 +00:00
microDev
b12ccefbe6
uart implementation for rp2040 2021-02-19 18:36:00 +05:30
Thorsten von Eicken
d28dbcd6c7 esp32: Make machine.soft_reset() work in main.py and reset_cause().
This commit fixes two issues on the esp32:
- it enables machine.soft_reset() to be called in main.py;
- it enables machine.reset_cause() to correctly identify a soft reset.

The former is useful in that it enables soft resets in applications that
are started at boot time.  The support is patterned after the stm32 port.
2021-02-19 15:15:11 +11:00
Thorsten von Eicken
c10d431819 esp32: Add basic support for Non-Volatile-Storage in esp32 module.
This commit implements basic NVS support for the esp32.  It follows the
pattern of the esp32.Partition class and exposes an NVS object per NVS
namespace.  The initial support provided is only for signed 32-bit integers
and binary blobs.  It's easy (albeit a bit tedious) to add support for
more types.

See discussions in: #4436, #4707, #6780
2021-02-19 15:05:19 +11:00
Jeff Epler
1cd4e4552e
Merge pull request #4219 from jepler/bit_transpose
Add Bit transpose function to support piopixl8
2021-02-18 20:29:05 -06:00
Damien George
143372ab5e esp32: Add support to build with ESP-IDF v4.3 pre-release.
The esp32 port now builds against IDF v4.3-beta1, as well as v4.4-dev.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-19 10:58:52 +11:00
Damien George
466ad35a72 esp32/boards: Enable size optimisation for builds.
This enables -Os for compilation, but still keeps full assertion messages.
With IDF v4.2, -Os changes the GENERIC firmware size from 1512176 down to
1384640, and the GENERIC_SPIRAM firmware is now 1452320 which fits in the
allocated partition.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-19 10:42:16 +11:00
Jeff Epler
7fd4567893 bitops: rename from _bit_transpose, describe the algorithm 2021-02-18 15:41:23 -06:00
Lucian Copeland
0ecb24c3e5
Merge pull request #4169 from hierophect/stm32-i2cstart
STM32: Fix I2C repeated start by converting to IT mode
2021-02-18 15:19:00 -05:00
Dan Halbert
e344c6d684 fix some builds 2021-02-18 14:24:58 -05:00
Dan Halbert
53a002a096 Initial fix, but bitbangio timing may be off 2021-02-18 13:14:51 -05:00
Jeff Epler
9cf7d73c6c core: add bit_transpose function
.. this version can only handle exactly 8 bits "across".  The restriction
may be relaxed in a future revision.
2021-02-18 11:32:47 -06:00
Dan Halbert
5c37b73c6d fix typo to fix nrf builds 2021-02-18 11:09:32 -05:00
microDev
696d212dc7
fix nvm rewrite 2021-02-18 18:42:00 +05:30
Damien George
d4b45898f5 stm32/mboot: After sig verify, only write firmware-head if latter valid.
So that mboot can be used to program encrypted/signed firmware to regions
of flash that are not the main application, eg that are the filesystem.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-18 13:59:03 +11:00
Jeff Epler
ab5eb86118 raspberrypi: implement os.urandom
Since the datasheet cast some doubt on the strength of the "rosc_hw->randombit",
I use the SHA256 hash function to create a high quality random seed
from random values of uncertain entropy, as well as to generate a sequence
of random values from that seed using SHA256 as a cryptographically-secure
random number generator.

In practice, it produces over 100kB/s of random data which does not
have any gross problems according to _PractRand_.
2021-02-17 17:49:25 -06:00
jun2sak
cf2427c561 light sleep reason fix. 2021-02-17 21:51:28 +09:00
jun2sak
e6350ff834 Initial commit. 2021-02-17 20:53:18 +09:00
Damien George
301fe805ca stm32/mpbtstackport: Allow chipset and secondary baudrate to be set.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-17 15:47:17 +11:00
Damien George
89cb2c6b80 stm32/mpbthciport: Use mp_printf instead of printf for error message.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-17 15:47:17 +11:00
Andrew Leech
629fdc366a stm32/mpbthciport: Fix initial baudrate to use provided value.
Fixes bug introduced in the recent bffb71f523
2021-02-17 14:50:38 +11:00
Damien George
5c92ff53fe stm32/boards: Disable onewire module on boards with small flash.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-17 14:42:46 +11:00
Damien George
9b78f3e6c6 stm32: Make pyb, uos, utime, machine and onewire modules configurable.
The default for these is to enable them, but they can now be disabled
individually by a board configuration.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-17 14:42:46 +11:00
Damien George
caeec80a9c stm32/usb: Allow a board to configure USBD_VID and all PIDs.
If a board defines USBD_VID then that will be used instead of the default.
And then the board must also define all USBD_PID_xxx values that it needs.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-17 14:40:43 +11:00
Scott Shawcroft
261b077209
Merge pull request #4192 from dhalbert/pico-pwmout-top-fix-4189
RP2040: fix off-by-one PWM top issue
2021-02-16 17:38:09 -08:00
Thorsten von Eicken
2c1299b007 extmod/modussl: Fix ussl read/recv/send/write errors when non-blocking.
Also fix related problems with socket on esp32, improve docs for
wrap_socket, and add more tests.
2021-02-17 11:50:54 +11:00
David Michieli
2eed9780ba stm32/mboot: Add unpack-dfu command to mboot_pack_dfu.py tool.
This command unpacks a previously packed DFU file, writing out a DFU which
should be the same as the original (before packing).
2021-02-17 11:36:44 +11:00
PTH
5cb91afb9b zephyr/modusocket: Fix parameter in calls to net_context_get_XXX().
The following simple usocket example throws an error EINVAL on connect

    import usocket
    s = usocket.socket()
    s.connect(usocket.getaddrinfo('www.micropython.org', 80)[0][-1])

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    OSError: [Errno 22] EINVAL

Fixing the context parameter in calls of net_context_get_family() and
net_context_get_type(), the connect works fine.

Tested on a nucleo_h743zi board.
2021-02-17 10:42:43 +11:00
PTH
6c4a5d185d zephyr/boards: Add support for the nucleo_h743zi board. 2021-02-17 10:38:00 +11:00
Dan Halbert
c26de0136a works! no timeouts 2021-02-16 17:39:36 -05:00
Maureen Helm
f573e73bae zephyr: Build MicroPython as a cmake target.
Refactors the zephyr build infrastructure to build MicroPython as a
cmake target, using the recently introduced core cmake rules.

This change makes it possible to build the zephyr port like most other
zephyr applications using west or cmake directly. It simplifies building
with extra cmake arguments, such as specifying an alternate conf file or
adding an Arduino shield. It also enables building the zephyr port
anywhere in the host file system, which will allow regressing across
multiple boards with the zephyr twister script.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-02-16 18:49:30 +11:00
Maureen Helm
51fa1339f1 zephyr: Remove unused build files.
Removes zephyr port build files that aren't being used anymore.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-02-16 18:49:12 +11:00
Maureen Helm
f49a73641a zephyr: Disable frozen source modules.
Disables frozen source modules in the zephyr port. They are deprecated
in the makefile rules and not implemented in the new cmake rules.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-02-16 18:38:13 +11:00
Maureen Helm
2aa57931a6 zephyr: Update to zephyr v2.5.0.
Updates the zephyr port build instructions and CI to use the latest
zephyr release tag.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-02-16 18:38:13 +11:00
Jim Mussared
4c54012373 unix/moduselect: Don't allow both posix and non-posix configurations.
Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-02-16 14:59:52 +11:00
Dan Halbert
0b8f1b9a90 wip: usb_cdc.serials 2021-02-15 20:06:18 -05:00
Dan Halbert
93d788543c Merge remote-tracking branch 'adafruit/main' into secondary-cdc 2021-02-15 20:03:53 -05:00
Lucian Copeland
6d5ffc677b is_free should not check never_reset 2021-02-15 10:29:05 -05:00
Thorsten von Eicken
902da05a18 esp32: Set MICROPY_USE_INTERNAL_ERRNO=0 to use toolchain's errno.h.
The underlying OS (the ESP-IDF) uses it's own internal errno codes and so
it's simpler and cleaner to use those rather than trying to convert
everything to the values defined in py/mperrno.h.
2021-02-15 23:47:02 +11:00
Thorsten von Eicken
771376a0cb esp32/modsocket: Remove unix socket error code translation.
The ESP-IDF has its own errno codes which should propagate out to the user.
2021-02-15 23:45:14 +11:00
Damien George
f12462ddc4 esp32: Remove obsolete IDF v3 code wrapped in MICROPY_ESP_IDF_4.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 23:22:05 +11:00
Damien George
a915002177 esp32: Add support to build with ESP-IDF v4.2.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 23:12:20 +11:00
Damien George
d191d88cab esp32: Add support to build with ESP-IDF v4.1.1.
ESP-IDF v4.0.2 is still supported.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 23:11:26 +11:00
Damien George
e017f276f7 esp32/README: Update based on new IDF v4 cmake build process.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:40:11 +11:00
Damien George
da2b5fa1c1 esp32/boards: Enable BLE on all boards.
BLE was enabled by default on all boards in the existing make build.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:40:07 +11:00
Damien George
26b17fd28a esp32/boards: Remove old IDF v3 sdkconfig values.
IDF v3 is no longer supported with the move to cmake.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:40:03 +11:00
Damien George
9f035d6bb7 esp32: Remove traditional "make" capability.
It's now replaced by cmake/idf.py.  But a convenience Makefile is still
provided with traditional targets like "all" and "deploy".

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:37:58 +11:00
Damien George
97072b7224 esp32: Add explicit initialisers to silence compiler warnings.
This makes no functional change.  See similar commit
9aa58cf8ba

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:37:58 +11:00
Damien George
9c2231f47a esp32/esp32_rmt: Don't do unnecessary check for unsigned less than zero.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 16:37:52 +11:00
Damien George
9b90882146 esp32: Add support to build using IDF with cmake.
This commit adds support for building the esp32 port with cmake, and in
particular it builds MicroPython as a component within the ESP-IDF.  Using
cmake and the ESP-IDF build infrastructure makes it much easier to maintain
the port, especially with the various new ESP32 MCUs and their required
toolchains.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-15 12:48:39 +11:00
Seth Kerr
9e626fdd5c new cp sapling board 2021-02-14 20:00:32 -05:00
Damien George
bffb71f523 stm32/mpbthciport: Only init the uart once, then use uart_set_baudrate.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-14 18:32:05 +11:00
Damien George
d2a34c62e7 stm32/uart: Add uart_set_baudrate function.
This allows changing the baudrate of the UART without reinitialising it
(reinitialising can lead to spurious characters sent on the TX line).

Signed-off-by: Damien George <damien@micropython.org>
2021-02-14 18:30:49 +11:00
Dan Halbert
0ec99b37e0 handle 100% duty cycle; improve actual_frequency calc 2021-02-13 13:16:49 -05:00
Damien George
701fdcacaf nrf/drivers/usb: Add USBD_IRQHandler which calls tud_int_handler.
This is needed for TinyUSB to process USB device IRQs.

Related to #6325.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-13 13:52:53 +11:00
Dan Halbert
d54b5861a3 wip 2021-02-12 19:01:14 -05:00
Dan Halbert
3e4328140c fix off-by-one PWM top issue 2021-02-12 15:53:31 -05:00
Jeff Epler
ff1942cff6 Enable protomatter on RP2040 builds
Also found a race condition between timer_disable and redraw, which
would happen if I debugger-paused inside common_hal_rgbmatrix_timer_disable
or put a delay or print inside it.  That's what pausing inside reconstruct
fixes.

So that the "right timer" can be chosen, `timer_allocate` now gets the `self`
pointer.  It's guaranteed at this point that the pin information is accurate,
so you can e.g., find a PWM unit related to the pins themselves.
This required touching each port to add the parameter even though it's
unused everywhere but raspberrypi.
2021-02-12 08:25:15 -06:00
microDev
f2d7a5f1e1
Merge branch 'main' into nvm-rp 2021-02-12 18:36:54 +05:30
microDev
527b11f99e
implement suggested changes
- update FLASH_FIRMWARE length
- use linker script define value
2021-02-12 18:28:48 +05:30
Dan Halbert
08f30fedf5
Merge pull request #4188 from ladyada/main
QT Py with RP2040
2021-02-11 22:19:56 -05:00
Damien George
ede6b86a08 samd/mphalport: Fix USB CDC tx handling to work reliably.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 14:09:01 +11:00
Damien George
f31c6b4840 mimxrt: Fix USB CDC handling so it works reliably.
On i.MX the SysTick IRQ cannot wake the CPU from a WFI so the CPU was
blocked on WFI waiting for USB data in mp_hal_stdin_rx_chr() even though it
had already arrived (because it may arrive just after calling the check
tud_cdc_available()).  This commit fixes this problem by using SEV/WFE to
indicate that there has been a USB event.

The mp_hal_stdout_tx_strn() function is also fixed so that it doesn't
overflow the USB buffers.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 13:48:51 +11:00
Damien George
c9260dda23 rp2: Use local tinyusb instead of the one in pico-sdk.
So that all MicroPython ports that use tinyusb use the same version.  Also
requires fewer submodule checkouts when building rp2 along with other ports
that use tinyusb.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 12:56:28 +11:00
Damien George
035d16126a ports: Update to build with new tinyusb.
Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 12:50:36 +11:00
Damien George
7815dd2cc5 unix/mpbtstackport_common: Implement mp_bluetooth_hci_active.
So that BTSTACK can be enabled with SYNC_EVENTS.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 12:07:05 +11:00
lady ada
6c914b8722 QT Py with RP2040 2021-02-11 19:21:42 -05:00
Dan Halbert
f0564b4986 merge from upstream; complicated webusb merge 2021-02-11 18:50:02 -05:00
Lucian Copeland
edb7f2d807 Free up space for JA build 2021-02-11 16:30:27 -05:00
Lucian Copeland
a061768ceb Merge remote-tracking branch 'upstream/main' into stm32-i2cstart 2021-02-11 16:19:12 -05:00
Scott Shawcroft
aae10fb37f
Merge pull request #4167 from tannewt/rp2040_audiopwmio
Add PWM based audio playback
2021-02-11 12:19:57 -08:00
microDev
205837c47b
nvm implementation for rp2040 2021-02-11 12:48:36 +05:30
Lucian Copeland
d00bee2149 Fix I2C Repeated start error by converting to IT mode 2021-02-10 14:59:19 -05:00
Scott Shawcroft
f6603aa566
Merge pull request #4168 from BHDynamics/main
Add DynaLoRa-USB Dongle
2021-02-10 11:03:16 -08:00
Enrique Casado
983c75fb24 Add more pin names 2021-02-10 12:19:50 +01:00
Scott Shawcroft
191b143e7b
Add PWM based audio playback
See
https://learn.adafruit.com/circuitpython-essentials/circuitpython-audio-out
to get started.

Fixes #4037
2021-02-09 15:38:33 -08:00
Scott Shawcroft
b19c700d4a
Merge pull request #4165 from DavePutz/issue_4143
Issue 4143 - Fixed marking a PWM slice incorrectly as variable frequency
2021-02-09 14:30:39 -08:00
root
9a28f0bf45 Fix check for variable PWM frequency 2021-02-09 15:22:59 -06:00
Dan Halbert
5ba28e9861
Merge pull request #4159 from dhalbert/disable-brownout-before-deep-sleep-4025
turn off brownout before deep sleep
2021-02-09 09:03:33 -05:00
Scott Shawcroft
6efd87b3c6
Merge pull request #4124 from m4tk/main
Add display init code for Lilygo TTGO T8 ESP32-S2
2021-02-08 16:35:27 -08:00
Scott Shawcroft
0ceac79dfb
Merge pull request #4048 from janderit/fix_3763_mimxrt10xx_spi
fixes: busio, SPI OS error 5 for mimxrt10xx
2021-02-08 16:29:48 -08:00
Damien George
c7aaee2b2b esp8266/modules: Fix fs_corrupted() to use start_sec not START_SEC.
START_SEC was changed in e0905e85a7.

Also, update the error message to mention how to format the partition at
the REPL, and make the total message shorter to save a bit of flash.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-09 10:46:07 +11:00
Dan Halbert
3c99b09993
Merge pull request #4160 from gamblor21/rp2040_neopixel_pin_fix
RP2040 Set the neopixel pin as output after PIO use
2021-02-08 17:57:30 -05:00
Dan Halbert
3a68ac8abb
Merge pull request #3536 from pewpew-game/pew-get-ticks
Fix #3504: Don't use time module in pew.tick()
2021-02-08 17:50:44 -05:00