Merge branch 'main' into espressif-camera-2

This commit is contained in:
Scott Shawcroft 2022-08-09 14:07:14 -07:00 committed by GitHub
commit 554063a817
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
68 changed files with 1298 additions and 468 deletions

View File

@ -71,7 +71,7 @@ as a natural "TODO" list. An example minimal build list is shown below:
CIRCUITPY_SDCARDIO = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
# Requires SPI, PulseIO (stub ok):
CIRCUITPY_DISPLAYIO = 0

View File

@ -215,7 +215,7 @@ msgstr "%q, %q, dan %q semuanya harus memiliki panjang yang sama"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s kesalahan 0x%x"
@ -653,7 +653,7 @@ msgstr "Blok CBC harus merupakan kelipatan 16 byte"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -876,6 +876,10 @@ msgstr "Tampilan harus memiliki ruang warna 16 bit."
msgid "Display rotation must be in 90 degree increments"
msgstr "Rotasi tampilan harus dalam kelipatan 90 derajat"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Mode kendara tidak digunakan saat arah input."
@ -1032,7 +1036,7 @@ msgstr "Fungsinya membutuhkan kunci"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1203,7 +1207,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Argumen tidak valid"
@ -1233,7 +1237,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Pin-pin tidak valid"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1241,7 +1245,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1265,7 +1269,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1551,6 +1555,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Parity ganjil tidak didukung"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1620,15 +1632,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Waktu habis"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Kehabisan memori"
@ -1810,10 +1822,14 @@ msgstr "sistem file (filesystem) bersifat Read-only"
msgid "Read-only object"
msgstr "Objek Read-only"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Segarkan terlalu cepat"
@ -1826,7 +1842,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr "Mode AES yang diminta tidak didukung"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2252,7 +2268,7 @@ msgstr "Panjang nilai != Panjang tetap yang dibutuhkan"
msgid "Value length > max_length"
msgstr "Panjang nilai > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -398,12 +398,14 @@ msgstr ""
msgid "All CAN peripherals are in use"
msgstr ""
#: ports/espressif/common-hal/busio/I2C.c
#: ports/espressif/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/nrf/common-hal/busio/I2C.c
#: ports/espressif/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "All I2C peripherals are in use"
msgstr ""
#: ports/espressif/common-hal/i2ctarget/I2CTarget.c
msgid "All I2C targets are in use"
msgstr ""
#: ports/espressif/common-hal/countio/Counter.c
#: ports/espressif/common-hal/frequencyio/FrequencyIn.c
#: ports/espressif/common-hal/rotaryio/IncrementalEncoder.c
@ -1589,7 +1591,7 @@ msgstr ""
msgid "Only one TouchAlarm can be set in deep sleep."
msgstr ""
#: ports/espressif/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/espressif/common-hal/i2ctarget/I2CTarget.c
msgid "Only one address is allowed"
msgstr ""
@ -2319,11 +2321,11 @@ msgstr ""
msgid "a bytes-like object is required"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-bindings/i2ctarget/I2CTarget.c
msgid "address out of bounds"
msgstr ""
#: shared-bindings/i2cperipheral/I2CPeripheral.c
#: shared-bindings/i2ctarget/I2CTarget.c
msgid "addresses is empty"
msgstr ""
@ -2515,7 +2517,7 @@ msgstr ""
msgid "can't cancel self"
msgstr ""
#: py/obj.c py/objint.c shared-bindings/i2cperipheral/I2CPeripheral.c
#: py/obj.c py/objint.c shared-bindings/i2ctarget/I2CTarget.c
#: shared-module/adafruit_pixelbuf/PixelBuf.c
msgid "can't convert %q to %q"
msgstr ""

View File

@ -216,7 +216,7 @@ msgstr "%q, %q, a %q musí mít všechny shodnou délku"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s chyba 0x%x"
@ -654,7 +654,7 @@ msgstr "Bloky CBC musí být násobky 16 bajtů"
msgid "CIRCUITPY drive could not be found or created."
msgstr "Disk CIRCUITPY nelze nalézt nebo vytvořit."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -874,6 +874,10 @@ msgstr "Displej musí mít 16bitový barevný prostor."
msgid "Display rotation must be in 90 degree increments"
msgstr "Otočení displeje musí být po 90 stupních"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1032,7 +1036,7 @@ msgstr "Funkce vyžaduje zámek"
msgid "GNSS init"
msgstr "Inicializace GNSS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Základní chyba"
@ -1203,7 +1207,7 @@ msgstr "Chybné BSSID"
msgid "Invalid MAC address"
msgstr "Chybná MAC adresa"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Neplatný argument"
@ -1233,7 +1237,7 @@ msgstr "Chybná multicastová MAC adresa"
msgid "Invalid pins"
msgstr "Neplatné piny"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Chybná velikost"
@ -1241,7 +1245,7 @@ msgstr "Chybná velikost"
msgid "Invalid socket for TLS"
msgstr "Chybný soket pro TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Chybný stav"
@ -1265,7 +1269,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC adresa byla chybná"
@ -1551,6 +1555,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1616,15 +1628,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1801,10 +1813,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1817,7 +1833,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2239,7 +2255,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -218,7 +218,7 @@ msgstr "%q, %q und %q müssen alle die gleiche Länge haben"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s Fehler 0x%x"
@ -656,7 +656,7 @@ msgstr "CBC-Blöcke müssen ein Vielfaches von 16 Bytes sein"
msgid "CIRCUITPY drive could not be found or created."
msgstr "CIRCUITPY-Laufwerk konnte nicht gefunden oder erzeugt werden."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC oder Checksumme ungültig"
@ -880,6 +880,10 @@ msgstr "Display muss einen 16 Bit Farbraum haben."
msgid "Display rotation must be in 90 degree increments"
msgstr "Die Rotation der Anzeige muss in 90-Grad-Schritten erfolgen"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drive mode wird nicht verwendet, wenn die Richtung input ist."
@ -1041,7 +1045,7 @@ msgstr "Die Funktion erwartet, dass der 'lock'-Befehl zuvor ausgeführt wurde"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Generischer Fehler"
@ -1216,7 +1220,7 @@ msgstr "Ungültige BSSID"
msgid "Invalid MAC address"
msgstr "Ungültige MAC-Adresse"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Ungültiges Argument"
@ -1246,7 +1250,7 @@ msgstr "Ungültige Multicast-MAC-Adresse"
msgid "Invalid pins"
msgstr "Ungültige Pins"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Ungültige Größe"
@ -1254,7 +1258,7 @@ msgstr "Ungültige Größe"
msgid "Invalid socket for TLS"
msgstr "Ungültiges Socket für TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Ungültiger Zustand"
@ -1278,7 +1282,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC Adresse war ungültig"
@ -1566,6 +1570,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Eine ungerade Parität wird nicht unterstützt"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1635,15 +1647,15 @@ msgstr "Nur eine Farbe kann transparent sein zu einer Zeit"
msgid "Operation not permitted"
msgstr "Operation nicht erlaubt"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "Vorgang oder Funktion wird nicht unterstützt"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Zeit für Vorgang abgelaufen"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Kein Speicher mehr verfügbar"
@ -1824,10 +1836,14 @@ msgstr "Schreibgeschützte Dateisystem"
msgid "Read-only object"
msgstr "Schreibgeschützte Objekt"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "Erhaltene Antwort ist ungültig"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Zu früh neu geladen"
@ -1840,7 +1856,7 @@ msgstr "RemoteTransmissionRequests limitiert auf 8 Bytes"
msgid "Requested AES mode is unsupported"
msgstr "Der angeforderte AES-Modus wird nicht unterstützt"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Angefragte Ressource nicht gefunden"
@ -2279,7 +2295,7 @@ msgstr "Wert Länge != Erforderliche feste Länge"
msgid "Value length > max_length"
msgstr "Länge des Wertes > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "Version ist ungültig"

View File

@ -209,7 +209,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -645,7 +645,7 @@ msgstr ""
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -863,6 +863,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1019,7 +1023,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1188,7 +1192,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr ""
@ -1218,7 +1222,7 @@ msgstr ""
msgid "Invalid pins"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1226,7 +1230,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1250,7 +1254,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1535,6 +1539,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1600,15 +1612,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1783,10 +1795,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1799,7 +1815,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2221,7 +2237,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -219,7 +219,7 @@ msgstr "%q, %q, and %q must all be the same length"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s error 0x%x"
@ -657,7 +657,7 @@ msgstr "CBC blocks must be multiples of 16 bytes"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC or checksum was invalid"
@ -877,6 +877,10 @@ msgstr "Display must have a 16 bit colourspace."
msgid "Display rotation must be in 90 degree increments"
msgstr "Display rotation must be in 90 degree increments"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drive mode not used when direction is input."
@ -1033,7 +1037,7 @@ msgstr "Function requires lock"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Generic Failure"
@ -1204,7 +1208,7 @@ msgstr "Invalid BSSID"
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Invalid argument"
@ -1234,7 +1238,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Invalid pins"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Invalid size"
@ -1242,7 +1246,7 @@ msgstr "Invalid size"
msgid "Invalid socket for TLS"
msgstr "Invalid socket for TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Invalid state"
@ -1266,7 +1270,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC address was invalid"
@ -1552,6 +1556,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Odd parity is not supported"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1620,15 +1632,15 @@ msgstr "Only one colour can be transparent at a time"
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "Operation or feature not supported"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Operation timed out"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Out of memory"
@ -1807,10 +1819,14 @@ msgstr "Read-only filesystem"
msgid "Read-only object"
msgstr "Read-only object"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "Received response was invalid"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Refresh too soon"
@ -1823,7 +1839,7 @@ msgstr "RemoteTransmissionRequests limited to 8 bytes"
msgid "Requested AES mode is unsupported"
msgstr "Requested AES mode is unsupported"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Requested resource not found"
@ -2254,7 +2270,7 @@ msgstr "Value length != required fixed length"
msgid "Value length > max_length"
msgstr "Value length > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "Version was invalid"

View File

@ -218,7 +218,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s error 0x%x"
@ -659,7 +659,7 @@ msgstr "Los bloques CBC deben ser múltiplos de 16 bytes"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC o suma de comprobación inválida"
@ -884,6 +884,10 @@ msgstr "La pantalla debe tener un espacio de color de 16 bits."
msgid "Display rotation must be in 90 degree increments"
msgstr "Rotación de display debe ser en incrementos de 90 grados"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Modo Drive no se usa cuando la dirección es input."
@ -1041,7 +1045,7 @@ msgstr "La función requiere lock"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Fallo Genérico"
@ -1219,7 +1223,7 @@ msgstr "BSSID inválido"
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1249,7 +1253,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "pines inválidos"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Tamaño incorrecto"
@ -1257,7 +1261,7 @@ msgstr "Tamaño incorrecto"
msgid "Invalid socket for TLS"
msgstr "socket invalido para TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Estado invalido"
@ -1281,7 +1285,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "La dirección MAC es incorrecta"
@ -1572,6 +1576,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Paridad impar no soportada"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1641,15 +1653,15 @@ msgstr "Solo un color puede ser transparente a la vez"
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "Operación no característica no soportada"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Tiempo de espera agotado"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Memoria agotada"
@ -1832,10 +1844,14 @@ msgstr "Sistema de archivos de solo-Lectura"
msgid "Read-only object"
msgstr "Objeto de solo-lectura"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "La respuesta recibida es invalida"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Refresco demasiado pronto"
@ -1848,7 +1864,7 @@ msgstr "RemoteTransmissionRequests limitado a 8 bytes"
msgid "Requested AES mode is unsupported"
msgstr "El modo AES solicitado no es compatible"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Recurso solicitado no encontrado"
@ -2283,7 +2299,7 @@ msgstr "Tamaño del valor != del tamaño fijo requerido"
msgid "Value length > max_length"
msgstr "Tamaño de valor > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "La versión era invalida"

