Commit Graph

701 Commits

Author SHA1 Message Date
Dan Halbert
da7edf80e0
Merge pull request #7091 from MicroDev1/corpoc
Add `CoprocAlarm`
2022-10-21 13:36:01 -04:00
microDev
5b2728bd65
reorganize espressif mpconfigport.mk 2022-10-21 17:35:59 +05:30
microDev
2285dd1838
update espressif risc-v build configuration
- use optimization level O2
- explicitly state risc-v arch
2022-10-21 17:11:56 +05:30
microDev
b33a2b45dc
add coproc alarm 2022-10-20 18:38:20 +05:30
microDev
5232e3f6c3
add coproc module 2022-10-20 09:09:44 +05:30
microDev
fb91c2f436
cleanup sdkconfig-esp32.defaults
- remove log level: set by -opt or -debug sdkconfig
- remove lwip hostname: set by board specific sdkconfig
2022-10-17 22:05:20 +05:30
microDev
434c6d5604
fix uf2 bootloader condition in makefile 2022-10-17 19:45:48 +05:30
microDev
5114ae7a31
fix 2MB-no-uf2 partition table 2022-10-17 19:44:08 +05:30
microDev
f86377e0f1
fix 4MB-no-uf2 partition table 2022-10-17 19:42:41 +05:30
microDev
e7b25dbf73
improve dualbank errors 2022-10-15 13:20:10 +05:30
Dan Halbert
0ce84b27e8
Merge pull request #7053 from CytronTechnologies/add-pin-definitions-maker-feather-aiot-s3
Added Pin Definitions for Cytron Maker Feather AIoT S3
2022-10-14 11:31:53 -04:00
Kong Wai Weng
fc00a6675e Added some pin definitions to match with the Arduino core. 2022-10-14 17:25:24 +08:00
microDev
66b539d768
fix espressif log level 2022-10-14 11:33:10 +05:30
Dan Halbert
7e4b2a09eb
Merge pull request #7000 from MicroDev1/storage-extend
Add Storage Extension Support
2022-10-13 10:05:55 -04:00
microDev
728fea4ca4
add storage extension python api 2022-10-13 09:53:33 +05:30
Dan Halbert
822e806f03
Merge pull request #7031 from BPI-STEAM/CircuitPython-main-bpi-picow-dev
Add BananaPi BPI-PicoW-S3 .
2022-10-11 22:53:37 -04:00
Wind-stormger
376df8ec7e Add BananaPi BPI-PicoW-S3 .
Adds support for the BananaPi BPI-PicoW-S3 Boards.
Based on esp32s3 chip.
With one WS2812 LED, one monochrome LED, one ceramic antenna.
Support double-reset to tinyUF2.
2022-10-12 09:11:25 +08:00
Jeff Epler
c98174eea5
Add support for SSL client certificate (load_cert_chain)
Tested with badssl.com:

 1. Get client certificates from https://badssl.com/download/
 2. Convert public portion with `openssl x509 -in badssl.com-client.pem -out CIRCUITPY/cert.pem`
 3. Convert private portion with `openssl rsa -in badssl.com-client.pem -out CIRCUITPY/privkey.pem` and the password `badssl.com`
 4. Put wifi settings in CIRCUITPY/.env
 5. Run the below Python script:

