Commit Graph

1207 Commits

Author SHA1 Message Date
Scott Shawcroft 6043874969
Split out ram dependent configs 2023-09-13 11:36:33 -07:00
Scott Shawcroft feabf7b6ce
Use kconfiglib in sdkconfig update script 2023-09-13 11:36:33 -07:00
Scott Shawcroft e90c07ed87
More esp fixing 2023-09-13 11:36:31 -07:00
MicroDev 7a7f1e6efa
fix arch switch statement in ulp
Co-authored-by: Casey Webb <caseywebb@protonmail.com>
2023-09-13 11:35:14 -07:00
MicroDev ba22633fb0
temporarily disable `rgbmatrix` on `espressif` 2023-09-13 11:35:14 -07:00
MicroDev 3d2cfa162a
enable `paralleldisplay` on `esp32` and `esp32s3` 2023-09-13 11:35:14 -07:00
MicroDev 8feb3bad29
refactor board config files 2023-09-13 11:35:14 -07:00
MicroDev c38972b51c
update ulp implementation 2023-09-13 11:35:14 -07:00
MicroDev 242a720593
fix psram crash 2023-09-13 11:35:14 -07:00
MicroDev 7b9c87e432
update espressif ble sdkconfig 2023-09-13 11:35:14 -07:00
MicroDev 931ed7c6e5
conditionally include `esp_psram` and fix sdkconfig 2023-09-13 11:35:11 -07:00
MicroDev a18e015888
update idf to v5.0 2023-09-13 11:33:51 -07:00
Dan Halbert 9f1d52601e merge from 8.2.x 2023-09-12 20:14:30 -04:00
Dan Halbert 843fca1874
Merge pull request #8388 from bill88t/espcam-deinit
[ESPCAMERA] Deinit all the pins.
2023-09-12 12:53:08 -04:00
Scott Shawcroft 4563c35908
Merge pull request #8385 from n3o59hf/add_m5stack_atoms3u
Add M5Stack AtomS3U
2023-09-11 13:46:03 -07:00
Bill Sideris 6e9c21baba
Deinit all the pins. 2023-09-11 23:35:54 +03:00
Jeff Epler 5a96696025
This board got a KICKIN marketing name 2023-09-11 13:46:08 -05:00
Elviss Kustans 92eaf6236f Add M5Stack AtomS3U 2023-09-09 01:38:08 +00:00
Scott Shawcroft 885dbec599
Merge pull request #8357 from eightycc/memorymap
Add memorymap support to RP2 port
2023-09-08 11:28:11 -07:00
Scott Shawcroft 0928a95bb2
Merge pull request #8351 from jepler/dotclockframebuffer
Dotclockframebuffer
2023-09-07 13:21:29 -07:00
Jeff Epler 0196401d08
reduce reserved psram 2023-09-07 13:01:16 -05:00
Jeff Epler eb060184c2
Add hack tablet 2023-09-07 12:59:42 -05:00
Dan Halbert 4dd45b6dc6
Merge pull request #8374 from dhalbert/new-certificates-submodule
Update TLS certificates and use new certificates submodule
2023-09-07 10:19:05 -04:00
Dan Halbert aaa23df649
Merge pull request #8372 from tirtharajsinha/8.2.x
8.2.x backport waveshare-esp32-s3-pico
2023-09-07 08:50:59 -04:00
Dan Halbert bc44571384
Merge pull request #8375 from UnexpectedCircuitPython/fs3_changes
Added UM FeatherS3 second I2C STEMMAQT
2023-09-06 23:13:46 -04:00
Seon Rozenblum e71c39736e Added UM FeatherS3 second I2C STEMMAQT 2023-09-07 12:13:37 +10:00
Dan Halbert 58a21326b2 Update to new certificates submodule. 2023-09-06 19:36:48 -04:00
Scott Shawcroft d7edec67ce 8.2.x backport Added Arduino Nano ESP32-S3 2023-09-06 11:43:07 -07:00
Tirtharaj Sinha 896be9edb3 added precommit 2023-09-06 23:12:47 +05:30
Tirtharaj Sinha 1eb8822feb added SCL and SDA 2023-09-06 22:47:34 +05:30
Tirtharaj Sinha 0c0b927843 added waveshare_esp32_s3_pico for circuitpython version 8.2.x 2023-09-06 21:48:41 +05:30
Jeff Epler 6153d23ed8
Fix build with no psram
these are conditionally-defined identifiers so have to use if defined.
2023-09-05 21:30:35 -05:00
Scott Shawcroft b100041bf7
Merge pull request #8190 from makermelissa/arduino-nano-esp32s3
Added Arduino Nano ESP32-S3
2023-09-05 14:31:08 -07:00
Scott Shawcroft 442f84d0e6
Merge pull request #8345 from tannewt/s3_watchdog
Forbidden pins are now correctly "in use" on ESP
2023-09-05 13:25:42 -07:00
Jeff Epler 5e26862b2c
Allow use of CONFIG_SPIRAM_USE_CAPS_ALLOC
.. and switch makerfabs tft7 over to it as a test.