View File

@ -212,7 +212,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -652,7 +652,7 @@ msgstr ""
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -874,6 +874,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drive mode ay hindi ginagamit kapag ang direksyon ay input."
@ -1030,7 +1034,7 @@ msgstr "Function nangangailangan ng lock"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1201,7 +1205,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Maling argumento"
@ -1231,7 +1235,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Mali ang pins"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1239,7 +1243,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1263,7 +1267,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1551,6 +1555,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Odd na parity ay hindi supportado"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1616,15 +1628,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1801,10 +1813,14 @@ msgstr "Basahin-lamang mode"
msgid "Read-only object"
msgstr "Basahin-lamang"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1817,7 +1833,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2241,7 +2257,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2022-07-19 23:15+0000\n"
"PO-Revision-Date: 2022-08-09 04:22+0000\n"
"Last-Translator: Maxime Leroy <lisacintosh@gmail.com>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -219,9 +219,9 @@ msgstr "%q, %q, et %q doivent tous être de la même longueur"
#: py/objint.c
msgid "%q=%q"
msgstr ""
msgstr "%q=%q"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s erreur 0x%x"
@ -663,7 +663,7 @@ msgstr "Les blocs CBC doivent être des multiples de 16 octets"
msgid "CIRCUITPY drive could not be found or created."
msgstr "Lappareil CIRCUITPY ne peut pas être trouvé ou créé."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC ou somme de contrôle invalide"
@ -896,6 +896,10 @@ msgstr "L'affichage doit avoir un espace colorimétrique de 16 bits."
msgid "Display rotation must be in 90 degree increments"
msgstr "La rotation d'affichage doit se faire par incréments de 90 degrés"
#: main.c
msgid "Done"
msgstr "OK"
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1060,7 +1064,7 @@ msgstr "La fonction nécessite un verrou ('lock')"
msgid "GNSS init"
msgstr "Initialisation GNSS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Échec génerique"
@ -1242,7 +1246,7 @@ msgstr "BSSID invalide"
msgid "Invalid MAC address"
msgstr "Adresse MAC invalide"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Paramètre invalide"
@ -1272,7 +1276,7 @@ msgstr "Adresse MAC multicast invalide"
msgid "Invalid pins"
msgstr "Broches invalides"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Taille invalide"
@ -1280,7 +1284,7 @@ msgstr "Taille invalide"
msgid "Invalid socket for TLS"
msgstr "Socket non valide pour TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "État invalide"
@ -1304,7 +1308,7 @@ msgstr "Ce calque est déjà dans un groupe"
msgid "Layer must be a Group or TileGrid subclass"
msgstr "Le calque doit être une sous-classe de Group ou TileGrid"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "Adresse physique (MAC) invalide"
@ -1595,6 +1599,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Parité impaire non supportée"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr "Inactif"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr "OK"
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1664,15 +1676,15 @@ msgstr "Une seule couleur peut être transparente à la fois"
msgid "Operation not permitted"
msgstr "Cette opération n'est pas permise"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "Opération ou fonction non supportée"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Timeout de l'opération"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Hors de mémoire"
@ -1856,10 +1868,14 @@ msgstr "Système de fichier en lecture seule"
msgid "Read-only object"
msgstr "Objet en lecture seule"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "Réponse reçue invalide"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr "Reconnexion"
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Rafraîchissement trop tôt"
@ -1872,7 +1888,7 @@ msgstr "RemoteTransmissionRequests limité à 8 octets"
msgid "Requested AES mode is unsupported"
msgstr "Le mode AES demandé n'est pas supporté"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Resource demandée non trouvée"
@ -2311,7 +2327,7 @@ msgstr "Longueur de valeur != Longueur fixe requise"
msgid "Value length > max_length"
msgstr "Longueur de la valeur > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "Version est invalide"
@ -3883,7 +3899,7 @@ msgstr "pow() avec 3 arguments nécessite des entiers"
#: ports/espressif/boards/adafruit_qtpy_esp32_pico/mpconfigboard.h
msgid "pressing BOOT button at start up.\n"
msgstr ""
msgstr "presser le bouton BOOT au démarrage.\n"
#: ports/espressif/boards/adafruit_feather_esp32_v2/mpconfigboard.h
msgid "pressing SW38 button at start up.\n"
@ -3891,7 +3907,7 @@ msgstr "presser le bouton SW38 au démarrage.\n"
#: ports/espressif/boards/hardkernel_odroid_go/mpconfigboard.h
msgid "pressing VOLUME button at start up.\n"
msgstr ""
msgstr "presser le bouton VOLUME au démarrage.\n"
#: ports/espressif/boards/adafruit_qtpy_esp32c3/mpconfigboard.h
#: ports/espressif/boards/beetle-esp32-c3/mpconfigboard.h

View File

@ -209,7 +209,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -645,7 +645,7 @@ msgstr ""
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -863,6 +863,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1019,7 +1023,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1188,7 +1192,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr ""
@ -1218,7 +1222,7 @@ msgstr ""
msgid "Invalid pins"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1226,7 +1230,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1250,7 +1254,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1535,6 +1539,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1600,15 +1612,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1783,10 +1795,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1799,7 +1815,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2221,7 +2237,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -217,7 +217,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s errore 0x%x"
@ -658,7 +658,7 @@ msgstr "I blocchi CBC devono essere multipli di 16 bytes"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC o controllo totale è risultato non valido"
@ -879,6 +879,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1035,7 +1039,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1206,7 +1210,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Argomento non valido"
@ -1236,7 +1240,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Pin non validi"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1244,7 +1248,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1268,7 +1272,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1558,6 +1562,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "operazione I2C non supportata"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1623,15 +1635,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1811,10 +1823,14 @@ msgstr "Filesystem in sola lettura"
msgid "Read-only object"
msgstr "Sola lettura"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1827,7 +1843,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2251,7 +2267,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -214,7 +214,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -652,7 +652,7 @@ msgstr "CBCブロックは16バイトの整数倍でなければなりません"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -872,6 +872,10 @@ msgstr "ディスプレイは16ビット色空間を持たなければなりま
msgid "Display rotation must be in 90 degree increments"
msgstr "ディスプレイの回転は90度の倍数でなければなりません"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "方向がinputのときドライブモードは使われません"
@ -1028,7 +1032,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1199,7 +1203,7 @@ msgstr "不正なBSSID"
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "不正な引数"
@ -1229,7 +1233,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "ピンが不正"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1237,7 +1241,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1261,7 +1265,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1548,6 +1552,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "奇数パリティには対応していません"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1613,15 +1625,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1796,10 +1808,14 @@ msgstr "読み込み専用のファイルシステム"
msgid "Read-only object"
msgstr "読み込み専用のオブジェクト"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "リフレッシュが早すぎます"
@ -1812,7 +1828,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr "要求のAESモードは非対応"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2235,7 +2251,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -210,7 +210,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -648,7 +648,7 @@ msgstr ""
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -866,6 +866,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1022,7 +1026,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1191,7 +1195,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr ""
@ -1221,7 +1225,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "핀이 유효하지 않습니다"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1229,7 +1233,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1253,7 +1257,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1538,6 +1542,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1603,15 +1615,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1786,10 +1798,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1802,7 +1818,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2225,7 +2241,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -212,7 +212,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -650,7 +650,7 @@ msgstr "CBC blocks moeten meervouden van 16 bytes zijn"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -871,6 +871,10 @@ msgstr "Beeldscherm moet een 16bit kleurruimte hebben."
msgid "Display rotation must be in 90 degree increments"
msgstr "Beeldscherm rotatie moet in stappen van 90 graden"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drive modus niet gebruikt als de richting input is."
@ -1028,7 +1032,7 @@ msgstr "Functie vereist lock"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1199,7 +1203,7 @@ msgstr "Ongeldig BSSID"
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Ongeldig argument"
@ -1229,7 +1233,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Ongeldige pinnen"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1237,7 +1241,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1261,7 +1265,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1548,6 +1552,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Oneven pariteit is niet ondersteund"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1617,15 +1629,15 @@ msgstr "Er kan maar één kleur per keer transparant zijn"
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1807,10 +1819,14 @@ msgstr "Alleen-lezen bestandssysteem"
msgid "Read-only object"
msgstr "Alleen-lezen object"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Verversing te snel"
@ -1823,7 +1839,7 @@ msgstr "RemoteTransmissionRequests is beperkt tot 8 bytes"
msgid "Requested AES mode is unsupported"
msgstr "Gevraagde AES modus is niet ondersteund"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2247,7 +2263,7 @@ msgstr "Waarde lengte != vereist vaste lengte"
msgid "Value length > max_length"
msgstr "Waarde length > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -214,7 +214,7 @@ msgstr ""
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr ""
@ -652,7 +652,7 @@ msgstr "Bloki CBC muszą być wielokrotnościami 16 bajtów"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -872,6 +872,10 @@ msgstr "Wyświetlacz musi mieć 16-bitową przestrzeń kolorów."
msgid "Display rotation must be in 90 degree increments"
msgstr "Wyświetlacz można obracać co 90 stopni"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Tryb sterowania nieużywany w trybie wejścia."
@ -1028,7 +1032,7 @@ msgstr "Funkcja wymaga blokady"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1199,7 +1203,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Zły argument"
@ -1229,7 +1233,7 @@ msgstr ""
msgid "Invalid pins"
msgstr "Złe nóżki"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Nieprawidłowy rozmiar"
@ -1237,7 +1241,7 @@ msgstr "Nieprawidłowy rozmiar"
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Nieprawidłowy stan"
@ -1261,7 +1265,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1546,6 +1550,14 @@ msgstr "Obiekt został zwolniony i nie można go już używać. Utwórz nowy obi
msgid "Odd parity is not supported"
msgstr "Nieparzysta parzystość nie jest wspierana"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1611,15 +1623,15 @@ msgstr "W danym momencie przezroczysty może być tylko jeden kolor"
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Brak pamięci"
@ -1794,10 +1806,14 @@ msgstr "System plików tylko do odczytu"
msgid "Read-only object"
msgstr "Obiekt tylko do odczytu"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "Otrzymana odpowiedź była nieprawidłowa"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Zbyt wczesne odświeżenie"
@ -1810,7 +1826,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr "Żądany tryb AES nie jest obsługiwany"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Nie znaleziono żądanego zasobu"
@ -2232,7 +2248,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2022-08-05 14:18+0000\n"
"PO-Revision-Date: 2022-08-07 15:16+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -218,7 +218,7 @@ msgstr "todos os %q, %q, e %q devem ter mesmo comprimento"
msgid "%q=%q"
msgstr "%q=%q"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s erro 0x%x"
@ -665,7 +665,7 @@ msgstr "Os blocos CBC devem ter múltiplos de 16 bytes"
msgid "CIRCUITPY drive could not be found or created."
msgstr "A unidade CIRCUITPY não pôde ser encontrada nem criada."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC ou checksum inválido"
@ -890,6 +890,10 @@ msgstr "O monitor deve ter um espaço de cores com 16 bits."
msgid "Display rotation must be in 90 degree increments"
msgstr "A rotação da tela deve estar em incrementos de 90 graus"
#: main.c
msgid "Done"
msgstr "Feito"
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "O modo do controlador não é usado quando a direção for inserida."
@ -1050,7 +1054,7 @@ msgstr "A função requer bloqueio"
msgid "GNSS init"
msgstr "Inicialização do GNSS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Falha Genérica"
@ -1227,7 +1231,7 @@ msgstr "BSSID Inválido"
msgid "Invalid MAC address"
msgstr "Endereço MAC inválido"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1257,7 +1261,7 @@ msgstr "Endereço MAC multicast inválido"
msgid "Invalid pins"
msgstr "Pinos inválidos"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Tamanho inválido"
@ -1265,7 +1269,7 @@ msgstr "Tamanho inválido"
msgid "Invalid socket for TLS"
msgstr "Soquete inválido para o TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Estado inválido"
@ -1289,7 +1293,7 @@ msgstr "Camada já está num grupo"
msgid "Layer must be a Group or TileGrid subclass"
msgstr "A camada deve ser uma subclasse Group ou TileGrid"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "Endereço MAC inválido"
@ -1577,6 +1581,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "A paridade ímpar não é compatível"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr "Desligado"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr "Ok"
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1646,15 +1658,15 @@ msgstr "Apenas uma cor pode ser transparente de cada vez"
msgid "Operation not permitted"
msgstr "A operação não é permitida"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "A operação ou o recurso não é suportado"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "A operação expirou"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Sem memória"
@ -1839,10 +1851,14 @@ msgstr "Sistema de arquivos somente leitura"
msgid "Read-only object"
msgstr "Objeto de leitura apenas"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "A resposta recebida foi inválida"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr "Reconectando"
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "A recarga foi cedo demais"
@ -1855,7 +1871,7 @@ msgstr "As requisições de transmissões remotas é limitada a 8 bytes"
msgid "Requested AES mode is unsupported"
msgstr "O modo AES solicitado não é compatível"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "O recurso solicitado não foi encontrado"
@ -2293,7 +2309,7 @@ msgstr "Comprimento do valor != comprimento fixo necessário"
msgid "Value length > max_length"
msgstr "O comprimento do valor é > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "A versão era inválida"