```py
import os
import wifi
import socketpool
import ssl
import adafruit_requests

TEXT_URL = "https://client.badssl.com/"
wifi.radio.connect(os.getenv('WIFI_SSID'), os.getenv('WIFI_PASSWORD'))

pool = socketpool.SocketPool(wifi.radio)
context = ssl.create_default_context()
requests = adafruit_requests.Session(pool, context)

print(f"Fetching from {TEXT_URL} without certificate (should fail)")
response = requests.get(TEXT_URL)
print(f"{response.status_code=}, should be 400 Bad Request")
input("hit enter to continue\r")

print("Loading client certificate")
context.load_cert_chain("/cert.pem", "privkey.pem")
requests = adafruit_requests.Session(pool, context)

print(f"Fetching from {TEXT_URL} with certificate (should succeed)")
response = requests.get(TEXT_URL)
print(f"{response.status_code=}, should be 200 OK")
```
2022-10-10 15:10:53 -05:00
Dan Halbert
21c0c4c1a6 update esp-idf; allow start/stop channels in wifi scanning 2022-10-07 15:29:09 -04:00
Dan Halbert
8d82e4ba5f
Merge pull request #7008 from MicroDev1/patch
Cleanup `mpconfigboard.mk` of espressif boards
2022-10-06 11:20:11 -04:00
Dan Halbert
e0517c7379
Merge pull request #6999 from jepler/picow-ssl
pico_w: implement ssl with caveats
2022-10-06 10:51:36 -04:00
microDev
4f753251db
cleanup mpconfigboard.mk of espressif boards
- move `INTERNAL_FLASH_FILESYSTEM` to `mpconfigport.mk`
- move `LONGINT_IMPL` to `mpconfigport.mk`
- move `CFG_TUD_TASK_QUEUE_SZ` to `Makefile`
2022-10-06 16:15:01 +05:30
microDev
b0ef35d50b
update storage extension implementation 2022-10-06 09:19:56 +05:30
Dan Halbert
296960dd89 shorten board.c 2022-10-05 20:23:19 -04:00
Neradoc
d31acdef6c
we don't use AUTORESET_DELAY_MS 2022-10-06 02:19:48 +02:00
Jeff Epler
a64c1a11c5
move nina-fw certificates so it can be shared with other ports 2022-10-05 14:56:25 -05:00
Jeff Epler
09023abcd2
Update espressif function prototype to match 2022-10-05 14:56:25 -05:00
Kyle Mohr
dd5f9411c8
Merge branch 'adafruit:main' into main 2022-10-05 13:44:12 -05:00
Jeff Epler
dcb650c513 pico w: add ssl module
Note: at this time, the ssl module on pico_w never verifies the server
certificate. This means it does not actually provide a higher security
level than regular socket / http protocols.
2022-10-05 13:12:43 -04:00
microDev
2618e11002
use next update partition 2022-10-04 19:42:48 +05:30
microDev
9fe7308b88
conditionally add storage extension 2022-10-04 17:26:28 +05:30
microDev
7d8ff20dac
add initial storage extension support 2022-10-04 17:25:48 +05:30
Kyle Mohr
02e115cbc2
Update mpconfigboard.mk 2022-10-04 00:03:59 -05:00
Kyle Mohr
330b96726a add newlines to end of files 2022-10-04 04:56:31 +00:00
Kyle Mohr
5268ef01c9
Utilize VID/PID from native USB port 2022-10-03 23:45:28 -05:00
Kyle Mohr
cffc1bfcab
sdkconfig didn't get committed for some reason... 2022-10-03 22:54:31 -05:00
Kyle Mohr
a948dc399b add esp32-s2-devkitc-1-n8r2 variant 2022-10-04 03:51:51 +00:00
Dan Halbert
90f6096955 fix ai-thinker creation ids; fix some typos elsewhere 2022-10-03 15:29:03 -04:00
Dan Halbert
ad79f595a5
Merge pull request #6974 from MicroDev1/patch
Couple Minor Fixes
2022-10-01 13:12:01 -04:00
microDev
7eaeca4eb3
update espressif port's .gitignore 2022-10-01 09:14:48 +05:30
Dan Halbert
f9e655da47
Merge pull request #6962 from dhalbert/espressif-deep-sleep-hold-pins
Espressif: do not hold pins during deep sleep if not necessary
2022-09-30 22:20:44 -04:00
Jeff Epler
907c5d387f
Tweak black_bindings
Originally, black_bindings found each contiguous "//|" block and sent
it to black independently. This was slower than it needed to be.

Instead, swap the comment prefix: when running black, take off
"//|" prefixes and put "##|" prefixes on all un-prefixed lines.
Then, after black is run, do the opposite operation

This more than doubles the overall speed of "pre-commit run --all",
from 3m20s to 55s CPU time on my local machine (32.5s to under 10s
"elapsed" time)

It also causes a small amount of churn in the bindings, because
black now sees enough context to know whether one 'def' follows another
or ends the 'def's in a 'class'. In the latter case, it adds an extra
newline, which becomes a "//|" line.

I'm less sure why a trailing comma was omitted before down in
rp2pio/StateMachine.c but let's roll with it.
2022-09-30 11:18:13 -05:00
Dan Halbert
9d1b12066d Espressif: do not hold pins during deep sleep if not necessary 2022-09-29 20:11:48 -04:00
Dan Halbert
db065a299f
Merge pull request #6933 from jepler/🥧🐮
Implement a useful subset of `wifi` and `socketpool` modules on 🥧🐮
2022-09-28 18:09:24 -04:00
Jeff Epler
72bce51ce3
restore submodule commits 2022-09-28 14:48:54 -05:00
Jeff Epler
6c3cdceb45
Implement scan, connect, ping
My pings go out, and then they come back