We have our existing way of "reserving" PSRAM for esp-idf (we actually
control it all but add back the "reserved" part). However, this does
not work with off the shelf esp_lcd, which only will allocate a
framebuffer in PSRAM if CONFIG_SPIRAM_USE_CAPS_ALLOC (or CONFIG_SPIRAM_USE_ALLOC)
is defined, not if CONFIG_SPIRAM_USE_MEMMAP is.

This new way is possibly compatible with more esp-idf code, but it complicates
CircuitPython's initial startup since nothing until port_heap_init is
permitted to use the CP heap or supervisor allocator. In practice this
seems to be OK today.

Right now this doesn't change the setting across all boards with PSRAM and so
it does not revert esp-idf to its prior state. Instead, what I'm thinking is
that we can do it during or just after the IDF5 update when sdkconfig files
will be getting an overhaul anyway.
2023-09-05 12:43:22 -05:00
Jeff Epler b7d1147f67
Bump the stack size of the uart task
With DEBUG build and a consle UART, this would occur early during startup on makerfabs tft7:
```
I (0) cpu_start: Starting scheduler on APP CPU.
I (10) uart: queue free spaces: 20

***ERROR*** A stack overflow in task uart_event_task has been detected.


Backtrace: 0x403786f2:0x3fce9f40 0x403820a9:0x3fce9f60 0x403850da:0x3fce9f80 0x40383a7d:0x3fcea000 0x40382158:0x3fcea030 0x4038214e:0xa5a5a5a5 |<-CORRUPTED
```

Decoded backtrace was not enlightening:
```
0x403786f2: panic_abort at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/esp_system/panic.c:408
0x403820a9: esp_system_abort at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/esp_system/esp_system.c:137
0x403850da: vApplicationStackOverflowHook at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/port.c:407
0x40383a7d: vTaskSwitchContext at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/tasks.c:3505
0x40382158: _frxt_dispatch at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/portasm.S:436
0x4038214e: _frxt_int_exit at /home/jepler/src/circuitpython/ports/espressif/build-makerfabs_tft7/esp-idf/../../esp-idf/components/freertos/port/xtensa/portasm.S:231
0x00000000: ?? ??:0
```

Adding an additional 512 bytes of stack allowed CircuitPython to start
successfully.
2023-09-05 12:07:09 -05:00
Jeff Epler 6784e0e720
Ensure debug is defined earlier 2023-09-05 12:06:57 -05:00
Melissa LeBlanc-Williams 7fe6cf5ed6 Set D13 to input with Pulldown 2023-09-01 15:03:08 -07:00
Melissa LeBlanc-Williams 8d6f9d06df merge branch main 2023-09-01 14:42:53 -07:00
Jeff Epler 84aadf3a64
Update TFT experiment for rev b 2023-09-01 12:58:00 -05:00
Bob Abeles 66b3eccaf6 8334: RP2040 lacks raw memory map access 2023-08-31 20:25:20 -07:00
Jeff Epler 5f12e0f9b8
Revert mistaken change 2023-08-31 14:53:31 -05:00
Jeff Epler 554f529fdf
Per review notes, make esp_lcd and esp32-camera unconditional 2023-08-31 14:52:54 -05:00
Jeff Epler 80a1d1a20a
Add support for a non-displayed left portion of screen 2023-08-31 14:52:26 -05:00
Melissa LeBlanc-Williams 06ccd41294
Remove frozen libs from Funhouse 2023-08-31 13:15:51 -05:00
Tirtharaj Sinha da3dfd7b5a added new board - esp32 s3 pico 2023-08-31 04:15:25 +05:30
Jeff Epler 1ef4e3c738
Add Adafruit TFT Experiment (rev A)
There will be a revision but get the basics in for now.