View File

@ -217,7 +217,7 @@ msgstr "%q, %q, и %q должны быть одной длинны"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s ошибка 0x%x"
@ -659,7 +659,7 @@ msgstr "Блоки CBC должны быть кратны 16 байтам"
msgid "CIRCUITPY drive could not be found or created."
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC или контрольная сумма неправильная"
@ -888,6 +888,10 @@ msgstr "Дисплей должен иметь 16-битное цветовое
msgid "Display rotation must be in 90 degree increments"
msgstr "Поворот дисплея должен осуществляться с шагом 90 градусов"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drive mode не используется, когда направление является входным."
@ -1048,7 +1052,7 @@ msgstr "Функция требует блокировки"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Общий сбой"
@ -1224,7 +1228,7 @@ msgstr "Неверный BSSID"
msgid "Invalid MAC address"
msgstr "Неверный MAC-адрес"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Недопустимый аргумент"
@ -1254,7 +1258,7 @@ msgstr "Неверный MAC-адрес multicast"
msgid "Invalid pins"
msgstr "Недопустимые пины"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Неверный размер"
@ -1262,7 +1266,7 @@ msgstr "Неверный размер"
msgid "Invalid socket for TLS"
msgstr "Неверный сокет для TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Неверное состояние"
@ -1286,7 +1290,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC адрес был недействительным"
@ -1575,6 +1579,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1642,15 +1654,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1830,10 +1842,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1846,7 +1862,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2270,7 +2286,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2022-08-05 14:18+0000\n"
"PO-Revision-Date: 2022-08-07 15:16+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sv\n"
@ -217,7 +217,7 @@ msgstr "%q, %q och %q måste vara lika långa"
msgid "%q=%q"
msgstr "%q=%q"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s fel 0x%x"
@ -655,7 +655,7 @@ msgstr "CBC-block måste vara multiplar om 16 byte"
msgid "CIRCUITPY drive could not be found or created."
msgstr "CIRCUITPY-enheten kunde inte hittas eller skapas."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC eller checksumma var ogiltig"
@ -877,6 +877,10 @@ msgstr "Displayen måste ha en 16-bitars färgrymd."
msgid "Display rotation must be in 90 degree increments"
msgstr "Displayens rotation måste vara i steg om 90 grader"
#: main.c
msgid "Done"
msgstr "Klar"
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Drivläge används inte när riktning är input."
@ -1035,7 +1039,7 @@ msgstr "Funktionen kräver lås"
msgid "GNSS init"
msgstr "GNSS start"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "Allmänt fel"
@ -1208,7 +1212,7 @@ msgstr "Ogiltig BSSID"
msgid "Invalid MAC address"
msgstr "Ogiltig MAC-adress"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Ogiltigt argument"
@ -1238,7 +1242,7 @@ msgstr "Ogiltig MAC-adress för multicast"
msgid "Invalid pins"
msgstr "Ogiltiga pinnar"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "Ogiltig storlek"
@ -1246,7 +1250,7 @@ msgstr "Ogiltig storlek"
msgid "Invalid socket for TLS"
msgstr "Ogiltig socket för TLS"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "Ogiltigt tillstånd"
@ -1270,7 +1274,7 @@ msgstr "Layer är redan med i en grupp"
msgid "Layer must be a Group or TileGrid subclass"
msgstr "Layer måste vara en underklass av Group eller TileGrid"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC-adressen var ogiltig"
@ -1558,6 +1562,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Udda paritet stöds inte"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr "Av"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr "OK"
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1626,15 +1638,15 @@ msgstr "Bara en färg kan vara genomskinlig i taget"
msgid "Operation not permitted"
msgstr "Åtgärden inte tillåten"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "Operation eller funktion stöds inte"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "Åtgärden orsakade timeout"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "Slut på minne"
@ -1816,10 +1828,14 @@ msgstr "Skrivskyddat filsystem"
msgid "Read-only object"
msgstr "Skrivskyddat objekt"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "Mottaget svar var ogiltigt"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr "Återansluter"
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Uppdaterad för tidigt"
@ -1832,7 +1848,7 @@ msgstr "RemoteTransmissionRequests begränsad till 8 byte"
msgid "Requested AES mode is unsupported"
msgstr "Det begärda AES-läget stöds inte"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "Begärd resurs hittades inte"
@ -2266,7 +2282,7 @@ msgstr "Värdets längde ! = krävd fast längd"
msgid "Value length > max_length"
msgstr "Värdets längd > max_length"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "Versionen var ogiltig"

View File

@ -221,7 +221,7 @@ msgstr "%q, %q ve %q aynı uzunlukta olmalıdır"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s hatası 0x%x"
@ -662,7 +662,7 @@ msgstr "CBC blokları 16 baytın katları şeklinde olmalı"
msgid "CIRCUITPY drive could not be found or created."
msgstr "CIRCUITPY sürücüsü bulunamadı veya oluşturulamadı"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr ""
@ -880,6 +880,10 @@ msgstr ""
msgid "Display rotation must be in 90 degree increments"
msgstr ""
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr ""
@ -1036,7 +1040,7 @@ msgstr ""
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr ""
@ -1205,7 +1209,7 @@ msgstr ""
msgid "Invalid MAC address"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr ""
@ -1235,7 +1239,7 @@ msgstr ""
msgid "Invalid pins"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr ""
@ -1243,7 +1247,7 @@ msgstr ""
msgid "Invalid socket for TLS"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr ""
@ -1267,7 +1271,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr ""
@ -1552,6 +1556,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1617,15 +1629,15 @@ msgstr ""
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr ""
@ -1803,10 +1815,14 @@ msgstr ""
msgid "Read-only object"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr ""
@ -1819,7 +1835,7 @@ msgstr ""
msgid "Requested AES mode is unsupported"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr ""
@ -2241,7 +2257,7 @@ msgstr ""
msgid "Value length > max_length"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr ""

View File

@ -220,7 +220,7 @@ msgstr "%q, %q, hé %q bì xū cháng dù xiāng tóng"
msgid "%q=%q"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#, c-format
msgid "%s error 0x%x"
msgstr "%s cuò wù 0x%x"
@ -662,7 +662,7 @@ msgstr "CBC kuài bìxū shì 16 zìjié de bèishù"
msgid "CIRCUITPY drive could not be found or created."
msgstr "zhǎo bú dào huò chuàng jiàn CIRCUITPY qū dòng qì."
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "CRC or checksum was invalid"
msgstr "CRC huò jiàoyàn hé wúxiào"
@ -742,7 +742,8 @@ msgstr "tōng guò USB kě jiàn shí wú fǎ chóng xīn ān zhuāng '/'."
#: ports/cxd56/common-hal/microcontroller/__init__.c
#: ports/mimxrt10xx/common-hal/microcontroller/__init__.c
msgid "Cannot reset into bootloader because no bootloader is present"
msgstr "wúfǎ chóngxīn qǐdòng dào yǐdǎo chéngxù, yīnwéi yǐdǎo chéngxù bù cúnzài."
msgstr ""
"wúfǎ chóngxīn qǐdòng dào yǐdǎo chéngxù, yīnwéi yǐdǎo chéngxù bù cúnzài."
#: ports/espressif/common-hal/socketpool/Socket.c
msgid "Cannot set socket options"
@ -886,6 +887,10 @@ msgstr "Xiǎnshì bìxū jùyǒu 16 wèi yánsè kōngjiān."
msgid "Display rotation must be in 90 degree increments"
msgstr "Xiǎnshì xuánzhuǎn bìxū 90 dù jiā xīn"
#: main.c
msgid "Done"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Drive mode not used when direction is input."
msgstr "Fāngxiàng shūrù shí qūdòng móshì méiyǒu shǐyòng."
@ -1046,7 +1051,7 @@ msgstr "Hánshù xūyào suǒdìng"
msgid "GNSS init"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Generic Failure"
msgstr "tōng yòng gù zhàng"
@ -1222,7 +1227,7 @@ msgstr "Wúxiào de BSSID"
msgid "Invalid MAC address"
msgstr "wú xiào de MAC dì zhǐ"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
#: py/moduerrno.c
msgid "Invalid argument"
msgstr "Wúxiào de cānshù"
@ -1252,7 +1257,7 @@ msgstr "wú xiào de duō bō MAC dì zhǐ"
msgid "Invalid pins"
msgstr "Wúxiào de yǐn jiǎo"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid size"
msgstr "dà xiǎo wú xiào"
@ -1260,7 +1265,7 @@ msgstr "dà xiǎo wú xiào"
msgid "Invalid socket for TLS"
msgstr "TLS de chā zuò wú xiào"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Invalid state"
msgstr "wú xiào zhuàng tài"
@ -1284,7 +1289,7 @@ msgstr ""
msgid "Layer must be a Group or TileGrid subclass"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "MAC address was invalid"
msgstr "MAC dì zhǐ wú xiào"
@ -1571,6 +1576,14 @@ msgstr ""
msgid "Odd parity is not supported"
msgstr "Bù zhīchí jīshù"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Off"
msgstr ""
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Ok"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
#: ports/raspberrypi/common-hal/audiobusio/PDMIn.c
msgid "Only 8 or 16 bit mono with "
@ -1640,15 +1653,15 @@ msgstr "Yīcì zhǐ néng yǒuyī zhǒng yánsè shì tòumíng de"
msgid "Operation not permitted"
msgstr ""
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation or feature not supported"
msgstr "bù zhī chí cāo zuò huò gōng néng"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Operation timed out"
msgstr "cāo zuò yǐ fēn shí"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Out of memory"
msgstr "nèi cún bù zú"
@ -1828,10 +1841,14 @@ msgstr "Zhǐ dú wénjiàn xìtǒng"
msgid "Read-only object"
msgstr "Zhǐ dú duìxiàng"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Received response was invalid"
msgstr "shōu dào de xiǎng yìng wú xiào"
#: supervisor/shared/bluetooth/bluetooth.c
msgid "Reconnecting"
msgstr ""
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Shuāxīn tài kuàile"
@ -1844,7 +1861,7 @@ msgstr "RemoteTransmissionRequests xiànzhì wèi 8 gè zì jié"
msgid "Requested AES mode is unsupported"
msgstr "Qǐngqiú de AES móshì bù shòu zhīchí"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Requested resource not found"
msgstr "wèi zhǎo dào qǐng qiú de zī yuán"
@ -2277,7 +2294,7 @@ msgstr "Zhí chángdù != Suǒ xū de gùdìng chángdù"
msgid "Value length > max_length"
msgstr "Zhí chángdù > zuìdà chángdù"
#: ports/espressif/bindings/espidf/__init__.c ports/espressif/esp_error.c
#: ports/espressif/common-hal/espidf/__init__.c ports/espressif/esp_error.c
msgid "Version was invalid"
msgstr "bǎn běn wú xiào"

