Commit Graph

1352 Commits

Author SHA1 Message Date
Scott Shawcroft
15c5e8c806
Fix pin adc unit check
IDF5 made 0 valid. Use the NO_ADC macro instead
2023-10-06 15:55:43 -07:00
Dan Halbert
c9d7195505
Merge pull request #8447 from tannewt/5.1_enable_rgbmatrix
Enable rgbmatrix on IDF 5.1
2023-10-06 17:14:04 -04:00
Scott Shawcroft
22bcb85dd5
Update esp-protocols
The commit was amended for PR review into espressif's repo. Next
time I'll make a branch to PR to them from.
2023-10-06 09:54:55 -07:00
Taiki Komoda
0dfafe2a4b wip 2023-10-06 23:17:36 +09:00
Scott Shawcroft
4d2bc35d40
Re-enable rgbmatrix on IDF 5.1 2023-10-05 14:56:11 -07:00
Dan Halbert
06765ccfa6 RP2040 now builds 2023-10-05 14:49:49 -04:00
Scott Shawcroft
2e6ef78227
Update Metro S3 pin mapping for Rev B 2023-10-04 09:43:41 -07:00
Scott Shawcroft
a15c111d5c
Merge pull request #7718 from microdev1/watchdog-rp
Update WatchDog implementation
2023-10-02 14:17:29 -07:00
Dan Halbert
5327487c1c
Merge pull request #8446 from tannewt/rgbmatrix_memory_fix
Improve RGBMatrix allocation tracking
2023-09-29 22:31:00 -04:00
Scott Shawcroft
4c21f22114
Improve RGBMatrix allocation tracking
This prevents leaks but not all use-after-free issues.
2023-09-29 14:55:42 -07:00
Dan Halbert
68a2927385 MP_REGISTER_ROOT_POINTER for port-specific root pointers 2023-09-29 15:46:42 -04:00
Dan Halbert
1c388ab315 finish converting to MP_REGISTER_ROOT_POINTER() 2023-09-29 10:49:34 -04:00
MakerM0
7aa85353e7
Update mpconfigboard.mk 2023-09-29 16:32:33 +08:00
MakerM0
79161dbeb2
Update sdkconfig 2023-09-29 13:47:47 +08:00
Jeff Epler
10aeb23789
remove console pins, that was wrong 2023-09-28 17:13:22 -05:00
Dan Halbert
76ff01452b Trinket M0 comes up; still very much wip 2023-09-28 16:22:10 -04:00
Jeff Epler
a9fce6c495
qualia: fixes for revision C
* neopixel removed, could not share function with DBLTAP
 * external SPI bus definition is settled
2023-09-27 18:13:21 -05:00
Jeff Epler
aa0d7aad83
Merge pull request #8440 from jepler/dotclock-overscan-rotation
Dotclock: fix overscan and rotation
2023-09-27 18:07:50 -05:00
Jeff Epler
c1a98e460a
Merge pull request #8439 from tannewt/fix_for_make_quirk
Tweak for make quirk
2023-09-27 18:05:43 -05:00
Jeff Epler
f80d08e207
Make dot clock displays with a masked portion on the left work 2023-09-27 15:15:32 -05:00
Scott Shawcroft
3684640ada
Merge pull request #8430 from jepler/dotclock-enhancements
Dotclock enhancements
2023-09-27 11:39:37 -07:00
Scott Shawcroft
ad837d44ed
Tweak for make quirk 2023-09-27 09:17:07 -07:00
Scott Shawcroft
3fdfb9bd32
Update ADC and I2S APIs for 5.1
This fixes ESP32 because the BufferedIn used the old ADC API and
I2S did too indirectly.

