Merge branch 'main' into color-converter-transparency

This commit is contained in:
Jensen Kuras 2020-10-16 19:55:24 -05:00 committed by GitHub
commit 575b2e607b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
70 changed files with 1042 additions and 147 deletions

View File

@ -180,6 +180,7 @@ jobs:
- "arduino_zero"
- "bast_pro_mini_m0"
- "bdmicro_vina_d21"
- "bdmicro_vina_d51"
- "bless_dev_board_multi_sensor"
- "blm_badge"
- "capablerobot_usbhub"
@ -197,6 +198,8 @@ jobs:
- "datum_imu"
- "datum_light"
- "datum_weather"
- "dynossat_edu_eps"
- "dynossat_edu_obc"
- "electronut_labs_blip"
- "electronut_labs_papyr"
- "escornabot_makech"

View File

@ -45,7 +45,6 @@
#include "shared-bindings/_bleio/Address.h"
#include "shared-bindings/_bleio/Characteristic.h"
#include "shared-bindings/_bleio/Service.h"
#include "shared-bindings/nvm/ByteArray.h"
#include "shared-bindings/_bleio/Connection.h"
#include "shared-bindings/_bleio/ScanEntry.h"
#include "shared-bindings/time/__init__.h"

View File

@ -11,7 +11,7 @@
#include <stdbool.h>
// for __packed
#include <string.h>
#include <sys/cdefs.h>
#define BT_EATT_PSM 0x27
#define BT_ATT_DEFAULT_LE_MTU 23

View File

@ -12,10 +12,15 @@
#define ZEPHYR_INCLUDE_BLUETOOTH_HCI_H_
#include <stdbool.h>
#include <string.h>
// for __packed
#include <sys/cdefs.h>
#include "addr.h"
// ESP32S2 build environment defines this already.
#ifndef BIT
#define BIT(n) (1UL << (n))
#endif
/* Special own address types for LL privacy (used in adv & scan parameters) */
#define BT_HCI_OWN_ADDR_RPA_OR_PUBLIC 0x02

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\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"
@ -250,6 +250,10 @@ msgstr "'label' membutuhkan 1 argumen"
msgid "'return' outside function"
msgstr "'return' diluar fungsi"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' diluar fungsi"
@ -293,6 +297,7 @@ msgid "All I2C peripherals are in use"
msgstr "Semua perangkat I2C sedang digunakan"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -914,6 +919,7 @@ msgid "File exists"
msgstr "File sudah ada"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -951,7 +957,8 @@ msgid "Group full"
msgstr "Grup penuh"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Perangkat keras sibuk, coba pin alternatif"
@ -959,6 +966,10 @@ msgstr "Perangkat keras sibuk, coba pin alternatif"
msgid "Hardware in use, try alternative pins"
msgstr "Perangkat keras sedang digunakan, coba pin alternatif"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "operasi I/O pada file tertutup"
@ -1023,7 +1034,8 @@ msgid "Invalid %q pin"
msgstr "%q pada tidak valid"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1039,6 +1051,7 @@ msgstr "File BMP tidak valid"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Pin DAC yang diberikan tidak valid"
@ -1250,7 +1263,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Tidak ada CCCD untuk Karakteristik ini"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Tidak ada DAC (Digital Analog Converter) di dalam chip"
@ -2767,6 +2779,10 @@ msgstr "format tidak valid"
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "key tidak valid"
@ -3475,6 +3491,10 @@ msgstr ""
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr ""

View File

