Commit Graph

8834 Commits

Author SHA1 Message Date
Scott Shawcroft e9dd254127
Add socket select task to wake CP
This fixes the web workflow on boards without a display.

Fixes #6552
2022-07-13 17:35:35 -07:00
Scott Shawcroft ac460dd1e1
Merge branch 'main' into esp32 2022-07-13 15:30:53 -07:00
Scott Shawcroft 2f9de1cb07
Merge pull request #6584 from tannewt/websocket_serial
Add WebSocket at /cp/serial/
2022-07-13 14:15:49 -07:00
Jeff Epler 09b754ffa0
espressif: Set heap size automatically, like micropython
rather than setting the heap size statically, micropython allocates
the biggest contiguous chunk possible, but in no event more than half the
total internal sram. On esp32 this gives 123728 bytes of `gc.mem_free`
in the repl.
2022-07-13 14:00:59 -05:00
Jeff Epler 09d1c846c4
Set heap size to 0 when heap allocation fails 2022-07-13 13:53:22 -05:00
Jeff Epler c1b6c367ff
esp32 can allocate 88kB successfully 2022-07-13 13:53:08 -05:00
Jeff Epler 13be10ef14
rename function to avoid confusion 2022-07-13 13:28:51 -05:00
Jeff Epler 5c6ee20ca5
on esp32 need to initialize nvs before starting wifi
Also, change error handling so that the esp-idf error number
is shown in the traceback in the case of an error.

This allows scanning & connecting to work. I didn't try requests yet.
2022-07-13 11:57:38 -05:00
Jeff Epler f620c2901c
Set a small but working heap size for esp32 without psram 2022-07-13 11:10:00 -05:00
Jeff Epler ea52ca66dc
Disable SPIRAM bankswitch on esp32
We don't use this facility, which was reserving the last 256kiB of
psram.
2022-07-13 10:56:58 -05:00
Jeff Epler 953f44b46e
Fix spiram limit calculation on esp32
esp32 places the psram start at SOC_EXTRAM_DATA_LOW and it can extend
up to SOC_EXTRAM_DATA_SIZE. This is different than esp32-s2 and later,
which place the end at EXTRAM_DATA_HIGH and the limitation of
SOC_EXTRAM_DATA_SIZE was not previously identified as important.
Additionally, the esp32 has a reserved area within himem which was
not being accounted for.

With this change, the Feather ESP32 V2 feather can be used via thonny,
and the other "quick memory corruption tests" I was performing
also all succeed instead of failing.

Before this change, the incorrect address being used for spiram was
0x3fa00000..0x3fc00000 (2MiB). Now, it's 0x3f800000..0x3f9c0000 (1.75MiB)
due to the reserved area and the changed start address.

This is intended to be a no-effect change for other espressif chips besides
original esp32.
2022-07-13 10:52:15 -05:00
Jeff Epler afbaa2eb6c
decode_backtrace: Show even more information
addr2line can show information about how functions were inlined,
including function names

Typical new output:
```
0x400dec57: mp_obj_get_type at /home/jepler/src/circuitpython/ports/espressif/../../py/obj.c:68
 (inlined by) mp_obj_print_helper at /home/jepler/src/circuitpython/ports/espressif/../../py/obj.c:133
 (inlined by) mp_obj_print_helper at /home/jepler/src/circuitpython/ports/espressif/../../py/obj.c:114
0x400e1a25: fun_builtin_1_call at /home/jepler/src/circuitpython/ports/espressif/../../py/objfun.c:75
0x400dd016: mp_call_function_n_kw at /home/jepler/src/circuitpython/ports/espressif/../../py/runtime.c:665
0x400eac99: mp_execute_bytecode at /home/jepler/src/circuitpython/ports/espressif/../../py/vm.c:936
0x400e1ae9: fun_bc_call at /home/jepler/src/circuitpython/ports/espressif/../../py/objfun.c:297 (discriminator 4)
0x400dd016: mp_call_function_n_kw at /home/jepler/src/circuitpython/ports/espressif/../../py/runtime.c:665
0x400dd03a: mp_call_function_0 at /home/jepler/src/circuitpython/ports/espressif/../../py/runtime.c:638
0x40117c03: parse_compile_execute at /home/jepler/src/circuitpython/ports/espressif/../../shared/runtime/pyexec.c:146
0x4011800d: pyexec_friendly_repl at /home/jepler/src/circuitpython/ports/espressif/../../shared/runtime/pyexec.c:734
0x400eeded: run_repl at /home/jepler/src/circuitpython/ports/espressif/../../main.c:823
 (inlined by) main at /home/jepler/src/circuitpython/ports/espressif/../../main.c:922
0x400ef5e3: app_main at /home/jepler/src/circuitpython/ports/espressif/supervisor/port.c:410
0x401bb461: main_task at /home/jepler/src/circuitpython/ports/espressif/build-adafruit_feather_esp32_v2/esp-idf/../../esp-idf/components/freertos/port/port_common.c:141
```
2022-07-12 16:28:33 -05:00
Scott Shawcroft 9d5b04ebc4
Merge pull request #6577 from NathanY3G/uf2-family-id-for-stm32f405
stm: Make family IDs consistent with TinyUF2
2022-07-12 13:38:40 -07:00
Scott Shawcroft 23bbb19138
Merge remote-tracking branch 'adafruit/main' into websocket_serial 2022-07-12 13:15:38 -07:00
Scott Shawcroft d9f6e99942
Fix RP2040 UART
It couldn't receive more than 32 bytes in while checking in_waiting
because in_waiting didn't turn interrupts back on correctly.

