merge from upstream

This commit is contained in:
Dan Halbert 2020-11-27 16:06:57 -05:00
commit 596e0e4bd2
29 changed files with 510 additions and 328 deletions

View File

@ -114,14 +114,14 @@ Behavior
finishes or is interrupted. After it is done running, the vm and
hardware is reinitialized. **This means you cannot read state from**
``code.py`` **in the REPL anymore.** CircuitPython's goal for this
change includes reduce confusion about pins and memory being used.
change includes reducing confusion about pins and memory being used.
- After ``code.py`` the REPL can be entered by pressing any key. It no
longer shares state with ``code.py`` so it is a fresh vm.
- Autoreload state will be maintained across reload.
- Adds a safe mode that does not run user code after a hard crash or
brown out. The hope is that this will make it easier to fix code that
causes nasty crashes by making it available through mass storage
after the crash. A reset (the button) is needed after its fixed to
after the crash. A reset (the button) is needed after it's fixed to
get back into normal mode.
- RGB status LED indicating CircuitPython state, and errors through a sequence of colored flashes.
- Re-runs ``code.py`` or other main file after file system writes over USB mass storage. (Disable with

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-10-10 23:51+0000\n"
"Last-Translator: oon arfiandwi <oon.arfiandwi@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -301,6 +301,7 @@ msgid "All I2C peripherals are in use"
msgstr "Semua perangkat I2C sedang digunakan"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -337,6 +338,7 @@ msgstr "Semua timer untuk pin ini sedang digunakan"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1107,6 +1109,7 @@ msgid "Invalid byteorder string"
msgstr "String byteorder tidak valid"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Periode penangkapan tidak valid. Kisaran yang valid: 1 - 500"
@ -1283,6 +1286,10 @@ msgstr "Harus menyediakan pin MISO atau MOSI"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Harus menggunakan kelipatan 6 pin rgb, bukan %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Nama terlalu panjang"
@ -1435,14 +1442,14 @@ msgstr "Parity ganjil tidak didukung"
msgid "Only 8 or 16 bit mono with "
msgstr "Hanya 8 atau 16 bit mono dengan "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 16:03-0500\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -1427,14 +1427,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -1448,10 +1448,6 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1509,10 +1505,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1574,7 +1566,7 @@ msgstr ""
msgid "RTC calibration is not supported on this board"
msgstr ""
#: shared-bindings/alarm/time/TimeAlarm.c shared-bindings/time/__init__.c
#: shared-bindings/time/__init__.c
msgid "RTC is not supported on this board"
msgstr ""
@ -1720,10 +1712,6 @@ msgstr ""
msgid "Supply at least one UART pin"
msgstr ""
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Supply one of monotonic_time or epoch_time"
msgstr ""
#: shared-bindings/gnss/GNSS.c
msgid "System entry must be gnss.SatelliteSystem"
msgstr ""
@ -1787,10 +1775,6 @@ msgstr ""
msgid "Tile width must exactly divide bitmap width"
msgstr ""
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Time is in the past."
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
#, c-format
msgid "Timeout is too long: Maximum timeout length is %d seconds"
@ -2505,10 +2489,6 @@ msgstr ""
msgid "end_x should be an int"
msgstr ""
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "epoch_time not supported on this board"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c
#, c-format
msgid "error = 0x%08lX"
@ -2878,10 +2858,6 @@ msgstr ""
msgid "invalid syntax for number"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "io must be rtc io"
msgstr ""
#: py/objtype.c
msgid "issubclass() arg 1 must be a class"
msgstr ""
@ -3569,10 +3545,6 @@ msgstr ""
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "trigger level must be 0 or 1"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
@ -3715,10 +3687,6 @@ msgstr ""
msgid "vectors must have same lengths"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "wakeup conflict"
msgstr ""
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "watchdog not initialized"
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-05-24 03:22+0000\n"
"Last-Translator: dronecz <mzuzelka@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -301,6 +301,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -337,6 +338,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1090,6 +1092,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr ""
@ -1266,6 +1269,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1416,14 +1423,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -5,15 +5,15 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-26 03:11+0000\n"
"Last-Translator: Daniel Bravo Darriba <bravodarriba@gmail.com>\n"
"Language: de_DE\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.1.1-dev\n"
"X-Generator: Weblate 4.4-dev\n"
#: main.c
msgid ""
@ -57,7 +57,7 @@ msgstr "%d Adress-Pins und %d rgb-Pins zeigen eine Höhe von %d, nicht von %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
msgstr "%q Fehler: %d"
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
@ -300,6 +300,7 @@ msgid "All I2C peripherals are in use"
msgstr "Alle I2C-Peripheriegeräte sind in Benutzung"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -336,6 +337,7 @@ msgstr "Alle timer für diesen Pin werden bereits benutzt"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1107,6 +1109,7 @@ msgid "Invalid byteorder string"
msgstr "Ungültige Byteorder String"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Ungültiger Aufnahmezeitraum. Gültiger Bereich: 1 - 500"
@ -1285,6 +1288,10 @@ msgstr "Muss MISO- oder MOSI-Pin bereitstellen"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Muss ein Vielfaches von 6 RGB-Pins verwenden, nicht %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Name zu lang"
@ -1437,14 +1444,14 @@ msgstr "Eine ungerade Parität wird nicht unterstützt"
msgid "Only 8 or 16 bit mono with "
msgstr "Nur 8 oder 16 bit mono mit "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -296,6 +296,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -332,6 +333,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1085,6 +1087,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr ""
@ -1261,6 +1264,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1411,14 +1418,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"PO-Revision-Date: 2020-11-15 16:28+0000\n"
"Last-Translator: RubenD <rubendariopm14@gmail.com>\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-27 18:34+0000\n"
"Last-Translator: Iván Montiel Cardona <ivan_montiel2013@hotmail.com>\n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
@ -304,6 +304,7 @@ msgid "All I2C peripherals are in use"
msgstr "Todos los periféricos I2C están siendo usados"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr "Todas las unidades PCNT en uso"
@ -342,6 +343,7 @@ msgstr "Todos los timers para este pin están siendo utilizados"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -437,7 +439,7 @@ msgstr "El periférico no maneja el Baudrate"
#: shared-module/displayio/Display.c
#: shared-module/framebufferio/FramebufferDisplay.c
msgid "Below minimum frame rate"
msgstr "Por debajo de taza mínima de refrescamiento"
msgstr "Por debajo de la tasa mínima de refrescamiento"
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
msgid "Bit clock and word select must share a clock unit"
@ -498,7 +500,7 @@ msgstr "El buffer es muy pequeño"
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
#, c-format
msgid "Buffer length %d too big. It must be less than %d"
msgstr "La longitud del buffer %d es muy grande. Debe ser menor a %d"
msgstr "Longitud del buffer %d es demasiado grande. Tiene que ser menor a %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
@ -520,7 +522,7 @@ msgstr "Buffer demasiado grande e incapaz de asignar"
#: shared-bindings/_bleio/PacketBuffer.c
#, c-format
msgid "Buffer too short by %d bytes"
msgstr "Búfer muy corto por %d bytes"
msgstr "Búffer muy corto por %d bytes"
#: ports/atmel-samd/common-hal/displayio/ParallelBus.c
#: ports/nrf/common-hal/displayio/ParallelBus.c
@ -729,7 +731,7 @@ msgstr "No se puede definir la dirección"
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Could not start PWM"
msgstr "No se pudo iniciar el PWM"
msgstr "No se pudo iniciar PWM"
#: ports/stm/common-hal/busio/UART.c
msgid "Could not start interrupt, RX busy"
@ -746,7 +748,7 @@ msgstr "No se pudo asignar el primer buffer"
#: shared-module/audiomp3/MP3Decoder.c
msgid "Couldn't allocate input buffer"
msgstr "No se pudo encontrar el búfer de entrada"
msgstr "No se pudo encontrar el buffer de entrada"
#: shared-module/audiocore/WaveFile.c shared-module/audiomixer/Mixer.c
#: shared-module/audiomp3/MP3Decoder.c
@ -876,7 +878,7 @@ msgstr "FFT se define solo para ndarrays"
#: extmod/ulab/code/fft/fft.c
msgid "FFT is implemented for linear arrays only"
msgstr ""
msgstr "FFT solo esta implementado para arrays lineales"
#: ports/esp32s2/common-hal/socketpool/Socket.c
msgid "Failed SSL handshake"
@ -936,7 +938,7 @@ msgstr "No se puede liberar el mutex, err 0x%04x"
#: supervisor/shared/safe_mode.c
msgid "Failed to write internal flash."
msgstr "Error al escribir al flash interno."
msgstr "Error al escribir el flash interno."
#: py/moduerrno.c
msgid "File exists"
@ -975,7 +977,7 @@ msgstr "La función requiere lock"
#: shared-bindings/displayio/EPaperDisplay.c
#: shared-bindings/framebufferio/FramebufferDisplay.c
msgid "Group already used"
msgstr "El grupo ya está siendo utilizado"
msgstr "Grupo ya está siendo utilizado"
#: shared-module/displayio/Group.c
msgid "Group full"
@ -1001,7 +1003,7 @@ msgstr "Operación I/O en archivo cerrado"
#: ports/stm/common-hal/busio/I2C.c
msgid "I2C Init Error"
msgstr "Error de inicio de I2C"
msgstr "I2C Error de inicio"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
@ -1026,7 +1028,7 @@ msgstr "Tamaño incorrecto del buffer"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "Initialization failed due to lack of memory"
msgstr ""
msgstr "Inicializacion fallida por falta de memoria"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
msgid "Input taking too long"
@ -1108,6 +1110,7 @@ msgid "Invalid byteorder string"
msgstr "Cadena de byteorder inválida"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Inválido periodo de captura. Rango válido: 1 - 500"
@ -1284,6 +1287,10 @@ msgstr "Debe proporcionar un pin MISO o MOSI"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Debe usar un múltiplo de 6 pines rgb, no %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr "Error NVS"
#: py/parse.c
msgid "Name too long"
msgstr "Nombre muy largo"
@ -1397,7 +1404,7 @@ msgstr "No hay temporizador disponible"
#: supervisor/shared/safe_mode.c
msgid "Nordic Soft Device failure assertion."
msgstr "fallo de aserción de dispositivo Nordic Soft."
msgstr "Fallo de aserción de dispositivo Nordic Soft."
#: shared-bindings/ipaddress/IPv4Address.c shared-bindings/ipaddress/__init__.c
msgid "Not a valid IP string"
@ -1436,14 +1443,14 @@ msgstr "Paridad impar no soportada"
msgid "Only 8 or 16 bit mono with "
msgstr "Solo mono de 8 ó 16 bit con "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "Solo hay capacidad para enchufes IPv4 SOCK_STREAM"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Solo hay capacidad para direcciones IPv4"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr "Solo se admiten sockets IPv4"
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -1493,7 +1500,7 @@ msgstr ""
#: ports/mimxrt10xx/common-hal/displayio/ParallelBus.c
#: ports/stm/common-hal/displayio/ParallelBus.c
msgid "ParallelBus not yet supported"
msgstr "ParallelBus no soportado aún"
msgstr "ParallelBus todavía no soportado"
#: py/moduerrno.c
msgid "Permission denied"
@ -1527,8 +1534,9 @@ msgid ""
"bytes. If this cannot be avoided, pass allow_inefficient=True to the "
"constructor"
msgstr ""
"El pinout utiliza %d bytes por elemento, lo que consume más del ideal de %d "
"bytes. Si esto no se puede evitar, pase allow_inefficient=True al constructor"
"El pinout utiliza %d bytes por elemento, lo que consume más de los %d bytes "
"ideales. Si esto no se puede evitar, pase allow_inefficient=True al "
"constructor"
#: py/builtinhelp.c
msgid "Plus any modules on the filesystem\n"
@ -1559,7 +1567,7 @@ msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "Prefix buffer must be on the heap"
msgstr "El búfer de prefijo debe estar en el montículo"
msgstr "El prefijo del buffer debe estar en el heap"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
@ -1572,7 +1580,7 @@ msgstr "Pull no se usa cuando la dirección es output."
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "Error de desinicializado del RNG"
msgstr "Error de desinicialización de RNG"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG Init Error"
@ -1581,7 +1589,7 @@ msgstr "Error de inicialización de RNG"
#: ports/esp32s2/common-hal/busio/UART.c
#: ports/mimxrt10xx/common-hal/busio/UART.c
msgid "RS485 inversion specified when not in RS485 mode"
msgstr "Se especifica inversión de RS485 sin estar en modo RS485"
msgstr "Se especifica inversión de RS485 si no está en modo RS485"
#: ports/cxd56/common-hal/rtc/RTC.c ports/esp32s2/common-hal/rtc/RTC.c
#: ports/mimxrt10xx/common-hal/rtc/RTC.c ports/nrf/common-hal/rtc/RTC.c
@ -1616,7 +1624,7 @@ msgstr "Objeto de solo-lectura"
#: shared-bindings/displayio/EPaperDisplay.c
msgid "Refresh too soon"
msgstr "Actualizando demasiado pronto"
msgstr "Refresco demasiado pronto"
#: shared-bindings/canio/RemoteTransmissionRequest.c
msgid "RemoteTransmissionRequests limited to 8 bytes"
@ -1676,7 +1684,7 @@ msgstr "Frecuencia de muestreo demasiado alta. Debe ser menor a %d"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "Scan already in progess. Stop with stop_scan."
msgstr "Escaneo en progreso. Use stop_scan para detener."
msgstr "Escaneo en progreso. Usa stop_scan para detener."
#: ports/mimxrt10xx/common-hal/busio/UART.c
msgid "Selected CTS pin not valid"
@ -1716,7 +1724,7 @@ msgstr "SocketPool solo se puede usar con wifi.radio"
#: shared-bindings/aesio/aes.c
msgid "Source and destination buffers must be the same length"
msgstr "Los búferes de fuente y destino deben ser del mismo tamaño"
msgstr "Los buffers de fuente y destino deben ser del mismo tamaño"
#: extmod/modure.c
msgid "Splitting with sub-captures"
@ -1747,7 +1755,7 @@ msgid ""
"The CircuitPython heap was corrupted because the stack was too small.\n"
"Please increase the stack size if you know how, or if not:"
msgstr ""
"El montículo de CircuitPython se dañó porque la pila era demasiado pequeña.\n"
"El heap de CircuitPython se dañó porque la pila era demasiado pequeña.\n"
"Aumente el tamaño de la pila si sabe cómo, o si no:"
#: supervisor/shared/safe_mode.c
@ -1755,8 +1763,8 @@ msgid ""
"The `microcontroller` module was used to boot into safe mode. Press reset to "
"exit safe mode.\n"
msgstr ""
"El módulo de `microcontroller` fue utilizado para bootear en modo seguro. "
"Presione reset para salir del modo seguro.\n"
"El módulo de `microcontroller` fue utilizado para arrancar en modo seguro. "
"Presiona reset para salir del modo seguro.\n"
#: shared-bindings/rgbmatrix/RGBMatrix.c
msgid "The length of rgb_pins must be 6, 12, 18, 24, or 30"
@ -1768,9 +1776,9 @@ msgid ""
"enough power for the whole circuit and press reset (after ejecting "
"CIRCUITPY).\n"
msgstr ""
"La alimentación de la microntroladora bajó. Asegúrate que tu fuente de "
"poder\n"
"pueda suplir suficiente energía para todo el circuito y presione reset "
"La alimentación del microntrolador cayó. Asegúrate que tu fuente de "
"alimentación\n"
"pueda aportar suficiente energía para todo el circuito y presiona reset "
"(luego de\n"
"expulsar CIRCUITPY)\n"
@ -1950,7 +1958,7 @@ msgstr "Error de seguridad desconocido: 0x%04x"
#: ports/nrf/common-hal/_bleio/__init__.c
#, c-format
msgid "Unknown soft device error: %04x"
msgstr "Error suave desconocido en dispositivo: %04x"
msgstr "Error leve desconocido en dispositivo: %04x"
#: shared-bindings/_pixelbuf/PixelBuf.c
#, c-format
@ -1963,7 +1971,7 @@ msgid ""
"declined or ignored."
msgstr ""
"Problema no especificado. Puede ser que la señal de emparejamiento del otro "
"dispositivo fue declinada o ignorada."
"dispositivo fue denegada o ignorada."
#: ports/atmel-samd/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/I2C.c
#: ports/esp32s2/common-hal/busio/UART.c ports/stm/common-hal/busio/I2C.c
@ -2053,7 +2061,7 @@ msgstr "La clave de WiFi debe ser entre 8 y 63 caracteres"
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Escrituras no admitidas en la característica"
msgstr "Escrituras no admitidas en Characteristic"
#: supervisor/shared/safe_mode.c
msgid "You are in safe mode: something unanticipated happened.\n"
@ -2106,7 +2114,7 @@ msgstr "El argumento para argsort debe ser un ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort is not implemented for flattened arrays"
msgstr ""
msgstr "El argot no está implementado para arrays aplanados"
#: py/runtime.c
msgid "argument has wrong type"
@ -2131,7 +2139,7 @@ msgstr "argumentos deben ser ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "array and index length must be equal"
msgstr ""
msgstr "Longitud del array e índice tienen que ser iguales"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
@ -2139,11 +2147,11 @@ msgstr "array/bytes requeridos en el lado derecho"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get (arg)min/(arg)max of empty sequence"
msgstr ""
msgstr "Intendo de obteber (arg)min/(arg)max de secuencia vacía"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
msgstr "se trató de traer argmin/argmax de una secuencia vacía"
msgstr "intento de obtener argmin/argmax de una secuencia vacía"
#: py/objstr.c
msgid "attributes not supported yet"
@ -2151,15 +2159,15 @@ msgstr "atributos aún no soportados"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis is out of bounds"
msgstr ""
msgstr "Eje está fuera de sus límites"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, or an integer"
msgstr ""
msgstr "Eje tiene que ser None, o un entero"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis too long"
msgstr ""
msgstr "Eje demasiado largo"
#: py/builtinevex.c
msgid "bad compile mode"
@ -2369,7 +2377,7 @@ msgstr ""
#: extmod/ulab/code/ndarray_operators.c
msgid "cannot cast output with casting rule"
msgstr ""
msgstr "No se puede realizar cast de la salida sin una regla de cast"
#: py/objtype.c
msgid "cannot create '%q' instances"
@ -2405,7 +2413,7 @@ msgstr "El argumento de chr() no esta en el rango(256)"
#: shared-module/vectorio/Circle.c
msgid "circle can only be registered in one parent"
msgstr "circle solo puede ser registrado con un pariente"
msgstr "circulo solo puede ser registrado con un pariente"
#: shared-bindings/displayio/Palette.c
msgid "color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)"
@ -2469,7 +2477,7 @@ msgstr "no se pudo determinar la versión de la tarjeta SD"
#: extmod/ulab/code/numerical/numerical.c
msgid "cross is defined for 1D arrays of length 3"
msgstr ""
msgstr "Cruce está definido para un array 1D de longitud 3"
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
@ -2512,7 +2520,7 @@ msgstr "El argumento diff debe ser un ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "differentiation order out of range"
msgstr ""
msgstr "Orden de diferenciación fuera de rango"
#: py/modmath.c py/objfloat.c py/objint_longlong.c py/objint_mpz.c py/runtime.c
#: shared-bindings/math/__init__.c
@ -2631,11 +2639,11 @@ msgstr "el primer argumento debe ser una función"
#: extmod/ulab/code/ulab_create.c
msgid "first argument must be a tuple of ndarrays"
msgstr ""
msgstr "Primer argumento tiene que ser una tupla de ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "first argument must be an iterable"
msgstr "el primer argumento debe permitir iteración"
msgstr "el primer argumento debe ser un iterable"
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be an ndarray"
@ -2655,7 +2663,7 @@ msgstr "el argumento invertido debe ser un ndarray"
#: py/objint.c
msgid "float too big"
msgstr "punto flotante muy grande"
msgstr "punto flotante demasiado grande"
#: shared-bindings/_stage/Text.c
msgid "font must be 2048 bytes long"
@ -2688,7 +2696,7 @@ msgstr "la función tiene el mismo signo a extremos del intervalo"
#: extmod/ulab/code/ndarray.c
msgid "function is defined for ndarrays only"
msgstr ""
msgstr "Función solo definida para ndarrays"
#: py/argcheck.c
#, c-format
@ -2784,7 +2792,7 @@ msgstr "ensamblador en línea debe ser una función"
#: extmod/ulab/code/ndarray.c
msgid "input and output shapes are not compatible"
msgstr ""
msgstr "Formas de entrada y salida no son compactibles"
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
@ -2796,11 +2804,11 @@ msgstr "el tamaño del arreglo de entrada debe ser potencia de 2"
#: extmod/ulab/code/ulab_create.c
msgid "input arrays are not compatible"
msgstr ""
msgstr "Arrays de entrada no son compactibles"
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
msgstr "los datos de entrada deben permitir iteración"
msgstr "los datos de entrada deben ser iterables"
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is asymmetric"
@ -2812,19 +2820,19 @@ msgstr "la matriz de entrada es singular"
#: extmod/ulab/code/user/user.c
msgid "input must be a dense ndarray"
msgstr ""
msgstr "Entrada tiene que ser un ndarray denso"
#: extmod/ulab/code/ulab_create.c
msgid "input must be a tensor of rank 2"
msgstr ""
msgstr "Entrada tiene que ser un tensor de rango 2"
#: extmod/ulab/code/ulab_create.c extmod/ulab/code/user/user.c
msgid "input must be an ndarray"
msgstr ""
msgstr "Entrada tiene que ser un ndarray"
#: extmod/ulab/code/filter/filter.c
msgid "input must be one-dimensional"
msgstr ""
msgstr "Entrada tiene que ser unidimensional"
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
@ -2840,7 +2848,7 @@ msgstr "los vectores de entrada deben ser de igual tamaño"
#: extmod/ulab/code/poly/poly.c
msgid "inputs are not iterable"
msgstr ""
msgstr "Entradas no son iterables"
#: py/parsenum.c
msgid "int() arg 2 must be >= 2 and <= 36"
@ -2981,7 +2989,7 @@ msgstr "long int no soportado en esta compilación"
#: ports/esp32s2/common-hal/canio/CAN.c
msgid "loopback + silent mode not supported by peripheral"
msgstr ""
msgstr "Loopback + modo silencioso no están soportados por periférico"
#: py/parse.c
msgid "malformed f-string"
@ -3015,7 +3023,7 @@ msgstr "max_lenght debe ser > 0"
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
msgstr ""
msgstr "Máximo número de dimensiones es 4"
#: py/runtime.c
msgid "maximum recursion depth exceeded"
@ -3023,11 +3031,11 @@ msgstr "profundidad máxima de recursión excedida"
#: extmod/ulab/code/approx/approx.c
msgid "maxiter must be > 0"
msgstr ""
msgstr "maxiter tiene que ser > 0"
#: extmod/ulab/code/approx/approx.c
msgid "maxiter should be > 0"
msgstr ""
msgstr "maxiter debe ser > 0"
#: py/runtime.c
#, c-format
@ -3152,7 +3160,7 @@ msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
msgstr "norma está definida para arrays 1D y 2D"
#: shared-bindings/_bleio/UUID.c
msgid "not a 128-bit UUID"
@ -3221,7 +3229,7 @@ msgstr "string de longitud impar"
#: extmod/ulab/code/ulab_create.c
msgid "offset is too large"
msgstr ""
msgstr "offset es demasiado grande"
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
@ -3247,11 +3255,11 @@ msgstr "los operandos no se pueden transmitir juntos"
#: extmod/ulab/code/ndarray.c
msgid "operation is implemented for 1D Boolean arrays only"
msgstr ""
msgstr "operación solo está implementada para arrays booleanos de 1D"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented for flattened array"
msgstr ""
msgstr "operación no está implementada para arrays aplanados"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
@ -3389,7 +3397,7 @@ msgstr "longitud solicitada %d pero el objeto tiene longitud %d"
#: extmod/ulab/code/ndarray_operators.c
msgid "results cannot be cast to specified type"
msgstr ""
msgstr "resultados no pueden aplicar cast a un tipo específico"
#: py/compile.c
msgid "return annotation must be an identifier"
@ -3411,7 +3419,7 @@ msgstr "rgb_pins[%d] no está en el mismo puerto que el reloj"
#: extmod/ulab/code/numerical/numerical.c
msgid "roll argument must be an ndarray"
msgstr ""
msgstr "Argumento enrolado tiene que ser un ndarray"
#: py/objstr.c
msgid "rsplit(None,n)"
@ -3439,7 +3447,7 @@ msgstr "script de compilación no soportado"
#: extmod/ulab/code/ndarray.c
msgid "shape must be a tuple"
msgstr ""
msgstr "forma tiene que ser una tupla"
#: py/objstr.c
msgid "sign not allowed in string format specifier"
@ -3589,7 +3597,7 @@ msgstr "timestamp fuera de rango para plataform time_t"
#: extmod/ulab/code/ndarray.c
msgid "tobytes can be invoked for dense arrays only"
msgstr ""
msgstr "tobytes solo pueden ser invocados por arrays densos"
#: shared-module/struct/__init__.c
msgid "too many arguments provided with the given format"
@ -3619,12 +3627,12 @@ msgstr "tupla/lista tiene una longitud incorrecta"
#: ports/esp32s2/common-hal/canio/CAN.c
#, c-format
msgid "twai_driver_install returned esp-idf error #%d"
msgstr ""
msgstr "twai_driver_install devolvió esp-idf error #%d"
#: ports/esp32s2/common-hal/canio/CAN.c
#, c-format
msgid "twai_start returned esp-idf error #%d"
msgstr ""
msgstr "twai_start devolvió esp-idf error #%d"
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
@ -3752,7 +3760,7 @@ msgstr "los vectores deben tener el mismo tamaño"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "watchdog not initialized"
msgstr ""
msgstr "watchdog no inicializado"
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
@ -3768,11 +3776,11 @@ msgstr "la ventana debe ser <= intervalo"
#: extmod/ulab/code/numerical/numerical.c
msgid "wrong axis index"
msgstr ""
msgstr "indice de eje erróneo"
#: extmod/ulab/code/ulab_create.c
msgid "wrong axis specified"
msgstr ""
msgstr "eje especificado erróneo"
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
@ -3822,6 +3830,9 @@ msgstr "zi debe ser de tipo flotante"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi debe ser una forma (n_section,2)"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Solo hay capacidad para enchufes IPv4 SOCK_STREAM"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "arctan2 se encuentra implementado solo para escalares y ndarrays"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
"Language-Team: fil\n"
@ -298,6 +298,7 @@ msgid "All I2C peripherals are in use"
msgstr "Lahat ng I2C peripherals ginagamit"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -335,6 +336,7 @@ msgstr "Lahat ng timers para sa pin na ito ay ginagamit"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1100,6 +1102,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr ""
@ -1276,6 +1279,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1429,14 +1436,14 @@ msgstr "Odd na parity ay hindi supportado"
msgid "Only 8 or 16 bit mono with "
msgstr "Tanging 8 o 16 na bit mono na may "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"PO-Revision-Date: 2020-11-20 22:28+0000\n"
"Last-Translator: Noel Gaetan <gaetan.noel@viacesi.fr>\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-24 22:45+0000\n"
"Last-Translator: Antonin ENFRUN <antonin.e@me.com>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
@ -305,6 +305,7 @@ msgid "All I2C peripherals are in use"
msgstr "Tous les périphériques I2C sont utilisés"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr "Toutes les unités PCNT sont utilisées"
@ -341,6 +342,7 @@ msgstr "Tous les timers pour cette broche sont utilisés"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -881,7 +883,7 @@ msgstr "La FFT est définie pour les ndarrays uniquement"
#: extmod/ulab/code/fft/fft.c
msgid "FFT is implemented for linear arrays only"
msgstr ""
msgstr "FFT n'est implémenté que pour les tableaux linéaires"
#: ports/esp32s2/common-hal/socketpool/Socket.c
msgid "Failed SSL handshake"
@ -1113,6 +1115,7 @@ msgid "Invalid byteorder string"
msgstr "Chaîne d'octets non valide"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Période de capture invalide. Gamme valide : 1 à 500"
@ -1289,6 +1292,10 @@ msgstr "Doit fournir une broche MISO ou MOSI"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Doit utiliser un multiple de 6 broches RVB, pas %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Nom trop long"
@ -1441,14 +1448,14 @@ msgstr "Parité impaire non supportée"
msgid "Only 8 or 16 bit mono with "
msgstr "Uniquement 8 ou 16 bit mono avec "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "Seules les sockets IPv4 SOCK_STREAM sont prises en charge"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Seules les adresses IPv4 sont prises en charge"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -2116,7 +2123,7 @@ msgstr "L'argument argsort doit être un ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort is not implemented for flattened arrays"
msgstr ""
msgstr "argsort n'est pas mis en œuvre pour les tableaux aplatis"
#: py/runtime.c
msgid "argument has wrong type"
@ -2141,7 +2148,7 @@ msgstr "les arguments doivent être des ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "array and index length must be equal"
msgstr ""
msgstr "la longueur du tableau et de l'index doit être égale"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
@ -2149,7 +2156,7 @@ msgstr "tableau/octets requis à droite"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get (arg)min/(arg)max of empty sequence"
msgstr ""
msgstr "tentative dobtenir (arg)min/(arg)max d'une séquence vide"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
@ -2161,15 +2168,15 @@ msgstr "attribut pas encore supporté"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis is out of bounds"
msgstr ""
msgstr "axis est hors limites"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, or an integer"
msgstr ""
msgstr "axis doit être None ou un entier"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis too long"
msgstr ""
msgstr "axis trop long"
#: py/builtinevex.c
msgid "bad compile mode"
@ -2485,7 +2492,7 @@ msgstr "impossible de déterminer la version de la carte SD"
#: extmod/ulab/code/numerical/numerical.c
msgid "cross is defined for 1D arrays of length 3"
msgstr ""
msgstr "cross est défini pour les tableaux 1D de longueur 3"
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
@ -2528,7 +2535,7 @@ msgstr "l'argument diff doit être un ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "differentiation order out of range"
msgstr ""
msgstr "differentiation order hors plage"
#: py/modmath.c py/objfloat.c py/objint_longlong.c py/objint_mpz.c py/runtime.c
#: shared-bindings/math/__init__.c
@ -2649,7 +2656,7 @@ msgstr "le premier argument doit être une fonction"
#: extmod/ulab/code/ulab_create.c
msgid "first argument must be a tuple of ndarrays"
msgstr ""
msgstr "le premier argument doit être un tuple de ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "first argument must be an iterable"
@ -2706,7 +2713,7 @@ msgstr "la fonction a le même signe aux extrémités de lintervalle"
#: extmod/ulab/code/ndarray.c
msgid "function is defined for ndarrays only"
msgstr ""
msgstr "La fonction n'est définie que pour les ndarrays"
#: py/argcheck.c
#, c-format
@ -2803,7 +2810,7 @@ msgstr "l'assembleur doit être une fonction"
#: extmod/ulab/code/ndarray.c
msgid "input and output shapes are not compatible"
msgstr ""
msgstr "les formes d'entrée et de sortie ne sont pas compatibles"
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
@ -2815,7 +2822,7 @@ msgstr "la longueur du tableau d'entrée doit être une puissance de 2"
#: extmod/ulab/code/ulab_create.c
msgid "input arrays are not compatible"
msgstr ""
msgstr "les tableaux d'entrée ne sont pas compatibles"
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
@ -2831,11 +2838,11 @@ msgstr "la matrice d'entrée est singulière"
#: extmod/ulab/code/user/user.c
msgid "input must be a dense ndarray"
msgstr ""
msgstr "l'entrée doit être un tableau dense"
#: extmod/ulab/code/ulab_create.c
msgid "input must be a tensor of rank 2"
msgstr ""
msgstr "l'entrée doit être un tenseur de rang 2"
#: extmod/ulab/code/ulab_create.c extmod/ulab/code/user/user.c
msgid "input must be an ndarray"
@ -3844,6 +3851,9 @@ msgstr "zi doit être de type float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi doit être de forme (n_section, 2)"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Seules les sockets IPv4 SOCK_STREAM sont prises en charge"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr ""
#~ "arctan2 est implémenté uniquement pour les scalaires et les ndarrays"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -296,6 +296,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -332,6 +333,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1085,6 +1087,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr ""
@ -1261,6 +1264,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1411,14 +1418,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
"Language-Team: \n"
@ -297,6 +297,7 @@ msgid "All I2C peripherals are in use"
msgstr "Tutte le periferiche I2C sono in uso"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -334,6 +335,7 @@ msgstr "Tutti i timer per questo pin sono in uso"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1101,6 +1103,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "periodo di cattura invalido. Zona valida: 1 - 500"
@ -1280,6 +1283,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1434,14 +1441,14 @@ msgstr "operazione I2C non supportata"
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"PO-Revision-Date: 2020-11-12 22:51+0000\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-27 18:34+0000\n"
"Last-Translator: sporeball <sporeballdev@gmail.com>\n"
"Language-Team: none\n"
"Language: ja\n"
@ -182,7 +182,7 @@ msgstr ""
#: py/emitinlinethumb.c py/emitinlinextensa.c
#, c-format
msgid "'%s' expects an integer"
msgstr ""
msgstr "'%s' には整数が必要"
#: py/emitinlinethumb.c
#, c-format
@ -303,6 +303,7 @@ msgid "All I2C peripherals are in use"
msgstr "全てのI2C周辺機器が使用中"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -339,6 +340,7 @@ msgstr "このピン用の全てのタイマが使用中"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1100,6 +1102,7 @@ msgid "Invalid byteorder string"
msgstr "不正なバイトオーダー文字列"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "不正なキャプチャ周期。有効な周期は1-500"
@ -1276,6 +1279,10 @@ msgstr "MISOピンまたはMOSIピンが必要"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "%d個でなく6の倍数個のrgbピンを使ってください"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "名前が長すぎます"
@ -1428,14 +1435,14 @@ msgstr "奇数パリティには対応していません"
msgid "Only 8 or 16 bit mono with "
msgstr "8または16ビットの "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -3750,7 +3757,7 @@ msgstr ""
#: shared-module/displayio/Shape.c
msgid "x value out of bounds"
msgstr ""
msgstr "xが範囲外"
#: shared-bindings/displayio/Shape.c
msgid "y should be an int"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-10-05 12:12+0000\n"
"Last-Translator: Michal Čihař <michal@cihar.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -299,6 +299,7 @@ msgid "All I2C peripherals are in use"
msgstr "사용중인 모든 I2C주변 기기"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -335,6 +336,7 @@ msgstr "핀의 모든 타이머가 사용 중입니다"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1090,6 +1092,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr ""
@ -1266,6 +1269,10 @@ msgstr ""
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr ""
@ -1416,14 +1423,14 @@ msgstr ""
msgid "Only 8 or 16 bit mono with "
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-10-27 16:47+0000\n"
"Last-Translator: Jelle Jager <jell@jjc.id.au>\n"
"Language-Team: none\n"
@ -301,6 +301,7 @@ msgid "All I2C peripherals are in use"
msgstr "Alle I2C peripherals zijn in gebruik"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -337,6 +338,7 @@ msgstr "Alle timers voor deze pin zijn in gebruik"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1102,6 +1104,7 @@ msgid "Invalid byteorder string"
msgstr "Ongeldige byteorder string"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Ongeldige vastlegging periode. Geldig bereik: 1 - 500"
@ -1278,6 +1281,10 @@ msgstr "MISO of MOSI moeten worden gegeven"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Een meervoud van 6 rgb pinnen moet worden gebruikt, niet %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Naam te lang"
@ -1430,14 +1437,14 @@ msgstr "Oneven pariteit is niet ondersteund"
msgid "Only 8 or 16 bit mono with "
msgstr "Alleen 8 of 16 bit mono met "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "Alleen IPv4 SOCK_STREAM sockets worden ondersteund"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Alleen IPv4 adressen worden ondersteund"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -3810,6 +3817,9 @@ msgstr "zi moet van type float zijn"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi moet vorm (n_section, 2) hebben"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Alleen IPv4 SOCK_STREAM sockets worden ondersteund"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "arctan2 is alleen geïmplementeerd voor scalars en ndarrays"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-11 19:13+0000\n"
"Last-Translator: Maciej Stankiewicz <tawezik@gmail.com>\n"
"Language-Team: pl\n"
@ -303,6 +303,7 @@ msgid "All I2C peripherals are in use"
msgstr "Wszystkie peryferia I2C w użyciu"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
@ -339,6 +340,7 @@ msgstr "Wszystkie timery tej nóżki w użyciu"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1100,6 +1102,7 @@ msgid "Invalid byteorder string"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Zły okres. Poprawny zakres to: 1 - 500"
@ -1277,6 +1280,10 @@ msgstr "Należy podać pin MISO lub MOSI"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr ""
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Za długa nazwa"
@ -1427,14 +1434,14 @@ msgstr "Nieparzysta parzystość nie jest wspierana"
msgid "Only 8 or 16 bit mono with "
msgstr "Tylko 8 lub 16 bitów mono z "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr ""
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr ""
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"PO-Revision-Date: 2020-11-18 00:28+0000\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-24 23:22+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -305,6 +305,7 @@ msgid "All I2C peripherals are in use"
msgstr "Todos os periféricos I2C estão em uso"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr "Todas as unidades PCNT estão em uso"
@ -341,6 +342,7 @@ msgstr "Todos os temporizadores para este pino estão em uso"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -878,7 +880,7 @@ msgstr "O FFT é definido apenas para ndarrays"
#: extmod/ulab/code/fft/fft.c
msgid "FFT is implemented for linear arrays only"
msgstr ""
msgstr "O FFT é implementado apenas para matrizes lineares"
#: ports/esp32s2/common-hal/socketpool/Socket.c
msgid "Failed SSL handshake"
@ -1111,6 +1113,7 @@ msgid "Invalid byteorder string"
msgstr "A cadeia de bytes é inválida"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "O período de captura é inválido. O intervalo válido é: 1 - 500"
@ -1287,6 +1290,10 @@ msgstr "Deve informar os pinos MISO ou MOSI"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Deve utilizar um múltiplo de 6 pinos rgb, não %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr "Erro NVS"
#: py/parse.c
msgid "Name too long"
msgstr "Nome muito longo"
@ -1438,14 +1445,14 @@ msgstr "A paridade ímpar não é compatível"
msgid "Only 8 or 16 bit mono with "
msgstr "Apenas mono com 8 ou 16 bits com "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "São suportados apenas soquetes IPv4 SOCK_STREAM"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Somente os endereços IPv4 são suportados"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -2114,7 +2121,7 @@ msgstr "O argumento argsort deve ser um ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort is not implemented for flattened arrays"
msgstr ""
msgstr "argsort não é implementado para matrizes achatadas"
#: py/runtime.c
msgid "argument has wrong type"
@ -2139,7 +2146,7 @@ msgstr "os argumentos devem ser ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "array and index length must be equal"
msgstr ""
msgstr "a matriz e comprimento do índice devem ser iguais"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
@ -2147,7 +2154,7 @@ msgstr "matriz/bytes são necessários no lado direito"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get (arg)min/(arg)max of empty sequence"
msgstr ""
msgstr "tentativa de obter (arg)min/(arg)max da sequência vazia"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
@ -2159,15 +2166,15 @@ msgstr "atributos ainda não suportados"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis is out of bounds"
msgstr ""
msgstr "o eixo está fora dos limites"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, or an integer"
msgstr ""
msgstr "eixo deve ser Nenhum ou um número inteiro"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis too long"
msgstr ""
msgstr "o eixo é muito longo"
#: py/builtinevex.c
msgid "bad compile mode"
@ -2376,7 +2383,7 @@ msgstr ""
#: extmod/ulab/code/ndarray_operators.c
msgid "cannot cast output with casting rule"
msgstr ""
msgstr "não pode lançar a saída com a regra de fundição"
#: py/objtype.c
msgid "cannot create '%q' instances"
@ -2478,7 +2485,7 @@ msgstr "não foi possível determinar a versão do cartão SD"
#: extmod/ulab/code/numerical/numerical.c
msgid "cross is defined for 1D arrays of length 3"
msgstr ""
msgstr "a cruz é definida para matrizes 1D de comprimento 3"
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
@ -2522,7 +2529,7 @@ msgstr "O argumento diff deve ser um ndarray"
#: extmod/ulab/code/numerical/numerical.c
msgid "differentiation order out of range"
msgstr ""
msgstr "ordem de diferenciação fora do alcance"
#: py/modmath.c py/objfloat.c py/objint_longlong.c py/objint_mpz.c py/runtime.c
#: shared-bindings/math/__init__.c
@ -2641,7 +2648,7 @@ msgstr "o primeiro argumento deve ser uma função"
#: extmod/ulab/code/ulab_create.c
msgid "first argument must be a tuple of ndarrays"
msgstr ""
msgstr "o primeiro argumento deve ser um tuple de ndarrays"
#: extmod/ulab/code/ndarray.c
msgid "first argument must be an iterable"
@ -2698,7 +2705,7 @@ msgstr "a função tem o mesmo sinal nas extremidades do intervalo"
#: extmod/ulab/code/ndarray.c
msgid "function is defined for ndarrays only"
msgstr ""
msgstr "A função é definida apenas para ndarrays"
#: py/argcheck.c
#, c-format
@ -2794,7 +2801,7 @@ msgstr "o assembler em linha deve ser uma função"
#: extmod/ulab/code/ndarray.c
msgid "input and output shapes are not compatible"
msgstr ""
msgstr "as formas de entrada e saída não são compatíveis"
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
@ -2806,7 +2813,7 @@ msgstr "comprimento da matriz da entrada deve ter potência de 2"
#: extmod/ulab/code/ulab_create.c
msgid "input arrays are not compatible"
msgstr ""
msgstr "as matrizes da entrada não são compatíveis"
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
@ -2822,19 +2829,19 @@ msgstr "a matriz da entrada é singular"
#: extmod/ulab/code/user/user.c
msgid "input must be a dense ndarray"
msgstr ""
msgstr "a entrada deve ser um ndarray denso"
#: extmod/ulab/code/ulab_create.c
msgid "input must be a tensor of rank 2"
msgstr ""
msgstr "a entrada dos dados deve ser um tensor de nível 2"
#: extmod/ulab/code/ulab_create.c extmod/ulab/code/user/user.c
msgid "input must be an ndarray"
msgstr ""
msgstr "a entrada deve ser um ndarray"
#: extmod/ulab/code/filter/filter.c
msgid "input must be one-dimensional"
msgstr ""
msgstr "a entrada deve ser unidimensional"
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
@ -2850,7 +2857,7 @@ msgstr "os vetores da entrada devem ter o mesmo comprimento"
#: extmod/ulab/code/poly/poly.c
msgid "inputs are not iterable"
msgstr ""
msgstr "as entradas não são iteráveis"
#: py/parsenum.c
msgid "int() arg 2 must be >= 2 and <= 36"
@ -3025,7 +3032,7 @@ msgstr "max_length deve ser > 0"
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
msgstr ""
msgstr "O número máximo de dimensões são 4"
#: py/runtime.c
msgid "maximum recursion depth exceeded"
@ -3162,7 +3169,7 @@ msgstr "um arg não-palavra-chave após a palavra-chave arg"
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
msgstr "a norma é definida para matrizes 1D e 2D"
#: shared-bindings/_bleio/UUID.c
msgid "not a 128-bit UUID"
@ -3230,7 +3237,7 @@ msgstr "sequência com comprimento ímpar"
#: extmod/ulab/code/ulab_create.c
msgid "offset is too large"
msgstr ""
msgstr "o offset é muito grande"
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
@ -3257,11 +3264,11 @@ msgstr "os operandos não puderam ser transmitidos juntos"
#: extmod/ulab/code/ndarray.c
msgid "operation is implemented for 1D Boolean arrays only"
msgstr ""
msgstr "A operação é implementada apenas para matrizes booleanas 1D"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented for flattened array"
msgstr ""
msgstr "a operação não é implementada para a matriz achatada"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
@ -3403,7 +3410,7 @@ msgstr "o comprimento solicitado %d, porém o objeto tem comprimento %d"
#: extmod/ulab/code/ndarray_operators.c
msgid "results cannot be cast to specified type"
msgstr ""
msgstr "os resultados não podem ser lançados para um determinado tipo"
#: py/compile.c
msgid "return annotation must be an identifier"
@ -3425,7 +3432,7 @@ msgstr "rgb_pins[%d] não está na mesma porta que o clock"
#: extmod/ulab/code/numerical/numerical.c
msgid "roll argument must be an ndarray"
msgstr ""
msgstr "argumento de enrolar deve ser um ndarray"
#: py/objstr.c
msgid "rsplit(None,n)"
@ -3453,7 +3460,7 @@ msgstr "compilação de script não suportada"
#: extmod/ulab/code/ndarray.c
msgid "shape must be a tuple"
msgstr ""
msgstr "a forma deve ser uma tupla"
#: py/objstr.c
msgid "sign not allowed in string format specifier"
@ -3602,7 +3609,7 @@ msgstr "timestamp fora do intervalo para a plataforma time_t"
#: extmod/ulab/code/ndarray.c
msgid "tobytes can be invoked for dense arrays only"
msgstr ""
msgstr "os tobytes podem ser invocados apenas nas matrizes densas"
#: shared-module/struct/__init__.c
msgid "too many arguments provided with the given format"
@ -3781,11 +3788,11 @@ msgstr "a janela deve ser <= intervalo"
#: extmod/ulab/code/numerical/numerical.c
msgid "wrong axis index"
msgstr ""
msgstr "índice do eixo errado"
#: extmod/ulab/code/ulab_create.c
msgid "wrong axis specified"
msgstr ""
msgstr "um eixo errado foi definido"
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
@ -3835,6 +3842,9 @@ msgstr "zi deve ser de um tipo float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi deve estar na forma (n_section, 2)"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "São suportados apenas soquetes IPv4 SOCK_STREAM"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "O arctan2 está implementado apenas para escalares e ndarrays"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-20 22:28+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -301,6 +301,7 @@ msgid "All I2C peripherals are in use"
msgstr "All I2C-kringutrustning används"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr "Alla PCNT-enheter används"
@ -337,6 +338,7 @@ msgstr "Alla timers för denna pinne är i bruk"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1100,6 +1102,7 @@ msgid "Invalid byteorder string"
msgstr "Ogiltig byteorder-sträng"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Ogiltig inspelningsperiod. Giltigt intervall: 1 - 500"
@ -1277,6 +1280,10 @@ msgstr "Måste ange MISO- eller MOSI-pinne"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "Måste använda ett multipel av 6 rgb-pinnar, inte %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Name är för långt"
@ -1429,14 +1436,14 @@ msgstr "Udda paritet stöds inte"
msgid "Only 8 or 16 bit mono with "
msgstr "Endast 8 eller 16 bitars mono med "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "Endast IPv4 SOCK_STREAM sockets stöds"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Endast IPv4-adresser stöds"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -3803,6 +3810,9 @@ msgstr "zi måste vara av typ float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi måste vara i formen (n_section, 2)"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Endast IPv4 SOCK_STREAM sockets stöds"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "arctan2 är enbart implementerad för scalar och ndarray"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: circuitpython-cn\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-23 10:10-0600\n"
"POT-Creation-Date: 2020-11-24 15:40-0500\n"
"PO-Revision-Date: 2020-11-19 01:28+0000\n"
"Last-Translator: hexthat <hexthat@gmail.com>\n"
"Language-Team: Chinese Hanyu Pinyin\n"
@ -303,6 +303,7 @@ msgid "All I2C peripherals are in use"
msgstr "Suǒyǒu I2C wàiwéi qì zhèngzài shǐyòng"
#: ports/esp32s2/common-hal/countio/Counter.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr "suǒ yǒu zhèng zài shǐ yòng zhōng de PCNT dān yuán"
@ -339,6 +340,7 @@ msgstr "Cǐ yǐn jiǎo de suǒyǒu jìshí qì zhèngzài shǐyòng"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/atmel-samd/common-hal/pulseio/PulseOut.c
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/neopixel_write/__init__.c
#: ports/esp32s2/common-hal/pulseio/PulseIn.c
#: ports/esp32s2/common-hal/pulseio/PulseOut.c
@ -1098,6 +1100,7 @@ msgid "Invalid byteorder string"
msgstr "Wúxiào de zì jié shùnxù zìfú chuàn"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
msgid "Invalid capture period. Valid range: 1 - 500"
msgstr "Wúxiào de bǔhuò zhōuqí. Yǒuxiào fànwéi: 1-500"
@ -1274,6 +1277,10 @@ msgstr "Bìxū tígōng MISO huò MOSI yǐn jiǎo"
msgid "Must use a multiple of 6 rgb pins, not %d"
msgstr "bì xū shǐ yòng 6 RGB yǐn jiǎo de bèi shù, ér bù shì %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
#: py/parse.c
msgid "Name too long"
msgstr "Míngchēng tài zhǎng"
@ -1425,14 +1432,14 @@ msgstr "Bù zhīchí jīshù"
msgid "Only 8 or 16 bit mono with "
msgstr "Zhǐyǒu 8 huò 16 wèi dānwèi "
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 SOCK_STREAM sockets supported"
msgstr "Jǐn zhīchí IPv4 SOCK_STREAM tào jiē zì"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Only IPv4 addresses supported"
msgstr "Jǐn zhīchí IPv4 dìzhǐ"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
msgid ""
@ -3792,6 +3799,9 @@ msgstr "zi bìxū wèi fú diǎn xíng"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi bìxū jùyǒu xíngzhuàng (n_section,2)"
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Jǐn zhīchí IPv4 SOCK_STREAM tào jiē zì"
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "arctan2 jǐn zhēnduì biāoliàng hé ndarray shíxiàn"

View File

@ -190,6 +190,7 @@ SRC_C += \
lib/utils/pyexec.c \
lib/utils/stdout_helpers.c \
lib/utils/sys_stdio_mphal.c \
lib/netutils/netutils.c \
peripherals/timer.c \
peripherals/pcnt.c \
peripherals/pins.c \

View File

@ -204,6 +204,14 @@ void common_hal_busio_spi_construct(busio_spi_obj_t *self,
// hal->dummy_bits = 0;
// hal->addr = 0;
claim_pin(self->clock_pin);
if (self->MOSI_pin != NULL) {
claim_pin(self->MOSI_pin);
}
if (self->MISO_pin != NULL) {
claim_pin(self->MISO_pin);
}
hal->io_mode = SPI_LL_IO_MODE_NORMAL;
common_hal_busio_spi_configure(self, 250000, 0, 0, 8);

View File

@ -96,7 +96,7 @@ void reset_all_pins(void) {
}
void claim_pin(const mcu_pin_obj_t* pin) {
in_use[pin->number / 32] |= (1 << pin->number % 32);
in_use[pin->number / 32] |= (1 << (pin->number % 32));
#ifdef MICROPY_HW_NEOPIXEL
if (pin == MICROPY_HW_NEOPIXEL) {
neopixel_in_use = true;
@ -116,7 +116,7 @@ bool pin_number_is_free(gpio_num_t pin_number) {
#endif
uint8_t offset = pin_number / 32;
uint8_t mask = 1 << pin_number % 32;
uint32_t mask = 1 << (pin_number % 32);
return (never_reset_pins[offset] & mask) == 0 && (in_use[offset] & mask) == 0;
}

View File

@ -32,6 +32,11 @@
#include "py/runtime.h"
#include "supervisor/shared/tick.h"
#include "components/lwip/lwip/src/include/lwip/err.h"
#include "components/lwip/lwip/src/include/lwip/sockets.h"
#include "components/lwip/lwip/src/include/lwip/sys.h"
#include "components/lwip/lwip/src/include/lwip/netdb.h"
void common_hal_socketpool_socket_settimeout(socketpool_socket_obj_t* self, mp_uint_t timeout_ms) {
self->timeout_ms = timeout_ms;
}
@ -103,6 +108,11 @@ mp_uint_t common_hal_socketpool_socket_recv_into(socketpool_socket_obj_t* self,
}
if (available > 0) {
status = esp_tls_conn_read(self->tcp, (void*) buf + received, available);
if (status == 0) {
// Reading zero when something is available indicates a closed
// connection. (The available bytes could have been TLS internal.)
break;
}
if (status > 0) {
received += status;
}
@ -119,16 +129,75 @@ mp_uint_t common_hal_socketpool_socket_recv_into(socketpool_socket_obj_t* self,
return received;
}
mp_uint_t common_hal_socketpool_socket_sendto(socketpool_socket_obj_t* self,
const char* host, size_t hostlen, uint8_t port, const uint8_t* buf, mp_uint_t len) {
// Get the IP address string
const struct addrinfo hints = {
.ai_family = AF_INET,
.ai_socktype = SOCK_STREAM,
};
struct addrinfo *result;
int error = lwip_getaddrinfo(host, NULL, &hints, &result);
if (error != 0 || result == NULL) {
return 0;
}
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wcast-align"
struct in_addr *addr = &((struct sockaddr_in *)result->ai_addr)->sin_addr;
#pragma GCC diagnostic pop
char ip_str[IP4ADDR_STRLEN_MAX];
inet_ntoa_r(*addr, ip_str, IP4ADDR_STRLEN_MAX);
freeaddrinfo(result);
// Set parameters
struct sockaddr_in dest_addr;
dest_addr.sin_addr.s_addr = inet_addr((const char *)ip_str);
dest_addr.sin_family = AF_INET;
dest_addr.sin_port = htons(port);
int bytes_sent = lwip_sendto(self->num, buf, len, 0, (struct sockaddr *)&dest_addr, sizeof(dest_addr));
if (bytes_sent < 0) {
mp_raise_BrokenPipeError();
return 0;
}
return bytes_sent;
}
mp_uint_t common_hal_socketpool_socket_recvfrom_into(socketpool_socket_obj_t* self,
uint8_t* buf, mp_uint_t len, uint8_t* ip, uint *port) {
struct sockaddr_in source_addr;
socklen_t socklen = sizeof(source_addr);
int bytes_received = lwip_recvfrom(self->num, buf, len - 1, 0, (struct sockaddr *)&source_addr, &socklen);
memcpy((void *)ip, (void*)&source_addr.sin_addr.s_addr, sizeof source_addr.sin_addr.s_addr);
*port = source_addr.sin_port;
if (bytes_received < 0) {
mp_raise_BrokenPipeError();
return 0;
} else {
buf[bytes_received] = 0; // Null-terminate whatever we received
return bytes_received;
}
}
void common_hal_socketpool_socket_close(socketpool_socket_obj_t* self) {
self->connected = false;
if (self->tcp != NULL) {
esp_tls_conn_destroy(self->tcp);
self->tcp = NULL;
}
if (self->num >= 0) {
lwip_shutdown(self->num, 0);
lwip_close(self->num);
self->num = -1;
}
}
bool common_hal_socketpool_socket_get_closed(socketpool_socket_obj_t* self) {
return self->tcp == NULL;
return self->tcp == NULL && self->num < 0;
}

View File

@ -61,15 +61,14 @@ socketpool_socket_obj_t* common_hal_socketpool_socket(socketpool_socketpool_obj_
socket_type = SOCK_RAW;
}
if (socket_type == SOCK_DGRAM || socket_type == SOCK_RAW ||
addr_family == AF_INET6 || ipproto == IPPROTO_IPV6) {
mp_raise_NotImplementedError(translate("Only IPv4 SOCK_STREAM sockets supported"));
if (addr_family == AF_INET6 || ipproto == IPPROTO_IPV6) {
mp_raise_NotImplementedError(translate("Only IPv4 sockets supported"));
}
int socknum = -1;
esp_tls_t* tcp_handle = NULL;
if (socket_type == SOCK_DGRAM || socket_type == SOCK_RAW) {
// socknum = lwip_socket(addr_family, socket_type, ipproto);
socknum = lwip_socket(addr_family, socket_type, ipproto);
} else {
tcp_handle = esp_tls_init();

View File

@ -138,9 +138,9 @@ wifi_radio_error_t common_hal_wifi_radio_connect(wifi_radio_obj_t *self, uint8_t
if (bssid_len > 0){
memcpy(&config->sta.bssid, bssid, bssid_len);
config->sta.bssid[bssid_len] = 0;
config->sta.bssid_set = 1;
config->sta.bssid_set = true;
} else {
config->sta.bssid_set = 0;
config->sta.bssid_set = false;
}
// If channel is 0 (default/unset) and BSSID is not given, do a full scan instead of fast scan
// This will ensure that the best AP in range is chosen automatically

View File

@ -116,7 +116,7 @@ const mp_obj_property_t displayio_colorconverter_dither_obj = {
STATIC mp_obj_t displayio_colorconverter_make_transparent(mp_obj_t self_in, mp_obj_t transparent_color_obj) {
displayio_colorconverter_t *self = MP_OBJ_TO_PTR(self_in);
mp_int_t transparent_color = mp_obj_get_int(&transparent_color);
mp_int_t transparent_color = mp_obj_get_int(transparent_color_obj);
common_hal_displayio_colorconverter_make_transparent(self, transparent_color);
return mp_const_none;
}
@ -128,7 +128,7 @@ MP_DEFINE_CONST_FUN_OBJ_2(displayio_colorconverter_make_transparent_obj, display
STATIC mp_obj_t displayio_colorconverter_make_opaque(mp_obj_t self_in, mp_obj_t transparent_color_obj) {
displayio_colorconverter_t *self = MP_OBJ_TO_PTR(self_in);
mp_int_t transparent_color = mp_obj_get_int(&transparent_color);
mp_int_t transparent_color = mp_obj_get_int(transparent_color_obj);
common_hal_displayio_colorconverter_make_opaque(self, transparent_color);
return mp_const_none;
}

View File

@ -36,6 +36,8 @@
#include "py/runtime.h"
#include "py/mperrno.h"
#include "lib/netutils/netutils.h"
//| class Socket:
//| """TCP, UDP and RAW socket. Cannot be created directly. Instead, call
//| `SocketPool.socket()`.
@ -274,79 +276,63 @@ STATIC mp_obj_t socketpool_socket_recv_into(size_t n_args, const mp_obj_t *args)
}
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(socketpool_socket_recv_into_obj, 2, 3, socketpool_socket_recv_into);
// //| def sendto(self, bytes: ReadableBuffer, address: tuple) -> int:
// //| """Send some bytes to a specific address.
// //| Suits sockets of type SOCK_DGRAM
// //|
// //| :param ~bytes bytes: some bytes to send
// //| :param ~tuple address: tuple of (remote_address, remote_port)"""
// //| ...
// //|
//| def sendto(self, bytes: ReadableBuffer, address: Tuple[str, int]) -> int:
//| """Send some bytes to a specific address.
//| Suits sockets of type SOCK_DGRAM
//|
//| :param ~bytes bytes: some bytes to send
//| :param ~tuple address: tuple of (remote_address, remote_port)"""
//| ...
//|
// STATIC mp_obj_t socketpool_socket_sendto(mp_obj_t self_in, mp_obj_t data_in, mp_obj_t addr_in) {
// // mod_network_socket_obj_t *self = MP_OBJ_TO_PTR(self_in);
STATIC mp_obj_t socketpool_socket_sendto(mp_obj_t self_in, mp_obj_t data_in, mp_obj_t addr_in) {
socketpool_socket_obj_t *self = MP_OBJ_TO_PTR(self_in);
// // // get the data
// // mp_buffer_info_t bufinfo;
// // mp_get_buffer_raise(data_in, &bufinfo, MP_BUFFER_READ);
// get the data
mp_buffer_info_t bufinfo;
mp_get_buffer_raise(data_in, &bufinfo, MP_BUFFER_READ);
// // // get address
// // uint8_t ip[MOD_NETWORK_IPADDR_BUF_SIZE];
// // mp_uint_t port = netutils_parse_inet_addr(addr_in, ip, NETUTILS_BIG);
mp_obj_t *addr_items;
mp_obj_get_array_fixed_n(addr_in, 2, &addr_items);
// // // check if we need to select a NIC
// // socket_select_nic(self, ip);
size_t hostlen;
const char* host = mp_obj_str_get_data(addr_items[0], &hostlen);
mp_int_t port = mp_obj_get_int(addr_items[1]);
// // // call the NIC to sendto
// // int _errno;
// // mp_int_t ret = self->nic_type->sendto(self, bufinfo.buf, bufinfo.len, ip, port, &_errno);
// // if (ret == -1) {
// // mp_raise_OSError(_errno);
// // }
// mp_int_t ret = 0;
mp_int_t ret = common_hal_socketpool_socket_sendto(self, host, hostlen, port, bufinfo.buf, bufinfo.len);
if (!ret) {
mp_raise_OSError(0);
}
// return mp_obj_new_int(ret);
// }
// STATIC MP_DEFINE_CONST_FUN_OBJ_3(socketpool_socket_sendto_obj, socketpool_socket_sendto);
return mp_obj_new_int_from_uint(ret);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_3(socketpool_socket_sendto_obj, socketpool_socket_sendto);
// //| def recvfrom(self, bufsize: int) -> Tuple[bytes, tuple]:
// //| """Reads some bytes from the connected remote address.
// //| Suits sockets of type SOCK_STREAM
// //|
// //| Returns a tuple containing
// //| * a bytes() of length <= bufsize
// //| * a remote_address, which is a tuple of ip address and port number
// //|
// //| :param ~int bufsize: maximum number of bytes to receive"""
// //| ...
// //|
//| def recvfrom_into(self, buffer: WriteableBuffer) -> Tuple[int, Tuple[str, int]]:
//| """Reads some bytes from a remote address.
//|
//| Returns a tuple containing
//| * the number of bytes received into the given buffer
//| * a remote_address, which is a tuple of ip address and port number
//|
//| :param object buffer: buffer to read into"""
//| ...
//|
STATIC mp_obj_t socketpool_socket_recvfrom_into(mp_obj_t self_in, mp_obj_t data_in) {
socketpool_socket_obj_t *self = MP_OBJ_TO_PTR(self_in);
mp_buffer_info_t bufinfo;
mp_get_buffer_raise(data_in, &bufinfo, MP_BUFFER_WRITE);
// STATIC mp_obj_t socketpool_socket_recvfrom_into(mp_obj_t self_in, mp_obj_t len_in) {
// // mod_network_socket_obj_t *self = MP_OBJ_TO_PTR(self_in);
// // if (self->nic == MP_OBJ_NULL) {
// // // not connected
// // mp_raise_OSError(MP_ENOTCONN);
// // }
// // vstr_t vstr;
// // vstr_init_len(&vstr, mp_obj_get_int(len_in));
// // byte ip[4];
// // mp_uint_t port;
// // int _errno;
// // mp_int_t ret = self->nic_type->recvfrom(self, (byte*)vstr.buf, vstr.len, ip, &port, &_errno);
// // if (ret == -1) {
// // mp_raise_OSError(_errno);
// // }
// mp_obj_t tuple[2];
// // if (ret == 0) {
// // tuple[0] = mp_const_empty_bytes;
// // } else {
// // vstr.len = ret;
// // tuple[0] = mp_obj_new_str_from_vstr(&mp_type_bytes, &vstr);
// // }
// // tuple[1] = netutils_format_inet_addr(ip, port, NETUTILS_BIG);
// return mp_obj_new_tuple(2, tuple);
// }
// STATIC MP_DEFINE_CONST_FUN_OBJ_2(socketpool_socket_recvfrom_into_obj, socketpool_socket_recvfrom_into);
byte ip[4];
mp_uint_t port;
mp_int_t ret = common_hal_socketpool_socket_recvfrom_into(self,
(byte*)bufinfo.buf, bufinfo.len, ip, &port);
mp_obj_t tuple_contents[2];
tuple_contents[0] = mp_obj_new_int_from_uint(ret);
tuple_contents[1] = netutils_format_inet_addr(ip, port, NETUTILS_BIG);
return mp_obj_new_tuple(2, tuple_contents);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_2(socketpool_socket_recvfrom_into_obj, socketpool_socket_recvfrom_into);
// //| def setsockopt(self, level: int, optname: int, value: int) -> None:
// //| """Sets socket options"""
@ -449,8 +435,8 @@ STATIC const mp_rom_map_elem_t socketpool_socket_locals_dict_table[] = {
// { MP_ROM_QSTR(MP_QSTR_accept), MP_ROM_PTR(&socketpool_socket_accept_obj) },
{ MP_ROM_QSTR(MP_QSTR_connect), MP_ROM_PTR(&socketpool_socket_connect_obj) },
{ MP_ROM_QSTR(MP_QSTR_send), MP_ROM_PTR(&socketpool_socket_send_obj) },
// { MP_ROM_QSTR(MP_QSTR_sendto), MP_ROM_PTR(&socketpool_socket_sendto_obj) },
// { MP_ROM_QSTR(MP_QSTR_recvfrom_into), MP_ROM_PTR(&socketpool_socket_recvfrom_into_obj) },
{ MP_ROM_QSTR(MP_QSTR_sendto), MP_ROM_PTR(&socketpool_socket_sendto_obj) },
{ MP_ROM_QSTR(MP_QSTR_recvfrom_into), MP_ROM_PTR(&socketpool_socket_recvfrom_into_obj) },
{ MP_ROM_QSTR(MP_QSTR_recv_into), MP_ROM_PTR(&socketpool_socket_recv_into_obj) },
// { MP_ROM_QSTR(MP_QSTR_setsockopt), MP_ROM_PTR(&socketpool_socket_setsockopt_obj) },
{ MP_ROM_QSTR(MP_QSTR_settimeout), MP_ROM_PTR(&socketpool_socket_settimeout_obj) },

View File

@ -35,6 +35,10 @@ void common_hal_socketpool_socket_settimeout(socketpool_socket_obj_t* self, mp_u
bool common_hal_socketpool_socket_connect(socketpool_socket_obj_t* self, const char* host, size_t hostlen, mp_int_t port);
mp_uint_t common_hal_socketpool_socket_send(socketpool_socket_obj_t* self, const uint8_t* buf, mp_uint_t len);
mp_uint_t common_hal_socketpool_socket_recv_into(socketpool_socket_obj_t* self, const uint8_t* buf, mp_uint_t len);
mp_uint_t common_hal_socketpool_socket_sendto(socketpool_socket_obj_t* self,
const char* host, size_t hostlen, uint8_t port, const uint8_t* buf, mp_uint_t len);
mp_uint_t common_hal_socketpool_socket_recvfrom_into(socketpool_socket_obj_t* self,
uint8_t* buf, mp_uint_t len, uint8_t* ip, uint *port);
void common_hal_socketpool_socket_close(socketpool_socket_obj_t* self);
bool common_hal_socketpool_socket_get_closed(socketpool_socket_obj_t* self);
bool common_hal_socketpool_socket_get_connected(socketpool_socket_obj_t* self);

View File

@ -142,9 +142,25 @@ const mp_obj_property_t wifi_radio_hostname_obj = {
(mp_obj_t)&mp_const_none_obj},
};
//| def connect(self, ssid: ReadableBuffer, password: ReadableBuffer = b"", *, channel: Optional[int] = 0, timeout: Optional[float] = None) -> bool:
//| def connect(self,
//| ssid: ReadableBuffer,
//| password: ReadableBuffer = b"",
//| *,
//| channel: Optional[int] = 0,
//| bssid: Optional[ReadableBuffer] = b"",
//| timeout: Optional[float] = None) -> bool:
//| """Connects to the given ssid and waits for an ip address. Reconnections are handled
//| automatically once one connection succeeds."""
//| automatically once one connection succeeds.
//|
//| By default, this will scan all channels and connect to the access point (AP) with the
//| given ``ssid`` and greatest signal strength (rssi).
//|
//| If ``channel`` is given, the scan will begin with the given channel and connect to
//| the first AP with the given ``ssid``. This can speed up the connection time
//| significantly because a full scan doesn't occur.
//|
//| If ``bssid`` is given, the scan will start at the first channel or the one given and
//| connect to the AP with the given ``bssid`` and ``ssid``."""
//| ...
//|
STATIC mp_obj_t wifi_radio_connect(size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {

View File

@ -70,8 +70,8 @@ void common_hal__eve_Vertex2f(common_hal__eve_t *eve, mp_float_t x, mp_float_t y
void common_hal__eve_VertexFormat(common_hal__eve_t *eve, uint32_t frac)
{
C4(eve, ((27 << 24) | ((frac & 7))));
eve->vscale = 1 << eve->vscale;
C4(eve, ((39 << 24) | ((frac & 7))));
eve->vscale = 1 << frac;
}