@ -947,6 +947,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr ""
@ -2732,6 +2736,10 @@ msgstr ""
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\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"
@ -250,6 +250,10 @@ msgstr ""
msgid "'return' outside function"
msgstr ""
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr ""
@ -293,6 +297,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -900,6 +905,7 @@ msgid "File exists"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -936,7 +942,8 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -944,6 +951,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr ""
@ -1006,7 +1017,8 @@ msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1022,6 +1034,7 @@ msgstr ""
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1233,7 +1246,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr ""
@ -2724,6 +2736,10 @@ msgstr ""
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr ""
@ -3430,6 +3446,10 @@ msgstr ""
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
"Language: de_DE\n"
@ -249,6 +249,10 @@ msgstr "'label' erfordert genau ein Argument"
msgid "'return' outside function"
msgstr "'return' außerhalb einer Funktion"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' außerhalb einer Funktion"
@ -292,6 +296,7 @@ msgid "All I2C peripherals are in use"
msgstr "Alle I2C-Peripheriegeräte sind in Benutzung"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -911,6 +916,7 @@ msgid "File exists"
msgstr "Datei existiert"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -951,7 +957,8 @@ msgid "Group full"
msgstr "Gruppe voll"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware beschäftigt, versuchen Sie alternative Pins"
@ -959,6 +966,10 @@ msgstr "Hardware beschäftigt, versuchen Sie alternative Pins"
msgid "Hardware in use, try alternative pins"
msgstr "Hardware in benutzung, probiere alternative Pins"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "Lese/Schreibe-operation an geschlossener Datei"
@ -1023,7 +1034,8 @@ msgid "Invalid %q pin"
msgstr "Ungültiger %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1039,6 +1051,7 @@ msgstr "Ungültige BMP-Datei"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Ungültiger DAC-Pin angegeben"
@ -1252,7 +1265,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Kein CCCD für diese Charakteristik"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Kein DAC im Chip vorhanden"
@ -2795,6 +2807,10 @@ msgstr "ungültiges Format"
msgid "invalid format specifier"
msgstr "ungültiger Formatbezeichner"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "ungültiger Schlüssel"
@ -3514,6 +3530,10 @@ msgstr "Typ ist kein akzeptierter Basis-Typ"
msgid "type object '%q' has no attribute '%q'"
msgstr "Typ vom Objekt '%q' hat kein Attribut '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "Typ akzeptiert 1 oder 3 Argumente"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -245,6 +245,10 @@ msgstr ""
msgid "'return' outside function"
msgstr ""
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr ""
@ -288,6 +292,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -895,6 +900,7 @@ msgid "File exists"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -931,7 +937,8 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -939,6 +946,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr ""
@ -1001,7 +1012,8 @@ msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1017,6 +1029,7 @@ msgstr ""
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1228,7 +1241,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr ""
@ -2719,6 +2731,10 @@ msgstr ""
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr ""
@ -3425,6 +3441,10 @@ msgstr ""
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-10-09 17:19+0000\n"
"Last-Translator: dherrada <dylan.herrada@adafruit.com>\n"
"Language-Team: \n"
@ -253,6 +253,10 @@ msgstr "'label' requiere 1 argumento"
msgid "'return' outside function"
msgstr "'return' fuera de una función"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' fuera de una función"
@ -296,6 +300,7 @@ msgid "All I2C peripherals are in use"
msgstr "Todos los periféricos I2C están siendo usados"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr "Todos los FIFOs de RX en uso"
@ -915,6 +920,7 @@ msgid "File exists"
msgstr "El archivo ya existe"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr "Filtros muy complejos"
@ -952,7 +958,8 @@ msgid "Group full"
msgstr "Group lleno"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware ocupado, pruebe pines alternativos"
@ -960,6 +967,10 @@ msgstr "Hardware ocupado, pruebe pines alternativos"
msgid "Hardware in use, try alternative pins"
msgstr "Hardware en uso, pruebe pines alternativos"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "Operación I/O en archivo cerrado"
@ -1024,7 +1035,8 @@ msgid "Invalid %q pin"
msgstr "Pin %q inválido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "selección inválida de pin %q"
@ -1040,6 +1052,7 @@ msgstr "Archivo BMP inválido"
msgid "Invalid BSSID"
msgstr "BSSID inválido"
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Pin suministrado inválido para DAC"
@ -1251,7 +1264,6 @@ msgid "No CCCD for this Characteristic"
msgstr "No hay CCCD para esta característica"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "El chip no tiene DAC"
@ -2789,6 +2801,10 @@ msgstr "formato inválido"
msgid "invalid format specifier"
msgstr "especificador de formato inválido"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "llave inválida"
@ -3504,6 +3520,10 @@ msgstr "type no es un tipo de base aceptable"
msgid "type object '%q' has no attribute '%q'"
msgstr "objeto de tipo '%q' no tiene atributo '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "type acepta 1 ó 3 argumentos"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
"Language-Team: fil\n"
@ -247,6 +247,10 @@ msgstr "'label' kailangan ng 1 argument"
msgid "'return' outside function"
msgstr "'return' sa labas ng function"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' sa labas ng function"
@ -290,6 +294,7 @@ msgid "All I2C peripherals are in use"
msgstr "Lahat ng I2C peripherals ginagamit"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "Mayroong file"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -944,7 +950,8 @@ msgid "Group full"
msgstr "Puno ang group"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -952,6 +959,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "I/O operasyon sa saradong file"
@ -1016,7 +1027,8 @@ msgid "Invalid %q pin"
msgstr "Mali ang %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1032,6 +1044,7 @@ msgstr "Mali ang BMP file"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1243,7 +1256,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Walang DAC sa chip"
@ -2764,6 +2776,10 @@ msgstr "hindi wastong pag-format"
msgid "invalid format specifier"
msgstr "mali ang format specifier"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "mali ang key"
@ -3480,6 +3496,10 @@ msgstr "hindi puede ang type para sa base type"
msgid "type object '%q' has no attribute '%q'"
msgstr "type object '%q' ay walang attribute '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "type kumuhuha ng 1 o 3 arguments"

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"PO-Revision-Date: 2020-09-16 13:47+0000\n"
"Last-Translator: Hugo Dahl <hugo@code-jedi.com>\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-10-15 18:17+0000\n"
"Last-Translator: Jeff Epler <jepler@gmail.com>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
@ -46,7 +46,7 @@ msgstr " Fichier \"%q\", ligne %d"
#: main.c
msgid " output:\n"
msgstr " sortie:\n"
msgstr " sortie :\n"
#: py/objstr.c
#, c-format
@ -102,7 +102,7 @@ msgstr "%q doit être un tuple de longueur 2"
#: shared-bindings/canio/Match.c
msgid "%q out of range"
msgstr ""
msgstr "%q est hors de porté"
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
msgid "%q pin invalid"
@ -254,6 +254,10 @@ msgstr "'label' nécessite 1 argument"
msgid "'return' outside function"
msgstr "'return' en dehors d'une fonction"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' en dehors d'une fonction"
@ -281,7 +285,7 @@ msgstr "Un canal d'interruptions matérielles est déjà utilisé"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "ADC2 is being used by WiFi"
msgstr ""
msgstr "ADC2 est utilisé pars le Wifi"
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
#, c-format
@ -297,8 +301,9 @@ msgid "All I2C peripherals are in use"
msgstr "Tous les périphériques I2C sont utilisés"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
msgstr "Tout les RX FIFOs sont utilisé"
#: ports/esp32s2/common-hal/busio/SPI.c ports/nrf/common-hal/busio/SPI.c
msgid "All SPI peripherals are in use"
@ -527,7 +532,7 @@ msgstr "Impossible de définir CCCD sur une caractéristique locale"
#: shared-bindings/_bleio/Adapter.c
msgid "Cannot create a new Adapter; use _bleio.adapter;"
msgstr ""
"Un nouveau Adapter ne peut être créé; Adapter; utilisez _bleio.adapter;"
"Un nouveau Adapter ne peut être créé ; Adapter; utilisez _bleio.adapter;"
#: shared-bindings/displayio/Bitmap.c
#: shared-bindings/memorymonitor/AllocationSize.c
@ -664,7 +669,7 @@ msgstr "Code brut corrompu"
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Could not initialize Camera"
msgstr ""
msgstr "Impossible d'initialisé la Camera"
#: ports/cxd56/common-hal/gnss/GNSS.c
msgid "Could not initialize GNSS"
@ -795,7 +800,7 @@ msgstr "La BCE ne fonctionne que sur 16 octets à la fois"
#: ports/esp32s2/common-hal/busio/SPI.c
msgid "ESP-IDF memory allocation failed"
msgstr ""
msgstr "ESP-IDF échec d'allocation de la mémoire"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
#: ports/atmel-samd/common-hal/ps2io/Ps2.c
@ -900,7 +905,7 @@ msgstr "Impossible de se connecter : délai d'expiration"
#: ports/esp32s2/common-hal/wifi/__init__.c
msgid "Failed to init wifi"
msgstr ""
msgstr "Echec de l'initialisation du Wifi"
#: shared-module/audiomp3/MP3Decoder.c
msgid "Failed to parse MP3 file"
@ -920,6 +925,7 @@ msgid "File exists"
msgstr "Le fichier existe"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -957,7 +963,8 @@ msgid "Group full"
msgstr "Groupe plein"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Matériel occupé, essayez d'autres broches"
@ -965,6 +972,10 @@ msgstr "Matériel occupé, essayez d'autres broches"
msgid "Hardware in use, try alternative pins"
msgstr "Matériel utilisé, essayez d'autres broches"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "opération d'E/S sur un fichier fermé"
@ -975,7 +986,7 @@ msgstr "Erreur d'initialisation I2C"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
msgstr "I2SOut n'est pas disponible"
#: shared-bindings/aesio/aes.c
#, c-format
@ -1029,7 +1040,8 @@ msgid "Invalid %q pin"
msgstr "Broche invalide pour '%q'"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1043,8 +1055,9 @@ msgstr "Fichier BMP invalide"
#: shared-bindings/wifi/Radio.c
msgid "Invalid BSSID"
msgstr ""
msgstr "BSSID Invalide"
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Broche DAC non valide fournie"
@ -1093,7 +1106,7 @@ msgstr "Taille de bloc de formatage invalide"
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "Invalid frequency"
msgstr ""
msgstr "fréquence non Valide"
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Invalid frequency supplied"
@ -1216,7 +1229,7 @@ msgstr "La valeur max. de x est %d lors d'une opération miroir"
#: shared-bindings/canio/Message.c
msgid "Messages limited to 8 bytes"
msgstr ""
msgstr "Message limité a 8 bytes"
#: supervisor/shared/safe_mode.c
msgid "MicroPython NLR jump failed. Likely memory corruption."
@ -1256,7 +1269,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Pas de CCCD pour cette caractéristique"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Pas de DAC sur la puce"
@ -1329,11 +1341,11 @@ msgstr "Pas de support entier long"
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "No more channels available"
msgstr ""
msgstr "Pas de canal supplémentaire disponible"
#: ports/esp32s2/common-hal/pwmio/PWMOut.c
msgid "No more timers available"
msgstr ""
msgstr "Pas d'horloge supplémentaire disponible"
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "No more timers available on this pin."
@ -1341,7 +1353,7 @@ msgstr "Plus de minuteurs disponibles sur cette broche."
#: shared-bindings/wifi/Radio.c
msgid "No network with that ssid"
msgstr ""
msgstr "Aucun réseau avec ce ssid"
#: shared-module/touchio/TouchIn.c
msgid "No pulldown on pin; 1Mohm recommended"
@ -1365,7 +1377,7 @@ msgstr "Affirmation de défaillance du Nordic Soft Device."
#: shared-bindings/ipaddress/IPv4Address.c shared-bindings/ipaddress/__init__.c
msgid "Not a valid IP string"
msgstr ""
msgstr "Chaîne IP non valide"
#: ports/nrf/common-hal/_bleio/__init__.c
#: shared-bindings/_bleio/CharacteristicBuffer.c
@ -2804,6 +2816,10 @@ msgstr "format invalide"
msgid "invalid format specifier"
msgstr "spécification de format invalide"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "clé invalide"
@ -3522,6 +3538,10 @@ msgstr "le type n'est pas un type de base accepté"
msgid "type object '%q' has no attribute '%q'"
msgstr "l'objet de type '%q' n'a pas d'attribut '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "le type prend 1 ou 3 arguments"
@ -3601,7 +3621,7 @@ msgstr "caractère de format '%c' (0x%x) non supporté à l'index %d"
#: py/runtime.c
msgid "unsupported type for %q: '%q'"
msgstr "type non supporté pour %q: '%q'"
msgstr "type non supporté pour %q : '%q'"
#: py/runtime.c
msgid "unsupported type for operator"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -245,6 +245,10 @@ msgstr ""
msgid "'return' outside function"
msgstr ""
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr ""
@ -288,6 +292,7 @@ msgid "All I2C peripherals are in use"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -895,6 +900,7 @@ msgid "File exists"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -931,7 +937,8 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -939,6 +946,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr ""
@ -1001,7 +1012,8 @@ msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1017,6 +1029,7 @@ msgstr ""
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1228,7 +1241,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr ""
@ -2719,6 +2731,10 @@ msgstr ""
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr ""
@ -3425,6 +3441,10 @@ msgstr ""
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
"Language-Team: \n"
@ -246,6 +246,10 @@ msgstr "'label' richiede 1 argomento"
msgid "'return' outside function"
msgstr "'return' al di fuori della funzione"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' al di fuori della funzione"
@ -289,6 +293,7 @@ msgid "All I2C peripherals are in use"
msgstr "Tutte le periferiche I2C sono in uso"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "File esistente"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -944,7 +950,8 @@ msgid "Group full"
msgstr "Gruppo pieno"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -952,6 +959,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "operazione I/O su file chiuso"
@ -1016,7 +1027,8 @@ msgid "Invalid %q pin"
msgstr "Pin %q non valido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1032,6 +1044,7 @@ msgstr "File BMP non valido"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1247,7 +1260,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Nessun DAC sul chip"
@ -2765,6 +2777,10 @@ msgstr "formato non valido"
msgid "invalid format specifier"
msgstr "specificatore di formato non valido"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "chiave non valida"
@ -3487,6 +3503,10 @@ msgstr "il tipo non è un tipo di base accettabile"
msgid "type object '%q' has no attribute '%q'"
msgstr "l'oggetto di tipo '%q' non ha l'attributo '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "tipo prende 1 o 3 argomenti"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-09-25 18:20+0000\n"
"Last-Translator: Taku Fukada <naninunenor@gmail.com>\n"
"Language-Team: none\n"
@ -252,6 +252,10 @@ msgstr ""
msgid "'return' outside function"
msgstr "関数外でのreturn"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "関数外でのyield"
@ -295,6 +299,7 @@ msgid "All I2C peripherals are in use"
msgstr "全てのI2C周辺機器が使用中"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr "全てのRX FIFOが使用中"
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "ファイルが存在します"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -944,7 +950,8 @@ msgid "Group full"
msgstr "グループが一杯"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "ハードウェアビジー。代替のピンを試してください"
@ -952,6 +959,10 @@ msgstr "ハードウェアビジー。代替のピンを試してください"
msgid "Hardware in use, try alternative pins"
msgstr "ハードウェア使用中。代わりのピンを試してください"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "閉じられたファイルへのI/O操作"
@ -1016,7 +1027,8 @@ msgid "Invalid %q pin"
msgstr "不正な%qピン"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "不正な%qピン選択"
@ -1032,6 +1044,7 @@ msgstr "不正なBMPファイル"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "不正なDACピンが与えられました"
@ -1243,7 +1256,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "チップにDACがありません"
@ -2749,6 +2761,10 @@ msgstr ""
msgid "invalid format specifier"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "不正な鍵"
@ -3458,6 +3474,10 @@ msgstr "この型はベース型にできません"
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "typeは1つか3つの引数をとります"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\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"
@ -248,6 +248,10 @@ msgstr "'label' 에는 1 개의 독립변수가 필요합니다"
msgid "'return' outside function"
msgstr "'return' 는 함수 외부에 존재합니다"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' 는 함수 외부에 존재합니다"
@ -291,6 +295,7 @@ msgid "All I2C peripherals are in use"
msgstr "사용중인 모든 I2C주변 기기"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -900,6 +905,7 @@ msgid "File exists"
msgstr ""
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -936,7 +942,8 @@ msgid "Group full"
msgstr ""
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr ""
@ -944,6 +951,10 @@ msgstr ""
msgid "Hardware in use, try alternative pins"
msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr ""
@ -1006,7 +1017,8 @@ msgid "Invalid %q pin"
msgstr ""
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1022,6 +1034,7 @@ msgstr ""
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1233,7 +1246,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr ""
@ -2725,6 +2737,10 @@ msgstr "형식가 유효하지 않습니다"
msgid "invalid format specifier"
msgstr "형식 지정자(format specifier)가 유효하지 않습니다"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "키가 유효하지 않습니다"
@ -3431,6 +3447,10 @@ msgstr ""
msgid "type object '%q' has no attribute '%q'"
msgstr ""
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr ""

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-09-09 16:05+0000\n"
"Last-Translator: Jelle Jager <jell@jjc.id.au>\n"
"Language-Team: none\n"
@ -250,6 +250,10 @@ msgstr "'label' vereist 1 argument"
msgid "'return' outside function"
msgstr "'return' buiten de functie"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' buiten de functie"
@ -293,6 +297,7 @@ msgid "All I2C peripherals are in use"
msgstr "Alle I2C peripherals zijn in gebruik"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "Bestand bestaat"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -946,7 +952,8 @@ msgid "Group full"
msgstr "Groep is vol"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hardware bezig, probeer alternatieve pinnen"
@ -954,6 +961,10 @@ msgstr "Hardware bezig, probeer alternatieve pinnen"
msgid "Hardware in use, try alternative pins"
msgstr "Hardware in gebruik, probeer alternatieve pinnen"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "I/O actie op gesloten bestand"
@ -1018,7 +1029,8 @@ msgid "Invalid %q pin"
msgstr "Ongeldige %q pin"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "Ongeldige %q pin selectie"
@ -1034,6 +1046,7 @@ msgstr "Ongeldig BMP bestand"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Ongeldige DAC pin opgegeven"
@ -1245,7 +1258,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Geen CCCD voor deze Characteristic"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Geen DAC op de chip"
@ -2776,6 +2788,10 @@ msgstr "ongeldig formaat"
msgid "invalid format specifier"
msgstr "ongeldige formaatspecificatie"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "ongeldige sleutel"
@ -3488,6 +3504,10 @@ msgstr "type is geen aanvaardbaar basistype"
msgid "type object '%q' has no attribute '%q'"
msgstr "objecttype '%q' heeft geen attribuut '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "type accepteert 1 of 3 argumenten"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-09-29 01:39+0000\n"
"Last-Translator: Maciej Stankiewicz <tawezik@gmail.com>\n"
"Language-Team: pl\n"
@ -252,6 +252,10 @@ msgstr "'label' wymaga 1 argumentu"
msgid "'return' outside function"
msgstr "'return' poza funkcją"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' poza funkcją"
@ -295,6 +299,7 @@ msgid "All I2C peripherals are in use"
msgstr "Wszystkie peryferia I2C w użyciu"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "Plik istnieje"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr ""
@ -944,7 +950,8 @@ msgid "Group full"
msgstr "Grupa pełna"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Sprzęt zajęty, wypróbuj alternatywne piny"
@ -952,6 +959,10 @@ msgstr "Sprzęt zajęty, wypróbuj alternatywne piny"
msgid "Hardware in use, try alternative pins"
msgstr "Sprzęt w użyciu, wypróbuj alternatywne piny"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "Operacja I/O na zamkniętym pliku"
@ -1016,7 +1027,8 @@ msgid "Invalid %q pin"
msgstr "Zła nóżka %q"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr ""
@ -1032,6 +1044,7 @@ msgstr "Zły BMP"
msgid "Invalid BSSID"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr ""
@ -1244,7 +1257,6 @@ msgid "No CCCD for this Characteristic"
msgstr ""
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Brak DAC"
@ -2742,6 +2754,10 @@ msgstr "zły format"
msgid "invalid format specifier"
msgstr "zła specyfikacja formatu"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "zły klucz"
@ -3450,6 +3466,10 @@ msgstr "typ nie może być bazowy"
msgid "type object '%q' has no attribute '%q'"
msgstr "typ '%q' nie ma atrybutu '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr ""
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "type wymaga 1 lub 3 argumentów"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"PO-Revision-Date: 2020-10-09 22:07+0000\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-10-16 17:01+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -14,7 +14,7 @@ msgstr ""
"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.3-dev\n"
"X-Generator: Weblate 4.3.1-dev\n"
#: main.c
msgid ""
@ -254,6 +254,10 @@ msgstr "'label' exige 1 argumento"
msgid "'return' outside function"
msgstr "função externa 'return'"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr "'yield a partir' de dentro da função async"
#: py/compile.c
msgid "'yield' outside function"
msgstr "função externa 'yield'"
@ -297,6 +301,7 @@ msgid "All I2C peripherals are in use"
msgstr "Todos os periféricos I2C estão em uso"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr "Todos os FIFOs RX estão em uso"
@ -917,6 +922,7 @@ msgid "File exists"
msgstr "Arquivo já existe"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr "Os filtros são muito complexos"
@ -955,7 +961,8 @@ msgid "Group full"
msgstr "Grupo cheio"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "O hardware está ocupado, tente os pinos alternativos"
@ -963,6 +970,10 @@ msgstr "O hardware está ocupado, tente os pinos alternativos"
msgid "Hardware in use, try alternative pins"
msgstr "O hardware está em uso, tente os pinos alternativos"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr "O nome do host deve ter entre 1 e 253 caracteres"
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "Operação I/O no arquivo fechado"
@ -1027,7 +1038,8 @@ msgid "Invalid %q pin"
msgstr "Pino do %q inválido"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "Seleção inválida dos pinos %q"
@ -1043,6 +1055,7 @@ msgstr "Arquivo BMP inválido"
msgid "Invalid BSSID"
msgstr "BSSID Inválido"
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "O pino DAC informado é inválido"
@ -1254,7 +1267,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Não há nenhum CCCD para esta característica"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Nenhum DAC no chip"
@ -2800,6 +2812,10 @@ msgstr "formato inválido"
msgid "invalid format specifier"
msgstr "o especificador do formato é inválido"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr "o nome do host é inválido"
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "chave inválida"
@ -3518,6 +3534,10 @@ msgstr "tipo não é um tipo base aceitável"
msgid "type object '%q' has no attribute '%q'"
msgstr "o objeto tipo '%q' não possuí atributo '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr "o tipo do objeto 'generator' não possui qualquer atributo '__await__'"
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "o tipo usa 1 ou 3 argumentos"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"PO-Revision-Date: 2020-10-02 22:53+0000\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-10-14 18:12+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sv\n"
@ -250,6 +250,10 @@ msgstr "'label' kräver 1 argument"
msgid "'return' outside function"
msgstr "'return' utanför funktion"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr "'yield from' i async-funktion"
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' utanför funktion"
@ -277,7 +281,7 @@ msgstr "En kanal för hårdvaruavbrott används redan"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "ADC2 is being used by WiFi"
msgstr ""
msgstr "ADC2 används av WiFi"
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
#, c-format
@ -293,6 +297,7 @@ msgid "All I2C peripherals are in use"
msgstr "All I2C-kringutrustning används"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr "Alla RX FIFO i bruk"
@ -908,6 +913,7 @@ msgid "File exists"
msgstr "Filen finns redan"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr "Filter för komplexa"
@ -944,7 +950,8 @@ msgid "Group full"
msgstr "Gruppen är full"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Hårdvaran är upptagen, prova alternativa pinnar"
@ -952,6 +959,10 @@ msgstr "Hårdvaran är upptagen, prova alternativa pinnar"
msgid "Hardware in use, try alternative pins"
msgstr "Hårdvaran används redan, prova alternativa pinnar"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "I/O-operation på stängd fil"
@ -1016,7 +1027,8 @@ msgid "Invalid %q pin"
msgstr "Ogiltig %q-pinne"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "Ogiltigt val av %q pinne"
@ -1032,6 +1044,7 @@ msgstr "Ogiltig BMP-fil"
msgid "Invalid BSSID"
msgstr "Ogiltig BSSID"
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Ogiltig DAC-pinne angiven"
@ -1244,7 +1257,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Ingen CCCD för denna karaktäristik"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Ingen DAC på chipet"
@ -2773,6 +2785,10 @@ msgstr "ogiltigt format"
msgid "invalid format specifier"
msgstr "ogiltig formatspecificerare"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "ogiltig nyckel"
@ -3485,6 +3501,10 @@ msgstr "typ är inte en acceptabel bastyp"
msgid "type object '%q' has no attribute '%q'"
msgstr "typobjektet '%q' har inget attribut '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr "typobjekt 'generator' har inget attribut '__await__'"
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "typen tar 1 eller 3 argument"