Fixes #8429
2023-09-26 16:06:54 -07:00
Jeff Epler
3d3061f6f7
fix qualia board definition 2023-09-26 08:33:27 -05:00
Jeff Epler
1c2362b758
bump qualia psram to 120MHz 2023-09-26 08:33:10 -05:00
Jeff Epler
3af5cbc312
bump ram to 120MHz 2023-09-26 07:49:00 -05:00
Jeff Epler
03141d40af
espressif: i2c: initialize "has_lock"
Otherwise, a stack-constructed i2c instance might get some other value
here.
2023-09-26 07:48:59 -05:00
Jeff Epler
747b6e8d2e
enable LCD_RGB_RESTART_IN_VSYNC
this "should" turn permanent tearing into temporary tearing.
2023-09-25 16:39:38 -05:00
Jeff Epler
6263f6af84
Switch to i2c init string for espressif lcd ev, expose values via board 2023-09-25 16:39:00 -05:00
Jeff Epler
65310ab615
update io expander table for rev C 2023-09-25 12:00:04 -05:00
Jeff Epler
ce22edba15
On Qualia, define board.TFT_IO_EXPANDER
these arguments make it easier to call ioexpander_send_init_sequence
2023-09-25 11:33:01 -05:00
MicroDev
27fd60d739
implement suggested changes
- update the docs
- split out common `watchdog_reset`
- revert to using `None` instead of `WatchDogMode.NONE`
2023-09-24 15:23:38 +00:00
MakerM0
761ac3b363
Update pins.c 2023-09-24 22:40:08 +08:00
MakerM0
6acce76181
Update pins.c 2023-09-24 22:35:31 +08:00
MakerM0
9284d25ad4
Update pins.c 2023-09-24 22:28:48 +08:00
MakerM0
e197493537
Update mpconfigboard.mk 2023-09-24 22:24:24 +08:00
MakerM0
1143d3e33a
Update mpconfigboard.h 2023-09-24 22:23:56 +08:00
MakerM0
ca4ecf043e
Update board.c 2023-09-24 22:23:12 +08:00
MakerM0
71e165b1fc
Update pins.c 2023-09-24 22:22:48 +08:00
MakerM0
918f93fc2c
Update mpconfigboard.mk 2023-09-24 22:08:00 +08:00
MakerM0
3913adf7fb
Update sdkconfig 2023-09-24 22:06:38 +08:00
MakerM0
c35839afc5
Update board.c 2023-09-24 22:05:34 +08:00
MakerM0
0507e7a00d
Update mpconfigboard.mk 2023-09-24 21:50:30 +08:00
MakerM0
5ffb7e7c83
Update mpconfigboard.mk 2023-09-24 21:38:30 +08:00
MakerM0
ab8e119510
Update sdkconfig 2023-09-24 21:17:39 +08:00
MakerM0
9ab8822c59
Update pins.c 2023-09-24 21:17:25 +08:00
MakerM0
6f77f0f163
Update mpconfigboard.h 2023-09-24 21:17:11 +08:00
MakerM0
6d7a08bcdc
Update board.c 2023-09-24 21:16:58 +08:00
MakerM0
12f35d1a0f
Update mpconfigboard.mk 2023-09-24 21:16:41 +08:00
MakerM0
a5ae99a5b6
Update mpconfigboard.mk 2023-09-24 21:12:49 +08:00
MakerM0
9d90680521
Add board def for MagiClick S3
The board is related here: https://github.com/MakerM0/MagiClick-esp32s3

