Commit Graph

10627 Commits

Author SHA1 Message Date
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
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
Bob Abeles 79edcbe97d second instance of misspelled 'unaligned' 2023-09-07 09:25:02 -07:00
Bob Abeles 1e178318cf review update, add RP2040 example 2023-09-06 19:59:40 -07:00
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
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
Bob Abeles 1648a3db1e Fix IO register stores of multiple words 2023-09-01 11:23:30 -07:00
Jeff Epler 84aadf3a64
Update TFT experiment for rev b 2023-09-01 12:58:00 -05:00
Bob Abeles ab59e36613 Correct problems found by CI 2023-09-01 08:34:53 -07: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
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 337b800ceb
Merge pull request #7151 from fonix232/feature/waveshare_rp2040_plus_support
feat: Add support for Waveshare RP2040-Plus
2023-08-29 13:00:37 -07:00
Scott Shawcroft 66bd679a64
Merge pull request #8323 from RetiredWizard/dvbaseW
Pimoroni PICO DV Base w/Pico W (network disabled)
2023-08-29 12:59:11 -07:00
Scott Shawcroft 3605d891de
Merge pull request #8338 from pypewpew/async-samd21
Allow enabling async on samd21
2023-08-28 12:56:38 -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
Scott Shawcroft 2eb62f8238
Merge pull request #8305 from cleverca22/move-stack
raise kernel load addr and slip stack under kernel on both 32bit and 64bit
2023-08-28 12:52:38 -07: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
Radomir Dopieralski 34cb5f6dc0
Merge branch 'main' into async-samd21 2023-08-27 19:33:27 +02:00
Radomir Dopieralski 55fbbdcb52 Allow enabling async on samd21
It was just disabled, possibly because of size considerations, but it's
useful to be able to enable it explicitly for selected boards.

This requires some of the settings to use ?= instead of =, and fixing
a bug in the traceback module, where the chain variable is unused if
exception chaining is not enabled.
2023-08-27 19:28:44 +02:00
RetiredWizard 9eb61ef667 Enable WiFi, leave DV enable to usercode 2023-08-26 11:00:37 -04:00
Scott Shawcroft c395e1f9f7
Merge pull request #8332 from pypewpew/ugame22
Add new board uGame22
2023-08-25 13:22:16 -07:00
Michael Bishop 8d25faf30a raise kernel load addr and slip stack under kernel on both 32bit and 64bit 2023-08-25 15:56:40 -03:00
Radomir Dopieralski b9b04fcefa Add new board uGame22
Information about the board:
https://hackaday.io/project/186921-game-22

Hardware design repository:
https://github.com/python-ugame/ugame-22
2023-08-25 19:26:30 +02:00
Scott Shawcroft 233cf7fc6d
Merge pull request #8326 from bill88t/picow-stop-ap
Pico W wifi code improvements.
2023-08-25 09:49:04 -07:00
Scott Shawcroft ab70f8eace
Merge remote-tracking branch 'adafruit/main' into i2s_mclk 2023-08-24 15:07:14 -07:00