View File

@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: circuitpython-cn\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-10-06 13:26-0400\n"
"PO-Revision-Date: 2020-10-10 23:51+0000\n"
"POT-Creation-Date: 2020-10-15 16:06+0530\n"
"PO-Revision-Date: 2020-10-13 17:11+0000\n"
"Last-Translator: hexthat <hexthat@gmail.com>\n"
"Language-Team: Chinese Hanyu Pinyin\n"
"Language: zh_Latn_pinyin\n"
@ -252,6 +252,10 @@ msgstr "'label' xūyào 1 cānshù"
msgid "'return' outside function"
msgstr "'return' wàibù gōngnéng"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr "Yì bù hán shù zhōng de 'yield from'"
#: py/compile.c
msgid "'yield' outside function"
msgstr "'yield' wàibù gōngnéng"
@ -295,6 +299,7 @@ msgid "All I2C peripherals are in use"
msgstr "Suǒyǒu I2C wàiwéi qì zhèngzài shǐyòng"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr "Suǒyǒu shǐyòng zhōng de RX FIFO"
@ -906,6 +911,7 @@ msgid "File exists"
msgstr "Wénjiàn cúnzài"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "Filters too complex"
msgstr "guò lǜ qì tài fù zá"
@ -942,7 +948,8 @@ msgid "Group full"
msgstr "Fēnzǔ yǐ mǎn"
#: ports/mimxrt10xx/common-hal/busio/SPI.c ports/stm/common-hal/busio/I2C.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/SPI.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Hardware busy, try alternative pins"
msgstr "Yìngjiàn máng, qǐng chángshì qítā zhēnjiǎo"
@ -950,6 +957,10 @@ msgstr "Yìngjiàn máng, qǐng chángshì qítā zhēnjiǎo"
msgid "Hardware in use, try alternative pins"
msgstr "Shǐyòng de yìngjiàn, qǐng chángshì qítā yǐn jiǎo"
#: shared-bindings/wifi/Radio.c
msgid "Hostname must be between 1 and 253 characters"
msgstr ""
#: extmod/vfs_posix_file.c py/objstringio.c
msgid "I/O operation on closed file"
msgstr "Wénjiàn shàng de I/ O cāozuò"
@ -1014,7 +1025,8 @@ msgid "Invalid %q pin"
msgstr "Wúxiào de %q yǐn jiǎo"
#: ports/stm/common-hal/busio/I2C.c ports/stm/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/sdioio/SDCard.c
#: ports/stm/common-hal/busio/UART.c ports/stm/common-hal/canio/CAN.c
#: ports/stm/common-hal/sdioio/SDCard.c
msgid "Invalid %q pin selection"
msgstr "wú xiào %q yǐn jiǎo xuǎn zé"
@ -1030,6 +1042,7 @@ msgstr "Wúxiào de BMP wénjiàn"
msgid "Invalid BSSID"
msgstr "Wúxiào de BSSID"
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "Invalid DAC pin supplied"
msgstr "Tí gōng liǎo wúxiào de DAC yǐn jiǎo"
@ -1241,7 +1254,6 @@ msgid "No CCCD for this Characteristic"
msgstr "Zhège tèzhēng méiyǒu CCCD"
#: ports/atmel-samd/common-hal/analogio/AnalogOut.c
#: ports/esp32s2/common-hal/analogio/AnalogOut.c
#: ports/stm/common-hal/analogio/AnalogOut.c
msgid "No DAC on chip"
msgstr "Méiyǒu DAC zài xīnpiàn shàng de"
@ -2765,6 +2777,10 @@ msgstr "wúxiào géshì"
msgid "invalid format specifier"
msgstr "wúxiào de géshì biāozhù"
#: shared-bindings/wifi/Radio.c
msgid "invalid hostname"
msgstr ""
#: extmod/modussl_axtls.c
msgid "invalid key"
msgstr "wúxiào de mì yào"
@ -3474,6 +3490,10 @@ msgstr "lèixíng bùshì kě jiēshòu de jīchǔ lèixíng"
msgid "type object '%q' has no attribute '%q'"
msgstr "lèixíng duìxiàng '%q' méiyǒu shǔxìng '%q'"
#: py/objgenerator.c
msgid "type object 'generator' has no attribute '__await__'"
msgstr "lèi xíng duì xiàng 'generator' méi yǒu shǔ xìng '__await__'"
#: py/objtype.c
msgid "type takes 1 or 3 arguments"
msgstr "lèixíng wèi 1 huò 3 gè cānshù"