Fixes #6579
2022-07-11 13:36:44 -07:00
Scott Shawcroft d8447de0b0
Merge pull request #6578 from xuhow/picoed_led_status
Picoed led status
2022-07-11 13:23:02 -07:00
Scott Shawcroft c56f363a23
Merge pull request #6572 from todbot/wifi-tx-power-float
Fix #6559
2022-07-11 13:08:11 -07:00
Scott Shawcroft e7703e89c9
Merge pull request #6567 from jepler/update-ulab-509
update ulab to 5.0.9
2022-07-11 13:05:41 -07:00
Melissa LeBlanc-Williams 08b4a64bd2 Update the PID 2022-07-11 08:39:10 -07:00
Xu Hao be3482ff05 Set MICROPY_HW_LED_STATUS pin to the elecfreaks_picoed 2022-07-11 16:51:06 +08:00
Nathan Young f22f4f896a stm: Make family IDs consistent with TinyUF2
This should allow UF2 images for STM32F405 boards to be flashed by
TinyUF2.
2022-07-10 21:34:07 +02:00
Tod Kurt a658007673
Update ports/espressif/common-hal/wifi/Radio.c
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2022-07-09 22:17:26 -07:00
Tod Kurt 22e061ba35
Update ports/espressif/common-hal/wifi/Radio.c
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2022-07-09 22:17:18 -07:00
Tod Kurt 98692150ac
Update ports/espressif/common-hal/wifi/Radio.c
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2022-07-09 22:17:12 -07:00
Tod Kurt f464ec3047
Update ports/espressif/common-hal/wifi/Radio.c
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2022-07-09 22:17:02 -07:00
Dan Halbert 9d77a36fbf update samd-peripherals submodule 2022-07-08 22:47:36 -04:00
Melissa LeBlanc-Williams bc14b7ad47 Fix the display on the esp box lite 2022-07-08 15:40:59 -07:00
Dan Halbert 2c7ad7a39f make translate and pre-commit formatting fixes 2022-07-08 16:53:53 -04:00
Melissa LeBlanc-Williams 3c093713dc Merge branch 'esp_box_lite' of https://github.com/tannewt/circuitpython into esp_box_lite 2022-07-08 13:46:14 -07:00
Dan Halbert c316b950c7 merge from adafruit/main 2022-07-08 15:42:19 -04:00
Dan Halbert d869b441f4 further ESP32 sdkconfig fixes; add CIRCUITPY_STATUS_BAR 2022-07-08 15:27:00 -04:00
Dan Halbert 76e32dcf93 remove need for CIRCUITPY_ESP_PSRAM 2022-07-08 14:54:55 -04:00
Dan Halbert afbf4de071 Uncomment or remove debugging changes 2022-07-08 12:53:25 -04:00
Dan Halbert c3cd32e773 CPU freq to 240 MHz, redo sdkconfigs 2022-07-08 10:50:00 -04:00
Dan Halbert 75208573f4 tweak sdkconfig; add temp logging to mp_make_function_from_raw_code 2022-07-08 09:53:29 -04:00
Tod Kurt d3e1d1b104 Fix #6559 2022-07-07 19:42:11 -07:00
Jeff Epler ab3e786611
disable additional module on matrixportal_m4 2022-07-07 20:00:12 -05:00
Jeff Epler c4dfd8e30a
Fix default BOARD setting & messages
It's important that these lines NOT be indented with tabs, because
that provokes Make to say that commands appear before a target.
2022-07-07 17:17:15 -05:00
Jeff Epler 601eb91b89
Disable gifio on matrixportal to reclaim flash space 2022-07-07 17:00:00 -05:00
Dan Halbert 4e88d795e1 Thonny causing crash emitglue.c:199: 2022-07-06 23:01:19 -04:00
Dan Halbert 4c20b3cb63
Merge pull request #6564 from adafruit/7.3.x
7.3.x
2022-07-06 15:25:24 -04:00
Scott Shawcroft d83720f659
Tweak display init 2022-07-05 17:02:52 -07:00
Scott Shawcroft cd77517b2f
Add build for ESP32-S3 Box Lite 2022-07-05 16:35:42 -07:00
Scott Shawcroft 18d7165e0f
Merge pull request #6550 from crackmonkey/rp2040-wait-pin-bounds
issue adafruit#6538 loose bounds checking on WAIT PIO instruction
2022-07-05 12:56:14 -07:00
Nick Lopez dce9396fe3 issue adafruit#6538 loose bounds checking on WAIT PIO instruction 2022-07-02 14:32:20 -07:00
Scott Shawcroft 07b2697ae3
WIP websocket to serial 2022-07-01 16:57:10 -07:00
Patrick c3cf9ba9ce remove wifi max from sdkconfig 2022-07-01 14:50:47 -07:00
Patrick aaeda97818 update PHY section, correct name 2022-07-01 14:50:47 -07:00
Patrick aa53d36934 setting CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER to 8.5 2022-07-01 14:50:47 -07:00
Patrick 7e367eeb58 Update "D" mappings 2022-07-01 14:50:47 -07:00
Patrick d4b26daf1b correct creator and creation IDs 2022-07-01 14:50:47 -07:00
Patrick 6c7faf0eba Change USB VID & PID to Creator and Creation IDs 2022-07-01 14:50:47 -07:00
Patrick 3253ae2503 tested and corrected several pins 2022-07-01 14:50:47 -07:00
Patrick f10fa566aa REPL works. Based on QTPYC3. 2022-07-01 14:50:47 -07:00
Patrick a3070f6c2a Changes to Pin Mappings 2022-07-01 14:50:46 -07:00
Patrick b37236f83f C3 does not have PSRAM 2022-07-01 14:50:46 -07:00
Patrick af629ab180 Add assumed PID value 2022-07-01 14:50:46 -07:00
Patrick c1e6003d26 remove comment that breaks {ID Checker 2022-07-01 14:50:46 -07:00
Patrick 9bae8549c5 add UART RX TX to mpconfigboard 2022-07-01 14:50:46 -07:00
Patrick 6763b7b968 add A5 2022-07-01 14:50:46 -07:00
Patrick bcf27e146b fix build break and add io 20/21 2022-07-01 14:50:46 -07:00
Patrick dc1c86738a Initial pin mapping pass 2022-07-01 14:50:46 -07:00
Patrick fd4695d0f2 Gettting started with pin mapping. 2022-07-01 14:50:46 -07:00
Dan Halbert 8814ee03f1
Merge pull request #6542 from todbot/wifi-tx-power
Add wifi.radio.tx_power
2022-07-01 14:09:08 -04:00
Scott Shawcroft 7589e53fea
WIP websocket accept and hashlib 2022-07-01 10:18:33 -07:00
Dan Halbert 8bb369cac5 refactor debug UART to console UART; get working on ESP32 2022-06-30 23:16:46 -04:00
Dan Halbert 187f156ac7
Merge pull request #6534 from tannewt/esp_wdt_safe_mode
Safe mode when ESP interrupt watchdog fires
2022-06-30 22:56:35 -04:00
Dan Halbert 63873e2c14
Merge pull request #6528 from tannewt/cp_webserver
Add web workflow to ESP boards
2022-06-30 22:53:47 -04:00
Tod Kurt 698d563dcf adust wifi.radio.tx_power to be x4 (in db) as mentioned in #6540 2022-06-30 15:33:03 -07:00
Tod Kurt 2a563cc8ba first cut at wifi.radio.tx_power 2022-06-30 15:10:16 -07:00
Scott Shawcroft 71358a4a63
Merge pull request #6526 from xuhow/elecfreaks_picoed
Add some frozen libraries to elecfreaks_picoed
2022-06-30 11:53:59 -07:00
Dan Halbert b0efd130c9 ESP32 REPL working through debug UART 2022-06-29 23:19:36 -04:00
Scott Shawcroft 3be3e89d82
Merge branch 'main' into cp_webserver 2022-06-29 14:01:32 -07:00
Dan Halbert c3a149c14a
Merge pull request #6533 from tannewt/fix_connect_crash
Fix auto-wifi created crash
2022-06-29 16:51:33 -04:00
Scott Shawcroft d42c811fb9
Safe mode when ESP interrupt watchdog fires
This makes us enter safe mode when sleep on the S3 fails. The
task watchdog is used for the user watchdog.
2022-06-29 12:31:18 -07:00
Scott Shawcroft 8dc8265275
Fix auto-wifi created crash
The wifi event_handler runs on the other core so we need to be
careful when calling into CP APIs.

Fixes #6503
2022-06-29 11:53:10 -07:00
Scott Shawcroft 1f065a313c
Update with startup fix instead of revert 2022-06-29 11:12:29 -07:00
Xu Hao 1599844b82 Add some frozen libraries to elecfreaks_picoed 2022-06-29 15:03:29 +08:00
Dan Halbert 780c4963cb wip; change never-ever reset pin mechanism 2022-06-28 23:06:49 -04:00
Scott Shawcroft a8bb3eb557
Update to newer 4.4 branch 2022-06-28 15:38:55 -07:00
Dan Halbert ca64950503 wip fixes 2022-06-28 18:32:08 -04:00
Dan Halbert 131d70cebd restore traceback to matrixportal build 2022-06-28 16:10:55 -04:00
Scott Shawcroft 41039445c9
Clean up and add docs 2022-06-27 13:39:09 -07:00
Scott Shawcroft 7acc5ebeb9
Add logo for going to home. Fix origin check 2022-06-27 13:39:09 -07:00
Scott Shawcroft 3cd05291d0
Static files + welcome page 2022-06-27 13:39:09 -07:00
Scott Shawcroft 7543dd9af0
CORS works and autoreload too 2022-06-27 13:39:08 -07:00
Scott Shawcroft 92593aa7a1
Fix bind, remove hard coded ip 2022-06-27 13:34:13 -07:00
Scott Shawcroft 4f0a7aedfd
WIP adding devices.json and auth 2022-06-27 13:34:13 -07:00
Scott Shawcroft 32478345f8
more tweaks 2022-06-27 13:34:13 -07:00
Scott Shawcroft 0882cbf823
web server kinda works 2022-06-27 13:34:13 -07:00
Scott Shawcroft 61d0f7947b
WIP doesn't flush response before closing 2022-06-27 13:34:13 -07:00
Scott Shawcroft 301f3e0456
Start of web server 2022-06-27 13:34:13 -07:00
Dan Halbert 55784c93de wip; compiles 2022-06-26 21:22:22 -04:00
Dan Halbert 02069eb0b5 wip 2022-06-23 15:59:06 -04:00
Scott Shawcroft a055113ed5
Merge pull request #6520 from dhalbert/7.3.1-to-main
Merge 7.3.1 changes to main
2022-06-23 11:15:40 -07:00
Dan Halbert b0219f9b5b
Merge pull request #6518 from xorbit/rp2040-shim
Add board Silicognition LLC RP2040-Shim
2022-06-23 11:04:40 -04:00
Dan Halbert feb1d903f7 merge 7.3.1 to main 2022-06-23 09:07:49 -04:00
Scott Shawcroft 897297bba4
Merge pull request #6516 from Neradoc/setup-default-ports-hiibot-iots2
Implement default busses to IOTS2
2022-06-22 09:46:08 -07:00
Patrick Van Oosterwijck 0b80c62400
Merge branch 'adafruit:main' into rp2040-shim 2022-06-22 11:40:02 -05:00
Scott Shawcroft 25206a8aff
Merge pull request #6513 from dhalbert/7.3.x-6495-backport-ble-disconnect-check
Test for a BLE disconnect while reading
2022-06-22 09:38:24 -07:00