VID&PID can be found here: https://github.com/espressif/usb-pids
2023-09-24 20:48:30 +08:00
MicroDev
05812e0618
Merge branch 'main' into watchdog-rp 2023-09-24 05:13:22 +00:00
Scott Shawcroft
c726e87344
Enable BLE on H2 devkit 2023-09-22 15:05:20 -07:00
Scott Shawcroft
faa445e347
Three more board fixes 2023-09-22 10:03:20 -07:00
Scott Shawcroft
1480d70d17
Fix builds
* Disable bleio on C3 with 4MB flash.
* Fix gpio include path in board.c's that use it.
2023-09-22 10:03:20 -07:00
Scott Shawcroft
16d1dc2be0
Update all target sdkconfig 2023-09-22 10:03:20 -07:00
Scott Shawcroft
6649b17fb5
H2 works 2023-09-22 10:03:20 -07:00
Scott Shawcroft
39192cc896
C6 works 2023-09-22 10:02:35 -07:00
Scott Shawcroft
7bad82a219
C6 compiles, runs but wifi crashes 2023-09-22 10:02:35 -07:00
Scott Shawcroft
e22eefabd7
First stab at 5.1 update 2023-09-22 10:02:30 -07:00
Scott Shawcroft
d6b284ebb0
Merge pull request #8411 from tannewt/update-idf
Update to ESP-IDF 5.0
2023-09-22 09:45:35 -07:00
Scott Shawcroft
8f3c6422ee
Fix MDNS after the user turns off wifi
We need to reset our MDNS state instead of just the IDF's.
2023-09-20 14:46:42 -07:00
Scott Shawcroft
d4000023d8
Fix board def mistakes and cast 2023-09-20 11:45:45 -07:00
Dan Halbert
4d175ab41a convert to MP_DEFINED_CONST_OBJ_TYPE() 2023-09-19 21:09:29 -04:00
Dan Halbert
2c0fa0f7dc initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
Scott Shawcroft
e39fbf1b26
Merge pull request #8401 from jepler/i2c-expander-init
Fast(ish) special purpose bitbang spi over i2c
2023-09-18 13:19:49 -07:00
Scott Shawcroft
c86b3ae19f
Update to merged idf changes 2023-09-18 11:18:04 -07:00
Jeff Epler
faa6887050
Use faster bus & remove final delay
this pushes the LCD initialization down to about 1.3s.
2023-09-18 13:00:18 -05:00
Jeff Epler
67e15bb6a2
makerfabs_tft7: rename properties to match docs 2023-09-18 10:35:49 -05:00
Jeff Epler
75ba82cdb0
lcd_ev: add timings; rename TFT -> TFT_PINS 2023-09-18 10:35:36 -05:00
Jeff Epler
4c682262e6
lcd_ev: fix compile error 2023-09-18 10:35:05 -05:00
Scott Shawcroft
0547ef61f9
Update dotclock for IDF 5.0 2023-09-15 14:43:37 -07:00
Jeff Epler
2a78d16b54
add board.DISPLAY 2023-09-15 14:49:29 -05:00
Jeff Epler
68af5543af
set up display at reset (yayay!) 2023-09-15 14:46:28 -05:00
Jeff Epler
cff65bbbe2
esp32 lcd ev: fix pin assignments 2023-09-15 14:10:32 -05:00
Wind-stormger
970e61c8b4 Update bpi_leaf_s3 2023-09-15 02:20:46 +00:00
Scott Shawcroft
4087960dfd
Fix MDNS. C3 works 2023-09-14 15:04:07 -07:00
Scott Shawcroft
952118f6c3
Update new boards. Reduce memory use in S2 2023-09-14 11:19:38 -07:00
Scott Shawcroft
a3d37122a7
Fix PSRAM address 2023-09-13 11:40:09 -07:00
Scott Shawcroft
f357f4a3af
Size optimize 3 more boards 2023-09-13 11:40:09 -07:00
Scott Shawcroft
99726e255d
Switch to newlib nano 2023-09-13 11:40:09 -07:00
Scott Shawcroft
18fd0045f6
More kconfig updates 2023-09-13 11:40:09 -07:00
Scott Shawcroft
0a9ae1f6ba
Code size optimizations 2023-09-13 11:40:09 -07:00
Scott Shawcroft
cb6b4d0d4a
Fix esp-camera. 32 was dropped so the path doesn't have esp32 in it. 2023-09-13 11:40:09 -07:00
Scott Shawcroft
5937f4c0c0
Hopefully finish updating kconfig 2023-09-13 11:40:09 -07:00
Scott Shawcroft
2a45d95f9d
Use correct flash defaults 2023-09-13 11:40:09 -07:00
Scott Shawcroft
4b29862d30
Clean up more s2 sdkconfig 2023-09-13 11:40:08 -07:00
Scott Shawcroft
1ab083fab7
Support target specific kconfig source 2023-09-13 11:39:51 -07:00
Scott Shawcroft
73e04e84a2
Split out flash and psram settings from sdkconfig 2023-09-13 11:39:10 -07:00
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
f13edcc583
Merge pull request #8396 from tirtharajsinha/8.2.x
fixing the wrong rx,tx gpio related issue in 8.2.x for board waveshare-esp32-s3-pico
2023-09-13 12:05:32 -04:00
Tirtharaj Sinha
5191071d5d fixing the wrong rx,tx gpio related issue. 2023-09-13 20:44:40 +05:30
Dan Halbert
9f1d52601e merge from 8.2.x 2023-09-12 20:14:30 -04:00
Bill Sideris
9acc542957
Deinit all the pins. 2023-09-12 23:25:01 +03: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