View File

@ -66,7 +66,7 @@ LDFLAGS += -static -static-libgcc -static-libstdc++
endif
# source files
SRC_C = \
SRC_C += \
main.c \
gccollect.c \
supervisor/stub/safe_mode.c \

View File

@ -0,0 +1,48 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 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 "boards/board.h"
#include "mpconfigboard.h"
void board_init(void)
{
// struct port_config pin_conf;
// port_get_config_defaults(&pin_conf);
//
// pin_conf.direction = PORT_PIN_DIR_OUTPUT;
// port_pin_set_config(MICROPY_HW_LED_TX, &pin_conf);
// port_pin_set_output_level(MICROPY_HW_LED_TX, true);
//
// port_pin_set_config(MICROPY_HW_LED_RX, &pin_conf);
// port_pin_set_output_level(MICROPY_HW_LED_RX, true);
}
bool board_requests_safe_mode(void) {
return false;
}
void reset_board(void) {
}

View File

@ -0,0 +1,28 @@
#define MICROPY_HW_BOARD_NAME "BDMICRO VINA-D51"
#define MICROPY_HW_MCU_NAME "samd51n20"
#define CIRCUITPY_MCU_FAMILY samd51
// These are pins not to reset.
// Don't reset QSPI data pins
#define MICROPY_PORT_A (PORT_PA08 | PORT_PA09 | PORT_PA10 | PORT_PA11)
#define MICROPY_PORT_B (PORT_PB10 | PORT_PB11)
#define MICROPY_PORT_C (0)
#define MICROPY_PORT_D (0)
#define BOARD_HAS_CRYSTAL 1
#define DEFAULT_I2C_BUS_SDA (&pin_PB02)
#define DEFAULT_I2C_BUS_SCL (&pin_PB03)
#define DEFAULT_SPI_BUS_MISO (&pin_PB23)
#define DEFAULT_UART_BUS_TX (&pin_PB24)
#define DEFAULT_UART_BUS_RX (&pin_PB25)
#define DEFAULT_SPI_BUS_MOSI (&pin_PC27)
#define DEFAULT_SPI_BUS_SCK (&pin_PC28)
#define MICROPY_HW_LED_STATUS (&pin_PA15)
#define MICROPY_HW_LED_RX (&pin_PC05)
#define MICROPY_HW_LED_TX (&pin_PC06)
// USB is always used internally so skip the pin objects for it.
#define IGNORE_PIN_PA24 1
#define IGNORE_PIN_PA25 1

View File

@ -0,0 +1,12 @@
USB_VID = 0x31e2
USB_PID = 0x2011
USB_PRODUCT = "VINA-D51"
USB_MANUFACTURER = "BDMICRO LLC"
CHIP_VARIANT = SAMD51N20A
CHIP_FAMILY = samd51
QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 2
EXTERNAL_FLASH_DEVICES = "MX25L51245G","GD25S512MD"
LONGINT_IMPL = MPZ

View File

