Commit Graph

4359 Commits

Author SHA1 Message Date
Dan Halbert 316bd0c72d fix atmel-samd DAC channel selection logic 2021-01-10 19:22:15 -05:00
Dan Halbert a397af9bdf Round BLE timing values; fix timeout check 2021-01-10 13:16:19 -05:00
lady ada c87e1a6527 ok lets try without auto-display 2021-01-10 11:58:39 -05:00
BennyE 53e4d78a3c
Update ports/esp32s2/common-hal/wifi/Network.c
Avoid to use yet another variable.

Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-01-10 17:18:43 +01:00
Jonah Yolles-Murphy 8652d69614 update TG-Watch pins, name, and frozen libraries 2021-01-10 04:04:50 -05:00
lady ada d036620c70 compilier 2021-01-09 23:19:04 -05:00
lady ada 5b9ce9e7cf fix dup usb 2021-01-09 22:42:43 -05:00
lady ada b5b0d45b73 add tft 2021-01-09 22:36:54 -05:00
lady ada 68a5e6dcba copypaste typo 2021-01-09 15:52:58 -05:00
Dan Halbert 908e02439d Look up TCC resolution as necessary 2021-01-09 15:04:23 -05:00
Jeff Epler e20c65d8f0 background tasks: Add, use port_wake_main_task
Some ports need an extra operation to ensure that the main task is
awoken so that a queued background task will execute during an ongoing
light sleep.

This removes the need to enable supervisor ticks while I2SOut is operating.

Closes: #3952
2021-01-09 14:02:47 -06:00
Jeff Epler 4735cf4747 esp32s2: audiobusio: move i2s_common inside
Originally, I believed the implementation might be shared with AudioOut,
as on the ESP32 (non-S2) the I2S peripheral was also used to drive the DAC.
However, this is not the case on ESP32-S2 and appears it will not be
the case with the ESP32-S3 or -C3, to the extent that there's skeletal
support for either of them in esp-idf master branch.