This successfully displays on a TL040HDS20-B1502A screen with:
```
import board
from framebufferio import FramebufferDisplay
from dotclockframebuffer import DotClockFramebuffer
from displayio import release_displays

tft_pins = board.TFT
tft_timings = {
    "frequency": 6_500_000,
    "width": 720,
    "height": 720,
    "hsync_pulse_width": 20,
    "hsync_front_porch": 40,
    "hsync_back_porch": 40,
    "vsync_pulse_width": 10,
    "vsync_front_porch": 40,
    "vsync_back_porch": 40,
    "hsync_idle_low": False,
    "vsync_idle_low": False,
    "de_idle_high": False,
    "pclk_active_high": False,
    "pclk_idle_high": False,
}

release_displays()
fb = DotClockFramebuffer(**tft_pins, **tft_timings)
disp = FramebufferDisplay(fb)
```
2023-08-30 15:05:07 -05:00
Jeff Epler 7dbf9a9b56
fix vprintf_adapter build error 2023-08-30 11:34:01 -05:00
Jeff Epler 9dcc0b5056
fix those pesky pid/vid duplicates 2023-08-30 10:58:52 -05:00
Jeff Epler fb15c7ca51
Fix timings table & remove redundant comment 2023-08-30 10:50:16 -05:00
Jeff Epler 9e0993af5b
Add espressif esp32s3 lcd devkit
This is not working/tested. The display requires an initialization sequence,
and its SPI bus is on the other side of an I2C GPIO expander making things
more difficult.
2023-08-30 10:31:47 -05:00
Jeff Epler 494aee62b3
Add makerfabs 7" 800x480 TFT
this is working, though it has to be down-clocked to 6.5MHz to prevent
display glitching
2023-08-30 10:30:54 -05:00
Jeff Epler ed9cacf41d
Add DotClockFramebuffer 2023-08-30 10:30:15 -05:00
Scott Shawcroft 9daccc08c5
Forbidden pins are now correctly "in use" on ESP
This removes duplicate code to make debug UART pins in use via
never reset. It is done through forbidden pins automatically now.

Fixes #8288
2023-08-28 15:55:14 -07:00
Scott Shawcroft b20e211d29
Merge pull request #8293 from fonix232/port/esp32/m5paper
Add support for M5Stack M5Paper
2023-08-28 12:53:37 -07:00
Jeremy Littler 9bdb576351
Add files via upload 2023-08-28 10:10:04 -04:00
Jeremy Littler c1144e66a8
Add files via upload 2023-08-28 10:09:06 -04:00
Jeff Epler b0967cb1a4
Use QSTR_GLOBAL_REQUIREMENTS to give explicit dependency for qstr generation
I investigated and found that this seems to be the best way to specify
a file that must be generated before "qstr processing" can occur.

Closes #8337
2023-08-27 16:16:40 -05:00
Scott Shawcroft ab70f8eace
Merge remote-tracking branch 'adafruit/main' into i2s_mclk 2023-08-24 15:07:14 -07:00
Jozsef Kiraly 4f7e66df08 fix: pre-commit 2023-08-22 15:17:40 +01:00
Jozsef Kiraly 2ec145ba6c fix: Minor fixes for M5Paper 2023-08-22 11:44:52 +01:00
Jeff Epler d62bf6631b
Use a different way to force building sdkconfig early
the `Makefile:...` version broke the shared bindings matrix generation, as
it would fail if esp-idf wasn't in the environment (and we wouldn't want
it to do that much work anyway)
2023-08-21 20:48:42 -05:00
Jeff Epler 44c26d9d41
Ensure sdkconfig.h is built early, by making Makefile depend on it
Here's why this helps fix the build error:
If this file does not exist or is out of date, then it is generated
and then the Makefile is re-read.