@ -0,0 +1,82 @@
#include "shared-bindings/board/__init__.h"
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PB08) },
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB09) },
{ MP_ROM_QSTR(MP_QSTR_A10), MP_ROM_PTR(&pin_PC00) },
{ MP_ROM_QSTR(MP_QSTR_A11), MP_ROM_PTR(&pin_PC01) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA04) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PA07) },
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB00) },
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_PB01) },
{ MP_ROM_QSTR(MP_QSTR_A7), MP_ROM_PTR(&pin_PB05) },
{ MP_ROM_QSTR(MP_QSTR_A8), MP_ROM_PTR(&pin_PB06) },
{ MP_ROM_QSTR(MP_QSTR_A9), MP_ROM_PTR(&pin_PB07) },
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PC10) },
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PC11) },
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA14) },
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA13) },
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PB14) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB15) },
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PC20) },
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PC21) },
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PA12) },
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB31) },
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PA16) },
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA17) },
{ MP_ROM_QSTR(MP_QSTR_DAC0), MP_ROM_PTR(&pin_PA02) },
{ MP_ROM_QSTR(MP_QSTR_DAC1), MP_ROM_PTR(&pin_PA05) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_EN), MP_ROM_PTR(&pin_PC03) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_GPIO0), MP_ROM_PTR(&pin_PA18) },
{ MP_ROM_QSTR(MP_QSTR_UART3_RTS), MP_ROM_PTR(&pin_PA18) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_GPIO2), MP_ROM_PTR(&pin_PA19) },
{ MP_ROM_QSTR(MP_QSTR_UART3_CTS), MP_ROM_PTR(&pin_PA19) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_RESET), MP_ROM_PTR(&pin_PC02) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_RX), MP_ROM_PTR(&pin_PB21) },
{ MP_ROM_QSTR(MP_QSTR_UART3_RX), MP_ROM_PTR(&pin_PB21) },
{ MP_ROM_QSTR(MP_QSTR_ESP01_TX), MP_ROM_PTR(&pin_PB20) },
{ MP_ROM_QSTR(MP_QSTR_UART3_TX), MP_ROM_PTR(&pin_PB20) },
{ MP_ROM_QSTR(MP_QSTR_I2C_SCL), MP_ROM_PTR(&pin_PB03) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB03) },
{ MP_ROM_QSTR(MP_QSTR_I2C_SDA), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_I2S_FS_0), MP_ROM_PTR(&pin_PA20) },
{ MP_ROM_QSTR(MP_QSTR_I2S_FS_1), MP_ROM_PTR(&pin_PA23) },
{ MP_ROM_QSTR(MP_QSTR_I2S_MCK_0), MP_ROM_PTR(&pin_PB17) },
{ MP_ROM_QSTR(MP_QSTR_I2S_MCK_1), MP_ROM_PTR(&pin_PB13) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK_0), MP_ROM_PTR(&pin_PB16) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK_1), MP_ROM_PTR(&pin_PB12) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SDI), MP_ROM_PTR(&pin_PA22) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SDO), MP_ROM_PTR(&pin_PA21) },
{ MP_ROM_QSTR(MP_QSTR_LED_B), MP_ROM_PTR(&pin_PA15) },
{ MP_ROM_QSTR(MP_QSTR_LED_STATUS), MP_ROM_PTR(&pin_PA15) },
{ MP_ROM_QSTR(MP_QSTR_LED_G), MP_ROM_PTR(&pin_PB18) },
{ MP_ROM_QSTR(MP_QSTR_LED_R), MP_ROM_PTR(&pin_PB19) },
{ MP_ROM_QSTR(MP_QSTR_LED_RX), MP_ROM_PTR(&pin_PC05) },
{ MP_ROM_QSTR(MP_QSTR_LED_TX), MP_ROM_PTR(&pin_PC06) },
{ MP_ROM_QSTR(MP_QSTR_RS485_RE), MP_ROM_PTR(&pin_PC15) },
{ MP_ROM_QSTR(MP_QSTR_RS485_RX), MP_ROM_PTR(&pin_PC13) },
{ MP_ROM_QSTR(MP_QSTR_RS485_TE), MP_ROM_PTR(&pin_PC14) },
{ MP_ROM_QSTR(MP_QSTR_RS485_TX), MP_ROM_PTR(&pin_PC12) },
{ MP_ROM_QSTR(MP_QSTR_SPI_MISO), MP_ROM_PTR(&pin_PB23) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB23) },
{ MP_ROM_QSTR(MP_QSTR_SPI_MOSI), MP_ROM_PTR(&pin_PC27) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PC27) },
{ MP_ROM_QSTR(MP_QSTR_SPI_SCK), MP_ROM_PTR(&pin_PC28) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PC28) },
{ MP_ROM_QSTR(MP_QSTR_SPI_SS), MP_ROM_PTR(&pin_PB22) },
{ MP_ROM_QSTR(MP_QSTR_SS), MP_ROM_PTR(&pin_PB22) },
{ MP_ROM_QSTR(MP_QSTR_UART1_CTS), MP_ROM_PTR(&pin_PC19) },
{ MP_ROM_QSTR(MP_QSTR_UART1_RTS), MP_ROM_PTR(&pin_PC18) },
{ MP_ROM_QSTR(MP_QSTR_UART1_RX), MP_ROM_PTR(&pin_PC17) },
{ MP_ROM_QSTR(MP_QSTR_UART1_TX), MP_ROM_PTR(&pin_PC16) },
{ MP_ROM_QSTR(MP_QSTR_UART2_RX), MP_ROM_PTR(&pin_PB25) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB25) },
{ MP_ROM_QSTR(MP_QSTR_UART2_TX), MP_ROM_PTR(&pin_PB24) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB24) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

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

View File

@ -0,0 +1,40 @@
#define MICROPY_HW_BOARD_NAME "DynOSSAT-EDU-EPS"
#define MICROPY_HW_MCU_NAME "samd21g18"
#define MICROPY_HW_NEOPIXEL (&pin_PA06)
#define SPI_FLASH_MOSI_PIN &pin_PA22
#define SPI_FLASH_MISO_PIN &pin_PA21
#define SPI_FLASH_SCK_PIN &pin_PA23
#define SPI_FLASH_CS_PIN &pin_PA20
// These are pins not to reset.
#define MICROPY_PORT_A ( 0 )
#define MICROPY_PORT_B ( 0 )
#define MICROPY_PORT_C ( 0 )
#define BOARD_HAS_CRYSTAL 1
#define DEFAULT_I2C_BUS_SCL (&pin_PA09)
#define DEFAULT_I2C_BUS_SDA (&pin_PA08)
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
#define DEFAULT_SPI_BUS_MOSI (&pin_PA12)
#define DEFAULT_SPI_BUS_MISO (&pin_PB10)
#define DEFAULT_UART_BUS_RX (&pin_PA17)
#define DEFAULT_UART_BUS_TX (&pin_PA16)
// USB is always used internally so skip the pin objects for it.
#define IGNORE_PIN_PA24 1
#define IGNORE_PIN_PA25 1
#define IGNORE_PIN_PA03 1
#define IGNORE_PIN_PA13 1
#define IGNORE_PIN_PA14 1
#define IGNORE_PIN_PA15 1
#define IGNORE_PIN_PA18 1
#define IGNORE_PIN_PA27 1
#define IGNORE_PIN_PA28 1
#define IGNORE_PIN_PB08 1
#define IGNORE_PIN_PB22 1
#define IGNORE_PIN_PB23 1

View File

@ -0,0 +1,23 @@
USB_VID = 0x04D8
USB_PID = 0xEAD1
USB_PRODUCT = "DynOSSAT-EDU-EPS-v1.0"
USB_MANUFACTURER = "BH Dynamics"
CHIP_VARIANT = SAMD21G18A
CHIP_FAMILY = samd21
SPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "GD25Q32C"
LONGINT_IMPL = MPZ
CIRCUITPY_BITBANGIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_COUNTIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_VECTORIO = 0
CFLAGS_INLINE_LIMIT = 60
SUPEROPT_GC = 0

View File

@ -0,0 +1,32 @@
#include "shared-bindings/board/__init__.h"
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PB11) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PA12) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB10) },
{ MP_ROM_QSTR(MP_QSTR_D30), MP_ROM_PTR(&pin_PA30) },
{ MP_ROM_QSTR(MP_QSTR_D31), MP_ROM_PTR(&pin_PA31) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA17) },
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA07) },
{ MP_ROM_QSTR(MP_QSTR_OVTEMP), MP_ROM_PTR(&pin_PA07) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA16) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA08) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA09) },
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_SAT_RESET), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA10) },
{ MP_ROM_QSTR(MP_QSTR_SAT_PWR_ENABLE), MP_ROM_PTR(&pin_PA10) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PA19) },
{ MP_ROM_QSTR(MP_QSTR_INT_IMU_OBC), MP_ROM_PTR(&pin_PA19) },
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PB03) },
{ MP_ROM_QSTR(MP_QSTR_PWRMON_SDA), MP_ROM_PTR(&pin_PA04) },
{ MP_ROM_QSTR(MP_QSTR_PWRMON_SCL), MP_ROM_PTR(&pin_PA05) },
{ MP_ROM_QSTR(MP_QSTR_PWRMON_ALERT), MP_ROM_PTR(&pin_PB03) },
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_I2C_MONITOR), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

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

View File

