diff --git a/README.rst b/README.rst index 3c169a96ed36..642a55dfb9f4 100644 --- a/README.rst +++ b/README.rst @@ -223,24 +223,10 @@ Ports Ports include the code unique to a microcontroller line. -================ ============================================================ -Supported Support status -================ ============================================================ -atmel-samd ``SAMD21`` stable | ``SAMD51`` stable -cxd56 stable -espressif ``ESP32`` beta | ``ESP32-C3`` beta | ``ESP32-S2`` stable | ``ESP32-S3`` beta -litex alpha -mimxrt10xx alpha -nordic stable -raspberrypi stable -silabs (efr32) alpha -stm ``F4`` stable | ``others`` beta -unix alpha -================ ============================================================ - -- ``stable`` Highly unlikely to have bugs or missing functionality. -- ``beta`` Being actively improved but may be missing functionality and have bugs. -- ``alpha`` Will have bugs and missing functionality. +The following ports are available: ``atmel-samd``, ``cxd56``, ``espressif``, ``litex``, ``mimxrt10xx``, ``nordic``, ``raspberrypi``, ``renode``, ``silabs`` (``efr32``), ``stm``, ``unix``. + +However, not all ports are fully functional. Some have limited limited functionality and known serious bugs. +For details, refer to the **Port status** section in the `latest release `__ notes. Boards ~~~~~~ diff --git a/locale/ID.po b/locale/ID.po index 000cd715b99a..c6162f7ef86a 100644 --- a/locale/ID.po +++ b/locale/ID.po @@ -116,7 +116,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q sedang digunakan" @@ -1122,10 +1122,12 @@ msgstr "" msgid "Input/output error" msgstr "Kesalahan input/output" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Otentikasi tidak cukup" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Enkripsi tidak cukup" @@ -1162,6 +1164,7 @@ msgstr "Kesalahan internal #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1293,6 +1296,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2159,6 +2166,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3832,7 +3840,7 @@ msgstr "Muncul dari PulseIn yang kosong" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/cs.po b/locale/cs.po index 21e2ca0323f2..2ebbab940426 100644 --- a/locale/cs.po +++ b/locale/cs.po @@ -124,7 +124,7 @@ msgstr "%q v %q musí být typu %q, ne %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q se právě používá" @@ -1134,10 +1134,12 @@ msgstr "Vstup trval příliš dlouho" msgid "Input/output error" msgstr "Chyba vstupu/výstupu" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Nedostatečná autentizace" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Nedostatečné šifrování" @@ -1174,6 +1176,7 @@ msgstr "Vnitřní chyba #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1305,6 +1308,10 @@ msgstr "Vrstva musí být Group nebo TileGrid" msgid "MAC address was invalid" msgstr "MAC adresa byla chybná" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2165,6 +2172,7 @@ msgstr "Neznámá chyba BLE na %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Neznámá chyba BLE: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3841,7 +3849,7 @@ msgstr "" msgid "pop from empty %q" msgstr "pop z prázdného %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "port musí být >= 0" diff --git a/locale/de_DE.po b/locale/de_DE.po index 412f2a6ccf28..db3a52504267 100644 --- a/locale/de_DE.po +++ b/locale/de_DE.po @@ -126,7 +126,7 @@ msgstr "%q in %q muss von Typ %q sein, nicht %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q in Benutzung" @@ -1145,10 +1145,12 @@ msgstr "Input benötigt zu lange" msgid "Input/output error" msgstr "Eingabe-/Ausgabefehler" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Unzureichende Authentifizierung" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Unzureichende Verschlüsselung" @@ -1185,6 +1187,7 @@ msgstr "Interner Fehler #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1316,6 +1319,10 @@ msgstr "Ebene muss eine Gruppe oder eine TileGrid Subklasse sein" msgid "MAC address was invalid" msgstr "MAC Adresse war ungültig" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Zuordnung muss ein Tupel sein" @@ -2191,6 +2198,7 @@ msgstr "Unbekannter BLE-Fehler bei %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Unbekannter BLE-Fehler: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3898,7 +3906,7 @@ msgstr "pop von einem leeren PulseIn" msgid "pop from empty %q" msgstr "Pop aus leerem %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "Port muss >= 0 sein" diff --git a/locale/el.po b/locale/el.po index 1ac3c85fc0d3..621ceaabfd79 100644 --- a/locale/el.po +++ b/locale/el.po @@ -128,7 +128,7 @@ msgstr "%q στο %q πρέπει να είναι τύπου %q, όχι %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q είναι σε χρήση" @@ -1140,10 +1140,12 @@ msgstr "" msgid "Input/output error" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "" @@ -1180,6 +1182,7 @@ msgstr "" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1311,6 +1314,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2167,6 +2174,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3838,7 +3846,7 @@ msgstr "" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/en_GB.po b/locale/en_GB.po index 025504633275..672226e4ea00 100644 --- a/locale/en_GB.po +++ b/locale/en_GB.po @@ -126,7 +126,7 @@ msgstr "%q in %q must be of type %q, not %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q in use" @@ -1133,10 +1133,12 @@ msgstr "Input taking too long" msgid "Input/output error" msgstr "Input/output error" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Insufficient authentication" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Insufficient encryption" @@ -1173,6 +1175,7 @@ msgstr "Internal error #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1304,6 +1307,10 @@ msgstr "Layer must be a Group or TileGrid subclass" msgid "MAC address was invalid" msgstr "MAC address was invalid" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Mapping must be a tuple" @@ -2167,6 +2174,7 @@ msgstr "Unknown BLE error at %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Unknown BLE error: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3848,7 +3856,7 @@ msgstr "pop from an empty PulseIn" msgid "pop from empty %q" msgstr "pop from empty %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "port must be >= 0" diff --git a/locale/es.po b/locale/es.po index fb96f629bc39..b7787786d422 100644 --- a/locale/es.po +++ b/locale/es.po @@ -128,7 +128,7 @@ msgstr "%q en %q debe ser del tipo %q, no %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q está siendo utilizado" @@ -1153,10 +1153,12 @@ msgstr "La entrada está durando mucho tiempo" msgid "Input/output error" msgstr "error Input/output" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Autenticación insuficiente" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Cifrado insuficiente" @@ -1193,6 +1195,7 @@ msgstr "Error interno #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1324,6 +1327,10 @@ msgstr "El Layer debe ser un grupo o una subclase de TileGrid" msgid "MAC address was invalid" msgstr "La dirección MAC es incorrecta" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "El mapping debe ser una dupla" @@ -2198,6 +2205,7 @@ msgstr "Error BLE desconocido en %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Error BLE desconocido: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3887,7 +3895,7 @@ msgstr "pop de un PulseIn vacío" msgid "pop from empty %q" msgstr "pop desde %q vacía" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "port debe ser be >= 0" diff --git a/locale/fil.po b/locale/fil.po index 1872a7ac482a..d7df8a28cbde 100644 --- a/locale/fil.po +++ b/locale/fil.po @@ -114,7 +114,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q ay ginagamit" @@ -1124,10 +1124,12 @@ msgstr "" msgid "Input/output error" msgstr "May mali sa Input/Output" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "" @@ -1164,6 +1166,7 @@ msgstr "" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1295,6 +1298,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2153,6 +2160,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3838,7 +3846,7 @@ msgstr "pop mula sa walang laman na PulseIn" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/fr.po b/locale/fr.po index 88b819d8636b..df20ca2bad0a 100644 --- a/locale/fr.po +++ b/locale/fr.po @@ -129,7 +129,7 @@ msgstr "%q dans %q doit être de type %q, pas %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q en cours d'utilisation" @@ -1162,10 +1162,12 @@ msgstr "L'entrée prend trop de temps" msgid "Input/output error" msgstr "Erreur d'entrée/sortie" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Authentification insuffisante" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Chiffrement insuffisant" @@ -1202,6 +1204,7 @@ msgstr "Erreur interne #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1333,6 +1336,10 @@ msgstr "Le calque doit être une sous-classe de Group ou TileGrid" msgid "MAC address was invalid" msgstr "Adresse physique (MAC) invalide" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Le mapping doit être un tuple" @@ -2215,6 +2222,7 @@ msgstr "Erreur BLE inconnue à %s:%d : %d" msgid "Unknown BLE error: %d" msgstr "Erreur BLE inconnue : %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3919,7 +3927,7 @@ msgstr "'pop' d'une entrée PulseIn vide" msgid "pop from empty %q" msgstr "pop sur %q vide" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "port doit être >= 0" diff --git a/locale/hi.po b/locale/hi.po index 7d8e3deea65a..c133a559337e 100644 --- a/locale/hi.po +++ b/locale/hi.po @@ -115,7 +115,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "" @@ -1116,10 +1116,12 @@ msgstr "" msgid "Input/output error" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "" @@ -1156,6 +1158,7 @@ msgstr "" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1287,6 +1290,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2141,6 +2148,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3812,7 +3820,7 @@ msgstr "" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/it_IT.po b/locale/it_IT.po index 444224ff857b..1cd44cf1a26a 100644 --- a/locale/it_IT.po +++ b/locale/it_IT.po @@ -117,7 +117,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q in uso" @@ -1124,10 +1124,12 @@ msgstr "" msgid "Input/output error" msgstr "Errore input/output" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "" @@ -1164,6 +1166,7 @@ msgstr "" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1295,6 +1298,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2155,6 +2162,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3844,7 +3852,7 @@ msgstr "pop sun un PulseIn vuoto" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/ja.po b/locale/ja.po index 63368c8a851c..8830833be1a1 100644 --- a/locale/ja.po +++ b/locale/ja.po @@ -126,7 +126,7 @@ msgstr "%q 内の %q は %q 型である必要があり、 %q 型は使用でき #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%qは使用中" @@ -1133,10 +1133,12 @@ msgstr "" msgid "Input/output error" msgstr "入力/出力エラー" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "認証が不十分" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "暗号化が不十分" @@ -1173,6 +1175,7 @@ msgstr "内部エラー #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1304,6 +1307,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2164,6 +2171,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3840,7 +3848,7 @@ msgstr "" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/ko.po b/locale/ko.po index cd45202e7c76..89dcda27fd1b 100644 --- a/locale/ko.po +++ b/locale/ko.po @@ -126,7 +126,7 @@ msgstr "%q의 %q는 %q가 아니라 %q 유형이어야 합니다" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q 사용 중입니다" @@ -1168,10 +1168,12 @@ msgstr "입력이 너무 오래 걸린다" msgid "Input/output error" msgstr "입력/출력 오류" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "불충분한 인증" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "불충분한 암호화" @@ -1208,6 +1210,7 @@ msgstr "내부 오류 #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1339,6 +1342,10 @@ msgstr "레이어는 그룹 또는 TileGrid 하위 클래스 여야 합니다" msgid "MAC address was invalid" msgstr "MAC 주소는 잘못되었습니다" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "매핑은 투플이어야 합니다" @@ -2219,6 +2226,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3890,7 +3898,7 @@ msgstr "" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/nl.po b/locale/nl.po index 00528e35cbe3..71125881a9c3 100644 --- a/locale/nl.po +++ b/locale/nl.po @@ -113,7 +113,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q in gebruik" @@ -1119,10 +1119,12 @@ msgstr "Invoer duurt te lang" msgid "Input/output error" msgstr "Input/Output fout" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Onvoldoende authenticatie" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Onvoldoende encryptie" @@ -1159,6 +1161,7 @@ msgstr "Interne fout #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1290,6 +1293,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2155,6 +2162,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3836,7 +3844,7 @@ msgstr "pop van een lege PulseIn" msgid "pop from empty %q" msgstr "pop van een lege %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/pl.po b/locale/pl.po index d0c18bc148b4..91ff5339ffa1 100644 --- a/locale/pl.po +++ b/locale/pl.po @@ -121,7 +121,7 @@ msgstr "%q w %q musi być typu %q, a nie %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q w użyciu" @@ -1138,10 +1138,12 @@ msgstr "" msgid "Input/output error" msgstr "Błąd I/O" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Niewystarczające uwierzytelnienie" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Niewystarczające szyfrowanie" @@ -1178,6 +1180,7 @@ msgstr "Błąd wewnętrzny #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1309,6 +1312,10 @@ msgstr "" msgid "MAC address was invalid" msgstr "" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "" @@ -2169,6 +2176,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3844,7 +3852,7 @@ msgstr "pop z pustego PulseIn" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/pt_BR.po b/locale/pt_BR.po index 0670c9df12f3..d3a460122a28 100644 --- a/locale/pt_BR.po +++ b/locale/pt_BR.po @@ -126,7 +126,7 @@ msgstr "%q em %q deve ser do tipo %q e não %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q em uso" @@ -1149,10 +1149,12 @@ msgstr "A entrada está demorando demais" msgid "Input/output error" msgstr "Erro de entrada/saída" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Autenticação insuficiente" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Criptografia insuficiente" @@ -1189,6 +1191,7 @@ msgstr "Erro interno #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1320,6 +1323,10 @@ msgstr "A camada deve ser uma subclasse Group ou TileGrid" msgid "MAC address was invalid" msgstr "O endereço MAC era inválido" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "O mapeamento deve ser uma tupla" @@ -2199,6 +2206,7 @@ msgstr "Houve um erro BLE desconhecido em %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Houve um erro BLE desconhecido: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3899,7 +3907,7 @@ msgstr "pop a partir de um PulseIn vazio" msgid "pop from empty %q" msgstr "pop a partir do %q vazio" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "a porta deve ser > = 0" diff --git a/locale/ru.po b/locale/ru.po index d4de92ac6c21..508060db73ec 100644 --- a/locale/ru.po +++ b/locale/ru.po @@ -128,7 +128,7 @@ msgstr "%q в %q должно быть типа %q, а не %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q используется" @@ -1160,10 +1160,12 @@ msgstr "Ввод занимает слишком много времени" msgid "Input/output error" msgstr "Ошибка ввода/вывода" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Неполная аутентификация" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Недостаточное шифрование" @@ -1200,6 +1202,7 @@ msgstr "Внутренняя ошибка #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1331,6 +1334,10 @@ msgstr "Слой должен быть группой (Group) или субкл msgid "MAC address was invalid" msgstr "MAC адрес был недействительным" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Сопоставление должно быть кортежом" @@ -2205,6 +2212,7 @@ msgstr "Неизвестная ошибка BLE в %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Неизвестная ошибка BLE: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3923,7 +3931,7 @@ msgstr "вытолкнуть из пустого импульсного вход msgid "pop from empty %q" msgstr "Всплывающее окно из пустого %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "порт должен быть >= 0" diff --git a/locale/sv.po b/locale/sv.po index 2b64d61e22ea..cba644bcb29d 100644 --- a/locale/sv.po +++ b/locale/sv.po @@ -125,7 +125,7 @@ msgstr "%q i %q måste vara av typen %q, inte %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q används redan" @@ -1141,10 +1141,12 @@ msgstr "Indata tar för lång tid" msgid "Input/output error" msgstr "Indata-/utdatafel" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Otillräcklig autentisering" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Otillräcklig kryptering" @@ -1181,6 +1183,7 @@ msgstr "Internt fel #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1312,6 +1315,10 @@ msgstr "Layer måste vara en underklass av Group eller TileGrid" msgid "MAC address was invalid" msgstr "MAC-adressen var ogiltig" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Mappning måste vara en tuple" @@ -2178,6 +2185,7 @@ msgstr "Okänt BLE-fel vid %s:%d: %d" msgid "Unknown BLE error: %d" msgstr "Okänt BLE-fel: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3863,7 +3871,7 @@ msgstr "pop från en tom PulseIn" msgid "pop from empty %q" msgstr "pop från tom %q" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "port måste vara >= 0" diff --git a/locale/tr.po b/locale/tr.po index 35b42151a14c..3ae980b37c59 100644 --- a/locale/tr.po +++ b/locale/tr.po @@ -121,7 +121,7 @@ msgstr "" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q kullanımda" @@ -1129,10 +1129,12 @@ msgstr "Giriş çok uzun sürüyor" msgid "Input/output error" msgstr "Giriş/çıkış hatası" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Yetersiz kimlik doğrulama" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Yetersiz şifreleme" @@ -1169,6 +1171,7 @@ msgstr "Dahili hata #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1301,6 +1304,10 @@ msgstr "Katman, bir Grup ya da TileGrid alt sınıfı olmalıdır" msgid "MAC address was invalid" msgstr "MAC adresi geçersiz" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "Map tuple olmalıdır" @@ -2158,6 +2165,7 @@ msgstr "" msgid "Unknown BLE error: %d" msgstr "" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3829,7 +3837,7 @@ msgstr "" msgid "pop from empty %q" msgstr "" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "" diff --git a/locale/zh_Latn_pinyin.po b/locale/zh_Latn_pinyin.po index 49e662a00ac1..b9c4f34b86cf 100644 --- a/locale/zh_Latn_pinyin.po +++ b/locale/zh_Latn_pinyin.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: circuitpython-cn\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-01-04 12:55-0600\n" -"PO-Revision-Date: 2024-05-05 18:07+0000\n" +"PO-Revision-Date: 2024-06-14 15:02+0000\n" "Last-Translator: hexthat \n" "Language-Team: Chinese Hanyu Pinyin\n" "Language: zh_Latn_pinyin\n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.5.3\n" +"X-Generator: Weblate 5.6-dev\n" #: main.c msgid "" @@ -127,7 +127,7 @@ msgstr "%q zhōng de %q bì xū shì %q lèi xíng, ér bù shì %q" #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/usb_host/Port.c #: shared-bindings/digitalio/DigitalInOut.c -#: shared-bindings/microcontroller/Pin.c +#: shared-bindings/microcontroller/Pin.c shared-module/max3421e/Max3421E.c msgid "%q in use" msgstr "%q zhèngzài bèi shǐyòng" @@ -1147,10 +1147,12 @@ msgstr "Shūrù shíjiānguò zhǎng" msgid "Input/output error" msgstr "Shūrù/shūchū cuòwù" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient authentication" msgstr "Rènzhèng bùzú" +#: ports/espressif/common-hal/_bleio/__init__.c #: ports/nordic/common-hal/_bleio/__init__.c msgid "Insufficient encryption" msgstr "Jiāmì bùzú" @@ -1187,6 +1189,7 @@ msgstr "nèi bù cuò wù #%d" #: ports/atmel-samd/common-hal/alarm/pin/PinAlarm.c #: ports/atmel-samd/common-hal/countio/Counter.c #: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c +#: ports/atmel-samd/common-hal/max3421e/Max3421E.c #: ports/atmel-samd/common-hal/ps2io/Ps2.c #: ports/atmel-samd/common-hal/pulseio/PulseIn.c #: ports/atmel-samd/common-hal/rotaryio/IncrementalEncoder.c @@ -1318,6 +1321,10 @@ msgstr "tú céng bìxū shì zǔ huò píng pū wǎng gé zi lèi" msgid "MAC address was invalid" msgstr "MAC dì zhǐ wú xiào" +#: ports/espressif/common-hal/_bleio/Characteristic.c +msgid "MITM security not supported" +msgstr "bù zhīchí MITM ānquánxìng" + #: shared-bindings/is31fl3741/IS31FL3741.c msgid "Mapping must be a tuple" msgstr "yìng shè bì xū shì yuán zǔ" @@ -2184,6 +2191,7 @@ msgstr "%s:%d: %d chù chū xiàn wèi zhī BLE cuò wù" msgid "Unknown BLE error: %d" msgstr "wèi zhī de BLE cuò wù: %d" +#: ports/espressif/common-hal/max3421e/Max3421E.c #: ports/raspberrypi/common-hal/wifi/__init__.c #, c-format msgid "Unknown error code %d" @@ -3869,7 +3877,7 @@ msgstr "cóng kōng mài chōng tán chū" msgid "pop from empty %q" msgstr "cóng kōng %q dànchū" -#: shared-bindings/socketpool/Socket.c shared-bindings/ssl/SSLSocket.c +#: shared-bindings/socketpool/Socket.c msgid "port must be >= 0" msgstr "duān kǒu bì xū wéi >= 0" diff --git a/ports/espressif/Makefile b/ports/espressif/Makefile index 629376add113..9f2c32e412ba 100644 --- a/ports/espressif/Makefile +++ b/ports/espressif/Makefile @@ -407,7 +407,11 @@ ifeq ($(UF2_BOOTLOADER), 1) FLASH_SIZE_SDKCONFIG ?= esp-idf-config/sdkconfig-flash-$(CIRCUITPY_ESP_FLASH_SIZE).defaults else ifeq ($(CIRCUITPY_ESP_FLASH_SIZE), 4MB) - FLASH_SIZE_SDKCONFIG ?= esp-idf-config/sdkconfig-flash-$(CIRCUITPY_ESP_FLASH_SIZE)-no-ota-no-uf2.defaults + ifeq ($(CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT), 1) + FLASH_SIZE_SDKCONFIG ?= esp-idf-config/sdkconfig-flash-$(CIRCUITPY_ESP_FLASH_SIZE)-no-uf2.defaults + else + FLASH_SIZE_SDKCONFIG ?= esp-idf-config/sdkconfig-flash-$(CIRCUITPY_ESP_FLASH_SIZE)-no-ota-no-uf2.defaults + endif else FLASH_SIZE_SDKCONFIG ?= esp-idf-config/sdkconfig-flash-$(CIRCUITPY_ESP_FLASH_SIZE)-no-uf2.defaults endif diff --git a/ports/espressif/boards/01space_lcd042_esp32c3/mpconfigboard.mk b/ports/espressif/boards/01space_lcd042_esp32c3/mpconfigboard.mk index 887fdf286d7c..f0067c0d22b4 100644 --- a/ports/espressif/boards/01space_lcd042_esp32c3/mpconfigboard.mk +++ b/ports/espressif/boards/01space_lcd042_esp32c3/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/adafruit_huzzah32_breakout/mpconfigboard.mk b/ports/espressif/boards/adafruit_huzzah32_breakout/mpconfigboard.mk index 36639e0313b1..24909715b970 100644 --- a/ports/espressif/boards/adafruit_huzzah32_breakout/mpconfigboard.mk +++ b/ports/espressif/boards/adafruit_huzzah32_breakout/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/adafruit_qtpy_esp32c3/mpconfigboard.mk b/ports/espressif/boards/adafruit_qtpy_esp32c3/mpconfigboard.mk index de5ad5d7cbc2..4063a6395226 100644 --- a/ports/espressif/boards/adafruit_qtpy_esp32c3/mpconfigboard.mk +++ b/ports/espressif/boards/adafruit_qtpy_esp32c3/mpconfigboard.mk @@ -7,10 +7,7 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/ai_thinker_esp32-c3s/mpconfigboard.mk b/ports/espressif/boards/ai_thinker_esp32-c3s/mpconfigboard.mk index d1313a82c7f3..f907853f2382 100644 --- a/ports/espressif/boards/ai_thinker_esp32-c3s/mpconfigboard.mk +++ b/ports/espressif/boards/ai_thinker_esp32-c3s/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 diff --git a/ports/espressif/boards/beetle-esp32-c3/mpconfigboard.mk b/ports/espressif/boards/beetle-esp32-c3/mpconfigboard.mk index 16159905ba9f..a03e6c32eb2c 100644 --- a/ports/espressif/boards/beetle-esp32-c3/mpconfigboard.mk +++ b/ports/espressif/boards/beetle-esp32-c3/mpconfigboard.mk @@ -8,9 +8,6 @@ CIRCUITPY_ESP_FLASH_MODE=qio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/deneyap_kart/mpconfigboard.mk b/ports/espressif/boards/deneyap_kart/mpconfigboard.mk index 59a5748ab7d9..df54649ec529 100644 --- a/ports/espressif/boards/deneyap_kart/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_kart/mpconfigboard.mk @@ -11,7 +11,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/deneyap_kart_1a/mpconfigboard.mk b/ports/espressif/boards/deneyap_kart_1a/mpconfigboard.mk index 4bc7133c24a9..17dfe4fe7686 100644 --- a/ports/espressif/boards/deneyap_kart_1a/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_kart_1a/mpconfigboard.mk @@ -11,7 +11,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/deneyap_kart_1a_v2/mpconfigboard.mk b/ports/espressif/boards/deneyap_kart_1a_v2/mpconfigboard.mk index 16686a212013..cb994090192b 100644 --- a/ports/espressif/boards/deneyap_kart_1a_v2/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_kart_1a_v2/mpconfigboard.mk @@ -14,10 +14,7 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = opi CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_BITMAPFILTER = 0 diff --git a/ports/espressif/boards/deneyap_kart_g/mpconfigboard.mk b/ports/espressif/boards/deneyap_kart_g/mpconfigboard.mk index dd721a53f5ad..8aaea636b843 100644 --- a/ports/espressif/boards/deneyap_kart_g/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_kart_g/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/deneyap_mini/mpconfigboard.mk b/ports/espressif/boards/deneyap_mini/mpconfigboard.mk index 764e78f7488d..007b7ebc82ab 100644 --- a/ports/espressif/boards/deneyap_mini/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_mini/mpconfigboard.mk @@ -10,9 +10,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/deneyap_mini_v2/mpconfigboard.mk b/ports/espressif/boards/deneyap_mini_v2/mpconfigboard.mk index 315c33a88858..457d4b931614 100644 --- a/ports/espressif/boards/deneyap_mini_v2/mpconfigboard.mk +++ b/ports/espressif/boards/deneyap_mini_v2/mpconfigboard.mk @@ -14,7 +14,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 2MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/doit_esp32_devkit_v1/mpconfigboard.mk b/ports/espressif/boards/doit_esp32_devkit_v1/mpconfigboard.mk index ee24e1131b76..9f657c6552db 100644 --- a/ports/espressif/boards/doit_esp32_devkit_v1/mpconfigboard.mk +++ b/ports/espressif/boards/doit_esp32_devkit_v1/mpconfigboard.mk @@ -8,7 +8,4 @@ CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESPCAMERA = 0 -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/espressif_esp32_devkitc_v4_wroom_32e/mpconfigboard.mk b/ports/espressif/boards/espressif_esp32_devkitc_v4_wroom_32e/mpconfigboard.mk index ed1f5e13b71a..766196f9b30f 100644 --- a/ports/espressif/boards/espressif_esp32_devkitc_v4_wroom_32e/mpconfigboard.mk +++ b/ports/espressif/boards/espressif_esp32_devkitc_v4_wroom_32e/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/espressif_esp32_eye/mpconfigboard.mk b/ports/espressif/boards/espressif_esp32_eye/mpconfigboard.mk index bd067e9ec1d9..92d855842ff3 100644 --- a/ports/espressif/boards/espressif_esp32_eye/mpconfigboard.mk +++ b/ports/espressif/boards/espressif_esp32_eye/mpconfigboard.mk @@ -13,10 +13,7 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 40m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_CANIO = 0 CIRCUITPY_NEOPIXEL_WRITE = 0 diff --git a/ports/espressif/boards/espressif_esp32_lyrat/mpconfigboard.mk b/ports/espressif/boards/espressif_esp32_lyrat/mpconfigboard.mk index ce0eb3467eeb..4865e8550239 100644 --- a/ports/espressif/boards/espressif_esp32_lyrat/mpconfigboard.mk +++ b/ports/espressif/boards/espressif_esp32_lyrat/mpconfigboard.mk @@ -11,9 +11,6 @@ CIRCUITPY_ESP_PSRAM_SIZE = 4MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 40m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/espressif_esp32c3_devkitm_1_n4/mpconfigboard.mk b/ports/espressif/boards/espressif_esp32c3_devkitm_1_n4/mpconfigboard.mk index 6206612cacc7..5b4f4b7ead6d 100644 --- a/ports/espressif/boards/espressif_esp32c3_devkitm_1_n4/mpconfigboard.mk +++ b/ports/espressif/boards/espressif_esp32c3_devkitm_1_n4/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 diff --git a/ports/espressif/boards/espressif_esp32c6_devkitm_1_n4/mpconfigboard.mk b/ports/espressif/boards/espressif_esp32c6_devkitm_1_n4/mpconfigboard.mk index c795ca6c4981..9685a7e62c59 100644 --- a/ports/espressif/boards/espressif_esp32c6_devkitm_1_n4/mpconfigboard.mk +++ b/ports/espressif/boards/espressif_esp32c6_devkitm_1_n4/mpconfigboard.mk @@ -7,8 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 + CIRCUITPY_AUDIOMP3 = 0 diff --git a/ports/espressif/boards/lilygo_ttgo_t-oi-plus/mpconfigboard.mk b/ports/espressif/boards/lilygo_ttgo_t-oi-plus/mpconfigboard.mk index d9bd399cb87a..d7eba6ea262c 100644 --- a/ports/espressif/boards/lilygo_ttgo_t-oi-plus/mpconfigboard.mk +++ b/ports/espressif/boards/lilygo_ttgo_t-oi-plus/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 diff --git a/ports/espressif/boards/lilygo_ttgo_tdisplay_esp32_4m/mpconfigboard.mk b/ports/espressif/boards/lilygo_ttgo_tdisplay_esp32_4m/mpconfigboard.mk index d24fca347638..af1bd8b17898 100644 --- a/ports/espressif/boards/lilygo_ttgo_tdisplay_esp32_4m/mpconfigboard.mk +++ b/ports/espressif/boards/lilygo_ttgo_tdisplay_esp32_4m/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/lolin_c3_mini/mpconfigboard.mk b/ports/espressif/boards/lolin_c3_mini/mpconfigboard.mk index f9aa6d8f90a5..36dc38883ff3 100644 --- a/ports/espressif/boards/lolin_c3_mini/mpconfigboard.mk +++ b/ports/espressif/boards/lolin_c3_mini/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=qio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/lolin_c3_pico/mpconfigboard.mk b/ports/espressif/boards/lolin_c3_pico/mpconfigboard.mk index 5fd7ec9db22e..51b1adfe5a1d 100644 --- a/ports/espressif/boards/lolin_c3_pico/mpconfigboard.mk +++ b/ports/espressif/boards/lolin_c3_pico/mpconfigboard.mk @@ -7,10 +7,7 @@ CIRCUITPY_ESP_FLASH_MODE=qio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/luatos_core_esp32c3/mpconfigboard.mk b/ports/espressif/boards/luatos_core_esp32c3/mpconfigboard.mk index e2c7765a2017..ea3c7a44621f 100644 --- a/ports/espressif/boards/luatos_core_esp32c3/mpconfigboard.mk +++ b/ports/espressif/boards/luatos_core_esp32c3/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=dio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/luatos_core_esp32c3_ch343/mpconfigboard.mk b/ports/espressif/boards/luatos_core_esp32c3_ch343/mpconfigboard.mk index ec1910762913..bb793f0f2629 100644 --- a/ports/espressif/boards/luatos_core_esp32c3_ch343/mpconfigboard.mk +++ b/ports/espressif/boards/luatos_core_esp32c3_ch343/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=dio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 diff --git a/ports/espressif/boards/m5stack_atom_echo/mpconfigboard.mk b/ports/espressif/boards/m5stack_atom_echo/mpconfigboard.mk index 86991d4c6a36..a40381f8a348 100644 --- a/ports/espressif/boards/m5stack_atom_echo/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_atom_echo/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/m5stack_atom_lite/mpconfigboard.mk b/ports/espressif/boards/m5stack_atom_lite/mpconfigboard.mk index c16c3796ca2e..215fd976df36 100644 --- a/ports/espressif/boards/m5stack_atom_lite/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_atom_lite/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/m5stack_atom_matrix/mpconfigboard.mk b/ports/espressif/boards/m5stack_atom_matrix/mpconfigboard.mk index 76e440fe41bc..081750d143f9 100644 --- a/ports/espressif/boards/m5stack_atom_matrix/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_atom_matrix/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/m5stack_atom_u/mpconfigboard.mk b/ports/espressif/boards/m5stack_atom_u/mpconfigboard.mk index 9a84fa2e52fc..abcd5f8724d8 100644 --- a/ports/espressif/boards/m5stack_atom_u/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_atom_u/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESPCAMERA = 0 diff --git a/ports/espressif/boards/m5stack_stamp_c3/mpconfigboard.mk b/ports/espressif/boards/m5stack_stamp_c3/mpconfigboard.mk index 482202bee364..2c856c6fc003 100644 --- a/ports/espressif/boards/m5stack_stamp_c3/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_stamp_c3/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=qio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 diff --git a/ports/espressif/boards/m5stack_stick_c/mpconfigboard.mk b/ports/espressif/boards/m5stack_stick_c/mpconfigboard.mk index b1d5b49417b9..ce94e71dff2a 100644 --- a/ports/espressif/boards/m5stack_stick_c/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_stick_c/mpconfigboard.mk @@ -8,9 +8,6 @@ CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESPCAMERA = 0 -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 SRC_C += pmic/axp192/axp192.c diff --git a/ports/espressif/boards/m5stack_stick_c_plus/mpconfigboard.mk b/ports/espressif/boards/m5stack_stick_c_plus/mpconfigboard.mk index b6d3fbe48100..bee1fc7e7811 100644 --- a/ports/espressif/boards/m5stack_stick_c_plus/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_stick_c_plus/mpconfigboard.mk @@ -8,9 +8,6 @@ CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESPCAMERA = 0 -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 SRC_C += pmic/axp192/axp192.c diff --git a/ports/espressif/boards/m5stack_timer_camera_x/mpconfigboard.mk b/ports/espressif/boards/m5stack_timer_camera_x/mpconfigboard.mk index a9979321367c..4fcacd94d3d2 100644 --- a/ports/espressif/boards/m5stack_timer_camera_x/mpconfigboard.mk +++ b/ports/espressif/boards/m5stack_timer_camera_x/mpconfigboard.mk @@ -11,7 +11,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = opi CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/makergo_esp32c3_supermini/mpconfigboard.mk b/ports/espressif/boards/makergo_esp32c3_supermini/mpconfigboard.mk index 3d83c635da94..37c27203af31 100644 --- a/ports/espressif/boards/makergo_esp32c3_supermini/mpconfigboard.mk +++ b/ports/espressif/boards/makergo_esp32c3_supermini/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=dio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/microdev_micro_c3/mpconfigboard.mk b/ports/espressif/boards/microdev_micro_c3/mpconfigboard.mk index fcdafae41223..b2ea6005db53 100644 --- a/ports/espressif/boards/microdev_micro_c3/mpconfigboard.mk +++ b/ports/espressif/boards/microdev_micro_c3/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/seeed_xiao_esp32c3/mpconfigboard.mk b/ports/espressif/boards/seeed_xiao_esp32c3/mpconfigboard.mk index 3b787bdf112d..b71a41ef6e31 100644 --- a/ports/espressif/boards/seeed_xiao_esp32c3/mpconfigboard.mk +++ b/ports/espressif/boards/seeed_xiao_esp32c3/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/seeed_xiao_esp32c6/board.c b/ports/espressif/boards/seeed_xiao_esp32c6/board.c new file mode 100644 index 000000000000..6d4bcef26dba --- /dev/null +++ b/ports/espressif/boards/seeed_xiao_esp32c6/board.c @@ -0,0 +1,45 @@ +/* + * This file is part of the MicroPython project, http://micropython.org/ + * + * The MIT License (MIT) + * + * Copyright (c) 2024 Dan Halbert for Adafruit Industries + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +#include "supervisor/board.h" +#include "mpconfigboard.h" +#include "shared-bindings/microcontroller/Pin.h" +#include "components/driver/gpio/include/driver/gpio.h" +#include "components/hal/include/hal/gpio_hal.h" +#include "common-hal/microcontroller/Pin.h" + +bool espressif_board_reset_pin_number(gpio_num_t pin_number) { + if (pin_number == 16) { + // Turn on I2C power by default. + gpio_set_direction(pin_number, GPIO_MODE_DEF_OUTPUT); + gpio_set_level(pin_number, true); + return true; + } + + return false; +} + +// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here. diff --git a/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.h b/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.h new file mode 100644 index 000000000000..6f803cd9c96e --- /dev/null +++ b/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.h @@ -0,0 +1,19 @@ +// Micropython setup + +#define MICROPY_HW_BOARD_NAME "Seeed Xiao ESP32-C6 4MB Flash 512KB SRAM" +#define MICROPY_HW_MCU_NAME "ESP32-C6FH4" + +#define MICROPY_HW_LED_STATUS (&pin_GPIO15) + +#define CIRCUITPY_BOARD_I2C (1) +#define CIRCUITPY_BOARD_I2C_PIN {{.scl = &pin_GPIO23, .sda = &pin_GPIO22}} + +#define CIRCUITPY_BOARD_SPI (1) +#define CIRCUITPY_BOARD_SPI_PIN {{.clock = &pin_GPIO19, .mosi = &pin_GPIO18, .miso = &pin_GPIO20}} + +// TXD0 and RXD0 +#define CIRCUITPY_BOARD_UART (1) +#define CIRCUITPY_BOARD_UART_PIN {{.tx = &pin_GPIO16, .rx = &pin_GPIO17}} + +// For entering safe mode, use BOOT button +#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO9) diff --git a/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.mk b/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.mk new file mode 100644 index 000000000000..e7ee13c027ac --- /dev/null +++ b/ports/espressif/boards/seeed_xiao_esp32c6/mpconfigboard.mk @@ -0,0 +1,10 @@ +CIRCUITPY_CREATOR_ID = 0x000C2886 +CIRCUITPY_CREATION_ID = 0x00C30002 + +IDF_TARGET = esp32c6 + +CIRCUITPY_ESP_FLASH_MODE = qio +CIRCUITPY_ESP_FLASH_FREQ = 80m +CIRCUITPY_ESP_FLASH_SIZE = 4MB + +CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/seeed_xiao_esp32c6/pins.c b/ports/espressif/boards/seeed_xiao_esp32c6/pins.c new file mode 100644 index 000000000000..0cb7f64e4163 --- /dev/null +++ b/ports/espressif/boards/seeed_xiao_esp32c6/pins.c @@ -0,0 +1,57 @@ +#include "shared-bindings/board/__init__.h" + +STATIC const mp_rom_map_elem_t board_module_globals_table[] = { + CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS + + { MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_GPIO0) }, + { MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_GPIO0) }, + + { MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_GPIO1) }, + { MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO1) }, + + { MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_GPIO2) }, + { MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO2) }, + + { MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_GPIO21) }, + + { MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_GPIO22) }, + { MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO22) }, + + { MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_GPIO23) }, + { MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO23) }, + + { MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_GPIO16) }, + { MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO16) }, + + { MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_GPIO17) }, + { MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO17) }, + + { MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_GPIO19) }, + { MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO19) }, + + { MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_GPIO20) }, + { MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_GPIO20) }, + + { MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_GPIO18) }, + { MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO18) }, + + { MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_GPIO4) }, + { MP_ROM_QSTR(MP_QSTR_MTMS), MP_ROM_PTR(&pin_GPIO4) }, + { MP_ROM_QSTR(MP_QSTR_LP_UART_RXD), MP_ROM_PTR(&pin_GPIO4) }, + + { MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO5) }, + { MP_ROM_QSTR(MP_QSTR_MTDI), MP_ROM_PTR(&pin_GPIO5) }, + { MP_ROM_QSTR(MP_QSTR_LP_UART_TXD), MP_ROM_PTR(&pin_GPIO5) }, + + { MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_GPIO6) }, + { MP_ROM_QSTR(MP_QSTR_MTCK), MP_ROM_PTR(&pin_GPIO6) }, + { MP_ROM_QSTR(MP_QSTR_LP_I2C_SDA), MP_ROM_PTR(&pin_GPIO6) }, + + { MP_ROM_QSTR(MP_QSTR_MTDO), MP_ROM_PTR(&pin_GPIO7) }, + { MP_ROM_QSTR(MP_QSTR_LP_I2C_SCL), MP_ROM_PTR(&pin_GPIO7) }, + + { MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) }, + { MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) }, + { MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) }, +}; +MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table); diff --git a/ports/espressif/boards/seeed_xiao_esp32c6/sdkconfig b/ports/espressif/boards/seeed_xiao_esp32c6/sdkconfig new file mode 100644 index 000000000000..a69b0b6c770b --- /dev/null +++ b/ports/espressif/boards/seeed_xiao_esp32c6/sdkconfig @@ -0,0 +1,15 @@ +# +# Espressif IoT Development Framework Configuration +# +# +# Component config +# +# +# LWIP +# +CONFIG_LWIP_LOCAL_HOSTNAME="seeed-xiao-esp32c6" +# end of LWIP + +# end of Component config + +# end of Espressif IoT Development Framework Configuration diff --git a/ports/espressif/boards/sqfmi_watchy/mpconfigboard.mk b/ports/espressif/boards/sqfmi_watchy/mpconfigboard.mk index 7fcc1a6e635c..520894ea70a1 100644 --- a/ports/espressif/boards/sqfmi_watchy/mpconfigboard.mk +++ b/ports/espressif/boards/sqfmi_watchy/mpconfigboard.mk @@ -8,9 +8,6 @@ CIRCUITPY_ESP_FLASH_MODE=dio CIRCUITPY_ESP_FLASH_FREQ=40m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 IDF_TARGET = esp32 diff --git a/ports/espressif/boards/sunton_esp32_2424S012/mpconfigboard.mk b/ports/espressif/boards/sunton_esp32_2424S012/mpconfigboard.mk index 7c58fb169cfd..2a84d801bc32 100644 --- a/ports/espressif/boards/sunton_esp32_2424S012/mpconfigboard.mk +++ b/ports/espressif/boards/sunton_esp32_2424S012/mpconfigboard.mk @@ -7,9 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE=qio CIRCUITPY_ESP_FLASH_FREQ=80m CIRCUITPY_ESP_FLASH_SIZE=4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG = 1 diff --git a/ports/espressif/boards/sunton_esp32_2432S028/board.c b/ports/espressif/boards/sunton_esp32_2432S028/board.c index 17fc0d7d0143..5d7353869402 100644 --- a/ports/espressif/boards/sunton_esp32_2432S028/board.c +++ b/ports/espressif/boards/sunton_esp32_2432S028/board.c @@ -65,7 +65,7 @@ static void display_init(void) { 240, // Height 0, // column start 0, // row start - 0, // rotation + 270, // rotation 16, // Color depth false, // Grayscale false, // pixels in a byte share a row. Only valid for depths < 8 diff --git a/ports/espressif/boards/sunton_esp32_2432S028/mpconfigboard.mk b/ports/espressif/boards/sunton_esp32_2432S028/mpconfigboard.mk index 6254c3c5b0b5..444c80227ab0 100644 --- a/ports/espressif/boards/sunton_esp32_2432S028/mpconfigboard.mk +++ b/ports/espressif/boards/sunton_esp32_2432S028/mpconfigboard.mk @@ -9,7 +9,4 @@ CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESPCAMERA = 0 -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/unexpectedmaker_tinypico/mpconfigboard.mk b/ports/espressif/boards/unexpectedmaker_tinypico/mpconfigboard.mk index 3c0ceb6f1b33..4086abba11ea 100644 --- a/ports/espressif/boards/unexpectedmaker_tinypico/mpconfigboard.mk +++ b/ports/espressif/boards/unexpectedmaker_tinypico/mpconfigboard.mk @@ -11,7 +11,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/unexpectedmaker_tinypico_nano/mpconfigboard.mk b/ports/espressif/boards/unexpectedmaker_tinypico_nano/mpconfigboard.mk index 92571c32d2ce..550e0d4a76c3 100644 --- a/ports/espressif/boards/unexpectedmaker_tinypico_nano/mpconfigboard.mk +++ b/ports/espressif/boards/unexpectedmaker_tinypico_nano/mpconfigboard.mk @@ -11,7 +11,4 @@ CIRCUITPY_ESP_PSRAM_SIZE = 8MB CIRCUITPY_ESP_PSRAM_MODE = qio CIRCUITPY_ESP_PSRAM_FREQ = 80m -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/boards/waveshare_esp32_s3_tiny/board.c b/ports/espressif/boards/waveshare_esp32_s3_tiny/board.c new file mode 100644 index 000000000000..a3a9eec04714 --- /dev/null +++ b/ports/espressif/boards/waveshare_esp32_s3_tiny/board.c @@ -0,0 +1,9 @@ +// This file is part of the CircuitPython project: https://circuitpython.org +// +// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries +// +// SPDX-License-Identifier: MIT + +#include "supervisor/board.h" + +// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here. diff --git a/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.h b/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.h new file mode 100644 index 000000000000..fb33519370c5 --- /dev/null +++ b/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.h @@ -0,0 +1,19 @@ +// This file is part of the CircuitPython project: https://circuitpython.org +// +// SPDX-FileCopyrightText: Copyright (c) 2019 Scott Shawcroft for Adafruit Industries +// +// SPDX-License-Identifier: MIT + +#pragma once + +// Micropython setup + +#define MICROPY_HW_BOARD_NAME "Waveshare ESP32-S3-Tiny" +#define MICROPY_HW_MCU_NAME "ESP32S3" + +// This corrects the color ordering so that the CircuitPython status lights behave as expected +#define MICROPY_HW_NEOPIXEL_ORDER_GRB (1) +#define MICROPY_HW_NEOPIXEL (&pin_GPIO38) + +#define DEFAULT_UART_BUS_RX (&pin_GPIO19) +#define DEFAULT_UART_BUS_TX (&pin_GPIO20) diff --git a/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.mk b/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.mk new file mode 100644 index 000000000000..334e3159c87c --- /dev/null +++ b/ports/espressif/boards/waveshare_esp32_s3_tiny/mpconfigboard.mk @@ -0,0 +1,14 @@ +USB_VID = 0x303a +USB_PID = 0x81F8 +USB_PRODUCT = "ESP32-S3-Tiny" +USB_MANUFACTURER = "Waveshare Electronics" + +IDF_TARGET = esp32s3 + +CIRCUITPY_ESP_FLASH_MODE = qio +CIRCUITPY_ESP_FLASH_FREQ = 80m +CIRCUITPY_ESP_FLASH_SIZE = 4MB + +CIRCUITPY_ESP_PSRAM_SIZE = 2MB +CIRCUITPY_ESP_PSRAM_MODE = qio +CIRCUITPY_ESP_PSRAM_FREQ = 80m diff --git a/ports/espressif/boards/waveshare_esp32_s3_tiny/pins.c b/ports/espressif/boards/waveshare_esp32_s3_tiny/pins.c new file mode 100644 index 000000000000..62d132af683f --- /dev/null +++ b/ports/espressif/boards/waveshare_esp32_s3_tiny/pins.c @@ -0,0 +1,61 @@ +// This file is part of the CircuitPython project: https://circuitpython.org +// +// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries +// +// SPDX-License-Identifier: MIT + +#include "shared-bindings/board/__init__.h" + +STATIC const mp_rom_map_elem_t board_module_globals_table[] = { + CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS + + { MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) }, + { MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) }, + { MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) }, + { MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) }, + { MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) }, + { MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) }, + { MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) }, + { MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) }, + { MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) }, + { MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) }, + { MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) }, + { MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) }, + { MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) }, + { MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) }, + { MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) }, + { MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) }, + { MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) }, + { MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) }, + { MP_ROM_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) }, + { MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) }, + { MP_ROM_QSTR(MP_QSTR_IO33), MP_ROM_PTR(&pin_GPIO33) }, + { MP_ROM_QSTR(MP_QSTR_IO34), MP_ROM_PTR(&pin_GPIO34) }, + { MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) }, + { MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) }, + { MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) }, + { MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) }, + { MP_ROM_QSTR(MP_QSTR_IO39), MP_ROM_PTR(&pin_GPIO39) }, + { MP_ROM_QSTR(MP_QSTR_IO40), MP_ROM_PTR(&pin_GPIO40) }, + { MP_ROM_QSTR(MP_QSTR_IO41), MP_ROM_PTR(&pin_GPIO41) }, + { MP_ROM_QSTR(MP_QSTR_IO42), MP_ROM_PTR(&pin_GPIO42) }, + { MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) }, + { MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44) }, + { MP_ROM_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) }, + { MP_ROM_QSTR(MP_QSTR_IO46), MP_ROM_PTR(&pin_GPIO46) }, + { MP_ROM_QSTR(MP_QSTR_IO47), MP_ROM_PTR(&pin_GPIO47) }, + { MP_ROM_QSTR(MP_QSTR_IO48), MP_ROM_PTR(&pin_GPIO48) }, + + // NEOPIXEL (GRB Color Order) + { MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO38) }, + + // UART + { MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO20) }, + { MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO19) }, + { MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) }, + // Any pins can be I2C + { MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) }, + // Any pins can be SPI + { MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) }, +}; +MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table); diff --git a/ports/espressif/boards/waveshare_esp32_s3_tiny/sdkconfig b/ports/espressif/boards/waveshare_esp32_s3_tiny/sdkconfig new file mode 100644 index 000000000000..a491b9f5f019 --- /dev/null +++ b/ports/espressif/boards/waveshare_esp32_s3_tiny/sdkconfig @@ -0,0 +1,15 @@ +# +# Espressif IoT Development Framework Configuration +# +# +# Component config +# +# +# LWIP +# +CONFIG_LWIP_LOCAL_HOSTNAME="waveshare-esp32-s3-tiny" +# end of LWIP + +# end of Component config + +# end of Espressif IoT Development Framework Configuration diff --git a/ports/espressif/boards/weact_esp32c6_n4/mpconfigboard.mk b/ports/espressif/boards/weact_esp32c6_n4/mpconfigboard.mk index 90d1d9f243e3..45309d289048 100644 --- a/ports/espressif/boards/weact_esp32c6_n4/mpconfigboard.mk +++ b/ports/espressif/boards/weact_esp32c6_n4/mpconfigboard.mk @@ -7,8 +7,6 @@ CIRCUITPY_ESP_FLASH_MODE = qio CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_SIZE = 4MB -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 + CIRCUITPY_AUDIOMP3 = 0 diff --git a/ports/espressif/boards/wemos_lolin32_lite/mpconfigboard.mk b/ports/espressif/boards/wemos_lolin32_lite/mpconfigboard.mk index a300f6969f0a..3c456881819d 100644 --- a/ports/espressif/boards/wemos_lolin32_lite/mpconfigboard.mk +++ b/ports/espressif/boards/wemos_lolin32_lite/mpconfigboard.mk @@ -9,7 +9,4 @@ CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESPCAMERA = 0 -# Override partition layout to preserve compatibility because the default has changed. -FLASH_SIZE_SDKCONFIG = esp-idf-config/sdkconfig-flash-4MB-no-uf2.defaults -CIRCUITPY_DUALBANK = 1 -CIRCUITPY_BLEIO = 0 +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT = 1 diff --git a/ports/espressif/common-hal/alarm/SleepMemory.h b/ports/espressif/common-hal/alarm/SleepMemory.h index 67a1b4659f69..44a9c7b4adec 100644 --- a/ports/espressif/common-hal/alarm/SleepMemory.h +++ b/ports/espressif/common-hal/alarm/SleepMemory.h @@ -21,7 +21,10 @@ // is set. Any memory not allocated by us can be used by the ESP-IDF for heap or other purposes. // Use half of RTC_SLOW_MEM or RTC_FAST_MEM. -#ifdef CONFIG_IDF_TARGET_ESP32 +#if defined(CONFIG_IDF_TARGET_ESP32H2) +// H2 has 4k of low power RAM +#define SLEEP_MEMORY_LENGTH (2 * 1024) +#elif defined(CONFIG_IDF_TARGET_ESP32) #define SLEEP_MEMORY_LENGTH (3 * 1024) #else #define SLEEP_MEMORY_LENGTH (4 * 1024) diff --git a/ports/espressif/common-hal/alarm/__init__.c b/ports/espressif/common-hal/alarm/__init__.c index d5c4d7625adc..fdf8aaea6d62 100644 --- a/ports/espressif/common-hal/alarm/__init__.c +++ b/ports/espressif/common-hal/alarm/__init__.c @@ -30,7 +30,6 @@ #include "esp_sleep.h" -#include "soc/rtc_cntl_reg.h" #include "components/driver/gpio/include/driver/gpio.h" #include "components/driver/uart/include/driver/uart.h" @@ -49,7 +48,9 @@ void alarm_reset(void) { alarm_sleep_memory_reset(); alarm_pin_pinalarm_reset(); alarm_time_timealarm_reset(); + #if CIRCUITPY_ALARM_TOUCH alarm_touch_touchalarm_reset(); + #endif #if CIRCUITPY_ESPULP espulp_ulpalarm_reset(); #endif @@ -64,9 +65,11 @@ static esp_sleep_wakeup_cause_t _get_wakeup_cause(bool deep_sleep) { if (alarm_time_timealarm_woke_this_cycle()) { return ESP_SLEEP_WAKEUP_TIMER; } + #if CIRCUITPY_ALARM_TOUCH if (alarm_touch_touchalarm_woke_this_cycle()) { return ESP_SLEEP_WAKEUP_TOUCHPAD; } + #endif #if CIRCUITPY_ESPULP if (espulp_ulpalarm_woke_this_cycle()) { return ESP_SLEEP_WAKEUP_ULP; @@ -99,9 +102,11 @@ mp_obj_t common_hal_alarm_record_wake_alarm(void) { return alarm_pin_pinalarm_record_wake_alarm(); } + #if CIRCUITPY_ALARM_TOUCH case ESP_SLEEP_WAKEUP_TOUCHPAD: { return alarm_touch_touchalarm_record_wake_alarm(); } + #endif #if CIRCUITPY_ESPULP case ESP_SLEEP_WAKEUP_ULP: { @@ -121,7 +126,9 @@ mp_obj_t common_hal_alarm_record_wake_alarm(void) { static void _setup_sleep_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms) { alarm_pin_pinalarm_set_alarms(deep_sleep, n_alarms, alarms); alarm_time_timealarm_set_alarms(deep_sleep, n_alarms, alarms); + #if CIRCUITPY_ALARM_TOUCH alarm_touch_touchalarm_set_alarm(deep_sleep, n_alarms, alarms); + #endif #if CIRCUITPY_ESPULP espulp_ulpalarm_set_alarm(deep_sleep, n_alarms, alarms); #endif @@ -147,10 +154,12 @@ mp_obj_t common_hal_alarm_light_sleep_until_alarms(size_t n_alarms, const mp_obj wake_alarm = alarm_pin_pinalarm_find_triggered_alarm(n_alarms, alarms); break; } + #if CIRCUITPY_ALARM_TOUCH case ESP_SLEEP_WAKEUP_TOUCHPAD: { wake_alarm = alarm_touch_touchalarm_find_triggered_alarm(n_alarms, alarms); break; } + #endif #if CIRCUITPY_ESPULP case ESP_SLEEP_WAKEUP_ULP: { wake_alarm = espulp_ulpalarm_find_triggered_alarm(n_alarms, alarms); @@ -182,7 +191,9 @@ void common_hal_alarm_set_deep_sleep_alarms(size_t n_alarms, const mp_obj_t *ala void NORETURN common_hal_alarm_enter_deep_sleep(void) { alarm_pin_pinalarm_prepare_for_deep_sleep(); + #if CIRCUITPY_ALARM_TOUCH alarm_touch_touchalarm_prepare_for_deep_sleep(); + #endif #if CIRCUITPY_ESPULP espulp_ulpalarm_prepare_for_deep_sleep(); #endif diff --git a/ports/espressif/common-hal/alarm/pin/PinAlarm.c b/ports/espressif/common-hal/alarm/pin/PinAlarm.c index 302f5afca85f..45f676fa5993 100644 --- a/ports/espressif/common-hal/alarm/pin/PinAlarm.c +++ b/ports/espressif/common-hal/alarm/pin/PinAlarm.c @@ -16,6 +16,10 @@ #include "hal/gpio_ll.h" #include "esp_debug_helpers.h" +#ifdef SOC_PM_SUPPORT_EXT0_WAKEUP +#include "soc/rtc_cntl_reg.h" +#endif + #include "driver/rtc_io.h" #include "freertos/FreeRTOS.h" @@ -57,8 +61,10 @@ static void gpio_interrupt(void *arg) { gpio_ll_get_intr_status(&GPIO, xPortGetCoreID(), (uint32_t *)&pin_31_0_status); gpio_ll_clear_intr_status(&GPIO, pin_31_0_status); + #if SOC_GPIO_PIN_COUNT > 32 gpio_ll_get_intr_status_high(&GPIO, xPortGetCoreID(), (uint32_t *)&pin_63_32_status); gpio_ll_clear_intr_status_high(&GPIO, pin_63_32_status); + #endif // disable the interrupts that fired, maybe all of them for (size_t i = 0; i < 32; i++) { @@ -66,9 +72,11 @@ static void gpio_interrupt(void *arg) { if ((pin_31_0_status & mask) != 0) { gpio_ll_intr_disable(&GPIO, i); } + #if SOC_GPIO_PIN_COUNT > 32 if ((pin_63_32_status & mask) != 0) { gpio_ll_intr_disable(&GPIO, 32 + i); } + #endif } port_wake_main_task_from_isr(); } @@ -98,22 +106,33 @@ mp_obj_t alarm_pin_pinalarm_record_wake_alarm(void) { uint64_t pin_status = ((uint64_t)pin_63_32_status) << 32 | pin_31_0_status; size_t pin_number = 64; + #ifdef SOC_PM_SUPPORT_EXT0_WAKEUP if (cause == ESP_SLEEP_WAKEUP_EXT0) { pin_number = REG_GET_FIELD(RTC_IO_EXT_WAKEUP0_REG, RTC_IO_EXT_WAKEUP0_SEL); } else { - if (cause == ESP_SLEEP_WAKEUP_EXT1) { - pin_status = esp_sleep_get_ext1_wakeup_status(); - } - // If the cause is GPIO, we've already snagged pin_status in the interrupt. - // We'll only get here if we pretended to deep sleep. Light sleep will - // pass in existing objects. - for (size_t i = 0; i < 64; i++) { - if ((pin_status & (1ull << i)) != 0) { - pin_number = i; - break; - } + #endif + #ifdef SOC_PM_SUPPORT_EXT1_WAKEUP + if (cause == ESP_SLEEP_WAKEUP_EXT1) { + pin_status = esp_sleep_get_ext1_wakeup_status(); + } + #endif + #ifdef SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP + if (cause == ESP_SLEEP_WAKEUP_GPIO) { + pin_status = esp_sleep_get_gpio_wakeup_status(); + } + #endif + // If the cause is GPIO, we've already snagged pin_status in the interrupt. + // We'll only get here if we pretended to deep sleep. Light sleep will + // pass in existing objects. + for (size_t i = 0; i < 64; i++) { + if ((pin_status & (1ull << i)) != 0) { + pin_number = i; + break; } } + #ifdef SOC_PM_SUPPORT_EXT0_WAKEUP +} + #endif alarm_pin_pinalarm_obj_t *const alarm = &alarm_wake_alarm.pin_alarm; @@ -157,6 +176,135 @@ void alarm_pin_pinalarm_reset(void) { pin_31_0_status = 0; } +#if defined(SOC_PM_SUPPORT_EXT1_WAKEUP) && !defined(SOC_PM_SUPPORT_EXT0_WAKEUP) +static esp_err_t _setup_ext1(size_t low_count, size_t high_count) { + esp_err_t result; + if (low_count > 0) { + result = esp_sleep_enable_ext1_wakeup_io(low_alarms, ESP_EXT1_WAKEUP_ANY_LOW); + if (result != ESP_OK) { + return result; + } + } + if (high_count > 0) { + result = esp_sleep_enable_ext1_wakeup_io(high_alarms, ESP_EXT1_WAKEUP_ANY_HIGH); + if (result != ESP_OK) { + return result; + } + } + + #ifdef SOC_PM_SUPPORT_RTC_PERIPH_PD + esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); + #endif + return ESP_OK; +} +#endif + +// How to wake from deep sleep by a pin varies a lot across the ESP line and isn't hidden behind +// the IDF API. So we change our _setup_deep_sleep() implementation based on what the ESP SoC can +// do. +#ifdef CONFIG_IDF_TARGET_ESP32 +static esp_err_t _setup_deep_sleep(size_t low_count, size_t high_count) { + if (low_count > 2 && high_count == 0) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on two low pins from deep sleep.")); + } + if (low_count > 1 && high_count > 0) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on one low pin while others alarm high from deep sleep.")); + } + esp_err_t result; + if (high_count > 0) { + result = esp_sleep_enable_ext1_wakeup_io(high_alarms, ESP_EXT1_WAKEUP_ANY_HIGH); + if (result != ESP_OK) { + return result; + } + esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); + } + size_t low_pins[2]; + size_t j = 0; + for (size_t i = 0; i < 64; i++) { + uint64_t mask = 1ull << i; + if ((low_alarms & mask) != 0) { + low_pins[j++] = i; + } + if (j == 2) { + break; + } + } + if (low_count > 1) { + if (esp_sleep_enable_ext1_wakeup_io(1ull << low_pins[1], ESP_EXT1_WAKEUP_ALL_LOW) != ESP_OK) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); + } + esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); + } + if (low_count > 0) { + #ifdef SOC_PM_SUPPORT_EXT0_WAKEUP + if (esp_sleep_enable_ext0_wakeup(low_pins[0], 0) != ESP_OK) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); + } + #endif + } + return ESP_OK; +} +#elif defined(SOC_PM_SUPPORT_EXT0_WAKEUP) // S2 and S3 +static esp_err_t _setup_deep_sleep(size_t low_count, size_t high_count) { + if (low_count > 1 && high_count > 1) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on one low pin while others alarm high from deep sleep.")); + } + uint64_t ext1_pin_mask; + esp_sleep_ext1_wakeup_mode_t ext1_mode; + + esp_err_t result; + // Only use EXT0 if we need to trigger both directions. + if (low_count > 0 && high_count > 0) { + size_t ext0_pin_number; + size_t level; + if (low_count == 1) { + ext0_pin_number = __builtin_ctzll(low_alarms); + level = 0; + ext1_pin_mask = high_alarms; + ext1_mode = ESP_EXT1_WAKEUP_ANY_HIGH; + } else { + ext0_pin_number = __builtin_ctzll(high_alarms); + level = 1; + ext1_pin_mask = low_alarms; + ext1_mode = ESP_EXT1_WAKEUP_ANY_LOW; + } + result = esp_sleep_enable_ext0_wakeup(ext0_pin_number, level); + if (result != ESP_OK) { + return result; + } + } else if (low_count > 0) { + ext1_pin_mask = low_alarms; + ext1_mode = ESP_EXT1_WAKEUP_ANY_LOW; + } else { + ext1_pin_mask = high_alarms; + ext1_mode = ESP_EXT1_WAKEUP_ANY_HIGH; + } + + esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); + return esp_sleep_enable_ext1_wakeup_io(ext1_pin_mask, ext1_mode); +} +#elif defined(SOC_PM_SUPPORT_EXT1_WAKEUP) && defined(SOC_PM_SUPPORT_EXT1_WAKEUP_MODE_PER_PIN) +static esp_err_t _setup_deep_sleep(size_t low_count, size_t high_count) { + return _setup_ext1(low_count, high_count); +} +#elif defined(SOC_GPIO_SUPPORT_DEEPSLEEP_WAKEUP) +static esp_err_t _setup_deep_sleep(size_t low_count, size_t high_count) { + #ifdef SOC_PM_SUPPORT_EXT1_WAKEUP + // Don't turn on RTC GPIO if we can use EXT1. + if (low_count == 0 || high_count == 0) { + return _setup_ext1(low_count, high_count); + } + #endif + esp_err_t result = esp_deep_sleep_enable_gpio_wakeup(low_alarms, ESP_GPIO_WAKEUP_GPIO_LOW); + if (result != ESP_OK) { + return result; + } + result = esp_deep_sleep_enable_gpio_wakeup(high_alarms, ESP_GPIO_WAKEUP_GPIO_HIGH); + return result; +} +#else +#error "Unsupported deep sleep capabilities." +#endif void alarm_pin_pinalarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms) { // Bitmask of wake up settings. size_t high_count = 0; @@ -184,41 +332,10 @@ void alarm_pin_pinalarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_ob if (high_count == 0 && low_count == 0) { return; } - if (deep_sleep && low_count > 2 && high_count == 0) { - mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on two low pins from deep sleep.")); - } - if (deep_sleep && low_count > 1 && high_count > 0) { - mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on one low pin while others alarm high from deep sleep.")); - } // Only use ext0 and ext1 during deep sleep. if (deep_sleep) { - if (high_count > 0) { - if (esp_sleep_enable_ext1_wakeup(high_alarms, ESP_EXT1_WAKEUP_ANY_HIGH) != ESP_OK) { - mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); - } - esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); - } - size_t low_pins[2]; - size_t j = 0; - for (size_t i = 0; i < 64; i++) { - uint64_t mask = 1ull << i; - if ((low_alarms & mask) != 0) { - low_pins[j++] = i; - } - if (j == 2) { - break; - } - } - if (low_count > 1) { - if (esp_sleep_enable_ext1_wakeup(1ull << low_pins[1], ESP_EXT1_WAKEUP_ALL_LOW) != ESP_OK) { - mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); - } - esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON); - } - if (low_count > 0) { - if (esp_sleep_enable_ext0_wakeup(low_pins[0], 0) != ESP_OK) { - mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); - } + if (_setup_deep_sleep(low_count, high_count) != ESP_OK) { + mp_raise_ValueError(MP_ERROR_TEXT("Can only alarm on RTC IO from deep sleep.")); } } else { // Enable GPIO wake up if we're sleeping. @@ -240,7 +357,9 @@ void alarm_pin_pinalarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_ob continue; } if (rtc_gpio_is_valid_gpio(i)) { + #ifdef SOC_PM_SUPPORT_RTC_PERIPH_PD rtc_gpio_deinit(i); + #endif } gpio_int_type_t interrupt_mode = GPIO_INTR_DISABLE; gpio_pull_mode_t pull_mode = GPIO_FLOATING; @@ -281,12 +400,22 @@ void alarm_pin_pinalarm_prepare_for_deep_sleep(void) { bool low = (low_alarms & mask) != 0; // The pull direction is opposite from alarm value. if (high) { + #ifdef SOC_PM_SUPPORT_RTC_PERIPH_PD rtc_gpio_pullup_dis(i); rtc_gpio_pulldown_en(i); + #else + gpio_pullup_dis(i); + gpio_pulldown_en(i); + #endif } if (low) { + #ifdef SOC_PM_SUPPORT_RTC_PERIPH_PD rtc_gpio_pullup_en(i); rtc_gpio_pulldown_dis(i); + #else + gpio_pullup_en(i); + gpio_pulldown_dis(i); + #endif } } } diff --git a/ports/espressif/mpconfigport.mk b/ports/espressif/mpconfigport.mk index 95ff29fc1e23..55b144bb3f41 100644 --- a/ports/espressif/mpconfigport.mk +++ b/ports/espressif/mpconfigport.mk @@ -10,6 +10,10 @@ LONGINT_IMPL = MPZ # Default to no-psram CIRCUITPY_ESP_PSRAM_SIZE ?= 0 +# New 4MB boards will not have OTA support but more room for alarm, ble and other +# newer features. +CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT ?= 0 + # Enable more features CIRCUITPY_FULL_BUILD ?= 1 @@ -18,6 +22,7 @@ CIRCUITPY_SSL_MBEDTLS = 1 # These modules are implemented in ports//common-hal: CIRCUITPY_ALARM ?= 1 +CIRCUITPY_ALARM_TOUCH ?= 0 CIRCUITPY_ANALOGBUFIO ?= 1 CIRCUITPY_AUDIOBUSIO ?= 1 CIRCUITPY_AUDIOBUSIO_PDMIN ?= 0 @@ -51,7 +56,9 @@ CIRCUITPY__EVE ?= 1 # Conditionally turn off modules/features ifeq ($(IDF_TARGET),esp32) # Modules +CIRCUITPY_ALARM_TOUCH = 1 CIRCUITPY_RGBMATRIX = 0 + # Features CIRCUITPY_USB_DEVICE = 0 @@ -60,7 +67,6 @@ else ifeq ($(IDF_TARGET),esp32c2) # C2 ROM spits out the UART at 74880 when connected to a 26mhz crystal! Debug # prints will default to that too. # Modules -CIRCUITPY_ALARM = 0 CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_ESPULP = 0 CIRCUITPY_MEMORYMAP = 0 @@ -95,7 +101,6 @@ CIRCUITPY_ESP_USB_SERIAL_JTAG = 0 else ifeq ($(IDF_TARGET),esp32c3) # Modules -CIRCUITPY_ALARM = 0 CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_ESPULP = 0 CIRCUITPY_MEMORYMAP = 0 @@ -116,7 +121,6 @@ CIRCUITPY_ESP_USB_SERIAL_JTAG ?= 1 else ifeq ($(IDF_TARGET),esp32c6) # Modules -CIRCUITPY_ALARM = 0 CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_ESPULP = 0 CIRCUITPY_MEMORYMAP = 0 @@ -136,7 +140,6 @@ CIRCUITPY_ESP_USB_SERIAL_JTAG ?= 1 else ifeq ($(IDF_TARGET),esp32h2) # Modules -CIRCUITPY_ALARM = 0 CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_ESPULP = 0 CIRCUITPY_MEMORYMAP = 0 @@ -157,6 +160,7 @@ CIRCUITPY_MAX3421E = 0 else ifeq ($(IDF_TARGET),esp32s2) # Modules +CIRCUITPY_ALARM_TOUCH = 1 # No BLE in hw CIRCUITPY_BLEIO = 0 @@ -164,6 +168,7 @@ CIRCUITPY_ESP_USB_SERIAL_JTAG ?= 0 else ifeq ($(IDF_TARGET),esp32s3) # Modules +CIRCUITPY_ALARM_TOUCH = 1 CIRCUITPY_ESP_USB_SERIAL_JTAG ?= 0 # No room for _bleio on boards with 4MB flash @@ -182,6 +187,19 @@ else CIRCUITPY_DUALBANK ?= 1 endif +# We used to default to OTA partition layout but are moving away from it so that +# BLE and alarm can be included. This setting prevents the partition layout from +# changing. +ifeq ($(CIRCUITPY_LEGACY_4MB_FLASH_LAYOUT), 1) +ifeq ($(IDF_TARGET_ARCH), xtensa) + CIRCUITPY_ALARM ?= 1 +else +CIRCUITPY_ALARM = 0 +endif +CIRCUITPY_DUALBANK = 1 +CIRCUITPY_BLEIO = 0 +endif + # No room for dualbank or mp3 on boards with 2MB flash ifeq ($(CIRCUITPY_ESP_FLASH_SIZE),2MB) CIRCUITPY_BITMAPFILTER ?= 0 diff --git a/py/circuitpy_defns.mk b/py/circuitpy_defns.mk index d01869e54426..4b16b677848a 100644 --- a/py/circuitpy_defns.mk +++ b/py/circuitpy_defns.mk @@ -105,7 +105,10 @@ ifeq ($(CIRCUITPY_AESIO),1) SRC_PATTERNS += aesio/% endif ifeq ($(CIRCUITPY_ALARM),1) -SRC_PATTERNS += alarm/% +SRC_PATTERNS += alarm/__init__.c alarm/SleepMemory.c alarm/pin/% alarm/time/% +endif +ifeq ($(CIRCUITPY_ALARM_TOUCH),1) +SRC_PATTERNS += alarm/touch/% endif ifeq ($(CIRCUITPY_ANALOGBUFIO),1) SRC_PATTERNS += analogbufio/% diff --git a/py/circuitpy_mpconfig.mk b/py/circuitpy_mpconfig.mk index 76f8a4fad179..5c0ba355ad74 100644 --- a/py/circuitpy_mpconfig.mk +++ b/py/circuitpy_mpconfig.mk @@ -95,6 +95,9 @@ CFLAGS += -DCIRCUITPY_AESIO=$(CIRCUITPY_AESIO) CIRCUITPY_ALARM ?= 0 CFLAGS += -DCIRCUITPY_ALARM=$(CIRCUITPY_ALARM) +CIRCUITPY_ALARM_TOUCH ?= $(CIRCUITPY_ALARM) +CFLAGS += -DCIRCUITPY_ALARM_TOUCH=$(CIRCUITPY_ALARM_TOUCH) + CIRCUITPY_ANALOGBUFIO ?= 0 CFLAGS += -DCIRCUITPY_ANALOGBUFIO=$(CIRCUITPY_ANALOGBUFIO) diff --git a/shared-bindings/alarm/__init__.c b/shared-bindings/alarm/__init__.c index c74b162d0a3f..7cdc2f7750e5 100644 --- a/shared-bindings/alarm/__init__.c +++ b/shared-bindings/alarm/__init__.c @@ -60,11 +60,13 @@ static void validate_objs_are_alarms(size_t n_args, const mp_obj_t *objs) { for (size_t i = 0; i < n_args; i++) { if (mp_obj_is_type(objs[i], &alarm_pin_pinalarm_type) || - mp_obj_is_type(objs[i], &alarm_time_timealarm_type) || + #if CIRCUITPY_ALARM_TOUCH + mp_obj_is_type(objs[i], &alarm_touch_touchalarm_type) || + #endif #if CIRCUITPY_ESPULP mp_obj_is_type(objs[i], &espulp_ulpalarm_type) || #endif - mp_obj_is_type(objs[i], &alarm_touch_touchalarm_type)) { + mp_obj_is_type(objs[i], &alarm_time_timealarm_type)) { continue; } mp_raise_TypeError_varg(MP_ERROR_TEXT("Expected a kind of %q"), MP_QSTR_Alarm); @@ -227,6 +229,7 @@ static const mp_obj_module_t alarm_time_module = { .globals = (mp_obj_dict_t *)&alarm_time_globals, }; +#if CIRCUITPY_ALARM_TOUCH static const mp_map_elem_t alarm_touch_globals_table[] = { { MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_touch) }, { MP_ROM_QSTR(MP_QSTR_TouchAlarm), MP_OBJ_FROM_PTR(&alarm_touch_touchalarm_type) }, @@ -238,6 +241,7 @@ static const mp_obj_module_t alarm_touch_module = { .base = { &mp_type_module }, .globals = (mp_obj_dict_t *)&alarm_touch_globals, }; +#endif // The module table is mutable because .wake_alarm is a mutable attribute. static mp_map_elem_t alarm_module_globals_table[] = { @@ -252,7 +256,9 @@ static mp_map_elem_t alarm_module_globals_table[] = { { MP_ROM_QSTR(MP_QSTR_pin), MP_OBJ_FROM_PTR(&alarm_pin_module) }, { MP_ROM_QSTR(MP_QSTR_time), MP_OBJ_FROM_PTR(&alarm_time_module) }, + #if CIRCUITPY_ALARM_TOUCH { MP_ROM_QSTR(MP_QSTR_touch), MP_OBJ_FROM_PTR(&alarm_touch_module) }, + #endif { MP_ROM_QSTR(MP_QSTR_SleepMemory), MP_OBJ_FROM_PTR(&alarm_sleep_memory_type) }, { MP_ROM_QSTR(MP_QSTR_sleep_memory), MP_OBJ_FROM_PTR(&alarm_sleep_memory_obj) }, diff --git a/supervisor/shared/workflow.c b/supervisor/shared/workflow.c index 152e67b27b1e..89dd646ea771 100644 --- a/supervisor/shared/workflow.c +++ b/supervisor/shared/workflow.c @@ -18,6 +18,9 @@ #if CIRCUITPY_BLEIO #include "shared-bindings/_bleio/__init__.h" #include "supervisor/shared/bluetooth/bluetooth.h" +#if CIRCUITPY_SERIAL_BLE +#include "supervisor/shared/bluetooth/serial.h" +#endif #endif #if CIRCUITPY_TINYUSB || CIRCUITPY_USB_KEYBOARD_WORKFLOW @@ -27,6 +30,7 @@ #if CIRCUITPY_WEB_WORKFLOW #include "supervisor/shared/web_workflow/web_workflow.h" +#include "supervisor/shared/web_workflow/websocket.h" static background_callback_t workflow_background_cb = {NULL, NULL}; #endif @@ -60,14 +64,27 @@ void supervisor_workflow_request_background(void) { } // Return true if host has completed connection to us (such as USB enumeration). +// This is used to determine when to pretend to deep sleep. bool supervisor_workflow_active(void) { #if CIRCUITPY_USB_DEVICE // Eventually there might be other non-USB workflows, such as BLE. // tud_ready() checks for usb mounted and not suspended. - return tud_ready(); - #else - return false; + if (tud_ready()) { + return true; + } + #endif + #if CIRCUITPY_WEB_WORKFLOW + if (websocket_connected()) { + return true; + } + #endif + #if CIRCUITPY_SERIAL_BLE + if (ble_serial_connected()) { + return true; + } #endif + + return false; } void supervisor_workflow_start(void) {