View File

@ -33,7 +33,7 @@ CIRCUITPY_BLEIO = 0
CIRCUITPY_BUSDEVICE = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_MSGPACK = 0
CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_NVM = 0

View File

@ -18,7 +18,7 @@ CIRCUITPY_AUDIOPWMIO = 0
CIRCUITPY_BITBANGIO = 0
CIRCUITPY_BITBANG_APA102 = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_PARALLELDISPLAY = 0
CIRCUITPY_PIXELBUF = 0

View File

@ -22,7 +22,7 @@ CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_BITBANGIO = 0
CIRCUITPY_BITMAPTOOLS = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_PARALLELDISPLAY = 0
CIRCUITPY_PIXELBUF = 0

View File

@ -23,7 +23,7 @@ CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_BLEIO = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_KEYPAD = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_TOUCHIO = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_PS2IO = 0

View File

@ -22,7 +22,7 @@ CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_KEYPAD = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_TOUCHIO = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_PS2IO = 0

View File

@ -1 +0,0 @@
// No i2cperipheral module functions.

View File

@ -24,7 +24,7 @@
* THE SOFTWARE.
*/
#include "shared-bindings/i2cperipheral/I2CPeripheral.h"
#include "shared-bindings/i2ctarget/I2CTarget.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "common-hal/busio/I2C.h"
@ -36,7 +36,7 @@
#include "hal/include/hal_gpio.h"
#include "peripherals/samd/sercom.h"
void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_peripheral_obj_t *self,
void common_hal_i2ctarget_i2c_target_construct(i2ctarget_i2c_target_obj_t *self,
const mcu_pin_obj_t *scl, const mcu_pin_obj_t *sda,
uint8_t *addresses, unsigned int num_addresses, bool smbus) {
uint8_t sercom_index;
@ -100,12 +100,12 @@ void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_periphe
sercom->I2CS.CTRLA.bit.ENABLE = 1;
}
bool common_hal_i2cperipheral_i2c_peripheral_deinited(i2cperipheral_i2c_peripheral_obj_t *self) {
bool common_hal_i2ctarget_i2c_target_deinited(i2ctarget_i2c_target_obj_t *self) {
return self->sda_pin == NO_PIN;
}
void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral_obj_t *self) {
if (common_hal_i2cperipheral_i2c_peripheral_deinited(self)) {
void common_hal_i2ctarget_i2c_target_deinit(i2ctarget_i2c_target_obj_t *self) {
if (common_hal_i2ctarget_i2c_target_deinited(self)) {
return;
}
@ -117,7 +117,7 @@ void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral
self->scl_pin = NO_PIN;
}
static int i2c_peripheral_check_error(i2cperipheral_i2c_peripheral_obj_t *self, bool raise) {
static int i2c_target_check_error(i2ctarget_i2c_target_obj_t *self, bool raise) {
if (!self->sercom->I2CS.INTFLAG.bit.ERROR) {
return 0;
}
@ -136,8 +136,8 @@ static int i2c_peripheral_check_error(i2cperipheral_i2c_peripheral_obj_t *self,
return -err;
}
int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *address, bool *is_read, bool *is_restart) {
int err = i2c_peripheral_check_error(self, false);
int common_hal_i2ctarget_i2c_target_is_addressed(i2ctarget_i2c_target_obj_t *self, uint8_t *address, bool *is_read, bool *is_restart) {
int err = i2c_target_check_error(self, false);
if (err) {
return err;
}
@ -154,22 +154,22 @@ int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_perip
for (unsigned int i = 0; i < self->num_addresses; i++) {
if (*address == self->addresses[i]) {
common_hal_i2cperipheral_i2c_peripheral_ack(self, true);
common_hal_i2ctarget_i2c_target_ack(self, true);
return 1;
}
}
// This should clear AMATCH, but it doesn't...
common_hal_i2cperipheral_i2c_peripheral_ack(self, false);
common_hal_i2ctarget_i2c_target_ack(self, false);
return 0;
}
int common_hal_i2cperipheral_i2c_peripheral_read_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *data) {
int common_hal_i2ctarget_i2c_target_read_byte(i2ctarget_i2c_target_obj_t *self, uint8_t *data) {
for (int t = 0; t < 100 && !self->sercom->I2CS.INTFLAG.reg; t++) {
mp_hal_delay_us(10);
}
i2c_peripheral_check_error(self, true);
i2c_target_check_error(self, true);
if (!self->sercom->I2CS.INTFLAG.bit.DRDY ||
self->sercom->I2CS.INTFLAG.bit.PREC ||
@ -181,12 +181,12 @@ int common_hal_i2cperipheral_i2c_peripheral_read_byte(i2cperipheral_i2c_peripher
return 1;
}
int common_hal_i2cperipheral_i2c_peripheral_write_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t data) {
int common_hal_i2ctarget_i2c_target_write_byte(i2ctarget_i2c_target_obj_t *self, uint8_t data) {
for (int t = 0; !self->sercom->I2CS.INTFLAG.reg && t < 100; t++) {
mp_hal_delay_us(10);
}
i2c_peripheral_check_error(self, true);
i2c_target_check_error(self, true);
if (self->sercom->I2CS.INTFLAG.bit.PREC) {
return 0;
@ -208,12 +208,12 @@ int common_hal_i2cperipheral_i2c_peripheral_write_byte(i2cperipheral_i2c_periphe
return 1;
}
void common_hal_i2cperipheral_i2c_peripheral_ack(i2cperipheral_i2c_peripheral_obj_t *self, bool ack) {
void common_hal_i2ctarget_i2c_target_ack(i2ctarget_i2c_target_obj_t *self, bool ack) {
self->sercom->I2CS.CTRLB.bit.ACKACT = !ack;
self->sercom->I2CS.CTRLB.bit.CMD = 0x03;
}
void common_hal_i2cperipheral_i2c_peripheral_close(i2cperipheral_i2c_peripheral_obj_t *self) {
void common_hal_i2ctarget_i2c_target_close(i2ctarget_i2c_target_obj_t *self) {
for (int t = 0; !self->sercom->I2CS.INTFLAG.reg && t < 100; t++) {
mp_hal_delay_us(10);
}
@ -223,7 +223,7 @@ void common_hal_i2cperipheral_i2c_peripheral_close(i2cperipheral_i2c_peripheral_
}
if (!self->sercom->I2CS.STATUS.bit.DIR) {
common_hal_i2cperipheral_i2c_peripheral_ack(self, false);
common_hal_i2ctarget_i2c_target_ack(self, false);
} else {
int i = 0;
while (self->sercom->I2CS.INTFLAG.reg == SERCOM_I2CS_INTFLAG_DRDY) {

View File

@ -24,8 +24,8 @@
* THE SOFTWARE.
*/
#ifndef MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#define MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#ifndef MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_TARGET_H
#define MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_TARGET_H
#include "common-hal/microcontroller/Pin.h"
#include "py/obj.h"
@ -40,6 +40,6 @@ typedef struct {
uint8_t scl_pin;
uint8_t sda_pin;
bool writing;
} i2cperipheral_i2c_peripheral_obj_t;
} i2ctarget_i2c_target_obj_t;
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#endif // MICROPY_INCLUDED_ATMEL_SAMD_COMMON_HAL_BUSIO_I2C_TARGET_H

View File

@ -0,0 +1 @@
// No i2ctarget module functions.

View File

@ -38,7 +38,7 @@ CIRCUITPY_FRAMEBUFFERIO ?= 0
CIRCUITPY_FREQUENCYIO ?= 0
CIRCUITPY_GETPASS ?= 0
CIRCUITPY_GIFIO ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 0
CIRCUITPY_I2CTARGET ?= 0
CIRCUITPY_JSON ?= 0
CIRCUITPY_KEYPAD ?= 0
CIRCUITPY_MSGPACK ?= 0

View File

@ -9,7 +9,7 @@ CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_AUDIOIO = 0
CIRCUITPY_COUNTIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NVM = 0
CIRCUITPY_PARALLELDISPLAY = 0
CIRCUITPY_PULSEIO = 0

View File

@ -15,7 +15,7 @@ CIRCUITPY_COUNTIO = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_GNSS = 1
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_KEYPAD = 0
CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_NVM = 0

View File

@ -10,9 +10,6 @@ LONGINT_IMPL = MPZ
# so increase it to 32.
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
CIRCUITPY_STATUS_BAR = 0
CIRCUITPY_WEB_WORKFLOW = 0
CIRCUITPY_ESP_FLASH_MODE = dio
CIRCUITPY_ESP_FLASH_FREQ = 40m
CIRCUITPY_ESP_FLASH_SIZE = 4MB

View File

@ -1,4 +1,6 @@
#include "py/objtuple.h"
#include "shared-bindings/board/__init__.h"
#include "shared-module/displayio/__init__.h"
// Pin names from: https://wiki.odroid.com/odroid_go/odroid_go
@ -53,5 +55,6 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_EXT4), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].display)},
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -0,0 +1,48 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 Scott Shawcroft 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"
void board_init(void) {
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {
return false;
}
void reset_board(void) {
}
void board_deinit(void) {
}

View File

@ -0,0 +1,41 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2019 Scott Shawcroft 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.
*/
// Micropython setup
#define MICROPY_HW_BOARD_NAME "Bee-Motion-S3"
#define MICROPY_HW_MCU_NAME "ESP32S3"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO48)
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO36)
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO37)
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO17)
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO15)
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO16)

View File

@ -0,0 +1,20 @@
USB_VID = 0x303A
USB_PID = 0x8114
USB_PRODUCT = "Bee-Motion-S3"
USB_MANUFACTURER = "Smart Bee Designs"
IDF_TARGET = esp32s3
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = MPZ
# The default queue depth of 16 overflows on release builds,
# so increase it to 32.
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
CIRCUITPY_ESP_FLASH_MODE = dio
CIRCUITPY_ESP_FLASH_FREQ = 80m
CIRCUITPY_ESP_FLASH_SIZE = 8MB
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -0,0 +1,102 @@
#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_IO5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_A11), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_A12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_A12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_A13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_A14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_A15), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) },
{ MP_ROM_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_GPIO16) },
{ MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) },
{ MP_ROM_QSTR(MP_QSTR_D17), MP_ROM_PTR(&pin_GPIO17) },
{ MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_D35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_D36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_D37), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_IO48), MP_ROM_PTR(&pin_GPIO48) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO40) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL_POWER), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_D43), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44)},
{ MP_ROM_QSTR(MP_QSTR_D44), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_BOOT_BTN), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_BATTERY), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VBAT), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VBAT_SENSE), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VOLTAGE_MONITOR), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VBUS_SENSE), MP_ROM_PTR(&pin_GPIO2) },
{ MP_ROM_QSTR(MP_QSTR_LIGHT), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_LIGHT_SENSOR), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_PIR), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_PIR_SENSOR), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -0,0 +1,6 @@
# CONFIG_ESP32S3_SPIRAM_SUPPORT is not set
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="smartbeedesigns_bee_motion_s3"
# end of LWIP