@ -0,0 +1,44 @@
#define MICROPY_HW_BOARD_NAME "DynOSSAT-EDU-OBC"
#define MICROPY_HW_MCU_NAME "samd51j20"
#define MICROPY_HW_NEOPIXEL (&pin_PA08)
#define SPI_FLASH_MOSI_PIN &pin_PA16
#define SPI_FLASH_MISO_PIN &pin_PA18
#define SPI_FLASH_SCK_PIN &pin_PA17
#define SPI_FLASH_CS_PIN &pin_PA19
// These are pins not to reset.
#define MICROPY_PORT_A ( PORT_PA16 | PORT_PA17 | PORT_PA18 | PORT_PA19 )
#define MICROPY_PORT_B ( 0 )
#define MICROPY_PORT_C ( 0 )
#define MICROPY_PORT_D ( 0 )
#define BOARD_HAS_CRYSTAL 1
#define DEFAULT_I2C_BUS_SCL (&pin_PB13)
#define DEFAULT_I2C_BUS_SDA (&pin_PB12)
#define DEFAULT_SPI_BUS_SCK (&pin_PB03)
#define DEFAULT_SPI_BUS_MOSI (&pin_PB02)
#define DEFAULT_SPI_BUS_MISO (&pin_PB01)
#define DEFAULT_UART_BUS_RX (&pin_PA23)
#define DEFAULT_UART_BUS_TX (&pin_PA22)
// USB is always used internally so skip the pin objects for it.
#define IGNORE_PIN_PA24 1
#define IGNORE_PIN_PA25 1
#define IGNORE_PIN_PA02 1
#define IGNORE_PIN_PA13 1
#define IGNORE_PIN_PA14 1
#define IGNORE_PIN_PA20 1
#define IGNORE_PIN_PA21 1
#define IGNORE_PIN_PA27 1
#define IGNORE_PIN_PB00 1
#define IGNORE_PIN_PB04 1
#define IGNORE_PIN_PB05 1
#define IGNORE_PIN_PB16 1
#define IGNORE_PIN_PB17 1
#define IGNORE_PIN_PB23 1
#define IGNORE_PIN_PB31 1

View File

@ -0,0 +1,16 @@
USB_VID = 0x04D8
USB_PID = 0xEAD2
USB_PRODUCT = "DynOSSAT-EDU-OBC-v1.0"
USB_MANUFACTURER = "BH Dynamics"
CHIP_VARIANT = SAMD51J20A
CHIP_FAMILY = samd51
SPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "GD25Q32C"
LONGINT_IMPL = MPZ
CFLAGS_INLINE_LIMIT = 60
SUPEROPT_GC = 0

View File

@ -0,0 +1,40 @@
#include "shared-bindings/board/__init__.h"
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA07) },
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PA05) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA04) },
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PB09) },
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB08) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PB03) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PB01) },
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PB15) },
{ MP_ROM_QSTR(MP_QSTR_D30), MP_ROM_PTR(&pin_PA22) },
{ MP_ROM_QSTR(MP_QSTR_D31), MP_ROM_PTR(&pin_PA23) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA23) },
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PB14) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA22) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PB12) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PB13) },
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PB11) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PB10) },
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PA10) },
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PA09) },
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PB07) },
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PB06) },
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PB30) },
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA08) },
{ MP_ROM_QSTR(MP_QSTR_D32), MP_ROM_PTR(&pin_PA30) },
{ MP_ROM_QSTR(MP_QSTR_D33), MP_ROM_PTR(&pin_PA31) },
{ MP_ROM_QSTR(MP_QSTR_SD_CS), MP_ROM_PTR(&pin_PB22) },
{ MP_ROM_QSTR(MP_QSTR_INT_IMU), MP_ROM_PTR(&pin_PA12) },
{ MP_ROM_QSTR(MP_QSTR_SAT_POWER), MP_ROM_PTR(&pin_PA15) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA08) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

@ -11,12 +11,12 @@ LONGINT_IMPL = MPZ
# Not needed.
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_PS2IO = 0
CIRCUITPY_AUDIOMP3 = 0
CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_PS2IO = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_ULAB = 0
# Override optimization to keep binary small

View File

@ -6,10 +6,6 @@ USB_MANUFACTURER = "Adafruit Industries LLC"
CHIP_VARIANT = SAMD51J19A
CHIP_FAMILY = samd51
# Support _bleio via the on-board ESP32 module.
CIRCUITPY_BLEIO = 1
CIRCUITPY_BLEIO_HCI = 1
QSPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 3
EXTERNAL_FLASH_DEVICES = "S25FL116K, S25FL216K, GD25Q16C"

View File

@ -18,7 +18,7 @@ LONGINT_IMPL = MPZ
# Disable modules that are unusable on this special-purpose board.
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_AUDIOIO = 0
CIRCUITPY_BLEIO = 0
CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_DISPLAYIO = 0
CIRCUITPY_FRAMEBUFFERIO = 0
CIRCUITPY_GAMEPAD = 0

View File

@ -51,7 +51,6 @@ void pulsein_reset(void);
void pulsein_interrupt_handler(uint8_t channel);
void pulsein_timer_interrupt_handler(uint8_t index);
#ifdef SAMD21
void rtc_set_continuous(void);
void rtc_start_pulsein(void);
void rtc_end_pulsein(void);
#endif

View File

@ -43,12 +43,12 @@
#define MICROPY_PY_SYS_PLATFORM "Atmel SAMD21"
#define SPI_FLASH_MAX_BAUDRATE 8000000
#define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (0)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (0)
#define MICROPY_PY_FUNCTION_ATTRS (0)
// MICROPY_PY_UJSON depends on MICROPY_PY_IO
#define MICROPY_PY_IO (0)
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (0)
#define MICROPY_PY_UJSON (0)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (0)
#define MICROPY_PY_UERRNO_LIST \
X(EPERM) \
X(ENOENT) \
@ -81,7 +81,6 @@
#endif
#define SPI_FLASH_MAX_BAUDRATE 24000000
#define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (1)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#define MICROPY_PY_FUNCTION_ATTRS (1)
// MICROPY_PY_UJSON depends on MICROPY_PY_IO
#define MICROPY_PY_IO (1)

View File

@ -37,6 +37,9 @@ ifndef CIRCUITPY_TOUCHIO_USE_NATIVE
CIRCUITPY_TOUCHIO_USE_NATIVE = 1
endif
# No room for HCI _bleio on SAMD21.
CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_SDCARDIO ?= 0
# Not enough RAM for framebuffers

View File