```py
import os
import wifi
import ipaddress

wifi.radio.connect(os.getenv('WIFI_SSID'), os.getenv('WIFI_PASSWORD'))
ipv4 = ipaddress.ip_address("8.8.4.4")
print("Ping google.com: %f ms" % (wifi.radio.ping(ipv4)*1000))
```
2022-09-28 10:06:33 -05:00
Jeff Epler
346fff2e7c
cyw43 basic gpio support, hwaddr in boot_out 2022-09-28 10:06:33 -05:00
Jeff Epler
b2cc8d2aad
run black_bindings across all bindings 2022-09-27 15:21:42 -05:00
Dan Halbert
de80db681f
Merge pull request #6915 from dhalbert/ringbuf-cleanup
ringbuf cleanup
2022-09-25 17:50:21 -04:00
Dan Halbert
d44edc4a0c
Merge pull request #6937 from jepler/issue6839
Use new unique ID for this board
2022-09-24 23:55:06 -04:00
Jeff Epler
f12136af7f
esp32-camera: sync doc with code.
Closes: #6836
2022-09-23 08:54:00 -05:00
Jeff Epler
5bbbca4d44
lock and unlock i2c bus around any ops that might access it 2022-09-22 17:03:05 -05:00
Jeff Epler
a769beed3f
Use new unique ID for this board 2022-09-22 16:23:38 -05:00
Dan Halbert
ea15a9118a ringbuf cleanup 2022-09-21 10:03:05 -04:00
Jeff Epler
1091d51af2
Merge pull request #6918 from UnexpectedCircuitPython/main
Added support for Unexpected Maker TinyPICO (V2/V3) and TinyPICO Nano
2022-09-17 21:39:17 -04:00
Seon Rozenblum
268b3f0dde Added support for Unexpected Maker TinyPICO (V2/V3) and TinyPICO Nano boards using ESP32-PICO-D4 2022-09-18 09:49:30 +10:00
Paul Price
b2ffda219a
updated a pin definition 2022-09-17 16:53:24 -04:00
MicroDev
4a69dfa50c
Merge pull request #6907 from dhalbert/preserve-pins-on-deep-sleep
allow preserving pin state during deep sleep
2022-09-16 17:52:04 +05:30
Dan Halbert
4df8a51982 Remove unneeded workaround for Feather ESP32-S2 TFT 2022-09-15 20:06:47 -04:00
Dan Halbert
60f43b1703 allow preserving pin state during deep sleep 2022-09-15 17:35:14 -04:00
Wind-stormger
56c5f1eedf Add BananaPi BPI-Leaf-S3.
Based on esp32s3, all available pins are drawn.
2M PSRAM, 8M FLASH.
A JST SH 4-pin Connector can be used for STEMMA QT / Qwiic.
A MX 1.25mm 2-Pin Connector Lithium battery power supply.
A WS2812 LED.
2022-09-15 14:18:24 +08:00
Dan Halbert
14fc4a0797
Merge pull request #6898 from dhalbert/espressif-pwmout-reset
Espressif pwmout reset fixes
2022-09-14 18:47:05 -04:00
Dan Halbert
ae64f9fd78
Merge pull request #6899 from BPI-STEAM/CircuitPython-main-BPI-BIT-S2-PR
Add BananaPi BPI-Bit-S2 .
2022-09-13 23:02:46 -04:00
Wind-stormger
6f4cc611ed Add BananaPi BPI-Bit-S2 .
Adds support for the BananaPi BPI-Bit-S2 Boards.
Based on esp32s2 chip.
With 25 ws2812 LEDs, 1 buzzer, 2 photosensitive sensors, 1 thermosensitive sensor,
2 buttons on the front, 1 reset button and 1 boot button on the back.
2022-09-14 10:21:23 +08:00
Dan Halbert
2b25a5d574 update esp32-camera 2022-09-13 13:16:37 -04:00
Dan Halbert
14adfb16dd avoid pwmout_reset() workaround by reordering in main(); remove unnecessary never-resets 2022-09-12 21:32:21 -04:00
Dan Halbert
d0d10179c2 fix logic in pwmout_reset() 2022-09-12 17:03:45 -04:00
Kong Wai Weng
c157f1cb39 Cast pin_number to int8_t so that it can be used with switch-case. 2022-09-12 18:56:15 +08:00
Kong Wai Weng
0ae015e4d9 Removed whitespaces. 2022-09-12 18:25:27 +08:00
Kong Wai Weng
aaa2be1200 Set the default pin state for GPIOs to pull down. 2022-09-12 18:19:33 +08:00
microDev
36221bd749
update board microdev_micro_c3 2022-09-11 13:31:38 +05:30
microDev
8cd4b9fc04 fix espressif run modes 2022-09-10 18:08:09 +05:30
Kong Wai Weng
2fbb3090e2 Changed the pins assignment. 2022-09-09 16:50:14 +08:00
Dan Halbert
dd37c81136
Merge pull request #6847 from dhalbert/status-bar-control
Allow enabling and disabling of status bar
2022-09-08 10:48:36 -04:00
Dan Halbert
58b00467c4
Merge pull request #6878 from dhalbert/weak-board-defs
Use MP_WEAK for default board.c routines
2022-09-08 10:47:08 -04:00
Dan Halbert
4cb69a51d5 Use MP_WEAK for default board.c routines 2022-09-08 07:36:50 -04:00
Seon Rozenblum
6c4f352533 Fixed incorrect IO naming for ProS3 and FeatherS3 2022-09-07 19:51:45 +10:00
Dan Halbert
14498f793d
Merge pull request #6859 from wemos/s3_cpython
Add LOLIN S3 ESP32-S3 board.
2022-09-04 13:10:52 -04:00
bill88t
ca7fb6dede removal of sda-scl and add "GP" to 40,41 2022-09-04 18:05:50 +03:00
bill88t
e1891038c8 Forgor the one IO pin and sda-scl 2022-09-04 16:59:56 +03:00
wemos
3a18d285a2 Add LOLIN S3 ESP32-S3 board. 2022-09-03 11:06:51 +08:00
Dan Halbert
52080e24eb status bar control 2022-08-30 15:23:44 -04:00
Jeff Epler
2c6f57be5e
Update ports/espressif/common-hal/esp32_camera/Camera.c
Co-authored-by: Mark <56205165+gamblor21@users.noreply.github.com>
2022-08-28 16:46:50 -05:00
Jeff Epler
dc27fb967d error at runtime if no psram actually reserved 2022-08-26 09:27:50 -05:00
Jeff Epler
9f22e75e5e error if camera is configured but no psram 2022-08-26 09:27:50 -05:00
Jeff Epler
8ed6a6135a Disable camera on boards without psram 2022-08-26 09:27:50 -05:00
Scott Shawcroft
2f0e209eca
Merge pull request #6772 from dhalbert/esp32-touch-fix
Fix ESP32 touch; rework common code a bit
2022-08-17 10:24:22 -07:00
Dan Halbert
2bc8d73776 Fix ESP32 touch; rework common code a bit 2022-08-16 20:04:27 -04:00
Martin
528da05f54 Add Waveshare ESP32-S2-Pico-LCD 2022-08-15 16:46:14 +02:00
lady ada
2f2ccdddbf pycam rev b pins 2022-08-13 23:41:35 -04:00
MicroDev
fa3e265bfb
Merge pull request #6753 from tannewt/esp_led_reset
Audit all boards with LED pins defined
2022-08-13 15:25:02 +05:30
Scott Shawcroft
df1435ae94
Audit all boards with LED pins defined
Add them as MICROPY_HW_LED_STATUS so that we can share reset code
for them. They aren't actually used for the status if another RGB
option is available. (But maybe they should be.)