View File

@ -0,0 +1,48 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 Scott Shawcroft 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"
void board_init(void) {
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {
return false;
}
void reset_board(void) {
}
void board_deinit(void) {
}

View File

@ -0,0 +1,41 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2019 Scott Shawcroft 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.
*/
// Micropython setup
#define MICROPY_HW_BOARD_NAME "Bee-S3"
#define MICROPY_HW_MCU_NAME "ESP32S3"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO48)
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO36)
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO37)
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO39)
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO35)
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO38)

View File

@ -0,0 +1,20 @@
USB_VID = 0x303A
USB_PID = 0x8111
USB_PRODUCT = "Bee-S3"
USB_MANUFACTURER = "Smart Bee Designs"
IDF_TARGET = esp32s3
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = MPZ
# The default queue depth of 16 overflows on release builds,
# so increase it to 32.
CFLAGS += -DCFG_TUD_TASK_QUEUE_SZ=32
CIRCUITPY_ESP_FLASH_MODE = dio
CIRCUITPY_ESP_FLASH_FREQ = 80m
CIRCUITPY_ESP_FLASH_SIZE = 8MB
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -0,0 +1,79 @@
#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_IO3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_D35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_D36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_D37), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_D38), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_IO39), MP_ROM_PTR(&pin_GPIO39) },
{ MP_ROM_QSTR(MP_QSTR_D39), MP_ROM_PTR(&pin_GPIO39) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO39) },
{ MP_ROM_QSTR(MP_QSTR_IO48), MP_ROM_PTR(&pin_GPIO48) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO48) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_D43), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44)},
{ MP_ROM_QSTR(MP_QSTR_D44), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_BATTERY), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VBAT), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VBAT_SENSE), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_VOLTAGE_MONITOR), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL_POWER), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -0,0 +1,6 @@
# CONFIG_ESP32S3_SPIRAM_SUPPORT is not set
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="smartbeedesigns_bee_s3"
# end of LWIP

View File

@ -1 +0,0 @@
// No i2cperipheral module functions.

View File

@ -24,15 +24,15 @@
* THE SOFTWARE.
*/
#include "shared-bindings/i2cperipheral/I2CPeripheral.h"
#include "shared-bindings/i2ctarget/I2CTarget.h"
#include "py/mperrno.h"
#include "py/runtime.h"
#include "common-hal/i2cperipheral/I2CPeripheral.h"
#include "common-hal/i2ctarget/I2CTarget.h"
#include "shared-bindings/microcontroller/Pin.h"
void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_peripheral_obj_t *self,
void common_hal_i2ctarget_i2c_target_construct(i2ctarget_i2c_target_obj_t *self,
const mcu_pin_obj_t *scl, const mcu_pin_obj_t *sda,
uint8_t *addresses, unsigned int num_addresses, bool smbus) {
// Pins 45 and 46 are "strapping" pins that impact start up behavior. They usually need to
@ -54,7 +54,7 @@ void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_periphe
self->i2c_num = peripherals_i2c_get_free_num();
if (self->i2c_num == I2C_NUM_MAX) {
mp_raise_ValueError(translate("All I2C peripherals are in use"));
mp_raise_ValueError(translate("All I2C targets are in use"));
}
const i2c_config_t i2c_conf = {
@ -73,7 +73,7 @@ void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_periphe
if (err == ESP_FAIL) {
mp_raise_OSError(MP_EIO);
} else {
mp_arg_error_invalid(MP_QSTR_I2CPeripheral);
mp_arg_error_invalid(MP_QSTR_I2CTarget);
}
}
@ -81,12 +81,12 @@ void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_periphe
claim_pin(scl);
}
bool common_hal_i2cperipheral_i2c_peripheral_deinited(i2cperipheral_i2c_peripheral_obj_t *self) {
bool common_hal_i2ctarget_i2c_target_deinited(i2ctarget_i2c_target_obj_t *self) {
return self->sda_pin == NULL;
}
void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral_obj_t *self) {
if (common_hal_i2cperipheral_i2c_peripheral_deinited(self)) {
void common_hal_i2ctarget_i2c_target_deinit(i2ctarget_i2c_target_obj_t *self) {
if (common_hal_i2ctarget_i2c_target_deinited(self)) {
return;
}
@ -98,7 +98,7 @@ void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral
self->scl_pin = NULL;
}
int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_peripheral_obj_t *self,
int common_hal_i2ctarget_i2c_target_is_addressed(i2ctarget_i2c_target_obj_t *self,
uint8_t *address, bool *is_read, bool *is_restart) {
*address = self->addresses[0];
*is_read = true;
@ -106,21 +106,21 @@ int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_perip
return 1;
}
int common_hal_i2cperipheral_i2c_peripheral_read_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *data) {
int common_hal_i2ctarget_i2c_target_read_byte(i2ctarget_i2c_target_obj_t *self, uint8_t *data) {
i2c_slave_read_buffer(self->i2c_num, data, 128, 0);
return 1;
}
int common_hal_i2cperipheral_i2c_peripheral_write_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t data) {
int common_hal_i2ctarget_i2c_target_write_byte(i2ctarget_i2c_target_obj_t *self, uint8_t data) {
i2c_reset_tx_fifo(self->i2c_num);
i2c_slave_write_buffer(self->i2c_num, &data, 128, 0);
return 1;
}
void common_hal_i2cperipheral_i2c_peripheral_ack(i2cperipheral_i2c_peripheral_obj_t *self, bool ack) {
void common_hal_i2ctarget_i2c_target_ack(i2ctarget_i2c_target_obj_t *self, bool ack) {
}
void common_hal_i2cperipheral_i2c_peripheral_close(i2cperipheral_i2c_peripheral_obj_t *self) {
void common_hal_i2ctarget_i2c_target_close(i2ctarget_i2c_target_obj_t *self) {
}

View File

@ -24,8 +24,8 @@
* THE SOFTWARE.
*/
#ifndef MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#define MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#ifndef MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_TARGET_H
#define MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_TARGET_H
#include "py/obj.h"
#include "peripherals/i2c.h"
@ -38,6 +38,6 @@ typedef struct {
uint8_t num_addresses;
const mcu_pin_obj_t *scl_pin;
const mcu_pin_obj_t *sda_pin;
} i2cperipheral_i2c_peripheral_obj_t;
} i2ctarget_i2c_target_obj_t;
#endif // MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_PERIPHERAL_H
#endif // MICROPY_INCLUDED_ESPRESSIF_COMMON_HAL_BUSIO_I2C_TARGET_H

View File

@ -0,0 +1 @@
// No i2ctarget module functions.

View File

@ -21,7 +21,7 @@ CIRCUITPY_FRAMEBUFFERIO ?= 1
CIRCUITPY_FREQUENCYIO ?= 1
CIRCUITPY_HASHLIB ?= 1
CIRCUITPY_IMAGECAPTURE ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 1
CIRCUITPY_I2CTARGET ?= 1
CIRCUITPY_RGBMATRIX ?= 1
CIRCUITPY_ROTARYIO ?= 1
CIRCUITPY_NVM ?= 1

View File

@ -18,7 +18,7 @@ CIRCUITPY_BUSIO = 0
CIRCUITPY_COUNTIO = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NVM = 0
CIRCUITPY_PWMIO = 0
CIRCUITPY_PULSEIO = 0

View File

@ -14,7 +14,7 @@ CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_BUSDEVICE = 1
CIRCUITPY_COUNTIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NVM = 0
CIRCUITPY_PARALLELDISPLAY = 0
CIRCUITPY_PULSEIO = 0

View File

@ -27,7 +27,7 @@ CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_BLEIO ?= 1
# No I2CPeripheral implementation
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_RTC ?= 1

View File

@ -97,7 +97,7 @@
//| """Construct a StateMachine object on the given pins with the given program.
//|
//| :param ReadableBuffer program: the program to run with the state machine
//| :param int frequency: the target clock frequency of the state machine. Actual may be less.
//| :param int frequency: the target clock frequency of the state machine. Actual may be less. Use 0 for system clock speed.
//| :param ReadableBuffer init: a program to run once at start up. This is run after program
//| is started so instructions may be intermingled
//| :param ~microcontroller.Pin first_out_pin: the first pin to use with the OUT instruction

View File

@ -0,0 +1,40 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2021 Scott Shawcroft 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"
void board_init(void) {
}
bool board_requests_safe_mode(void) {
return false;
}
void reset_board(void) {
}
void board_deinit(void) {
}

View File

@ -0,0 +1,5 @@
#define MICROPY_HW_BOARD_NAME "takayoshiotake Octave RP2040"
#define MICROPY_HW_MCU_NAME "rp2040"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO12)
#define CIRCUITPY_STATUS_LED_POWER (&pin_GPIO11)

View File

@ -0,0 +1,9 @@
USB_VID = 0x1209
USB_PID = 0x8CAE
USB_PRODUCT = "Octave RP2040"
USB_MANUFACTURER = "takayoshiotake"
CHIP_VARIANT = RP2040
CHIP_FAMILY = rp2
EXTERNAL_FLASH_DEVICES = "W25Q64JVxQ"

View File

@ -0,0 +1,4 @@
// Put board-specific pico-sdk definitions here. This file must exist.
// Allow extra time for xosc to start.
#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64

View File

@ -0,0 +1,45 @@
#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_GPIO0), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_GPIO1), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_GPIO2), MP_ROM_PTR(&pin_GPIO2) },
{ MP_ROM_QSTR(MP_QSTR_GPIO3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_GPIO4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_GPIO5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_GPIO6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_GPIO7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_GPIO8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_GPIO9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_GPIO10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_GPIO11), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_GPIO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_GPIO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_GPIO14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_GPIO15), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_GPIO16), MP_ROM_PTR(&pin_GPIO16) },
{ MP_ROM_QSTR(MP_QSTR_GPIO17), MP_ROM_PTR(&pin_GPIO17) },
{ MP_ROM_QSTR(MP_QSTR_GPIO18), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_GPIO19), MP_ROM_PTR(&pin_GPIO19) },
{ MP_ROM_QSTR(MP_QSTR_GPIO20), MP_ROM_PTR(&pin_GPIO20) },
{ MP_ROM_QSTR(MP_QSTR_GPIO21), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_GPIO22), MP_ROM_PTR(&pin_GPIO22) },
{ MP_ROM_QSTR(MP_QSTR_GPIO23), MP_ROM_PTR(&pin_GPIO23) },
{ MP_ROM_QSTR(MP_QSTR_GPIO24), MP_ROM_PTR(&pin_GPIO24) },
{ MP_ROM_QSTR(MP_QSTR_GPIO25), MP_ROM_PTR(&pin_GPIO25) },
{ MP_ROM_QSTR(MP_QSTR_GPIO26), MP_ROM_PTR(&pin_GPIO26) },
{ MP_ROM_QSTR(MP_QSTR_GPIO27), MP_ROM_PTR(&pin_GPIO27) },
{ MP_ROM_QSTR(MP_QSTR_GPIO28), MP_ROM_PTR(&pin_GPIO28) },
{ MP_ROM_QSTR(MP_QSTR_GPIO29), MP_ROM_PTR(&pin_GPIO29) },
{ MP_ROM_QSTR(MP_QSTR_ADC0), MP_ROM_PTR(&pin_GPIO26) },
{ MP_ROM_QSTR(MP_QSTR_ADC1), MP_ROM_PTR(&pin_GPIO27) },
{ MP_ROM_QSTR(MP_QSTR_ADC2), MP_ROM_PTR(&pin_GPIO28) },
{ MP_ROM_QSTR(MP_QSTR_ADC3), MP_ROM_PTR(&pin_GPIO29) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIX), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIX_POWER), MP_ROM_PTR(&pin_GPIO11) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -20,7 +20,7 @@ CIRCUITPY_ROTARYIO_SOFTENCODER = 1
# Things that need to be implemented.
# Use PWM interally
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
CIRCUITPY_NVM = 1
# Use PIO interally
CIRCUITPY_PULSEIO ?= 1