However, it could still be shared by I2SIn or PDMIn (the latter being
hypothetically implemented as I2SIn + digital postprocessing like we did
in the atmel-sam port, to my understanding), so I moved it to
the common-hal folder.
2021-01-09 14:02:47 -06:00
Jeff Epler 10861b4038 esp32s2: Rename ESP_CALL_RAISE to CHECK_ESP_RESULT
Suggested by @tannewt, thanks!
2021-01-09 13:41:44 -06:00
lady ada a600fd3478 forgot deinit 2021-01-09 14:01:58 -05:00
lady ada 301facf102 newline 2021-01-09 13:36:21 -05:00
lady ada 7de1da45da woops out of sync header, plus... i dunno add some frozen modules cause we have almost no RAM :( 2021-01-09 13:23:17 -05:00
lady ada 813fa671f3 nowhitespace 2021-01-09 12:29:08 -05:00
Limor "Ladyada" Fried 9253351fa4
Merge branch 'main' into main 2021-01-09 12:25:16 -05:00
lady ada 999ee68e12 try adding new feather def 2021-01-09 12:22:53 -05:00
foamyguy 13efbf24e5 disable msgpack on boards without room 2021-01-09 10:33:56 -06:00
Caio Henrique de Queiroz Katayama 7b4558b750 Fix socket.recvfrom_into() 2021-01-08 19:17:17 -05:00
anecdata 06ab848a0d added platform 2021-01-08 16:48:25 -06:00
jerryneedell de5b138dcf remove commented line 2021-01-08 14:46:37 -05:00
jerryneedell 7556f38f04 initialize LDO2 in board_init() 2021-01-08 14:40:06 -05:00
Dan Halbert 39c166ba6a update tinyusb; _ticks_enabled only for SAMD21 2021-01-08 13:30:11 -05:00
Jeff Epler 5f0e41ad60 I2SOut: Enable ticks during audio playback
.. otherwise, the background callback to load the I2S fifos does not get
run.  (I'm not sure this is _correct_ behavior of sleep + background
tasks, but it is the current behavior)
2021-01-08 09:01:34 -06:00
Jeff Epler 430bcdb59d port_i2s_play: fill the initial buffer via background callback
There were _possibly_ problems where this routine was being entered
by direct call AND by background callback.  Schedule the work here,
and it will be done almost immediately, without worry about interference.
I don't know if this is strictly necessary, but it doesn't hurt.  Since
the I2S clock is being run all the time, we have to enter the background
task to fill the FIFO with zeros constantly anyway.
2021-01-08 08:49:25 -06:00
Jeff Epler 12264cca34 port_i2s_play: remove build error 2021-01-08 08:47:13 -06:00
Jeff Epler 0b7a4c4b2b i2s_fill_buffer: remove debug print 2021-01-08 08:46:56 -06:00
Jeff Epler 873a300d02 i2s_fill_buffer: Need to fill with zeros when stopping 2021-01-08 08:46:41 -06:00
Jeff Epler cfd8288dfa esp2s2: enlarge stack-buffer, use it instead of i2s_zero_dma_buffer
.. it's not clear that there was a problem with i2s_zero_dma_buffer, but
just in case.
2021-01-07 16:29:52 -06:00
Jeff Epler d3afda61d8 esp32s2: i2s: must reset buffer, otherwise wave samples don't start
.. and other housekeeping when starting to play a sample
2021-01-07 16:29:08 -06:00
Jeff Epler 352226402c esp32s2: i2s: fix accounting for "stretched" frames 2021-01-07 16:28:33 -06:00
Jeff Epler 010a4e7b0f esp32s2: port: Ensure JTAG pins are available for debugging 2021-01-07 16:23:21 -06:00
BennyE 115f3e0867 Updated code as per helpful suggestion 2021-01-07 23:05:16 +01:00
Jeff Epler 7bb196b9d2 esp32s2: 'make flash': Allow customizing the esptool flags
This can be useful so that e.g., on a Kaluga when programming via
the FTDI chip, you can override the variable to specify "--after=hard_reset"
to automatically return to running CircuitPython, choose a different
baud rate (921600 is about 2s faster than 460800), etc:
    make BOARD=espressif_kaluga_1 ESPTOOL_FLAGS="-b 921600 --before=default_reset --after=hard_reset"
2021-01-07 15:01:33 -06:00
Jeff Epler 30c6dd3f76 Merge remote-tracking branch 'origin/main' into audioout-esp32 2021-01-07 14:11:14 -06:00
jerryneedell 6976ec6ef9 Merge remote-tracking branch 'upstream/main' into jerryn_feathers2_led 2021-01-07 15:02:40 -05:00
Scott Shawcroft 55c80754c7
Merge pull request #3945 from 2bndy5/fix-table-in-a-readme
convert esp32s2 port readme to rst
2021-01-07 10:43:34 -08:00
Scott Shawcroft 0b0b476be6
Merge pull request #3940 from caternuson/magtag_accelo_irq_pin
Add MagTag accelo IRQ pin
2021-01-07 10:31:33 -08:00
Dan Halbert 5358524941
Merge pull request #3939 from dhalbert/tick-overflow
overflowed tick counter needs 64 bits everywhere
2021-01-07 13:01:30 -05:00
brendan 18122e0455 missed a couple inline code snippets 2021-01-06 15:28:19 -08:00
brendan 092331eee1 convert esp32s2 readme to rst 2021-01-06 15:19:40 -08:00
BennyE 66d87782be Adding authmode keyword 2021-01-06 23:52:30 +01:00
caternuson 9db0a4f265 add magtag accelo irq pin 2021-01-06 09:17:19 -08:00
Scott Shawcroft a33359762d
Merge pull request #3903 from anecdata/reasons
ESP32-S2: Log all Wi-Fi events & remove unneeded call
2021-01-06 08:41:19 -08:00
Dan Halbert 9a1d864331 overflowed tick counter needs 64 bits everywhere 2021-01-06 11:09:06 -05:00
jerryneedell 14e2a02c04 Merge remote-tracking branch 'upstream/main' into jerryn_feathers2_led 2021-01-06 05:47:37 -05:00
anecdata 98c9492a8c change ESP_EARLY_LOG* to ESP_LOG* throughout event_handler 2021-01-05 18:39:51 -06:00
iot49 1a82555803
Merge branch 'main' into msgpack 2021-01-05 11:19:11 -08:00
Kattni Rembor bbd4de33d1 Add adafruit_bus_device to CPX builds. 2021-01-04 15:53:39 -05:00
jerryneedell ec02102409 implment use of DotStar for staus led 2021-01-04 07:41:25 -05:00
Limor "Ladyada" Fried dcf88e1e91
Merge pull request #3923 from bwshockley/Add_dotstar_mini_sam_m4
Add dotstar mini sam m4
2021-01-03 19:40:43 -05:00
Seon Rozenblum 10f178d162 Fixed incorrect pin assignment on header
IO13 is for blue LED
IO14 is the correct pin header between IO18 and IO12
The silk is wrong (shows IO13), but hardware is correct as IO14, but IO14 was not included in pins.c
Silk will be updated on next PCB production run
2021-01-04 10:06:32 +11:00
Benjamin Shockley 9286f26831
Added CP Dotstart Lib to Build
Added the CircuitPython dotstar library to the Mini SAM M4 build so users do not have to include the library to utilize the built-in APA102 LED.
2021-01-03 10:42:58 -06:00
askpatricw 2ce07209df changes based on UM's input 2021-01-01 17:23:11 -08:00
askpatricw 220501e159 dupe LED entries 2020-12-31 18:02:44 -08:00
askpatricw 43f93b097f release and pre-release FeatherS2 NSync 2020-12-31 17:50:41 -08:00
Jeff Epler 5698b8bb0a
Merge pull request #3850 from microDev1/touch-s2
Support for Touch Alarm
2020-12-30 16:25:11 -06:00
microDev 0bad6110d4
update wake-alarm implementation 2020-12-31 02:44:20 +05:30
microDev b83bdc540d
enable light-sleep functionality 2020-12-31 02:22:20 +05:30
Dan Halbert fb216148ec
Merge pull request #3900 from jepler/restore-frozen-busdevice
Restore frozen adafruit_bus_device module
2020-12-30 13:22:46 -05:00
microDev 28ce5e8988
Merge branch 'main' into touch-s2 2020-12-30 22:44:22 +05:30
Jeff Epler 83c6774a44 Revert "Removing frozen libs"
This reverts commit 23ed3ef971.
2020-12-30 10:55:28 -06:00
microDev c7f68022ef
add pretend-to-sleep functionality 2020-12-30 22:11:22 +05:30
anecdata d537d94a4c see what we're missing 2020-12-30 09:45:15 -06:00
anecdata 0914b71653 remove unneeded set_config (wrong param; called in connect anyway) 2020-12-30 09:26:25 -06:00
Hugo Dahl 72cad49c69
Fix minor typo in ESP32S2 readme 2020-12-29 22:52:59 -06:00
Jeff Epler a7542598a0 esp32s2: add I2SOut 2020-12-29 14:46:38 -06:00
Jeff Epler b40a579d18 esp32s2: espidf: Consistent error checking of esp-idf calls
By surrounding most ESP-IDF API calls with this new macro, their failure will
result in a CircuitPython exception.
2020-12-29 14:06:32 -06:00
Jeff Epler 05ba1431c3 esp32s2: espidf: Add IDFError
this is an exception class for "generic" IDF errors that don't have
their own exception type.
2020-12-29 14:06:32 -06:00
Jeff Epler d024df6b06 esp32s2: Use better optimizer flags in debug builds
(note that the before and after files both lack trailing newlines; this is
how the esp-idf do)

OPTIMIZATION_DEFAULT is -Og, which enables optimizations that do not
interfere with the debugger:
```
    elseif(CONFIG_COMPILER_OPTIMIZATION_DEFAULT)
        list(APPEND compile_options "-Og")
```
2020-12-29 14:06:32 -06:00
Jeff Epler 7401aa8e85
Merge pull request #3888 from microDev1/fix-reset-pin
FIX : common_hal_reset_pin()
2020-12-29 10:08:47 -06:00
Scott Shawcroft f9d9c031a9
Merge pull request #3878 from xobs/fomu-fixes-6.0.0
Fomu fixes for 6.0.0
2020-12-28 11:51:26 -08:00
Scott Shawcroft c3396e4b49
Merge pull request #3868 from BennyE/wifi-enhancement-countrycode
esp32-s2: wifi enhancement to include countrycode
2020-12-28 11:49:41 -08:00
Dan Halbert 171efd55e0
Merge pull request #3830 from tannewt/pin_alarm
Add pin alarming
2020-12-28 12:59:27 -05:00
microDev dc332baa87
update common_hal_reset_pin() 2020-12-28 20:04:00 +05:30
Scott Shawcroft 6c7e6abcfd
Downgrade OTA API for IDF 4.2 2020-12-27 20:30:49 -08:00
Uwe Gartmann 2729666d82
SAMD51: change of DAC power setting
Fixes wrong DAC output levels at high data rate
closes adafruit#3796
2020-12-25 17:53:43 +01:00
BennyE 64bb055700 Updating comment to reflect feedback of espressif from IDFGH-4486 -> works correct as per the protocol 2020-12-24 15:40:53 +01:00
Sean Cross 2f95cc95a4 litex: move more critical code to RAM
The XIP SPI flash on Fomu is slow, which results in certain operations
taking a long time. This becomes a problem for time-critical operations
such as USB.

Move various calls into RAM to improve performance.

This includes the call to __modsi3 and __udivsi3 which are used by the
supervisor handler to determine if periodic callbacks need to be run.

This finishes fixing #3841

Signed-off-by: Sean Cross <sean@xobs.io>
2020-12-24 14:06:57 +08:00
Sean Cross f3e54414e5 litex: ensure we don't re-enable interrups during ISR
During an interrupt handler, interrupts are implicitly disabled. They
will be re-enabled when the interrupt handler returns.

Due to some changes that were made, varous calls will re-enable
interrupts after they're finished. Examples of this include calling
`CALLBACK_CRITICAL_END` and getting the number of ticks with
`port_get_raw_ticks()`.

This patch prevents this from happening by doing two things:

1. Use standard calls in `port_get_raw_ticks()` to disable and re-enable
interrupts, preventing nesting issues, and
2. Increase the nesting count inside `isr()`, reflecting the implicit
call that is made by hardware when an interrupt is handled

This helps to address #3841.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-12-24 14:03:10 +08:00
Dan Halbert 8061a2574d
Merge branch 'main' into pin_alarm 2020-12-23 22:05:02 -05:00
BennyE 1a6b1b1953 implementing suggested changes 2020-12-24 00:37:37 +01:00
Dan Halbert a11ad25727 BLE fixes 2020-12-23 16:39:27 -05:00
Scott Shawcroft 1a8033470a
Stub out mp_hal_is_interrupted for UNIX 2020-12-23 12:22:50 -08:00
Scott Shawcroft eb65765d52
Merge pull request #3867 from dhalbert/frequencyin-fix-6.0.x
FrequencyIn: do not raise in interrupt handler
2020-12-23 12:14:16 -08:00
BennyE e9c9fce15d Remove debug log messages 2020-12-23 14:59:09 +01:00
Scott Shawcroft 1fca297a2d
A couple sleep fixes
* Better messaging when code is stopped by an auto-reload.
* Auto-reload works during sleeps on ESP32-S2. Ticks wake up the
  main task each time.
* Made internal naming consistent. CamelCase Python names are NOT
  separated by an underscore.
2020-12-22 16:13:02 -08:00
Dan Halbert 89079039ad FrequencyIn: do not raise in interrupt handler 2020-12-22 18:54:42 -05:00
Scott Shawcroft 8b03951fee
Merge pull request #3866 from jepler/use-stub
esp32s2: make flash: use the stub
2020-12-22 10:16:54 -08:00
Jeff Epler da8f023665 esp32s2: make flash: use the stub
Very long ago, this was apparently not supported in esptool yet, at
least when operating over USB CDC.  This now works just fine, and
our esp webtool relies on it as well.  It makes flashing faster,
too.
2020-12-22 10:27:42 -06:00
Dan Halbert d4e9eea397
mark alarm.wake_alarm during gc sweep 2020-12-22 08:11:01 -08:00
Jonathan Giles aaa3c61819 Add default I2C pins for STM32F411CE 2020-12-22 09:11:05 -05:00
Dan Halbert d6df43b943
Merge pull request #3863 from dhalbert/adafruit-prefix
Add Adafruit to MICROPY_HW_BOARD_NAME for various boards
2020-12-22 08:02:35 -05:00
Dan Halbert 39ca406a31 Add Adafruit to MICROPY_HW_BOARD_NAME for various boards 2020-12-21 23:32:11 -05:00
Scott Shawcroft 6347a3fcdb
Merge pull request #3812 from microDev1/ota-s2
Support for OTA update
2020-12-21 18:46:13 -08:00
Scott Shawcroft fb0c74c5f1
Merge pull request #3662 from ElectronicCats/bastble
Add new board BastBLE
2020-12-21 17:39:08 -08:00
BennyE ae3b440835 more fixes and still with debug 2020-12-22 00:32:48 +01:00
sabas1080 d24a5d6270 update path board.h 2020-12-20 15:52:19 -06:00