@ -96,19 +96,20 @@
#endif
volatile bool hold_interrupt = false;
#ifdef SAMD21
static void rtc_set_continuous(bool continuous) {
while (RTC->MODE0.STATUS.bit.SYNCBUSY);
RTC->MODE0.READREQ.reg = (continuous ? RTC_READREQ_RCONT : 0) | 0x0010;
while (RTC->MODE0.STATUS.bit.SYNCBUSY);
}
void rtc_start_pulsein(void) {
rtc_set_continuous();
rtc_set_continuous(true);
hold_interrupt = true;
}
void rtc_end_pulsein(void) {
hold_interrupt = false;
}
void rtc_set_continuous(void) {
while (RTC->MODE0.STATUS.bit.SYNCBUSY);
RTC->MODE0.READREQ.reg = RTC_READREQ_RREQ | RTC_READREQ_RCONT | 0x0010;
while (RTC->MODE0.STATUS.bit.SYNCBUSY);
rtc_set_continuous(false);
}
#endif
@ -430,19 +431,28 @@ uint32_t port_get_saved_word(void) {
static volatile uint64_t overflowed_ticks = 0;
static volatile bool _ticks_enabled = false;
static uint32_t _get_count(void) {
static uint32_t _get_count(uint32_t* overflow_count) {
#ifdef SAM_D5X_E5X
while ((RTC->MODE0.SYNCBUSY.reg & (RTC_MODE0_SYNCBUSY_COUNTSYNC | RTC_MODE0_SYNCBUSY_COUNT)) != 0) {}
#endif
#ifdef SAMD21
// Request a read so we don't stall the bus later. See section 14.3.1.5 Read Request
RTC->MODE0.READREQ.reg = RTC_READREQ_RREQ | 0x0010;
while (RTC->MODE0.STATUS.bit.SYNCBUSY != 0) {}
#endif
// Disable interrupts so we can grab the count and the overflow.
common_hal_mcu_disable_interrupts();
uint32_t count = RTC->MODE0.COUNT.reg;
if (overflow_count != NULL) {
*overflow_count = overflowed_ticks;
}
common_hal_mcu_enable_interrupts();
return RTC->MODE0.COUNT.reg;
return count;
}
static void _port_interrupt_after_ticks(uint32_t ticks) {
uint32_t current_ticks = _get_count();
uint32_t current_ticks = _get_count(NULL);
if (ticks > 1 << 28) {
// We'll interrupt sooner with an overflow.
return;
@ -490,12 +500,13 @@ void RTC_Handler(void) {
}
uint64_t port_get_raw_ticks(uint8_t* subticks) {
uint32_t current_ticks = _get_count();
uint32_t overflow_count;
uint32_t current_ticks = _get_count(&overflow_count);
if (subticks != NULL) {
*subticks = (current_ticks % 16) * 2;
}
return overflowed_ticks + current_ticks / 16;
return overflow_count + current_ticks / 16;
}
// Enable 1/1024 second tick.
@ -505,6 +516,7 @@ void port_enable_tick(void) {
RTC->MODE0.INTENSET.reg = RTC_MODE0_INTENSET_PER2;
#endif
#ifdef SAMD21
// TODO: Switch to using the PER *event* from the RTC to generate an interrupt via EVSYS.
_ticks_enabled = true;
_port_interrupt_after_ticks(1);
#endif

View File

@ -162,7 +162,7 @@ SRC_SHARED_MODULE_EXPANDED = $(addprefix shared-bindings/, $(SRC_SHARED_MODULE))
SRC_S = supervisor/cpu.s
SRC_C = \
SRC_C += \
background.c \
fatfs_port.c \
mphalport.c \

View File

@ -31,3 +31,9 @@ CONFIG_SPIRAM_USE_MEMMAP=y
CONFIG_SPIRAM_MEMTEST=y
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
# end of SPI RAM config
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="Metro-ESP32S2"
# end of LWIP

View File

@ -32,3 +32,8 @@ CONFIG_SPIRAM_MEMTEST=y
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
# end of SPI RAM config
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="microS2"
# end of LWIP

View File

@ -32,3 +32,8 @@ CONFIG_SPIRAM_MEMTEST=y
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
# end of SPI RAM config
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="UMFeatherS2"
# end of LWIP

View File

@ -33,3 +33,9 @@ CONFIG_SPIRAM_USE_MEMMAP=y
CONFIG_SPIRAM_MEMTEST=y
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set
# end of SPI RAM config
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="UMFeatherS2"
# end of LWIP

View File

@ -104,6 +104,19 @@ void common_hal_wifi_radio_stop_scanning_networks(wifi_radio_obj_t *self) {
self->current_scan = NULL;
}
mp_obj_t common_hal_wifi_radio_get_hostname(wifi_radio_obj_t *self) {
const char *hostname = NULL;
esp_netif_get_hostname(self->netif, &hostname);
if (hostname == NULL) {
return mp_const_none;
}
return mp_obj_new_str(hostname, strlen(hostname));
}
void common_hal_wifi_radio_set_hostname(wifi_radio_obj_t *self, const char *hostname) {
esp_netif_set_hostname(self->netif, hostname);
}
wifi_radio_error_t common_hal_wifi_radio_connect(wifi_radio_obj_t *self, uint8_t* ssid, size_t ssid_len, uint8_t* password, size_t password_len, uint8_t channel, mp_float_t timeout, uint8_t* bssid, size_t bssid_len) {
// check enabled
start_station(self);

View File

@ -30,7 +30,6 @@
#define CIRCUITPY_INTERNAL_NVM_SIZE (0)
#define MICROPY_NLR_THUMB (0)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (1)
#define MICROPY_PY_UBINASCII (1)
#define MICROPY_PY_UJSON (1)

View File

@ -16,6 +16,7 @@ CIRCUITPY_ANALOGIO = 0
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_AUDIOIO = 0
CIRCUITPY_BITBANGIO = 0
CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_BOARD = 0
CIRCUITPY_BUSIO = 0
CIRCUITPY_COUNTIO = 0

View File

@ -128,7 +128,11 @@ uint32_t port_get_saved_word(void) {
}
uint64_t port_get_raw_ticks(uint8_t* subticks) {
return raw_ticks;
// Reading 64 bits may take two loads, so turn of interrupts while we do it.
irq_setie(false);
uint64_t raw_tick_snapshot = raw_ticks;
irq_setie(true);
return raw_tick_snapshot;
}
// Enable 1/1024 second tick.

View File

@ -147,7 +147,7 @@ SRC_SDK := \
SRC_SDK := $(addprefix sdk/devices/$(CHIP_FAMILY)/, $(SRC_SDK))
SRC_C = \
SRC_C += \
background.c \
boards/$(BOARD)/board.c \
boards/$(BOARD)/flash_config.c \

View File

@ -40,7 +40,6 @@ extern uint8_t _ld_default_stack_size;
// 20kiB stack
#define CIRCUITPY_DEFAULT_STACK_SIZE ((uint32_t) &_ld_default_stack_size)
#define MICROPY_PY_BUILTINS_NOTIMPLEMENTED (0)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (0)
#define MICROPY_PY_FUNCTION_ATTRS (0)
#define MICROPY_PY_IO (1)
#define MICROPY_PY_UJSON (1)

View File

@ -34,7 +34,6 @@
#include "nrf_sdm.h" // for SD_FLASH_SIZE
#include "peripherals/nrf/nvm.h" // for FLASH_PAGE_SIZE
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#define MICROPY_PY_FUNCTION_ATTRS (1)
#define MICROPY_PY_IO (1)
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (1)

View File

@ -23,6 +23,9 @@ CIRCUITPY_AUDIOCORE ?= 1
CIRCUITPY_AUDIOMIXER ?= 1
CIRCUITPY_AUDIOPWMIO ?= 1
# Native BLEIO is not compatible with HCI _bleio.
CIRCUITPY_BLEIO_HCI = 0
CIRCUITPY_BLEIO ?= 1
# No I2CPeripheral implementation

View File

@ -274,11 +274,15 @@ uint32_t port_get_saved_word(void) {
}
uint64_t port_get_raw_ticks(uint8_t* subticks) {
common_hal_mcu_disable_interrupts();
uint32_t rtc = nrfx_rtc_counter_get(&rtc_instance);
uint32_t overflow_count = overflow_tracker.overflowed_ticks;
common_hal_mcu_enable_interrupts();
if (subticks != NULL) {
*subticks = (rtc % 32);
}
return overflow_tracker.overflowed_ticks + rtc / 32;
return overflow_count + rtc / 32;
}
// Enable 1/1024 second tick.

View File

@ -7,6 +7,7 @@ INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
CIRCUITPY_NVM = 1
CIRCUITPY_BLEIO_HCI = 0
MCU_SERIES = F4
MCU_VARIANT = STM32F411xE

View File

@ -30,7 +30,6 @@
#include <stdint.h>
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#define MICROPY_PY_FUNCTION_ATTRS (1)
#define MICROPY_PY_IO (1)
#define MICROPY_PY_REVERSE_SPECIAL_METHODS (1)

View File

@ -190,6 +190,7 @@ safe_mode_t port_init(void) {
_hrtc.Init.OutPut = RTC_OUTPUT_DISABLE;
HAL_RTC_Init(&_hrtc);
HAL_RTCEx_EnableBypassShadow(&_hrtc);
HAL_NVIC_EnableIRQ(RTC_Alarm_IRQn);
// Turn off SysTick
@ -328,9 +329,23 @@ volatile uint32_t cached_date = 0;
volatile uint32_t seconds_to_minute = 0;
volatile uint32_t cached_hours_minutes = 0;
uint64_t port_get_raw_ticks(uint8_t* subticks) {
uint32_t subseconds = rtc_clock_frequency - (uint32_t)(RTC->SSR);
// Disable IRQs to ensure we read all of the RTC registers as close in time as possible. Read
// SSR twice to make sure we didn't read across a tick.
__disable_irq();
uint32_t first_ssr = (uint32_t)(RTC->SSR);
uint32_t time = (uint32_t)(RTC->TR & RTC_TR_RESERVED_MASK);
uint32_t date = (uint32_t)(RTC->DR & RTC_DR_RESERVED_MASK);
uint32_t ssr = (uint32_t)(RTC->SSR);
while (ssr != first_ssr) {
first_ssr = ssr;
time = (uint32_t)(RTC->TR & RTC_TR_RESERVED_MASK);
date = (uint32_t)(RTC->DR & RTC_DR_RESERVED_MASK);
ssr = (uint32_t)(RTC->SSR);
}
__enable_irq();
uint32_t subseconds = rtc_clock_frequency - 1 - ssr;
if (date != cached_date) {
uint32_t year = (uint8_t)((date & (RTC_DR_YT | RTC_DR_YU)) >> 16U);
uint8_t month = (uint8_t)((date & (RTC_DR_MT | RTC_DR_MU)) >> 8U);
@ -349,6 +364,7 @@ uint64_t port_get_raw_ticks(uint8_t* subticks) {
hours = (uint8_t)RTC_Bcd2ToByte(hours);
minutes = (uint8_t)RTC_Bcd2ToByte(minutes);
seconds_to_minute = 60 * (60 * hours + minutes);
cached_hours_minutes = hours_minutes;
}
uint8_t seconds = (uint8_t)(time & (RTC_TR_ST | RTC_TR_SU));
seconds = (uint8_t)RTC_Bcd2ToByte(seconds);
@ -407,7 +423,7 @@ void port_interrupt_after_ticks(uint32_t ticks) {
alarm.AlarmMask = RTC_ALARMMASK_ALL;
}
alarm.AlarmTime.SubSeconds = rtc_clock_frequency -
alarm.AlarmTime.SubSeconds = rtc_clock_frequency - 1 -
((raw_ticks % 1024) * 32);
alarm.AlarmTime.DayLightSaving = RTC_DAYLIGHTSAVING_NONE;
alarm.AlarmTime.StoreOperation = RTC_STOREOPERATION_SET;

View File

@ -134,7 +134,7 @@ SRC_MOD += modjni.c
endif
# source files
SRC_C = \
SRC_C += \
main.c \
gccollect.c \
unix_mphal.c \

View File

@ -99,7 +99,6 @@
#define MICROPY_PY_SYS_STDFILES (1)
#define MICROPY_PY_SYS_EXC_INFO (1)
#define MICROPY_PY_COLLECTIONS_DEQUE (1)
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (1)
#ifndef MICROPY_PY_MATH_SPECIAL_FUNCTIONS
#define MICROPY_PY_MATH_SPECIAL_FUNCTIONS (1)
#endif

View File

@ -49,7 +49,6 @@
#define MICROPY_VFS_FAT (1)
#define MICROPY_FATFS_USE_LABEL (1)
#define MICROPY_PY_FRAMEBUF (1)
#define MICROPY_PY_COLLECTIONS_NAMEDTUPLE__ASDICT (1)
// TODO these should be generic, not bound to fatfs
#define mp_type_fileio mp_type_vfs_posix_fileio

View File

@ -194,6 +194,9 @@ typedef long mp_off_t;
#define MICROPY_PY_BUILTINS_STR_PARTITION (CIRCUITPY_FULL_BUILD)
#define MICROPY_PY_BUILTINS_STR_SPLITLINES (CIRCUITPY_FULL_BUILD)
#define MICROPY_PY_UERRNO (CIRCUITPY_FULL_BUILD)
#ifndef MICROPY_PY_COLLECTIONS_ORDEREDDICT
#define MICROPY_PY_COLLECTIONS_ORDEREDDICT (CIRCUITPY_FULL_BUILD)
#endif
// Opposite setting is deliberate.
#define MICROPY_PY_UERRNO_ERRORCODE (!CIRCUITPY_FULL_BUILD)
#ifndef MICROPY_PY_URE

View File

@ -79,14 +79,14 @@ CFLAGS += -DCIRCUITPY_AUDIOMP3=$(CIRCUITPY_AUDIOMP3)
CIRCUITPY_BITBANGIO ?= $(CIRCUITPY_FULL_BUILD)
CFLAGS += -DCIRCUITPY_BITBANGIO=$(CIRCUITPY_BITBANGIO)
# Explicitly enabled for boards that support _bleio.
CIRCUITPY_BLEIO ?= 0
CFLAGS += -DCIRCUITPY_BLEIO=$(CIRCUITPY_BLEIO)
# _bleio can be supported on most any board via HCI
CIRCUITPY_BLEIO_HCI ?= 0
CIRCUITPY_BLEIO_HCI ?= $(CIRCUITPY_FULL_BUILD)
CFLAGS += -DCIRCUITPY_BLEIO_HCI=$(CIRCUITPY_BLEIO_HCI)
# Explicitly enabled for boards that support _bleio.
CIRCUITPY_BLEIO ?= $(CIRCUITPY_BLEIO_HCI)
CFLAGS += -DCIRCUITPY_BLEIO=$(CIRCUITPY_BLEIO)
CIRCUITPY_BOARD ?= 1
CFLAGS += -DCIRCUITPY_BOARD=$(CIRCUITPY_BOARD)

View File

@ -46,7 +46,7 @@ size_t mp_obj_namedtuple_find_field(const mp_obj_namedtuple_type_t *type, qstr n
return (size_t)-1;
}
#if MICROPY_PY_COLLECTIONS_NAMEDTUPLE__ASDICT
#if MICROPY_PY_COLLECTIONS_ORDEREDDICT
STATIC mp_obj_t namedtuple_asdict(mp_obj_t self_in) {
mp_obj_namedtuple_t *self = MP_OBJ_TO_PTR(self_in);
const qstr *fields = ((mp_obj_namedtuple_type_t*)self->tuple.base.type)->fields;

View File

@ -24,11 +24,13 @@
* THE SOFTWARE.
*/
#include "shared-bindings/wifi/__init__.h"
#include <regex.h>
#include <string.h>
#include "py/objproperty.h"
#include "py/runtime.h"
#include "shared-bindings/wifi/__init__.h"
#include "py/objproperty.h"
//| class Radio:
//| """Native wifi radio.
@ -50,7 +52,6 @@
//|
STATIC mp_obj_t wifi_radio_get_enabled(mp_obj_t self) {
return mp_obj_new_bool(common_hal_wifi_radio_get_enabled(self));
}
MP_DEFINE_CONST_FUN_OBJ_1(wifi_radio_get_enabled_obj, wifi_radio_get_enabled);
@ -102,6 +103,45 @@ STATIC mp_obj_t wifi_radio_stop_scanning_networks(mp_obj_t self_in) {
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(wifi_radio_stop_scanning_networks_obj, wifi_radio_stop_scanning_networks);
//| hostname: ReadableBuffer
//| """Hostname for wifi interface. When the hostname is altered after interface started/connected
//| the changes would only be reflected once the interface restarts/reconnects."""
//|
STATIC mp_obj_t wifi_radio_get_hostname(mp_obj_t self_in) {
wifi_radio_obj_t *self = MP_OBJ_TO_PTR(self_in);
return common_hal_wifi_radio_get_hostname(self);
}
MP_DEFINE_CONST_FUN_OBJ_1(wifi_radio_get_hostname_obj, wifi_radio_get_hostname);
STATIC mp_obj_t wifi_radio_set_hostname(mp_obj_t self_in, mp_obj_t hostname_in) {
mp_buffer_info_t hostname;
mp_get_buffer_raise(hostname_in, &hostname, MP_BUFFER_READ);
if (hostname.len < 1 || hostname.len > 253) {
mp_raise_ValueError(translate("Hostname must be between 1 and 253 characters"));
}
regex_t regex; //validate hostname according to RFC 1123
regcomp(&regex,"^(([a-z0-9]|[a-z0-9][a-z0-9\\-]{0,61}[a-z0-9])\\.)*([a-z0-9]|[a-z0-9][a-z0-9\\-]{0,61}[a-z0-9])$", REG_EXTENDED | REG_ICASE | REG_NOSUB);
if (regexec(&regex, hostname.buf, 0, NULL, 0)) {
mp_raise_ValueError(translate("invalid hostname"));
}
regfree(&regex);
wifi_radio_obj_t *self = MP_OBJ_TO_PTR(self_in);
common_hal_wifi_radio_set_hostname(self, hostname.buf);
return mp_const_none;
}
MP_DEFINE_CONST_FUN_OBJ_2(wifi_radio_set_hostname_obj, wifi_radio_set_hostname);
const mp_obj_property_t wifi_radio_hostname_obj = {
.base.type = &mp_type_property,
.proxy = {(mp_obj_t)&wifi_radio_get_hostname_obj,
(mp_obj_t)&wifi_radio_set_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:
//| """Connects to the given ssid and waits for an ip address. Reconnections are handled
//| automatically once one connection succeeds."""
@ -216,6 +256,8 @@ STATIC const mp_rom_map_elem_t wifi_radio_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_start_scanning_networks), MP_ROM_PTR(&wifi_radio_start_scanning_networks_obj) },
{ MP_ROM_QSTR(MP_QSTR_stop_scanning_networks), MP_ROM_PTR(&wifi_radio_stop_scanning_networks_obj) },
{ MP_ROM_QSTR(MP_QSTR_hostname), MP_ROM_PTR(&wifi_radio_hostname_obj) },
{ MP_ROM_QSTR(MP_QSTR_connect), MP_ROM_PTR(&wifi_radio_connect_obj) },
// { MP_ROM_QSTR(MP_QSTR_connect_to_enterprise), MP_ROM_PTR(&wifi_radio_connect_to_enterprise_obj) },

View File

@ -35,7 +35,6 @@
const mp_obj_type_t wifi_radio_type;
typedef enum {
WIFI_RADIO_ERROR_NONE,
WIFI_RADIO_ERROR_UNKNOWN,
@ -46,6 +45,9 @@ typedef enum {
extern bool common_hal_wifi_radio_get_enabled(wifi_radio_obj_t *self);
extern void common_hal_wifi_radio_set_enabled(wifi_radio_obj_t *self, bool enabled);
extern mp_obj_t common_hal_wifi_radio_get_hostname(wifi_radio_obj_t *self);
extern void common_hal_wifi_radio_set_hostname(wifi_radio_obj_t *self, const char *hostname);
extern mp_obj_t common_hal_wifi_radio_get_mac_address(wifi_radio_obj_t *self);
extern mp_obj_t common_hal_wifi_radio_start_scanning_networks(wifi_radio_obj_t *self);

View File

@ -347,8 +347,10 @@ void common_hal_displayio_display_set_rotation(displayio_display_obj_t* self, in
self->core.height = tmp;
}
displayio_display_core_set_rotation(&self->core, rotation);
supervisor_stop_terminal();
supervisor_start_terminal(self->core.width, self->core.height);
if (self == &displays[0].display) {
supervisor_stop_terminal();
supervisor_start_terminal(self->core.width, self->core.height);
}
if (self->core.current_group != NULL) {
displayio_group_update_transform(self->core.current_group, &self->core.transform);
}

View File

@ -85,7 +85,10 @@ void displayio_display_core_construct(displayio_display_core_t* self,
self->bus = bus;
supervisor_start_terminal(width, height);
// (offsetof core is equal in all display types)
if (self == &displays[0].display.core) {
supervisor_start_terminal(width, height);
}
self->width = width;
self->height = height;

View File

@ -280,8 +280,10 @@ void common_hal_framebufferio_framebufferdisplay_set_rotation(framebufferio_fram
self->core.height = tmp;
}
displayio_display_core_set_rotation(&self->core, rotation);
supervisor_stop_terminal();
supervisor_start_terminal(self->core.width, self->core.height);
if (self == &displays[0].framebuffer_display) {
supervisor_stop_terminal();
supervisor_start_terminal(self->core.width, self->core.height);
}
if (self->core.current_group != NULL) {
displayio_group_update_transform(self->core.current_group, &self->core.transform);
}

View File

@ -125,9 +125,7 @@ void supervisor_tick(void) {
uint64_t supervisor_ticks_ms64() {
uint64_t result;
common_hal_mcu_disable_interrupts();
result = port_get_raw_ticks(NULL);
common_hal_mcu_enable_interrupts();
result = result * 1000 / 1024;
return result;
}