View File

@ -42,7 +42,7 @@ CIRCUITPY_PWMIO = 1
CIRCUITPY_AUDIOPWMIO = 1
CIRCUITPY_CANIO = 0
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_I2CTARGET = 0
# Requires SPI, PulseIO (stub ok):
CIRCUITPY_DISPLAYIO = 0

View File

@ -24,7 +24,7 @@ ifeq ($(MCU_SERIES),F4)
CIRCUITPY_AUDIOBUSIO ?= 0
CIRCUITPY_COUNTIO ?= 0
CIRCUITPY_FREQUENCYIO ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 0
CIRCUITPY_I2CTARGET ?= 0
CIRCUITPY_NVM ?= 0
CIRCUITPY_ROTARYIO ?= 0
CIRCUITPY_RTC ?= 1
@ -39,7 +39,7 @@ ifeq ($(MCU_SERIES),H7)
CIRCUITPY_AUDIOIO ?= 0
CIRCUITPY_COUNTIO ?= 0
CIRCUITPY_FREQUENCYIO ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 0
CIRCUITPY_I2CTARGET ?= 0
CIRCUITPY_NEOPIXEL_WRITE ?= 0
CIRCUITPY_NVM ?= 0
CIRCUITPY_PULSEIO ?= 0
@ -58,7 +58,7 @@ ifeq ($(MCU_SERIES),F7)
CIRCUITPY_AUDIOIO ?= 0
CIRCUITPY_COUNTIO ?= 0
CIRCUITPY_FREQUENCYIO ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 0
CIRCUITPY_I2CTARGET ?= 0
CIRCUITPY_NEOPIXEL_WRITE ?= 0
CIRCUITPY_NVM ?= 0
CIRCUITPY_ROTARYIO ?= 0
@ -75,7 +75,7 @@ ifeq ($(MCU_SERIES),L4)
CIRCUITPY_AUDIOIO ?= 0
CIRCUITPY_COUNTIO ?= 0
CIRCUITPY_FREQUENCYIO ?= 0
CIRCUITPY_I2CPERIPHERAL ?= 0
CIRCUITPY_I2CTARGET ?= 0
CIRCUITPY_NEOPIXEL_WRITE ?= 0
CIRCUITPY_NVM ?= 0
CIRCUITPY_ROTARYIO ?= 0

View File

@ -210,8 +210,8 @@ endif
ifeq ($(CIRCUITPY_HASHLIB),1)
SRC_PATTERNS += hashlib/%
endif
ifeq ($(CIRCUITPY_I2CPERIPHERAL),1)
SRC_PATTERNS += i2cperipheral/%
ifeq ($(CIRCUITPY_I2CTARGET),1)
SRC_PATTERNS += i2ctarget/%
endif
ifeq ($(CIRCUITPY_IMAGECAPTURE),1)
SRC_PATTERNS += imagecapture/%
@ -424,8 +424,8 @@ SRC_COMMON_HAL_ALL = \
gnss/SatelliteSystem.c \
hashlib/__init__.c \
hashlib/Hash.c \
i2cperipheral/I2CPeripheral.c \
i2cperipheral/__init__.c \
i2ctarget/I2CTarget.c \
i2ctarget/__init__.c \
microcontroller/Pin.c \
microcontroller/Processor.c \
microcontroller/__init__.c \

View File

@ -245,8 +245,8 @@ CFLAGS += -DCIRCUITPY_GNSS=$(CIRCUITPY_GNSS)
CIRCUITPY_HASHLIB ?= $(CIRCUITPY_WEB_WORKFLOW)
CFLAGS += -DCIRCUITPY_HASHLIB=$(CIRCUITPY_HASHLIB)
CIRCUITPY_I2CPERIPHERAL ?= $(CIRCUITPY_FULL_BUILD)
CFLAGS += -DCIRCUITPY_I2CPERIPHERAL=$(CIRCUITPY_I2CPERIPHERAL)
CIRCUITPY_I2CTARGET ?= $(CIRCUITPY_FULL_BUILD)
CFLAGS += -DCIRCUITPY_I2CTARGET=$(CIRCUITPY_I2CTARGET)
CIRCUITPY_IMAGECAPTURE ?= 0
CFLAGS += -DCIRCUITPY_IMAGECAPTURE=$(CIRCUITPY_IMAGECAPTURE)

View File