Fixes #6717
2022-08-11 14:41:20 -07:00
Scott Shawcroft
5823bcc744
Merge branch 'main' into c3_short_send 2022-08-11 12:45:02 -07:00
Scott Shawcroft
f1053fb963
Introduce port_yield()
This allows the web workflow send code to yield briefly when
waiting for more room to send in a socket. Waiting for an "interrupt"
could wait forever because the select task only waits for read and
error. Adding wait on write is tricky because much of the time we
don't care if the sockets are ready to write. Using yield avoids
this trickiness.
2022-08-11 11:25:34 -07:00
Scott Shawcroft
f9d724c09e
Fix retries after successful connection.
We may have set retries to 0 to enforce a timeout but the connect
succeeded. When it succeeds, we want to allow retries later in
case we lose signal briefly. (The callback will do this too but
the connect function will override it after.)

Also, remove extra code from websocket that is leftover from
debugging.
2022-08-10 15:24:08 -07:00
Jeff Epler
c2a45c1f27
Merge pull request #6739 from jepler/qrio-esp32camera
Enable qrio to work with rgb565 data, including byte-swapped data
2022-08-10 13:54:40 -05:00
Scott Shawcroft
7a5d2e81fc
Merge pull request #6734 from dhalbert/remove-autobrightness
Remove support for auto-brightness
2022-08-10 10:22:53 -07:00
Jeff Epler
86f9d98a5d fix documentation of framebuffer_count 2022-08-10 11:12:54 -05:00
Dan Halbert
af64faae1e switch back one I2C message 2022-08-10 12:06:43 -04:00
Dan Halbert
198c8fea11 merge from upstream and fix espressif_esp32s3_eye 2022-08-10 08:43:08 -04:00