I don't know why this worked before but stopped now; it must have
to do with the rework of header generation in the MP build system.
2023-08-20 11:08:43 -05:00
Jeff Epler e74ef8b960
ringbuf_alloc no longer has a long-lived argument 2023-08-20 10:15:56 -05:00
Jeff Epler a3a9c7a098
fix typo 2023-08-20 10:15:55 -05:00
Dan Halbert e43c2fb7ba pre-commit uncrustify 2023-08-18 22:53:14 -04:00
Dan Halbert d9ed21ea07 pre-commit 2023-08-18 13:30:45 -04:00
Dan Halbert 6851faacaa Merge remote-tracking branch 'adafruit/main' into merge-micropython-v1.19.1 2023-08-18 13:29:39 -04:00
Jozsef Kiraly 37352cf7ec fix: Apply pre-commit patch 2023-08-18 11:22:26 +01:00
Jozsef Kiraly 37d807509f port: Add M5Stack M5Paper board target 2023-08-17 21:22:26 +01:00
Scott Shawcroft 8c5c73df38
Add I2S MCLK support to iMX RT 2023-08-17 11:39:14 -07:00
Kattni Rembor 8b147ac748 Add SD_CS pin to Metro ESP32-S3 board definition. 2023-08-15 18:30:59 -04:00
Kattni Rembor 3012c275e7 Add SD_CS pin. 2023-08-15 18:09:42 -04:00
Dan Halbert d582407b06 pre-commit fixes 2023-08-14 00:59:22 -04:00
Dan Halbert 2171e67c1b merge latest adafruit/main 2023-08-13 19:43:54 -04:00
Dan Halbert 27c7807693 silabs build needs work; other builds are working 2023-08-13 19:05:16 -04:00
Melissa LeBlanc-Williams 9d69ddc583 Add D0 and D1 2023-08-14 00:20:47 +02:00
Melissa LeBlanc-Williams 4c62db2d05 Add D pins 2023-08-14 00:20:24 +02:00
Melissa LeBlanc-Williams 8dd52430b6 Change to octal ram 2023-08-14 00:18:50 +02:00
Melissa LeBlanc-Williams 1b3993a29e Added initial Adafruit Metro ESP32-S3 2023-08-14 00:17:24 +02:00
Dan Halbert 10b94796c0 wip; fix more m_malloc and gc_alloc 2023-08-11 00:30:34 -04:00
Melissa LeBlanc-Williams 7a4edfaa9f Override D13 pin 2023-08-09 08:19:34 -07:00
Melissa LeBlanc-Williams ab638d4bf2 Merge branch 'main' of https://github.com/adafruit/circuitpython into arduino-nano-esp32s3 2023-08-09 08:08:03 -07:00
Dan Halbert 0d2c3c3f08 wip: continuing compilation fixes; mp_obj_alloc everywhere 2023-08-07 20:45:57 -04:00
Melissa LeBlanc-Williams 1d3b2b019a Update settings to match micropython 2023-08-04 08:54:22 -07:00
Melissa LeBlanc-Williams 3158315ac3 Merge branch 'main' of https://github.com/adafruit/circuitpython into arduino-nano-esp32s3 2023-08-04 08:48:37 -07:00
Jeff Epler 84d8224a54
set reserved psram for pycamera 2023-08-04 08:38:07 -05:00
Dan Halbert 465d1c673e wip 2023-08-03 23:29:00 -04:00
Scott Shawcroft 9cc4b4cd37
Merge pull request #8245 from jepler/esp32-camera-backlight-solarize
pycamera: backlight, solarize
2023-08-02 10:00:21 -07:00
Jeremy Littler f7cc20e936
Update pins.c 2023-08-02 11:01:44 -04:00
Jeremy Littler f9b98ce54d
Update pins.c 2023-08-02 10:57:46 -04:00
Jeremy Littler b88e359b00
Update pins.c 2023-08-02 10:41:46 -04:00
Jeremy Littler 37dbe3e24a
Update pins.c 2023-08-02 10:32:40 -04:00
Jeremy Littler 94ed725fd3
Update mpconfigboard.h 2023-08-02 10:24:58 -04:00
Jeff Epler 4e01e6bbe5
adafruit-esp32s3-camera: set up backlight at boot & add solarize
the backlight situation will be revisited with the next board prototype,
but it's good to prove this can be done.

Depends on https://github.com/adafruit/esp32-camera/pull/6 which should
be merged before this.
2023-08-02 08:09:13 -05:00
Jeff Epler 2b0f1cd087
espressif: fix dependencies in esp-idf modules
while developing esp-camera I had the problem that firmware.elf was
not regenerated if the only file I edited was in the esp32-camera
submodule.

By telling make that $(IDF_CMAKE_TARGETS), the list of .a fliles
produced by ninja-building esp-idf, depend on esp-idf-stamp and that
firmware.elf in turn depends on these files, the ninja build is re-run
on each make, which is reasonably quick if nothing needs to be rebuilt.
2023-08-02 07:52:45 -05:00
Scott Shawcroft 8baff0bf88
Merge pull request #8133 from dronecz/main
Add ES3ink board definition
2023-08-01 13:31:46 -07:00
Scott Shawcroft 0bf50d2d6e
Merge pull request #8215 from makermelissa/adafruit-metro-esp32s3
Added initial Adafruit Metro ESP32-S3
2023-08-01 13:30:06 -07:00
Dan Halbert 0d4bc8c163 initial v1.19.1 merge; not compiled yet 2023-08-01 13:50:05 -04:00
Jeff Epler 272a2dcdb0
Merge pull request #8218 from jepler/esp32-camera
Update the camera board to use ESP32-S3 microcontroller
2023-07-31 14:48:50 -05:00