@ -25,7 +25,7 @@
*/
#include "shared-bindings/microcontroller/Pin.h"
#include "shared-bindings/i2cperipheral/I2CPeripheral.h"
#include "shared-bindings/i2ctarget/I2CTarget.h"
#include "shared-bindings/time/__init__.h"
#include "shared-bindings/util.h"
@ -39,33 +39,33 @@
#include "py/objproperty.h"
#include "py/runtime.h"
STATIC mp_obj_t mp_obj_new_i2cperipheral_i2c_peripheral_request(i2cperipheral_i2c_peripheral_obj_t *peripheral, uint8_t address, bool is_read, bool is_restart) {
i2cperipheral_i2c_peripheral_request_obj_t *self = m_new_obj(i2cperipheral_i2c_peripheral_request_obj_t);
self->base.type = &i2cperipheral_i2c_peripheral_request_type;
self->peripheral = peripheral;
STATIC mp_obj_t mp_obj_new_i2ctarget_i2c_target_request(i2ctarget_i2c_target_obj_t *target, uint8_t address, bool is_read, bool is_restart) {
i2ctarget_i2c_target_request_obj_t *self = m_new_obj(i2ctarget_i2c_target_request_obj_t);
self->base.type = &i2ctarget_i2c_target_request_type;
self->target = target;
self->address = address;
self->is_read = is_read;
self->is_restart = is_restart;
return (mp_obj_t)self;
}
//| class I2CPeripheral:
//| """Two wire serial protocol peripheral"""
//| class I2CTarget:
//| """Two wire serial protocol target"""
//|
//| def __init__(self, scl: microcontroller.Pin, sda: microcontroller.Pin, addresses: Sequence[int], smbus: bool = False) -> None:
//| """I2C is a two-wire protocol for communicating between devices.
//| This implements the peripheral (sensor, secondary) side.
//| This implements the target (peripheral, sensor, secondary) side.
//|
//| :param ~microcontroller.Pin scl: The clock pin
//| :param ~microcontroller.Pin sda: The data pin
//| :param addresses: The I2C addresses to respond to (how many is hw dependent).
//| :param addresses: The I2C addresses to respond to (how many is hardware dependent).
//| :type addresses: list[int]
//| :param bool smbus: Use SMBUS timings if the hardware supports it"""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {
i2cperipheral_i2c_peripheral_obj_t *self = m_new_obj(i2cperipheral_i2c_peripheral_obj_t);
self->base.type = &i2cperipheral_i2c_peripheral_type;
STATIC mp_obj_t i2ctarget_i2c_target_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *all_args) {
i2ctarget_i2c_target_obj_t *self = m_new_obj(i2ctarget_i2c_target_obj_t);
self->base.type = &i2ctarget_i2c_target_type;
enum { ARG_scl, ARG_sda, ARG_addresses, ARG_smbus };
static const mp_arg_t allowed_args[] = {
{ MP_QSTR_scl, MP_ARG_REQUIRED | MP_ARG_OBJ },
@ -99,7 +99,7 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_make_new(const mp_obj_type_t *type,
mp_raise_ValueError(translate("addresses is empty"));
}
common_hal_i2cperipheral_i2c_peripheral_construct(self, scl, sda, addresses, i, args[ARG_smbus].u_bool);
common_hal_i2ctarget_i2c_target_construct(self, scl, sda, addresses, i, args[ARG_smbus].u_bool);
return (mp_obj_t)self;
}
@ -107,15 +107,15 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_make_new(const mp_obj_type_t *type,
//| """Releases control of the underlying hardware so other classes can use it."""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_obj_deinit(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_type));
i2cperipheral_i2c_peripheral_obj_t *self = MP_OBJ_TO_PTR(self_in);
common_hal_i2cperipheral_i2c_peripheral_deinit(self);
STATIC mp_obj_t i2ctarget_i2c_target_obj_deinit(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_type));
i2ctarget_i2c_target_obj_t *self = MP_OBJ_TO_PTR(self_in);
common_hal_i2ctarget_i2c_target_deinit(self);
return mp_const_none;
}
MP_DEFINE_CONST_FUN_OBJ_1(i2cperipheral_i2c_peripheral_deinit_obj, i2cperipheral_i2c_peripheral_obj_deinit);
MP_DEFINE_CONST_FUN_OBJ_1(i2ctarget_i2c_target_deinit_obj, i2ctarget_i2c_target_obj_deinit);
//| def __enter__(self) -> I2CPeripheral:
//| def __enter__(self) -> I2CTarget:
//| """No-op used in Context Managers."""
//| ...
//|
@ -126,25 +126,25 @@ MP_DEFINE_CONST_FUN_OBJ_1(i2cperipheral_i2c_peripheral_deinit_obj, i2cperipheral
//| :ref:`lifetime-and-contextmanagers` for more info."""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_obj___exit__(size_t n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2cperipheral_i2c_peripheral_type));
i2cperipheral_i2c_peripheral_obj_t *self = MP_OBJ_TO_PTR(args[0]);
common_hal_i2cperipheral_i2c_peripheral_deinit(self);
STATIC mp_obj_t i2ctarget_i2c_target_obj___exit__(size_t n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2ctarget_i2c_target_type));
i2ctarget_i2c_target_obj_t *self = MP_OBJ_TO_PTR(args[0]);
common_hal_i2ctarget_i2c_target_deinit(self);
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2cperipheral_i2c_peripheral___exit___obj, 4, 4, i2cperipheral_i2c_peripheral_obj___exit__);
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2ctarget_i2c_target___exit___obj, 4, 4, i2ctarget_i2c_target_obj___exit__);
//| def request(self, timeout: float = -1) -> I2CPeripheralRequest:
//| def request(self, timeout: float = -1) -> I2CTargetRequest:
//| """Wait for an I2C request.
//|
//| :param float timeout: Timeout in seconds. Zero means wait forever, a negative value means check once
//| :return: I2C Slave Request or None if timeout=-1 and there's no request
//| :rtype: ~i2cperipheral.I2CPeripheralRequest"""
//| :return: I2CTargetRequest or None if timeout=-1 and there's no request
//| :rtype: ~i2ctarget.I2CTargetRequest"""
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
mp_check_self(mp_obj_is_type(pos_args[0], &i2cperipheral_i2c_peripheral_type));
i2cperipheral_i2c_peripheral_obj_t *self = MP_OBJ_TO_PTR(pos_args[0]);
if (common_hal_i2cperipheral_i2c_peripheral_deinited(self)) {
STATIC mp_obj_t i2ctarget_i2c_target_request(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
mp_check_self(mp_obj_is_type(pos_args[0], &i2ctarget_i2c_target_type));
i2ctarget_i2c_target_obj_t *self = MP_OBJ_TO_PTR(pos_args[0]);
if (common_hal_i2ctarget_i2c_target_deinited(self)) {
raise_deinited_error();
}
enum { ARG_timeout };
@ -181,7 +181,7 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request(size_t n_args, const mp_obj
return mp_const_none;
}
int status = common_hal_i2cperipheral_i2c_peripheral_is_addressed(self, &address, &is_read, &is_restart);
int status = common_hal_i2ctarget_i2c_target_is_addressed(self, &address, &is_read, &is_restart);
if (status < 0) {
// On error try one more time before bailing out
if (last_error) {
@ -199,7 +199,7 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request(size_t n_args, const mp_obj
continue;
}
return mp_obj_new_i2cperipheral_i2c_peripheral_request(self, address, is_read, is_restart);
return mp_obj_new_i2ctarget_i2c_target_request(self, address, is_read, is_restart);
} while (forever || common_hal_time_monotonic_ms() < timeout_end);
if (timeout_ms > 0) {
@ -207,42 +207,42 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request(size_t n_args, const mp_obj
}
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(i2cperipheral_i2c_peripheral_request_obj, 1, i2cperipheral_i2c_peripheral_request);
STATIC MP_DEFINE_CONST_FUN_OBJ_KW(i2ctarget_i2c_target_request_obj, 1, i2ctarget_i2c_target_request);
STATIC const mp_rom_map_elem_t i2cperipheral_i2c_peripheral_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_deinit_obj) },
STATIC const mp_rom_map_elem_t i2ctarget_i2c_target_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&i2ctarget_i2c_target_deinit_obj) },
{ MP_ROM_QSTR(MP_QSTR___enter__), MP_ROM_PTR(&default___enter___obj) },
{ MP_ROM_QSTR(MP_QSTR___exit__), MP_ROM_PTR(&i2cperipheral_i2c_peripheral___exit___obj) },
{ MP_ROM_QSTR(MP_QSTR_request), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_obj) },
{ MP_ROM_QSTR(MP_QSTR___exit__), MP_ROM_PTR(&i2ctarget_i2c_target___exit___obj) },
{ MP_ROM_QSTR(MP_QSTR_request), MP_ROM_PTR(&i2ctarget_i2c_target_request_obj) },
};
STATIC MP_DEFINE_CONST_DICT(i2cperipheral_i2c_peripheral_locals_dict, i2cperipheral_i2c_peripheral_locals_dict_table);
STATIC MP_DEFINE_CONST_DICT(i2ctarget_i2c_target_locals_dict, i2ctarget_i2c_target_locals_dict_table);
const mp_obj_type_t i2cperipheral_i2c_peripheral_type = {
const mp_obj_type_t i2ctarget_i2c_target_type = {
{ &mp_type_type },
.name = MP_QSTR_I2CPeripheral,
.make_new = i2cperipheral_i2c_peripheral_make_new,
.locals_dict = (mp_obj_dict_t *)&i2cperipheral_i2c_peripheral_locals_dict,
.name = MP_QSTR_I2CTarget,
.make_new = i2ctarget_i2c_target_make_new,
.locals_dict = (mp_obj_dict_t *)&i2ctarget_i2c_target_locals_dict,
};
//| class I2CPeripheralRequest:
//| class I2CTargetRequest:
//|
//| def __init__(self, peripheral: i2cperipheral.I2CPeripheral, address: int, is_read: bool, is_restart: bool) -> None:
//| def __init__(self, target: i2ctarget.I2CTarget, address: int, is_read: bool, is_restart: bool) -> None:
//| """Information about an I2C transfer request
//| This cannot be instantiated directly, but is returned by :py:meth:`I2CPeripheral.request`.
//| This cannot be instantiated directly, but is returned by :py:meth:`I2CTarget.request`.
//|
//| :param peripheral: The I2CPeripheral object receiving this request
//| :param target: The I2CTarget object receiving this request
//| :param address: I2C address
//| :param is_read: True if the main peripheral is requesting data
//| :param is_read: True if the main target is requesting data
//| :param is_restart: Repeated Start Condition"""
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
STATIC mp_obj_t i2ctarget_i2c_target_request_make_new(const mp_obj_type_t *type, size_t n_args, size_t n_kw, const mp_obj_t *args) {
mp_arg_check_num(n_args, n_kw, 4, 4, false);
return mp_obj_new_i2cperipheral_i2c_peripheral_request(args[0], mp_obj_get_int(args[1]), mp_obj_is_true(args[2]), mp_obj_is_true(args[3]));
return mp_obj_new_i2ctarget_i2c_target_request(args[0], mp_obj_get_int(args[1]), mp_obj_is_true(args[2]), mp_obj_is_true(args[3]));
}
//| def __enter__(self) -> I2CPeripheralRequest:
//| def __enter__(self) -> I2CTargetRequest:
//| """No-op used in Context Managers."""
//| ...
//|
@ -252,56 +252,56 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_make_new(const mp_obj_type_
//| """Close the request."""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_obj___exit__(size_t n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(args[0]);
common_hal_i2cperipheral_i2c_peripheral_close(self->peripheral);
STATIC mp_obj_t i2ctarget_i2c_target_request_obj___exit__(size_t n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(args[0]);
common_hal_i2ctarget_i2c_target_close(self->target);
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2cperipheral_i2c_peripheral_request___exit___obj, 4, 4, i2cperipheral_i2c_peripheral_request_obj___exit__);
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2ctarget_i2c_target_request___exit___obj, 4, 4, i2ctarget_i2c_target_request_obj___exit__);
//| address: int
//| """The I2C address of the request."""
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_get_address(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t i2ctarget_i2c_target_request_get_address(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
return mp_obj_new_int(self->address);
}
MP_DEFINE_CONST_PROP_GET(i2cperipheral_i2c_peripheral_request_address_obj, i2cperipheral_i2c_peripheral_request_get_address);
MP_DEFINE_CONST_PROP_GET(i2ctarget_i2c_target_request_address_obj, i2ctarget_i2c_target_request_get_address);
//| is_read: bool
//| """The I2C main controller is reading from this peripheral."""
//| """The I2C main controller is reading from this target."""
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_get_is_read(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t i2ctarget_i2c_target_request_get_is_read(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
return mp_obj_new_bool(self->is_read);
}
MP_DEFINE_CONST_PROP_GET(i2cperipheral_i2c_peripheral_request_is_read_obj, i2cperipheral_i2c_peripheral_request_get_is_read);
MP_DEFINE_CONST_PROP_GET(i2ctarget_i2c_target_request_is_read_obj, i2ctarget_i2c_target_request_get_is_read);
//| is_restart: bool
//| """Is Repeated Start Condition."""
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_get_is_restart(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t i2ctarget_i2c_target_request_get_is_restart(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
return mp_obj_new_bool(self->is_restart);
}
MP_DEFINE_CONST_PROP_GET(i2cperipheral_i2c_peripheral_request_is_restart_obj, i2cperipheral_i2c_peripheral_request_get_is_restart);
MP_DEFINE_CONST_PROP_GET(i2ctarget_i2c_target_request_is_restart_obj, i2ctarget_i2c_target_request_get_is_restart);
//| def read(self, n: int = -1, ack: bool = True) -> bytearray:
//| """Read data.
//| If ack=False, the caller is responsible for calling :py:meth:`I2CPeripheralRequest.ack`.
//| If ack=False, the caller is responsible for calling :py:meth:`I2CTargetRequest.ack`.
//|
//| :param n: Number of bytes to read (negative means all)
//| :param ack: Whether or not to send an ACK after the n'th byte
//| :return: Bytes read"""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_read(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
mp_check_self(mp_obj_is_type(pos_args[0], &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(pos_args[0]);
STATIC mp_obj_t i2ctarget_i2c_target_request_read(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
mp_check_self(mp_obj_is_type(pos_args[0], &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(pos_args[0]);
enum { ARG_n, ARG_ack };
static const mp_arg_t allowed_args[] = {
{ MP_QSTR_n, MP_ARG_INT, {.u_int = -1} },
@ -330,7 +330,7 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_read(size_t n_args, const m
}
uint8_t data;
int num = common_hal_i2cperipheral_i2c_peripheral_read_byte(self->peripheral, &data);
int num = common_hal_i2ctarget_i2c_target_read_byte(self->target, &data);
if (num == 0) {
break;
}
@ -339,16 +339,16 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_read(size_t n_args, const m
buffer[i++] = data;
if (i == n) {
if (ack) {
common_hal_i2cperipheral_i2c_peripheral_ack(self->peripheral, true);
common_hal_i2ctarget_i2c_target_ack(self->target, true);
}
break;
}
common_hal_i2cperipheral_i2c_peripheral_ack(self->peripheral, true);
common_hal_i2ctarget_i2c_target_ack(self->target, true);
}
return mp_obj_new_bytearray(i, buffer);
}
MP_DEFINE_CONST_FUN_OBJ_KW(i2cperipheral_i2c_peripheral_request_read_obj, 1, i2cperipheral_i2c_peripheral_request_read);
MP_DEFINE_CONST_FUN_OBJ_KW(i2ctarget_i2c_target_request_read_obj, 1, i2ctarget_i2c_target_request_read);
//| def write(self, buffer: ReadableBuffer) -> int:
//| """Write the data contained in buffer.
@ -357,9 +357,9 @@ MP_DEFINE_CONST_FUN_OBJ_KW(i2cperipheral_i2c_peripheral_request_read_obj, 1, i2c
//| :return: Number of bytes written"""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_write(mp_obj_t self_in, mp_obj_t buf_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t i2ctarget_i2c_target_request_write(mp_obj_t self_in, mp_obj_t buf_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
if (!self->is_read) {
mp_raise_OSError(MP_EACCES);
@ -374,7 +374,7 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_write(mp_obj_t self_in, mp_
break;
}
int num = common_hal_i2cperipheral_i2c_peripheral_write_byte(self->peripheral, ((uint8_t *)(bufinfo.buf))[i]);
int num = common_hal_i2ctarget_i2c_target_write_byte(self->target, ((uint8_t *)(bufinfo.buf))[i]);
if (num == 0) {
return mp_obj_new_int(i);
}
@ -382,55 +382,55 @@ STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_write(mp_obj_t self_in, mp_
return mp_obj_new_int(bufinfo.len);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_2(i2cperipheral_i2c_peripheral_request_write_obj, i2cperipheral_i2c_peripheral_request_write);
STATIC MP_DEFINE_CONST_FUN_OBJ_2(i2ctarget_i2c_target_request_write_obj, i2ctarget_i2c_target_request_write);
//| def ack(self, ack: bool = True) -> None:
//| """Acknowledge or Not Acknowledge last byte received.
//| Use together with :py:meth:`I2CPeripheralRequest.read` ack=False.
//| Use together with :py:meth:`I2CTargetRequest.read` ack=False.
//|
//| :param ack: Whether to send an ACK or NACK"""
//| ...
//|
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_ack(uint n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(args[0]);
STATIC mp_obj_t i2ctarget_i2c_target_request_ack(uint n_args, const mp_obj_t *args) {
mp_check_self(mp_obj_is_type(args[0], &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(args[0]);
bool ack = (n_args == 1) ? true : mp_obj_is_true(args[1]);
if (self->is_read) {
mp_raise_OSError(MP_EACCES);
}
common_hal_i2cperipheral_i2c_peripheral_ack(self->peripheral, ack);
common_hal_i2ctarget_i2c_target_ack(self->target, ack);
return mp_const_none;
}
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2cperipheral_i2c_peripheral_request_ack_obj, 1, 2, i2cperipheral_i2c_peripheral_request_ack);
MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(i2ctarget_i2c_target_request_ack_obj, 1, 2, i2ctarget_i2c_target_request_ack);
STATIC mp_obj_t i2cperipheral_i2c_peripheral_request_close(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2cperipheral_i2c_peripheral_request_type));
i2cperipheral_i2c_peripheral_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t i2ctarget_i2c_target_request_close(mp_obj_t self_in) {
mp_check_self(mp_obj_is_type(self_in, &i2ctarget_i2c_target_request_type));
i2ctarget_i2c_target_request_obj_t *self = MP_OBJ_TO_PTR(self_in);
common_hal_i2cperipheral_i2c_peripheral_close(self->peripheral);
common_hal_i2ctarget_i2c_target_close(self->target);
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(i2cperipheral_i2c_peripheral_request_close_obj, i2cperipheral_i2c_peripheral_request_close);
STATIC MP_DEFINE_CONST_FUN_OBJ_1(i2ctarget_i2c_target_request_close_obj, i2ctarget_i2c_target_request_close);
STATIC const mp_rom_map_elem_t i2cperipheral_i2c_peripheral_request_locals_dict_table[] = {
STATIC const mp_rom_map_elem_t i2ctarget_i2c_target_request_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR___enter__), MP_ROM_PTR(&default___enter___obj) },
{ MP_ROM_QSTR(MP_QSTR___exit__), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request___exit___obj) },
{ MP_ROM_QSTR(MP_QSTR_address), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_address_obj) },
{ MP_ROM_QSTR(MP_QSTR_is_read), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_is_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_is_restart), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_is_restart_obj) },
{ MP_ROM_QSTR(MP_QSTR_read), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_write_obj) },
{ MP_ROM_QSTR(MP_QSTR_ack), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_ack_obj) },
{ MP_ROM_QSTR(MP_QSTR_close), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_request_close_obj) },
{ MP_ROM_QSTR(MP_QSTR___exit__), MP_ROM_PTR(&i2ctarget_i2c_target_request___exit___obj) },
{ MP_ROM_QSTR(MP_QSTR_address), MP_ROM_PTR(&i2ctarget_i2c_target_request_address_obj) },
{ MP_ROM_QSTR(MP_QSTR_is_read), MP_ROM_PTR(&i2ctarget_i2c_target_request_is_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_is_restart), MP_ROM_PTR(&i2ctarget_i2c_target_request_is_restart_obj) },
{ MP_ROM_QSTR(MP_QSTR_read), MP_ROM_PTR(&i2ctarget_i2c_target_request_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_write), MP_ROM_PTR(&i2ctarget_i2c_target_request_write_obj) },
{ MP_ROM_QSTR(MP_QSTR_ack), MP_ROM_PTR(&i2ctarget_i2c_target_request_ack_obj) },
{ MP_ROM_QSTR(MP_QSTR_close), MP_ROM_PTR(&i2ctarget_i2c_target_request_close_obj) },
};
STATIC MP_DEFINE_CONST_DICT(i2cperipheral_i2c_peripheral_request_locals_dict, i2cperipheral_i2c_peripheral_request_locals_dict_table);
STATIC MP_DEFINE_CONST_DICT(i2ctarget_i2c_target_request_locals_dict, i2ctarget_i2c_target_request_locals_dict_table);
const mp_obj_type_t i2cperipheral_i2c_peripheral_request_type = {
const mp_obj_type_t i2ctarget_i2c_target_request_type = {
{ &mp_type_type },
.name = MP_QSTR_I2CPeripheralRequest,
.make_new = i2cperipheral_i2c_peripheral_request_make_new,
.locals_dict = (mp_obj_dict_t *)&i2cperipheral_i2c_peripheral_request_locals_dict,
.name = MP_QSTR_I2CTargetRequest,
.make_new = i2ctarget_i2c_target_request_make_new,
.locals_dict = (mp_obj_dict_t *)&i2ctarget_i2c_target_request_locals_dict,
};

View File

@ -24,37 +24,37 @@
* THE SOFTWARE.
*/
#ifndef MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_SLAVE_H
#define MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_SLAVE_H
#ifndef MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_TARGET_H
#define MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_TARGET_H
#include "py/obj.h"
#include "common-hal/microcontroller/Pin.h"
#include "common-hal/i2cperipheral/I2CPeripheral.h"
#include "common-hal/i2ctarget/I2CTarget.h"
typedef struct {
mp_obj_base_t base;
i2cperipheral_i2c_peripheral_obj_t *peripheral;
i2ctarget_i2c_target_obj_t *target;
uint16_t address;
bool is_read;
bool is_restart;
} i2cperipheral_i2c_peripheral_request_obj_t;
} i2ctarget_i2c_target_request_obj_t;
extern const mp_obj_type_t i2cperipheral_i2c_peripheral_request_type;
extern const mp_obj_type_t i2ctarget_i2c_target_request_type;
extern const mp_obj_type_t i2cperipheral_i2c_peripheral_type;
extern const mp_obj_type_t i2ctarget_i2c_target_type;
extern void common_hal_i2cperipheral_i2c_peripheral_construct(i2cperipheral_i2c_peripheral_obj_t *self,
extern void common_hal_i2ctarget_i2c_target_construct(i2ctarget_i2c_target_obj_t *self,
const mcu_pin_obj_t *scl, const mcu_pin_obj_t *sda,
uint8_t *addresses, unsigned int num_addresses, bool smbus);
extern void common_hal_i2cperipheral_i2c_peripheral_deinit(i2cperipheral_i2c_peripheral_obj_t *self);
extern bool common_hal_i2cperipheral_i2c_peripheral_deinited(i2cperipheral_i2c_peripheral_obj_t *self);
extern void common_hal_i2ctarget_i2c_target_deinit(i2ctarget_i2c_target_obj_t *self);
extern bool common_hal_i2ctarget_i2c_target_deinited(i2ctarget_i2c_target_obj_t *self);
extern int common_hal_i2cperipheral_i2c_peripheral_is_addressed(i2cperipheral_i2c_peripheral_obj_t *self,
extern int common_hal_i2ctarget_i2c_target_is_addressed(i2ctarget_i2c_target_obj_t *self,
uint8_t *address, bool *is_read, bool *is_restart);
extern int common_hal_i2cperipheral_i2c_peripheral_read_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t *data);
extern int common_hal_i2cperipheral_i2c_peripheral_write_byte(i2cperipheral_i2c_peripheral_obj_t *self, uint8_t data);
extern void common_hal_i2cperipheral_i2c_peripheral_ack(i2cperipheral_i2c_peripheral_obj_t *self, bool ack);
extern void common_hal_i2cperipheral_i2c_peripheral_close(i2cperipheral_i2c_peripheral_obj_t *self);
extern int common_hal_i2ctarget_i2c_target_read_byte(i2ctarget_i2c_target_obj_t *self, uint8_t *data);
extern int common_hal_i2ctarget_i2c_target_write_byte(i2ctarget_i2c_target_obj_t *self, uint8_t data);
extern void common_hal_i2ctarget_i2c_target_ack(i2ctarget_i2c_target_obj_t *self, bool ack);
extern void common_hal_i2ctarget_i2c_target_close(i2ctarget_i2c_target_obj_t *self);
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_SLAVE_H
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_BUSIO_I2C_TARGET_H

View File

@ -30,24 +30,24 @@
#include "py/runtime.h"
#include "shared-bindings/microcontroller/Pin.h"
// #include "shared-bindings/i2cperipheral/__init__.h"
#include "shared-bindings/i2cperipheral/I2CPeripheral.h"
// #include "shared-bindings/i2ctarget/__init__.h"
#include "shared-bindings/i2ctarget/I2CTarget.h"
#include "py/runtime.h"
//| """Two wire serial protocol peripheral
//| """Two wire serial protocol target
//|
//| The `i2cperipheral` module contains classes to support an I2C peripheral.
//| The `i2ctarget` module contains classes to support an I2C target.
//|
//| Example emulating a peripheral with 2 addresses (read and write)::
//| Example emulating a target with 2 addresses (read and write)::
//|
//| import board
//| from i2cperipheral import I2CPeripheral
//| from i2ctarget import I2CTarget
//|
//| regs = [0] * 16
//| index = 0
//|
//| with I2CPeripheral(board.SCL, board.SDA, (0x40, 0x41)) as device:
//| with I2CTarget(board.SCL, board.SDA, (0x40, 0x41)) as device:
//| while True:
//| r = device.request()
//| if not r:
@ -84,7 +84,7 @@
//| 0xaa
//|
//| .. warning::
//| I2CPeripheral makes use of clock stretching in order to slow down
//| I2CTarget makes use of clock stretching in order to slow down
//| the host.
//| Make sure the I2C host supports this.
//|
@ -93,16 +93,21 @@
//| Since the RPi firmware uses the hw i2c, it's not possible to emulate a HAT eeprom."""
//|
STATIC const mp_rom_map_elem_t i2cperipheral_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_i2cperipheral) },
{ MP_ROM_QSTR(MP_QSTR_I2CPeripheral), MP_ROM_PTR(&i2cperipheral_i2c_peripheral_type) },
STATIC const mp_rom_map_elem_t i2ctarget_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR___name__), MP_ROM_QSTR(MP_QSTR_i2ctarget) },
{ MP_ROM_QSTR(MP_QSTR_I2CTarget), MP_ROM_PTR(&i2ctarget_i2c_target_type) },
// TODO: Remove for CircuitPython 9.0.0
{ MP_ROM_QSTR(MP_QSTR_I2CPeripheral), MP_ROM_PTR(&i2ctarget_i2c_target_type) },
};
STATIC MP_DEFINE_CONST_DICT(i2cperipheral_module_globals, i2cperipheral_module_globals_table);
STATIC MP_DEFINE_CONST_DICT(i2ctarget_module_globals, i2ctarget_module_globals_table);
const mp_obj_module_t i2cperipheral_module = {
const mp_obj_module_t i2ctarget_module = {
.base = { &mp_type_module },
.globals = (mp_obj_dict_t *)&i2cperipheral_module_globals,
.globals = (mp_obj_dict_t *)&i2ctarget_module_globals,
};
MP_REGISTER_MODULE(MP_QSTR_i2cperipheral, i2cperipheral_module, CIRCUITPY_I2CPERIPHERAL);
MP_REGISTER_MODULE(MP_QSTR_i2ctarget, i2ctarget_module, CIRCUITPY_I2CTARGET);
// TODO: Remove for CircuitPython 9.0.0
MP_REGISTER_MODULE(MP_QSTR_i2cperipheral, i2ctarget_module, CIRCUITPY_I2CTARGET);

View File

@ -31,6 +31,7 @@
#include "supervisor/port.h"
#include "supervisor/serial.h"
#include "supervisor/usb.h"
#include "supervisor/shared/title_bar.h"
#include "supervisor/shared/workflow.h"
#include "shared/runtime/interrupt_char.h"
#include "shared/readline/readline.h"
@ -242,6 +243,9 @@ void tud_cdc_line_state_cb(uint8_t itf, bool dtr, bool rts) {
if (coding.bit_rate == 1200) {
reset_to_bootloader();
}
} else {
// We are connected, let's request a title bar update.
supervisor_title_bar_request_update(true);
}
}