microDev
ecd7c0878e
expose wake pin parameter and more tweaks
2020-12-19 20:54:36 +05:30
microDev
a60fabdffa
add touch alarm support for esp32s2
2020-12-19 12:56:34 +05:30
microDev
8eaf2b0c19
implement touch alarm
2020-12-18 12:54:36 +05:30
microDev
4512290ba0
Merge branch 'main' into ota-s2
2020-12-18 00:44:00 +05:30
microDev
4863413bc9
rename ota to dualbank
2020-12-18 00:34:56 +05:30
Scott Shawcroft
0dcc659d53
Swap to IDF release/4.2 branch for stability
2020-12-15 18:12:59 -08:00
Scott Shawcroft
1ad49d9a18
Add alarm.pin that wakes on pin level
...
Fixes #3787
2020-12-15 18:12:59 -08:00
hierophect
3ad4b12ce1
Merge branch 'main' into esp-analog-hang
2020-12-15 15:08:30 -05:00
Scott Shawcroft
d076296659
Merge pull request #3816 from dhalbert/sleepmemory
...
alarm.sleep_memory + alarm.wake_alarm
2020-12-14 17:40:02 -08:00
Scott Shawcroft
d6ee17c6fd
Merge pull request #3817 from BennyE/reserve-pins-only-for-debug
...
esp32s2: Reserve UART pins only if DEBUG=1 is set to address issue 3811
2020-12-14 17:32:17 -08:00
Scott Shawcroft
a1f773d9ed
Merge pull request #3819 from BennyE/issue3663
...
Fix for issue 3663 by returning early if no scan was started before s…
2020-12-14 17:11:18 -08:00
Scott Shawcroft
dc473b29e3
Merge pull request #3643 from hierophect/esp32-pin-reset
...
ESP32-S2: Add IDF pin resets to Microcontroller
2020-12-14 17:09:29 -08:00
Lucian Copeland
d793ec2872
Change pinfunc to default of 0 at reset
2020-12-14 14:25:38 -05:00
Lucian Copeland
cac755ba16
Merge remote-tracking branch 'upstream/main' into esp-analog-hang
2020-12-14 13:00:57 -05:00
Lucian Copeland
f15e2d86c0
Reduce samples from 64 to 2
2020-12-14 12:59:20 -05:00
Dan Halbert
e0afa32cfa
use RTC_DATA_ATTR; address review comments
2020-12-14 11:36:54 -05:00
BennyE
210c0ec89c
add country(code) to wifi network objects)
2020-12-13 13:32:12 +01:00
microDev
37ee5e683d
Merge branch 'main' into ota-s2
2020-12-12 05:25:46 +05:30
BennyE
c5c13620f2
Fix for issue 3663 by returning early if no scan was started before stop is issued
2020-12-12 00:49:53 +01:00
BennyE
81c4871fdf
Set DEBUG CFLAG if set in make
2020-12-11 22:11:39 +01:00
BennyE
e3194ad54e
Reserve UART pins only if DEBUG=1 is set to address issue 3811
2020-12-11 20:35:28 +01:00
Dan Halbert
cf938983e9
SleepMemory + set alarm.wake_alarm
2020-12-11 08:10:26 -05:00
microDev
cb35abfd04
add docs, update translation & fix ota.flash()
2020-12-11 01:01:01 +05:30
Dan Halbert
55f4110983
fix typo
2020-12-10 14:16:25 -05:00
Dan Halbert
5964163649
Initial SleepMemory code
2020-12-10 13:03:40 -05:00
microDev
6a4f74946f
reset ota module on every vm run
2020-12-10 16:48:58 +05:30
microDev
07015ad527
add ability to switch boot partition
2020-12-10 16:42:45 +05:30
microDev
bfa2c604ef
add ability to flash in discontinuous chunks
2020-12-10 15:45:25 +05:30
microDev
ed5add37f6
add ability to flash in continuous chunks
2020-12-10 14:36:49 +05:30
microDev
dee86a014b
factor out esp_ota_end
2020-12-10 14:04:24 +05:30
microDev
20c3184c87
re-organize and clean-up
2020-12-10 12:34:56 +05:30
Scott Shawcroft
e14b148e62
Merge pull request #3803 from skieast/fix_i2c_hang_with_wifi
...
Working, tested with two i2c busses
2020-12-09 10:03:31 -08:00
Scott Shawcroft
133013083a
Merge pull request #3808 from tannewt/panic_safe_mode
...
Enter safe mode after panic or brownout
2020-12-08 16:31:22 -08:00
Scott Shawcroft
57101d7da6
Merge pull request #3807 from tannewt/sleep_tweaks
...
Add `board_deinit` for use with sleep
2020-12-08 16:30:41 -08:00
Lucian Copeland
9a5006e241
Remove problematic calloc
2020-12-08 17:43:39 -05:00
Scott Shawcroft
0b4bcd9599
Fix build and more comments
2020-12-08 13:05:21 -08:00
Scott Shawcroft
d0a806d797
Enter safe mode after panic or brownout
...
Uses the IDF's reset reason. Does nothing before reset.
Fixes #3389
2020-12-08 11:03:24 -08:00
Scott Shawcroft
40118bcf57
Add board_deinit
for use with sleep
...
This changes lots of files to unify `board.h` across ports. It adds
`board_deinit` when CIRCUITPY_ALARM is set. `main.c` uses it to
deinit the board before deep sleeping (even when pretending.)
Deep sleep is now a two step process for the port. First, the
port should prepare to deep sleep based on the given alarms. It
should set alarms for both deep and pretend sleep. In particular,
the pretend versions should be set immediately so that we don't
miss an alarm as we shutdown. These alarms should also wake from
`port_idle_until_interrupt` which is used when pretending to deep
sleep.
Second, when real deep sleeping, `alarm_enter_deep_sleep` is called.
The port should set any alarms it didn't during prepare based on
data it saved internally during prepare.
ESP32-S2 sleep is a bit reorganized to locate more logic with
TimeAlarm. This will help it scale to more alarm types.
Fixes #3786
2020-12-08 10:52:25 -08:00
microDev
2f95c94ad8
esp32s2 - update common_hal_mcu_reset
2020-12-08 18:00:58 +05:30
microDev
602243748b
add ota support for esp32s2
2020-12-08 11:45:00 +05:30
microDev
fc23a0cc8a
implement ota module
2020-12-08 11:30:00 +05:30
Bruce Segal
571c063c2a
Working, tested with two i2c busses
2020-12-07 17:57:54 -08:00
Scott Shawcroft
44b56f76c4
Store safe mode state in the RTC.
...
Also print backtrace before reset when DEBUG. This will help debug
safe mode issues which calls reset.
2020-12-07 16:39:54 -08:00
Scott Shawcroft
22ad76bb48
Merge pull request #3800 from BennyE/wifi-better-logs
...
Enhance debug log for wifi scan, sta_start, sta_stop
2020-12-07 12:32:15 -08:00
Lucian Copeland
c1a2ea27ce
Change to config-based resets
2020-12-07 13:57:47 -05:00
Lucian Copeland
c7b5928833
Fix submodule desync
2020-12-07 11:47:39 -05:00
Lucian Copeland
40a536904f
Merge remote-tracking branch 'upstream/main' into esp32-pin-reset
2020-12-07 11:45:27 -05:00
Dan Halbert
169b487509
Include wifi.radio singleton in gc
2020-12-07 11:07:56 -05:00
BennyE
70827ac3da
debug log for wifi scan, start stop
2020-12-06 23:38:04 +01:00
Dan Halbert
348392f8cc
Merge pull request #3775 from tannewt/nina_certs
...
Use nina-fw root certs
2020-12-02 16:13:19 -05:00
Dan Halbert
9b3186b625
Merge pull request #3776 from tannewt/backup_socket_timeout
...
Two minor socket changes
2020-12-02 16:12:29 -05:00
Dan Halbert
31acfedf93
Merge pull request #3780 from tannewt/block_while_erasing
...
Block all tasks (not interrupts) during flash erase
2020-12-02 16:10:25 -05:00
Scott Shawcroft
d7ba641ff6
Merge pull request #3767 from dhalbert/sleep
...
Initial alarm and sleep PR: time alarms with light and deep sleep; PinAlarms not yet implemented
2020-12-02 12:51:43 -08:00
Scott Shawcroft
73e22f9eeb
Block all tasks (not interrupts) during flash erase
...
Otherwise we risk running code from flash while an erase is in
progress, crashing and corrupting the file system.
Related to #3744
2020-12-01 18:15:06 -08:00
Dan Halbert
8b7c23c1ee
address review comments
2020-12-01 20:01:14 -05:00
Scott Shawcroft
927624468d
Two minor socket changes
...
* Remove BrokenPipeError and prefer to return the number of bytes
received. (May be zero.)
* Add two minute backup timeout to reduce the chance we hang on
recv accidentally.
2020-11-30 18:39:50 -08:00
Scott Shawcroft
4ac4faaaf6
Use nina-fw root certs
...
That way we have one set we use for all of Adafruit's connected
devices.
2020-11-30 17:02:26 -08:00
Scott Shawcroft
5b3c930e38
Merge pull request #3738 from microDev1/fix-touch
...
ESP32S2: Fix multiple touchpad don't work simultaneously
2020-11-30 16:03:16 -08:00
Christian Walther
c7404a3ff8
Add movable allocation system.
...
This allows calls to `allocate_memory()` while the VM is running, it will then allocate from the GC heap (unless there is a suitable hole among the supervisor allocations), and when the VM exits and the GC heap is freed, the allocation will be moved to the bottom of the former GC heap and transformed into a proper supervisor allocation. Existing movable allocations will also be moved to defragment the supervisor heap and ensure that the next VM run gets as much memory as possible for the GC heap.
By itself this breaks terminalio because it violates the assumption that supervisor_display_move_memory() still has access to an undisturbed heap to copy the tilegrid from. It will work in many cases, but if you're unlucky you will get garbled terminal contents after exiting from the vm run that created the display. This will be fixed in the following commit, which is separate to simplify review.
2020-11-28 17:50:23 +01:00
Dan Halbert
596e0e4bd2
merge from upstream
2020-11-27 16:06:57 -05:00
Dan Halbert
e308a9ec11
working! PinAlarm not implemented yet.
2020-11-27 16:03:37 -05:00
Dan Halbert
104a089677
deep sleep working; deep sleep delay when connected
2020-11-26 22:06:37 -05:00
microDev
e90cb3ad86
Merge branch 'main' into fix-touch
2020-11-26 11:33:45 +05:30
microDev
6af48bb24c
reset touchin on every vm run
2020-11-26 11:22:44 +05:30
Jeff Epler
7923aa0a62
Merge pull request #3708 from hierophect/esp32s2-udp
...
ESP32-S2: Add UDP with recvfrom_into and sendto
2020-11-25 21:11:20 -06:00
Jeff Epler
6fd123a5c4
Merge pull request #3758 from tannewt/update_connect_doc
...
Update wifi.Radio.connect doc
2020-11-25 21:09:56 -06:00
Scott Shawcroft
abff2615cb
Merge pull request #3754 from hierophect/esp-spi-pinclaim
...
ESP32S2: fix pin claiming bugs
2020-11-25 15:11:29 -08:00
Dan Halbert
ef0830bfe2
merge from upstream + wip
2020-11-25 17:52:06 -05:00
Dan Halbert
9dbea36eac
changed alarm.time API
2020-11-25 15:09:27 -05:00
Lucian Copeland
a854da35d3
Fix masking issue causing pin claim problems
2020-11-25 12:14:56 -05:00
Lucian Copeland
c9bc877683
Merge remote-tracking branch 'upstream/main' into esp-spi-pinclaim
2020-11-25 10:43:35 -05:00
Scott Shawcroft
9a692c3222
Exit faster on recv when TLS connection closed
...
When a TLS connection is closed by the server it usually sends a
notice. We see this incoming byte with lwip_ioctl and try to read
it. The read returns 0 but we keep trying anyway. Now, we quit
trying when we get zero back. If the connection was still alive
it'd either read a byte or delay until a byte could be read.
2020-11-24 18:14:22 -08:00
Scott Shawcroft
4ac11c8d31
Update wifi.Radio.connect doc
...
Now it includes bssid info.
2020-11-24 17:54:39 -08:00
hierophect
510f464234
Merge branch 'main' into esp32s2-udp
2020-11-24 18:28:10 -05:00
Scott Shawcroft
669f17e5bf
Merge pull request #3678 from microDev1/nvm-s2
...
ESP32S2: Support for NVM
2020-11-24 14:45:35 -08:00
Lucian Copeland
59458a9013
Add pin claiming to SPI construct
2020-11-24 16:46:11 -05:00
hierophect
d0e75e635a
Merge pull request #3714 from microDev1/ps2io-S2
...
ESP32S2: Support for PS/2-IO
2020-11-24 14:56:09 -05:00
Lucian Copeland
0c5e0954db
Add closed socket identification
2020-11-24 14:51:06 -05:00
Lucian Copeland
1031fe2992
correct submodule
2020-11-24 14:46:43 -05:00
Jeff Epler
0836abba41
Merge pull request #3720 from tannewt/more_wifi_retry
...
Retry connection when getting NOT_AUTHED
2020-11-24 09:54:54 -06:00
microDev
bbe13490b5
Merge branch 'main' into nvm-s2
2020-11-24 12:24:48 +05:30
microDev
6ff24410eb
use values pointer directly
2020-11-24 11:44:11 +05:30
microDev
9dd1783da5
Merge branch 'main' into ps2io-S2
2020-11-24 11:11:11 +05:30
Dan Halbert
7a45afc549
working, but need to avoid deep sleeping too fast before USB ready
2020-11-23 22:44:53 -05:00
Dan Halbert
ebdc48ae22
Merge pull request #3745 from kattni/magtag-pin-update
...
Add pin names from silk
2020-11-23 19:48:12 -05:00
Lucian Copeland
1c9f33a372
Replace reset with mux change
2020-11-23 19:01:30 -05:00
Lucian Copeland
86694262b8
Merge remote-tracking branch 'upstream/main' into esp32-pin-reset
2020-11-23 18:58:46 -05:00
Lucian Copeland
8ffd973e22
Merge remote-tracking branch 'upstream/main' into esp32s2-udp
2020-11-23 18:40:14 -05:00
Scott Shawcroft
a80bf22211
Merge pull request #3727 from BennyE/wifi-full-scan
...
esp32s2: Do a full scan when channel/BSSID are not given
2020-11-23 15:19:57 -08:00
Scott Shawcroft
c67f5892ff
Merge pull request #3704 from microDev1/frequencyio-S2
...
ESP32S2: Support for FrequencyIO
2020-11-23 14:59:27 -08:00
Kattni Rembor
7928a0d454
Blank lines to group aliases.
2020-11-23 16:02:45 -05:00
Kattni Rembor
3730862362
Update to match silk rev 1
2020-11-23 15:56:36 -05:00
Kattni Rembor
efda912437
Add pin names from silk
2020-11-23 15:53:28 -05:00
Dan Halbert
3abee9b256
compiles; maybe ready to test, or almost
2020-11-22 21:52:37 -05:00
Dan Halbert
25591a3f8a
Merge branch 'esp32s2-common-hal-mcu-delay-us' into sleep
2020-11-22 21:01:49 -05:00
Dan Halbert
a0f1ec3c4a
wip
2020-11-22 19:10:09 -05:00
Dan Halbert
f62ea25331
ESP32S2: common_hal_mcu_delay_us() now calls mp_hal_delay_us()
2020-11-22 19:08:27 -05:00
microDev
f3b5ca5f01
replace goto with conditional break
2020-11-22 19:20:21 +05:30
microDev
048ca2a570
get multiple touchpad working
2020-11-22 18:54:18 +05:30
Dan Halbert
75559f35cc
wip: ResetReason to microcontroller.cpu
2020-11-21 23:29:52 -05:00
Dan Halbert
e4c66990e2
compiles
2020-11-20 23:33:39 -05:00
BennyE
2773f534c9
Update ports/esp32s2/common-hal/wifi/Radio.c
...
adding suggested changes
2020-11-20 09:40:32 +01:00
BennyE
6760cdf678
Let connect() choose strongest AP if channel and BSSID are not given
2020-11-20 00:11:17 +01:00
Dan Halbert
39e1f52e28
wip; not compiling yet
2020-11-19 17:47:12 -05:00
BennyE
17a8bafe05
Choose best AP in range if no channel/bssid given
2020-11-19 23:39:48 +01:00
Dan Halbert
649c930536
wip
2020-11-19 15:43:39 -05:00
microDev
a25b27520d
update nvm implementation
2020-11-20 00:22:00 +05:30
microDev
bc9036f353
use pointer to get nvs handle
2020-11-20 00:15:30 +05:30
Jeff Epler
dd108b755d
esp32s2: initialize event loop ane netif only once
...
deinitting these seems to cause problems.
2020-11-19 11:36:02 -06:00
microDev
040eaa0443
re-organize and clean-up
2020-11-19 15:30:15 +05:30
microDev
b56645808c
fix crash on user code exit
2020-11-19 11:44:22 +05:30
Dan Halbert
5bb3c321e9
merge from main
2020-11-19 00:29:14 -05:00
Dan Halbert
682054a216
WIP: redo API; not compiled yet
2020-11-19 00:23:27 -05:00
Scott Shawcroft
081aec4429
Retry connection when getting NOT_AUTHED
...
I saw it once with a correct password. Retrying may still fail
but at least it'll try first.
2020-11-18 16:39:34 -08:00
Jeff Epler
83d790ad8f
esp32s2: don't delete the event loop
...
.. it seems to make the esp-idf grumpy.
2020-11-18 17:45:42 -06:00
microDev
0d3e81f969
update interrupt handling
2020-11-18 22:22:42 +05:30
microDev
bab41afce7
ps2io implementation for esp32s2
2020-11-18 12:34:56 +05:30
microDev
c457d373e1
update init_timer & frequency calculation
2020-11-18 12:24:48 +05:30
microDev
ff987e7496
add timer peripheral
2020-11-18 12:16:14 +05:30
Jeff Epler
9206925bf8
esp32s2: port_get_raw_ticks: Use a more efficient, monotonic routine
...
While trying to debug #3572 , I noticed that I would frequently break in
the midst of gettimeofday and that the routine get_adjusted_boot_time
had to take and release locks. Furthermore, we don't want "adjusted"
boot time, which could go forwards or backwards depending on the
adjustment (such as setting the clock used by gettimeofday() to the network
time)
2020-11-17 17:45:41 -06:00
Jeff Epler
1bc770c3dc
esp32s2: PulseIn: Fix supervisor tick enabling
...
Before, there were two problems:
* Even if a pulsein was never constructed, supervisor_disable_tick
would occur during restart. This could cancel out a supervisor_enable_tick
from someplace else, with unexpected results.
* If two or more pulseins were constructed, each one would enable ticks,
but only the last one deinited (or the reset routine) would disable,
leaving ticks running indefinitely.
In my testing, it seemed that this led to the board sometimes stopping when
it should have auto-reloaded.
2020-11-17 17:45:41 -06:00
Scott Shawcroft
e2b5ae2d77
Merge pull request #3689 from jepler/issue-3688
...
esp32s2: wifi: fix several debug-build errors
2020-11-17 13:26:43 -08:00
Lucian Copeland
0bbdf05936
Implement recvfrom_into and sendto for UDP
2020-11-17 16:11:04 -05:00
Scott Shawcroft
66fb095069
Merge pull request #3667 from microDev1/watchdog-s2
...
ESP32S2: Support for WatchDog
2020-11-16 15:01:54 -08:00
Scott Shawcroft
f4fd236605
Merge pull request #3698 from BennyE/disablesoftap
...
esp32s2: Set station mode early to avoid SoftAP on startup
2020-11-16 14:51:57 -08:00
Scott Shawcroft
f8eed1f74c
Merge pull request #3691 from jepler/issue-3424
...
esp32s2: Update esp-idf submodule to include fix for #3424
2020-11-16 14:21:13 -08:00
microDev
0686cde226
update internal nvm size
2020-11-17 01:19:12 +05:30
microDev
18e463cca5
add pcnt overflow handler & clean-up
2020-11-16 23:32:22 +05:30
Dan Halbert
ffff02c053
Merge remote-tracking branch 'adafruit/main' into sleep
2020-11-16 12:06:11 -05:00
Dan Halbert
bb77f1d130
wip: initial code changes, starting from @tannewt's sleepio branch
2020-11-16 11:56:20 -05:00
microDev
f2824f6a68
update frequency measurement
2020-11-16 12:55:55 +05:30
microDev
2bec02738f
move interrupt handler to iram
2020-11-16 11:44:11 +05:30
BennyE
d4ab00f734
Set station mode early to avoid SoftAP on startup
2020-11-16 00:31:06 +01:00
microDev
c4917cdabd
frequencyio implementation for esp32s2
2020-11-16 00:11:00 +05:30
Jeff Epler
231e3d362d
esp32s2: Update esp-idf submodule to include fix for #3424
...
This re-points the submodule to my personal fork of esp-idf.
Users may need to `git submodule sync` in their existing trees when
this change occurs.
Adds just the following commit in esp-idf:
> esp_crt_bundle: Allow verify_callback to correct BADCERT_BAD_MD
2020-11-14 10:16:39 -06:00
microDev
146adca060
Add watchdog mode raise
2020-11-14 11:41:14 +05:30
Scott Shawcroft
8d4296f964
Add board.DISPLAY to MagTag. Fix luma computation
...
* Initialize the EPaper display on the MagTag at start.
* Tweak the display send to take a const buffer.
* Correct Luma math
* Multiply the blue component, not add.
* Add all of the components together before dividing. This
reduces the impact of truncated division.
2020-11-13 18:57:52 -08:00
Jeff Epler
0f7081781e
esp32s2: wifi: fix several debug-build errors
...
Closes #3688
With this change, I don't get the ESP_ERROR_CHECK failed repeatedly
running code that imports wifi. (I'm not getting a successful connection
but that's probably my own fault, such as a secrets problem)
2020-11-12 20:40:45 -06:00
microDev
ff41180237
pcnt reset on reload
2020-11-12 16:30:30 +05:30
Scott Shawcroft
a47dea4922
Merge pull request #3671 from FoamyGuy/um_feathers2_board_spi_i2c
...
board.SPI() and board.I2C() for UnexpectedMaker Feather S2
2020-11-11 17:22:23 -08:00
microDev
35ef6c687f
nvm implementation for esp32s2
2020-11-11 23:11:12 +05:30
foamyguy
118ca7cff4
adding default uart pins
2020-11-11 06:56:57 -06:00
microDev
f9842566d8
Add default pin definitions
2020-11-11 10:22:48 +05:30
foamyguy
8373146c56
newline end of file
2020-11-10 15:29:17 -06:00
Scott Shawcroft
ddb3590944
Merge pull request #3647 from DavePutz/issue3579
...
Issue3579 - Check for CTRL-C During sleep on esp32s2
2020-11-10 13:09:57 -08:00
foamyguy
1192eebcdf
adding spi and i2c to board for um feather s2
2020-11-10 14:12:44 -06:00
Lucian Copeland
21ca1b8c2b
Merge remote-tracking branch 'upstream/main' into esp32s2-udp
2020-11-10 14:59:32 -05:00
Lucian Copeland
d16d27a449
Merge remote-tracking branch 'tannewt/esp32s2_udp' into esp32s2-udp
2020-11-10 14:51:36 -05:00
Scott Shawcroft
75a977febd
Merge pull request #3668 from jepler/esp32s2-stack-size
...
esp32s2: Correct port_stack_get_top()
2020-11-10 10:56:12 -08:00
root
fe7ed99939
Split out extern declare to ports/esp32s2/supervisor/esp_port.h
2020-11-10 12:45:39 -06:00