Merge pull request #1482 from dhalbert/bleio2

More bleio revision
This commit is contained in:
Scott Shawcroft 2019-01-22 13:24:35 -08:00 committed by GitHub
commit 736d21fce8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 1218 additions and 680 deletions

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -341,12 +341,12 @@ msgid "bytes > 8 bits not supported"
msgstr "byte > 8 bit tidak didukung"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "tx dan rx keduanya tidak boleh kosong"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Gagal untuk mengalokasikan buffer RX"
@ -355,12 +355,12 @@ msgid "Could not initialize UART"
msgstr "Tidak dapat menginisialisasi UART"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Tidak pin RX"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Tidak ada pin TX"
@ -723,7 +723,7 @@ msgstr "Gagal untuk melaporkan nilai atribut, status: 0x%08lX"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Gagal untuk membaca nilai atribut, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Gagal untuk mendapatkan mutex, status: 0x%08lX"
@ -733,7 +733,7 @@ msgstr "Gagal untuk mendapatkan mutex, status: 0x%08lX"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Gagal untuk menulis nilai atribut, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Gagal untuk melepaskan mutex, status: 0x%08lX"
@ -754,51 +754,51 @@ msgstr "Tidak bisa menyesuaikan data ke dalam paket advertisment"
msgid "Failed to discover services"
msgstr "Gagal untuk menemukan layanan, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Gagal untuk mendapatkan mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Gagal untuk melepaskan mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "Gagal untuk melanjutkan scanning, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "Gagal untuk menyambungkan, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Gagal untuk menambahkan layanan, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Gagal untuk memulai advertisement, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Gagal untuk memberhentikan advertisement, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Gagal untuk melakukan scanning, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Gagal untuk membuat mutex, status: 0x%08lX"
@ -854,19 +854,19 @@ msgstr "Semua perangkat SPI sedang digunakan"
msgid "error = 0x%08lX"
msgstr "error = 0x%08lX"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
msgid "Invalid buffer size"
msgstr "Ukuran buffer tidak valid"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
msgid "Odd parity is not supported"
msgstr "Parity ganjil tidak didukung"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr "busio.UART tidak tersedia"
@ -1365,7 +1365,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr ""
@ -2131,7 +2131,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2175,15 +2175,33 @@ msgstr "buffers harus mempunyai panjang yang sama"
msgid "Expected a UUID"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Tidak dapat menyambungkan ke AP"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "bits harus memilki nilai 8"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "buffers harus mempunyai panjang yang sama"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
msgid "Expected a Characteristic"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2221,16 +2239,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "buffers harus mempunyai panjang yang sama"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2649,11 +2671,6 @@ msgstr ""
msgid "'S' and 'O' are not supported format types"
msgstr ""
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Gagal untuk megalokasikan buffer RX dari %d byte"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr ""
@ -2749,8 +2766,17 @@ msgid ""
"exit safe mode.\n"
msgstr ""
#~ msgid "Invalid UUID string length"
#~ msgstr "Panjang string UUID tidak valid"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Silahkan taruh masalah disini dengan isi dari CIRCUITPY drive: anda \n"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parameter UUID tidak valid"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Sepertinya inti kode CircuitPython kita crash dengan sangat keras. Ups!\n"
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2759,14 +2785,9 @@ msgstr ""
#~ "tegangan cukup untuk semua sirkuit dan tekan reset (setelah mencabut "
#~ "CIRCUITPY).\n"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Sepertinya inti kode CircuitPython kita crash dengan sangat keras. Ups!\n"
#~ msgid "Invalid UUID string length"
#~ msgstr "Panjang string UUID tidak valid"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parameter UUID tidak valid"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Silahkan taruh masalah disini dengan isi dari CIRCUITPY drive: anda \n"
#, fuzzy
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Gagal untuk megalokasikan buffer RX dari %d byte"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -334,12 +334,12 @@ msgid "bytes > 8 bits not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr ""
@ -348,12 +348,12 @@ msgid "Could not initialize UART"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr ""
@ -708,7 +708,7 @@ msgstr ""
msgid "Failed to read attribute value, err %0x04x"
msgstr ""
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr ""
@ -718,7 +718,7 @@ msgstr ""
msgid "Failed to write attribute value, err 0x%04x"
msgstr ""
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr ""
@ -737,43 +737,43 @@ msgstr ""
msgid "Failed to discover services"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
msgid "Failed to acquire mutex"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
msgid "Failed to release mutex"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
msgid "Failed to continue scanning"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
msgid "Failed to connect:"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
msgid "Failed to add service"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
msgid "Failed to start advertising"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
msgid "Failed to stop advertising"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
msgid "Failed to start scanning"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
msgid "Failed to create mutex"
msgstr ""
@ -828,19 +828,19 @@ msgstr ""
msgid "error = 0x%08lX"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
msgid "Invalid buffer size"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
msgid "Odd parity is not supported"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr ""
@ -1332,7 +1332,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr ""
@ -2098,7 +2098,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2142,14 +2142,30 @@ msgstr ""
msgid "Expected a UUID"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
msgid "Not connected"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:74
msgid "timeout must be >= 0.0"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:79
msgid "buffer_size must be >= 1"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
msgid "Expected a Characteristic"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2186,15 +2202,19 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2612,11 +2632,6 @@ msgstr ""
msgid "'S' and 'O' are not supported format types"
msgstr ""
#: shared-module/struct/__init__.c:128
#, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr ""
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr ""

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
"Last-Translator: Sebastian Plamauer\n"
"Language-Team: \n"
@ -338,12 +338,12 @@ msgid "bytes > 8 bits not supported"
msgstr "bytes mit merh als 8 bits werden nicht unterstützt"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "tx und rx können nicht beide None sein"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Konnte keinen RX Buffer allozieren"
@ -352,12 +352,12 @@ msgid "Could not initialize UART"
msgstr "Konnte UART nicht initialisieren"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Kein RX Pin"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Kein TX Pin"
@ -508,7 +508,8 @@ msgstr "Dateisystem kann nicht wieder gemounted werden."
#: ports/esp8266/common-hal/storage/__init__.c:38
msgid "Use esptool to erase flash and re-upload Python instead"
msgstr "Benutze esptool um den flash zu löschen und stattdessen Python hochzuladen"
msgstr ""
"Benutze esptool um den flash zu löschen und stattdessen Python hochzuladen"
#: ports/esp8266/esp_mphal.c:154
msgid "C-level assert"
@ -717,7 +718,7 @@ msgstr "Kann den Attributwert nicht mitteilen. Status: 0x%04x"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Kann den Attributwert nicht lesen. Status: 0x%04x"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Kann den Attributwert nicht lesen. Status: 0x%04x"
@ -727,7 +728,7 @@ msgstr "Kann den Attributwert nicht lesen. Status: 0x%04x"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Kann den Attributwert nicht schreiben. Status: 0x%04x"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Mutex konnte nicht freigegeben werden. Status: 0x%04x"
@ -748,51 +749,51 @@ msgstr "Daten sind zu groß für das advertisement packet"
msgid "Failed to discover services"
msgstr "Es konnten keine Dienste gefunden werden"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Akquirieren des Mutex gescheitert"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Loslassen des Mutex gescheitert"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "Der Scanvorgang kann nicht fortgesetzt werden"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "Das Verbinden ist fehlgeschlagen:"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Dienst konnte nicht hinzugefügt werden"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Kann advertisement nicht starten"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Kann advertisement nicht stoppen"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Der Scanvorgang kann nicht gestartet werden"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Erstellen des Mutex ist fehlgeschlagen"
@ -850,21 +851,21 @@ msgstr "Alle SPI-Peripheriegeräte sind in Benutzung"
msgid "error = 0x%08lX"
msgstr "error = 0x%08lX"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
#, fuzzy
msgid "Invalid buffer size"
msgstr "Ungültige Puffergröße"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
#, fuzzy
msgid "Odd parity is not supported"
msgstr "bytes mit mehr als 8 bits werden nicht unterstützt"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr "Kann busio.UART nicht finden"
@ -1360,7 +1361,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr ""
@ -2129,7 +2130,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2173,16 +2174,35 @@ msgstr "Buffer müssen gleich lang sein"
msgid "Expected a UUID"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Kann nicht zu AP verbinden"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "bits müssen 8 sein"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "Buffer müssen gleich lang sein"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "Kann das Merkmal nicht hinzufügen."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
#, fuzzy
msgid "CharacteristicBuffer writing not provided"
msgstr "Merkmal wird bereits von einem anderen Dienst verwendet."
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2220,16 +2240,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "Buffer müssen gleich lang sein"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2650,11 +2674,6 @@ msgstr "Kann '/' nicht remounten when USB aktiv ist"
msgid "'S' and 'O' are not supported format types"
msgstr ""
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Konnte keine RX Buffer mit %d allozieren"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr ""
@ -2748,29 +2767,22 @@ msgid ""
"exit safe mode.\n"
msgstr ""
#~ msgid "Can not add Characteristic."
#~ msgstr "Kann das Merkmal nicht hinzufügen."
#~ msgid "Invalid UUID string length"
#~ msgstr "Ungültige UUID-Stringlänge"
#~ msgid "Can not add Service."
#~ msgstr "Kann den Dienst nicht hinzufügen."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Kann UUID in das advertisement packet kodieren."
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr "CircuitPython ist abgestürzt. Ups!\n"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Bitte erstelle ein issue hier mit dem Inhalt deines CIRCUITPY-speichers:\n"
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Kann advertisement data nicht anwenden. Status: 0x%02x"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Ungültiger UUID-Parameter"
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Kann GAP Parameter nicht anwenden."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Kann UUID nicht kodieren, um die Länge zu überprüfen."
#~ msgid "Can not query for the device address."
#~ msgstr "Kann nicht nach der Geräteadresse suchen."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Der Gerätename kann nicht im Stack verwendet werden."
#~ msgid "Invalid Service type"
#~ msgstr "Ungültiger Diensttyp"
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2779,19 +2791,30 @@ msgstr ""
#~ "genug Strom für den ganzen Schaltkreis liefert und drücke reset (nach dem "
#~ "sicheren Auswerfen von CIRCUITPY.)\n"
#~ msgid "Invalid Service type"
#~ msgstr "Ungültiger Diensttyp"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Der Gerätename kann nicht im Stack verwendet werden."
#~ msgid "Invalid UUID parameter"
#~ msgstr "Ungültiger UUID-Parameter"
#~ msgid "Can not query for the device address."
#~ msgstr "Kann nicht nach der Geräteadresse suchen."
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Bitte erstelle ein issue hier mit dem Inhalt deines CIRCUITPY-speichers:\n"
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Kann UUID nicht kodieren, um die Länge zu überprüfen."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Kann UUID in das advertisement packet kodieren."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Kann GAP Parameter nicht anwenden."
#~ msgid "Invalid UUID string length"
#~ msgstr "Ungültige UUID-Stringlänge"
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Kann advertisement data nicht anwenden. Status: 0x%02x"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr "CircuitPython ist abgestürzt. Ups!\n"
#~ msgid "Can not add Service."
#~ msgstr "Kann den Dienst nicht hinzufügen."
#~ msgid "Can not add Characteristic."
#~ msgstr "Kann das Merkmal nicht hinzufügen."
#, fuzzy
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Konnte keine RX Buffer mit %d allozieren"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-07-27 11:55-0700\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -334,12 +334,12 @@ msgid "bytes > 8 bits not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr ""
@ -348,12 +348,12 @@ msgid "Could not initialize UART"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr ""
@ -708,7 +708,7 @@ msgstr ""
msgid "Failed to read attribute value, err %0x04x"
msgstr ""
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr ""
@ -718,7 +718,7 @@ msgstr ""
msgid "Failed to write attribute value, err 0x%04x"
msgstr ""
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr ""
@ -737,43 +737,43 @@ msgstr ""
msgid "Failed to discover services"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
msgid "Failed to acquire mutex"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
msgid "Failed to release mutex"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
msgid "Failed to continue scanning"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
msgid "Failed to connect:"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
msgid "Failed to add service"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
msgid "Failed to start advertising"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
msgid "Failed to stop advertising"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
msgid "Failed to start scanning"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
msgid "Failed to create mutex"
msgstr ""
@ -828,19 +828,19 @@ msgstr ""
msgid "error = 0x%08lX"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
msgid "Invalid buffer size"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
msgid "Odd parity is not supported"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr ""
@ -1332,7 +1332,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr ""
@ -2098,7 +2098,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2142,14 +2142,30 @@ msgstr ""
msgid "Expected a UUID"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
msgid "Not connected"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:74
msgid "timeout must be >= 0.0"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:79
msgid "buffer_size must be >= 1"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
msgid "Expected a Characteristic"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2186,15 +2202,19 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2612,11 +2632,6 @@ msgstr ""
msgid "'S' and 'O' are not supported format types"
msgstr ""
#: shared-module/struct/__init__.c:128
#, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr ""
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-08-24 22:56-0500\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -340,12 +340,12 @@ msgid "bytes > 8 bits not supported"
msgstr "bytes > 8 bits no soportados"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "Ambos tx y rx no pueden ser None"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Ha fallado la asignación del buffer RX"
@ -354,12 +354,12 @@ msgid "Could not initialize UART"
msgstr "No se puede inicializar la UART"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Sin pin RX"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Sin pin TX"
@ -720,7 +720,7 @@ msgstr "No se puede notificar el valor del anuncio. status: 0x%02x"
msgid "Failed to read attribute value, err %0x04x"
msgstr "No se puede leer el valor del atributo. status 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "No se puede adquirir el mutex, status: 0x%08lX"
@ -730,7 +730,7 @@ msgstr "No se puede adquirir el mutex, status: 0x%08lX"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "No se puede escribir el valor del atributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "No se puede liberar el mutex, status: 0x%08lX"
@ -751,51 +751,51 @@ msgstr "Los datos no caben en el paquete de anuncio."
msgid "Failed to discover services"
msgstr "No se puede descubrir servicios, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "No se puede adquirir el mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "No se puede liberar el mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "No se puede iniciar el escaneo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "No se puede conectar. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "No se puede detener el anuncio. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "No se puede inicar el anuncio. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "No se puede detener el anuncio. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "No se puede iniciar el escaneo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "No se puede leer el valor del atributo. status 0x%02x"
@ -851,19 +851,19 @@ msgstr "Todos los timers están siendo usados"
msgid "error = 0x%08lX"
msgstr "error = 0x%08lx"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
msgid "Invalid buffer size"
msgstr "Tamaño de buffer inválido"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
msgid "Odd parity is not supported"
msgstr "Paridad impar no soportada"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr "busio.UART no disponible"
@ -1368,7 +1368,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr "buffer demasiado pequeño"
@ -2147,7 +2147,7 @@ msgid "buffer must be a bytes-like object"
msgstr "buffer debe de ser un objeto bytes-like"
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr "el archivo deberia ser una archivo abierto en modo byte"
@ -2192,16 +2192,34 @@ msgstr "palette debe ser 32 bytes de largo"
msgid "Expected a UUID"
msgstr "Se espera un %q"
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "No se puede conectar a AP"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "bits debe ser 8"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "los buffers deben de tener la misma longitud"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "No se puede agregar la Característica."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr "No se pueden agregar servicio en modo Central"
@ -2239,16 +2257,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "buffer debe de ser un objeto bytes-like"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2673,11 +2695,6 @@ msgstr "No se puede volver a montar '/' cuando el USB esta activo."
msgid "'S' and 'O' are not supported format types"
msgstr "'S' y 'O' no son compatibles con los tipos de formato"
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Falló la asignación del buffer RX de %d bytes"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr "demasiados argumentos provistos con el formato dado"
@ -2781,42 +2798,21 @@ msgstr ""
"El botón reset fue presionado mientras arrancaba CircuitPython. Presiona "
"otra vez para salir del modo seguro.\n"
#~ msgid "Baud rate too high for this SPI peripheral"
#~ msgstr "Baud rate demasiado alto para este periférico SPI"
#~ msgid "Invalid UUID string length"
#~ msgstr "Longitud de string UUID inválida"
#~ msgid "Invalid Service type"
#~ msgstr "Tipo de Servicio inválido"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parámetro UUID inválido"
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "No se puede aplicar los datos de anuncio. status: 0x%02x"
#~ msgid "Can not query for the device address."
#~ msgstr "No se puede consultar la dirección del dispositivo."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Se puede codificar el UUID en el paquete de anuncio."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "No se puede codificar el UUID, para revisar la longitud."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "No se pueden aplicar los parámetros GAP."
#~ msgid "Can not add Service."
#~ msgstr "No se puede agregar el Servicio."
#~ msgid "Wrong number of bytes provided"
#~ msgstr "Numero erroneo de bytes dados"
#~ msgid "Wrong address length"
#~ msgstr "Longitud de address erronea"
#, fuzzy
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Por favor registra un issue en la siguiente URL con el contenidos de tu "
#~ "unidad de almacenamiento CIRCUITPY:\n"
#~ "Parece que nuestro código CircuitPython dejó de funcionar. Whoops!\n"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "No se puede aplicar el nombre del dispositivo en el stack."
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "No se pueden establecer los parámetros PPCP."
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2825,18 +2821,43 @@ msgstr ""
#~ "suficiente poder para todo el circuito y presiona reset (después de "
#~ "expulsar CIRCUITPY).\n"
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "No se pueden establecer los parámetros PPCP."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "No se puede aplicar el nombre del dispositivo en el stack."
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#, fuzzy
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Parece que nuestro código CircuitPython dejó de funcionar. Whoops!\n"
#~ "Por favor registra un issue en la siguiente URL con el contenidos de tu "
#~ "unidad de almacenamiento CIRCUITPY:\n"
#~ msgid "Can not query for the device address."
#~ msgstr "No se puede consultar la dirección del dispositivo."
#~ msgid "Wrong address length"
#~ msgstr "Longitud de address erronea"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parámetro UUID inválido"
#~ msgid "Wrong number of bytes provided"
#~ msgstr "Numero erroneo de bytes dados"
#~ msgid "Invalid UUID string length"
#~ msgstr "Longitud de string UUID inválida"
#~ msgid "Can not add Service."
#~ msgstr "No se puede agregar el Servicio."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "No se pueden aplicar los parámetros GAP."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "No se puede codificar el UUID, para revisar la longitud."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Se puede codificar el UUID en el paquete de anuncio."
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "No se puede aplicar los datos de anuncio. status: 0x%02x"
#~ msgid "Invalid Service type"
#~ msgstr "Tipo de Servicio inválido"
#~ msgid "Baud rate too high for this SPI peripheral"
#~ msgstr "Baud rate demasiado alto para este periférico SPI"
#, fuzzy
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Falló la asignación del buffer RX de %d bytes"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
"Language-Team: fil\n"
@ -338,12 +338,12 @@ msgid "bytes > 8 bits not supported"
msgstr "hindi sinusuportahan ang bytes > 8 bits"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "tx at rx hindi pwedeng parehas na None"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Nabigong ilaan ang RX buffer"
@ -352,12 +352,12 @@ msgid "Could not initialize UART"
msgstr "Hindi ma-initialize ang UART"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Walang RX pin"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Walang TX pin"
@ -720,7 +720,7 @@ msgstr "Hindi mabalitaan ang attribute value, status: 0x%08lX"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Hindi mabasa ang value ng attribute, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Nabigo sa pag kuha ng mutex, status: 0x%08lX"
@ -730,7 +730,7 @@ msgstr "Nabigo sa pag kuha ng mutex, status: 0x%08lX"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Hindi maisulat ang attribute value, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Nabigo sa pagrelease ng mutex, status: 0x%08lX"
@ -751,51 +751,51 @@ msgstr "Hindi makasya ang data sa loob ng advertisement packet"
msgid "Failed to discover services"
msgstr "Nabigo sa pagdiscover ng services, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Nabigo sa pag kuha ng mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Nabigo sa pagrelease ng mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "Hindi maituloy ang pag scan, status: 0x%0xlX"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "Hindi makaconnect, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Hindi matagumpay ang paglagay ng service, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Hindi masimulaan ang advertisement, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Hindi mahinto ang advertisement, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Hindi masimulaan mag i-scan, status: 0x%0xlX"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Hindi matagumpay ang pagbuo ng mutex, status: 0x%0xlX"
@ -852,19 +852,19 @@ msgstr "Lahat ng SPI peripherals ay ginagamit"
msgid "error = 0x%08lX"
msgstr "error = 0x%08lX"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
msgid "Invalid buffer size"
msgstr "Mali ang buffer size"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
msgid "Odd parity is not supported"
msgstr "Odd na parity ay hindi supportado"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr "busio.UART hindi available"
@ -1369,7 +1369,7 @@ msgstr "puno na ang schedule stack"
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr "masyadong maliit ang buffer"
@ -2152,7 +2152,7 @@ msgid "buffer must be a bytes-like object"
msgstr "buffer ay dapat bytes-like object"
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr "file ay dapat buksan sa byte mode"
@ -2197,16 +2197,34 @@ msgstr "ang palette ay dapat 32 bytes ang haba"
msgid "Expected a UUID"
msgstr "Umasa ng %q"
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Hindi maka connect sa AP"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "bits ay dapat walo (8)"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "aarehas na haba dapat ang buffer slices"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "Hindi mabasa and Characteristic."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr "Hindi maarang maglagay ng service sa Central mode"
@ -2244,16 +2262,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "buffer ay dapat bytes-like object"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2679,11 +2701,6 @@ msgstr "Hindi ma-remount '/' kapag aktibo ang USB."
msgid "'S' and 'O' are not supported format types"
msgstr "Ang 'S' at 'O' ay hindi suportadong uri ng format"
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Nabigong ilaan ang RX buffer ng %d bytes"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr "masyadong maraming mga argumento na ibinigay sa ibinigay na format"
@ -2787,42 +2804,21 @@ msgstr ""
"Ang reset button ay pinindot habang nag boot ang CircuitPython. Pindutin "
"ulit para lumabas sa safe mode.\n"
#, fuzzy
#~ msgid "palette must be displayio.Palette"
#~ msgstr "ang palette ay dapat 32 bytes ang haba"
#~ msgid "Invalid UUID string length"
#~ msgstr "Mali ang UUID string length"
#~ msgid "Invalid Service type"
#~ msgstr "Mali ang tipo ng serbisyo"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Mali ang UUID parameter"
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Hindi ma i-apply ang advertisement data. status: 0x%02x"
#~ msgid "Can not query for the device address."
#~ msgstr "Hindi maaaring mag-query para sa address ng device."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Maaring i-encode ang UUID sa advertisement packet."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Hindi ma-encode UUID, para suriin ang haba."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Hindi ma-apply ang GAP parameters."
#~ msgid "Can not add Service."
#~ msgstr "Hindi maidaragdag ang serbisyo."
#~ msgid "Wrong number of bytes provided"
#~ msgstr "Mali ang bilang ng bytes"
#~ msgid "Wrong address length"
#~ msgstr "Mali ang address length"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Mag-file ng isang isyu dito gamit ang mga nilalaman ng iyong CIRCUITPY "
#~ "drive:\n"
#~ "Mukhang ang core CircuitPython code ay nag-crash ng malakas. Aray!\n"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Hindi maaaring ma-aplay ang device name sa stack."
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Hindi ma-set ang PPCP parameters."
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2831,18 +2827,43 @@ msgstr ""
#~ "ay nagbibigay ng sapat na power para sa buong circuit at i-press ang "
#~ "reset (pagkatapos i-eject ang CIRCUITPY).\n"
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Hindi ma-set ang PPCP parameters."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Hindi maaaring ma-aplay ang device name sa stack."
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Mukhang ang core CircuitPython code ay nag-crash ng malakas. Aray!\n"
#~ "Mag-file ng isang isyu dito gamit ang mga nilalaman ng iyong CIRCUITPY "
#~ "drive:\n"
#~ msgid "Can not query for the device address."
#~ msgstr "Hindi maaaring mag-query para sa address ng device."
#~ msgid "Wrong address length"
#~ msgstr "Mali ang address length"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Mali ang UUID parameter"
#~ msgid "Wrong number of bytes provided"
#~ msgstr "Mali ang bilang ng bytes"
#~ msgid "Invalid UUID string length"
#~ msgstr "Mali ang UUID string length"
#~ msgid "Can not add Service."
#~ msgstr "Hindi maidaragdag ang serbisyo."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Hindi ma-apply ang GAP parameters."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Hindi ma-encode UUID, para suriin ang haba."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Maaring i-encode ang UUID sa advertisement packet."
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Hindi ma i-apply ang advertisement data. status: 0x%02x"
#~ msgid "Invalid Service type"
#~ msgstr "Mali ang tipo ng serbisyo"
#, fuzzy
#~ msgid "palette must be displayio.Palette"
#~ msgstr "ang palette ay dapat 32 bytes ang haba"
#, fuzzy
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Nabigong ilaan ang RX buffer ng %d bytes"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-12-23 20:05+0100\n"
"Last-Translator: Pierrick Couturier <arofarn@arofarn.info>\n"
"Language-Team: fr\n"
@ -335,12 +335,12 @@ msgid "bytes > 8 bits not supported"
msgstr "octets > 8 bits non supporté"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "tx et rx ne peuvent être None tous les deux"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Echec de l'allocation du tampon RX"
@ -349,12 +349,12 @@ msgid "Could not initialize UART"
msgstr "L'UART n'a pu être initialisé"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Pas de broche RX"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Pas de broche TX"
@ -717,7 +717,7 @@ msgstr "Impossible de notifier la valeur de l'attribut. status: 0x%08lX"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Impossible de lire la valeur de l'attribut. status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Echec de l'obtention de mutex, status: 0x%08lX"
@ -727,7 +727,7 @@ msgstr "Echec de l'obtention de mutex, status: 0x%08lX"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Impossible d'écrire la valeur de l'attribut. status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Impossible de libérer mutex, status: 0x%08lX"
@ -747,51 +747,51 @@ msgstr ""
msgid "Failed to discover services"
msgstr "Echec de la découverte de services, statut: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Echec de l'obtention de mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Impossible de libérer mutex, status: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "Impossible de commencer à scanner. statut: 0x%0xlX"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "Connection impossible. statut: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Echec de l'ajout de service, statut: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Echec de l'ajout de service, statut: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Echec de l'ajout de service, statut: 0x%08lX"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Impossible de commencer à scanner, statut: 0x%0xlX"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Echec de la création de mutex, statut: 0x%0xlX"
@ -850,21 +850,21 @@ msgstr "Tous les périphériques SPI sont utilisés"
msgid "error = 0x%08lX"
msgstr "erreur = 0x%08lX"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
#, fuzzy
msgid "Invalid buffer size"
msgstr "longueur de tampon invalide"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
#, fuzzy
msgid "Odd parity is not supported"
msgstr "parité impaire non supportée"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
#, fuzzy
msgid "busio.UART not available"
msgstr "busio.UART n'est pas disponible"
@ -1368,7 +1368,7 @@ msgstr "pile de plannification pleine"
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr "tampon trop petit"
@ -2154,7 +2154,7 @@ msgid "buffer must be a bytes-like object"
msgstr "le tampon doit être un objet bytes-like"
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr "le fichier doit être un fichier ouvert en mode 'byte'"
@ -2199,16 +2199,34 @@ msgstr "la palette doit être longue de 32 octets"
msgid "Expected a UUID"
msgstr "Attendu : %q"
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Impossible de se connecter à 'AP'"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "les bits doivent être 8"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "les slices de tampon doivent être de longueurs égales"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "Impossible d'ajouter la Characteristic."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr "Impossible d'ajouter des service en mode Central"
@ -2246,16 +2264,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "le tampon doit être un objet bytes-like"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2703,11 +2725,6 @@ msgstr "'/' ne peut être remonté quand l'USB est actif."
msgid "'S' and 'O' are not supported format types"
msgstr "'S' et 'O' ne sont pas des types de format supportés"
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Echec de l'allocation de %d octets du tampon RX"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr "trop d'arguments fournis avec ce format"
@ -2816,17 +2833,47 @@ msgstr ""
"Le bouton 'reset' a été appuyé pendant le démarrage de CircuitPython. "
"Appuyer denouveau pour quitter de le mode sans-échec.\n"
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Impossible d'appliquer les paramètres PPCP"
#~ msgid "Invalid UUID string length"
#~ msgstr "Longeur de chaîne UUID invalide"
#~ msgid "Can not add Characteristic."
#~ msgstr "Impossible d'ajouter la Characteristic."
#~ msgid "Invalid UUID parameter"
#~ msgstr "Paramètre UUID invalide"
#~ msgid "Can not query for the device address."
#~ msgstr "Impossible d'obtenir l'adresse du périphérique"
#, fuzzy
#~ msgid "palette must be displayio.Palette"
#~ msgstr "la palette doit être une displayio.Palette"
#~ msgid "Can not add Service."
#~ msgstr "Impossible d'ajouter le Service"
#, fuzzy
#~ msgid "value_size must be power of two"
#~ msgstr "value_size doit être une puissance de 2"
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Impossible d'appliquer les paramètres GAP"
#~ msgid "Invalid Service type"
#~ msgstr "Type de service invalide"
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "SVP, remontez le problème là avec le contenu du lecteur CIRCUITPY:\n"
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Impossible d'encoder l'UUID pour vérifier la longueur."
#~ msgid "Wrong address length"
#~ msgstr "Mauvaise longueur d'adresse"
#, fuzzy
#~ msgid "Wrong number of bytes provided"
#~ msgstr "mauvais nombre d'octets fourni'"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Impossible d'appliquer le nom de périphérique dans la pile"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Il semblerait que votre code CircuitPython a durement planté. Oups!\n"
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2835,44 +2882,18 @@ msgstr ""
#~ "assez de puissance pour l'ensemble du circuit et appuyez sur "
#~ "'reset' (après avoir éjecter CIRCUITPY).\n"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Il semblerait que votre code CircuitPython a durement planté. Oups!\n"
#~ msgid "Can not add Service."
#~ msgstr "Impossible d'ajouter le Service"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Impossible d'appliquer le nom de périphérique dans la pile"
#~ msgid "Can not query for the device address."
#~ msgstr "Impossible d'obtenir l'adresse du périphérique"
#~ msgid "Can not add Characteristic."
#~ msgstr "Impossible d'ajouter la Characteristic."
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Impossible d'appliquer les paramètres PPCP"
#, fuzzy
#~ msgid "Wrong number of bytes provided"
#~ msgstr "mauvais nombre d'octets fourni'"
#~ msgid "Wrong address length"
#~ msgstr "Mauvaise longueur d'adresse"
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Impossible d'encoder l'UUID pour vérifier la longueur."
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "SVP, remontez le problème là avec le contenu du lecteur CIRCUITPY:\n"
#~ msgid "Invalid Service type"
#~ msgstr "Type de service invalide"
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Impossible d'appliquer les paramètres GAP"
#, fuzzy
#~ msgid "value_size must be power of two"
#~ msgstr "value_size doit être une puissance de 2"
#, fuzzy
#~ msgid "palette must be displayio.Palette"
#~ msgstr "la palette doit être une displayio.Palette"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Paramètre UUID invalide"
#~ msgid "Invalid UUID string length"
#~ msgstr "Longeur de chaîne UUID invalide"
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Echec de l'allocation de %d octets du tampon RX"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
"Language-Team: \n"
@ -339,12 +339,12 @@ msgid "bytes > 8 bits not supported"
msgstr "byte > 8 bit non supportati"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "tx e rx non possono essere entrambi None"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Impossibile allocare buffer RX"
@ -353,12 +353,12 @@ msgid "Could not initialize UART"
msgstr "Impossibile inizializzare l'UART"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Nessun pin RX"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Nessun pin TX"
@ -719,7 +719,7 @@ msgstr "Impossibile notificare valore dell'attributo. status: 0x%02x"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
@ -729,7 +729,7 @@ msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Impossibile scrivere valore dell'attributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
@ -750,51 +750,51 @@ msgstr "Impossibile inserire dati nel pacchetto di advertisement."
msgid "Failed to discover services"
msgstr "Impossibile fermare advertisement. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Impossibile allocare buffer RX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
#, fuzzy
msgid "Failed to continue scanning"
msgstr "Impossible iniziare la scansione. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
#, fuzzy
msgid "Failed to connect:"
msgstr "Impossibile connettersi. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Impossibile fermare advertisement. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Impossibile avviare advertisement. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Impossibile fermare advertisement. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Impossible iniziare la scansione. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Impossibile leggere valore dell'attributo. status: 0x%02x"
@ -851,21 +851,21 @@ msgstr "Tutte le periferiche SPI sono in uso"
msgid "error = 0x%08lX"
msgstr ""
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
#, fuzzy
msgid "Invalid buffer size"
msgstr "lunghezza del buffer non valida"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
#, fuzzy
msgid "Odd parity is not supported"
msgstr "operazione I2C non supportata"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
#, fuzzy
msgid "busio.UART not available"
msgstr "busio.UART non ancora implementato"
@ -1368,7 +1368,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr "buffer troppo piccolo"
@ -2151,7 +2151,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2196,16 +2196,34 @@ msgstr "la palette deve essere lunga 32 byte"
msgid "Expected a UUID"
msgstr "Atteso un %q"
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Impossible connettersi all'AP"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "i bit devono essere 8"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "slice del buffer devono essere della stessa lunghezza"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "Non è possibile aggiungere Characteristic."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2243,16 +2261,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "i buffer devono essere della stessa lunghezza"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2685,11 +2707,6 @@ msgstr "Non è possibile rimontare '/' mentre l'USB è attiva."
msgid "'S' and 'O' are not supported format types"
msgstr "'S' e 'O' non sono formati supportati"
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Fallita allocazione del buffer RX di %d byte"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr "troppi argomenti forniti con il formato specificato"
@ -2785,8 +2802,53 @@ msgid ""
"exit safe mode.\n"
msgstr ""
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Impossibile applicare i parametri GAP."
#~ msgid "Invalid UUID string length"
#~ msgstr "Lunghezza della stringa UUID non valida"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parametro UUID non valido"
#~ msgid "Invalid Service type"
#~ msgstr "Tipo di servizio non valido"
#, fuzzy
#~ msgid "Wrong number of bytes provided"
#~ msgstr "numero di argomenti errato"
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Impossibile impostare i parametri PPCP."
#~ msgid "Can not add Characteristic."
#~ msgstr "Non è possibile aggiungere Characteristic."
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Non è possibile codificare l'UUID, lunghezza da controllare."
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Ti preghiamo di compilare una issue con il contenuto del tuo drie "
#~ "CIRCUITPY:\n"
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "È possibile codificare l'UUID nel pacchetto di advertisement."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Non è possibile inserire il nome del dipositivo nella lista."
#~ msgid "Can not add Service."
#~ msgstr "Non è possibile aggiungere Service."
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Impossible inserire dati advertisement. status: 0x%02x"
#~ msgid "Can not query for the device address."
#~ msgstr "Non è possibile trovare l'indirizzo del dispositivo."
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Sembra che il codice del core di CircuitPython sia crashato malamente. "
#~ "Whoops!\n"
#~ msgid ""
#~ "enough power for the whole circuit and press reset (after ejecting "
@ -2795,50 +2857,9 @@ msgstr ""
#~ "abbastanza potenza per l'intero circuito e premere reset (dopo aver "
#~ "espulso CIRCUITPY).\n"
#~ msgid "Looks like our core CircuitPython code crashed hard. Whoops!\n"
#~ msgstr ""
#~ "Sembra che il codice del core di CircuitPython sia crashato malamente. "
#~ "Whoops!\n"
#~ msgid "Can not query for the device address."
#~ msgstr "Non è possibile trovare l'indirizzo del dispositivo."
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Impossible inserire dati advertisement. status: 0x%02x"
#~ msgid "Can not add Service."
#~ msgstr "Non è possibile aggiungere Service."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Non è possibile inserire il nome del dipositivo nella lista."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "È possibile codificare l'UUID nel pacchetto di advertisement."
#~ msgid ""
#~ "Please file an issue here with the contents of your CIRCUITPY drive:\n"
#~ msgstr ""
#~ "Ti preghiamo di compilare una issue con il contenuto del tuo drie "
#~ "CIRCUITPY:\n"
#~ msgid "Can not encode UUID, to check length."
#~ msgstr "Non è possibile codificare l'UUID, lunghezza da controllare."
#~ msgid "Can not add Characteristic."
#~ msgstr "Non è possibile aggiungere Characteristic."
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Impossibile impostare i parametri PPCP."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Impossibile applicare i parametri GAP."
#, fuzzy
#~ msgid "Wrong number of bytes provided"
#~ msgstr "numero di argomenti errato"
#~ msgid "Invalid Service type"
#~ msgstr "Tipo di servizio non valido"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parametro UUID non valido"
#~ msgid "Invalid UUID string length"
#~ msgstr "Lunghezza della stringa UUID non valida"
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Fallita allocazione del buffer RX di %d byte"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-01-20 22:46-0500\n"
"POT-Creation-Date: 2019-01-21 21:50-0500\n"
"PO-Revision-Date: 2018-10-02 21:14-0000\n"
"Last-Translator: \n"
"Language-Team: \n"
@ -334,12 +334,12 @@ msgid "bytes > 8 bits not supported"
msgstr "bytes > 8 bits não suportado"
#: ports/atmel-samd/common-hal/busio/UART.c:73
#: ports/nrf/common-hal/busio/UART.c:118
#: ports/nrf/common-hal/busio/UART.c:91
msgid "tx and rx cannot both be None"
msgstr "TX e RX não podem ser ambos"
#: ports/atmel-samd/common-hal/busio/UART.c:146
#: ports/nrf/common-hal/busio/UART.c:152
#: ports/nrf/common-hal/busio/UART.c:132
msgid "Failed to allocate RX buffer"
msgstr "Falha ao alocar buffer RX"
@ -348,12 +348,12 @@ msgid "Could not initialize UART"
msgstr "Não foi possível inicializar o UART"
#: ports/atmel-samd/common-hal/busio/UART.c:241
#: ports/nrf/common-hal/busio/UART.c:197
#: ports/nrf/common-hal/busio/UART.c:174
msgid "No RX pin"
msgstr "Nenhum pino RX"
#: ports/atmel-samd/common-hal/busio/UART.c:300
#: ports/nrf/common-hal/busio/UART.c:232
#: ports/nrf/common-hal/busio/UART.c:209
msgid "No TX pin"
msgstr "Nenhum pino TX"
@ -711,7 +711,7 @@ msgstr "Não é possível gravar o valor do atributo. status: 0x%02x"
msgid "Failed to read attribute value, err %0x04x"
msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:172
#: ports/nrf/common-hal/bleio/Characteristic.c:172 ports/nrf/sd_mutex.c:34
#, fuzzy, c-format
msgid "Failed to acquire mutex, err 0x%04x"
msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
@ -721,7 +721,7 @@ msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
msgid "Failed to write attribute value, err 0x%04x"
msgstr "Não é possível gravar o valor do atributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Characteristic.c:189
#: ports/nrf/common-hal/bleio/Characteristic.c:189 ports/nrf/sd_mutex.c:54
#, fuzzy, c-format
msgid "Failed to release mutex, err 0x%04x"
msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
@ -742,49 +742,49 @@ msgstr "Não é possível ajustar dados no pacote de anúncios."
msgid "Failed to discover services"
msgstr "Não pode parar propaganda. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:267
#: ports/nrf/common-hal/bleio/Device.c:300
#: ports/nrf/common-hal/bleio/Device.c:268
#: ports/nrf/common-hal/bleio/Device.c:302
#, fuzzy
msgid "Failed to acquire mutex"
msgstr "Falha ao alocar buffer RX"
#: ports/nrf/common-hal/bleio/Device.c:278
#: ports/nrf/common-hal/bleio/Device.c:311
#: ports/nrf/common-hal/bleio/Device.c:342
#: ports/nrf/common-hal/bleio/Device.c:376
#: ports/nrf/common-hal/bleio/Device.c:280
#: ports/nrf/common-hal/bleio/Device.c:313
#: ports/nrf/common-hal/bleio/Device.c:344
#: ports/nrf/common-hal/bleio/Device.c:378
#, fuzzy
msgid "Failed to release mutex"
msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:387
#: ports/nrf/common-hal/bleio/Device.c:389
msgid "Failed to continue scanning"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:419
#: ports/nrf/common-hal/bleio/Device.c:421
msgid "Failed to connect:"
msgstr ""
#: ports/nrf/common-hal/bleio/Device.c:489
#: ports/nrf/common-hal/bleio/Device.c:491
#, fuzzy
msgid "Failed to add service"
msgstr "Não pode parar propaganda. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:506
#: ports/nrf/common-hal/bleio/Device.c:508
#, fuzzy
msgid "Failed to start advertising"
msgstr "Não é possível iniciar o anúncio. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:523
#: ports/nrf/common-hal/bleio/Device.c:525
#, fuzzy
msgid "Failed to stop advertising"
msgstr "Não pode parar propaganda. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:548
#: ports/nrf/common-hal/bleio/Device.c:550
#, fuzzy
msgid "Failed to start scanning"
msgstr "Não é possível iniciar o anúncio. status: 0x%02x"
#: ports/nrf/common-hal/bleio/Device.c:564
#: ports/nrf/common-hal/bleio/Device.c:566
#, fuzzy
msgid "Failed to create mutex"
msgstr "Não é possível ler o valor do atributo. status: 0x%02x"
@ -840,21 +840,21 @@ msgstr "Todos os periféricos SPI estão em uso"
msgid "error = 0x%08lX"
msgstr "erro = 0x%08lX"
#: ports/nrf/common-hal/busio/UART.c:122
#: ports/nrf/common-hal/busio/UART.c:95
#, fuzzy
msgid "Invalid buffer size"
msgstr "Arquivo inválido"
#: ports/nrf/common-hal/busio/UART.c:126
#: ports/nrf/common-hal/busio/UART.c:99
#, fuzzy
msgid "Odd parity is not supported"
msgstr "I2C operação não suportada"
#: ports/nrf/common-hal/busio/UART.c:358 ports/nrf/common-hal/busio/UART.c:362
#: ports/nrf/common-hal/busio/UART.c:367 ports/nrf/common-hal/busio/UART.c:372
#: ports/nrf/common-hal/busio/UART.c:378 ports/nrf/common-hal/busio/UART.c:383
#: ports/nrf/common-hal/busio/UART.c:388 ports/nrf/common-hal/busio/UART.c:392
#: ports/nrf/common-hal/busio/UART.c:400
#: ports/nrf/common-hal/busio/UART.c:335 ports/nrf/common-hal/busio/UART.c:339
#: ports/nrf/common-hal/busio/UART.c:344 ports/nrf/common-hal/busio/UART.c:349
#: ports/nrf/common-hal/busio/UART.c:355 ports/nrf/common-hal/busio/UART.c:360
#: ports/nrf/common-hal/busio/UART.c:365 ports/nrf/common-hal/busio/UART.c:369
#: ports/nrf/common-hal/busio/UART.c:377
msgid "busio.UART not available"
msgstr "busio.UART não disponível"
@ -1350,7 +1350,7 @@ msgstr ""
#: py/modstruct.c:148 py/modstruct.c:156 py/modstruct.c:244 py/modstruct.c:254
#: shared-bindings/struct/__init__.c:102 shared-bindings/struct/__init__.c:161
#: shared-module/struct/__init__.c:183
#: shared-module/struct/__init__.c:128 shared-module/struct/__init__.c:183
msgid "buffer too small"
msgstr ""
@ -2119,7 +2119,7 @@ msgid "buffer must be a bytes-like object"
msgstr ""
#: shared-bindings/audioio/WaveFile.c:78
#: shared-bindings/displayio/OnDiskBitmap.c:85
#: shared-bindings/displayio/OnDiskBitmap.c:87
msgid "file must be a file opened in byte mode"
msgstr ""
@ -2164,16 +2164,34 @@ msgstr "buffers devem ser o mesmo tamanho"
msgid "Expected a UUID"
msgstr "Esperado um"
#: shared-bindings/bleio/CharacteristicBuffer.c:61
#: shared-bindings/bleio/CharacteristicBuffer.c:39
#, fuzzy
msgid "Not connected"
msgstr "Não é possível conectar-se ao AP"
#: shared-bindings/bleio/CharacteristicBuffer.c:74
#, fuzzy
msgid "timeout must be >= 0.0"
msgstr "bits devem ser 8"
#: shared-bindings/bleio/CharacteristicBuffer.c:79
#, fuzzy
msgid "buffer_size must be >= 1"
msgstr "buffers devem ser o mesmo tamanho"
#: shared-bindings/bleio/CharacteristicBuffer.c:65
#: shared-bindings/bleio/CharacteristicBuffer.c:83
#, fuzzy
msgid "Expected a Characteristic"
msgstr "Não é possível adicionar Característica."
#: shared-bindings/bleio/CharacteristicBuffer.c:138
msgid "CharacteristicBuffer writing not provided"
msgstr ""
#: shared-bindings/bleio/CharacteristicBuffer.c:147
msgid "Not connected."
msgstr ""
#: shared-bindings/bleio/Device.c:210
msgid "Can't add services in Central mode"
msgstr ""
@ -2211,16 +2229,20 @@ msgstr ""
msgid "UUID integer value not in range 0 to 0xffff"
msgstr ""
#: shared-bindings/bleio/UUID.c:75
msgid "UUID value is not int or byte buffer"
#: shared-bindings/bleio/UUID.c:91
msgid "UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"
msgstr ""
#: shared-bindings/bleio/UUID.c:79
#: shared-bindings/bleio/UUID.c:103
msgid "UUID value is not str, int or byte buffer"
msgstr ""
#: shared-bindings/bleio/UUID.c:107
#, fuzzy
msgid "Byte buffer must be 16 bytes."
msgstr "buffers devem ser o mesmo tamanho"
#: shared-bindings/bleio/UUID.c:120
#: shared-bindings/bleio/UUID.c:151
msgid "not a 128-bit UUID"
msgstr ""
@ -2642,11 +2664,6 @@ msgstr "Não é possível remontar '/' enquanto o USB estiver ativo."
msgid "'S' and 'O' are not supported format types"
msgstr "'S' e 'O' não são tipos de formato suportados"
#: shared-module/struct/__init__.c:128
#, fuzzy, c-format
msgid "unpack requires a buffer of %d bytes"
msgstr "Falha ao alocar buffer RX de %d bytes"
#: shared-module/struct/__init__.c:136
msgid "too many arguments provided with the given format"
msgstr "Muitos argumentos fornecidos com o formato dado"
@ -2736,32 +2753,36 @@ msgid ""
"exit safe mode.\n"
msgstr ""
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Não é possível definir parâmetros PPCP."
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Pode codificar o UUID no pacote de anúncios."
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Não é possível aplicar dados de anúncio. status: 0x%02x"
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parâmetro UUID inválido"
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Não é possível aplicar parâmetros GAP."
#~ msgid "Can not add Characteristic."
#~ msgstr "Não é possível adicionar Característica."
#~ msgid "Baud rate too high for this SPI peripheral"
#~ msgstr "Taxa de transmissão muito alta para esse periférico SPI"
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Não é possível aplicar o nome do dispositivo na pilha."
#~ msgid "Can not query for the device address."
#~ msgstr "Não é possível consultar o endereço do dispositivo."
#~ msgid "Invalid Service type"
#~ msgstr "Tipo de serviço inválido"
#~ msgid "Can not query for the device address."
#~ msgstr "Não é possível consultar o endereço do dispositivo."
#~ msgid "Can not apply device name in the stack."
#~ msgstr "Não é possível aplicar o nome do dispositivo na pilha."
#~ msgid "Baud rate too high for this SPI peripheral"
#~ msgstr "Taxa de transmissão muito alta para esse periférico SPI"
#~ msgid "Can not add Characteristic."
#~ msgstr "Não é possível adicionar Característica."
#~ msgid "Cannot apply GAP parameters."
#~ msgstr "Não é possível aplicar parâmetros GAP."
#~ msgid "Invalid UUID parameter"
#~ msgstr "Parâmetro UUID inválido"
#~ msgid "Can not apply advertisement data. status: 0x%02x"
#~ msgstr "Não é possível aplicar dados de anúncio. status: 0x%02x"
#~ msgid "Can encode UUID into the advertisement packet."
#~ msgstr "Pode codificar o UUID no pacote de anúncios."
#~ msgid "Cannot set PPCP parameters."
#~ msgstr "Não é possível definir parâmetros PPCP."
#, fuzzy
#~ msgid "unpack requires a buffer of %d bytes"
#~ msgstr "Falha ao alocar buffer RX de %d bytes"

View File

@ -141,6 +141,7 @@ SRC_C += \
peripherals/nrf/$(MCU_CHIP)/pins.c \
peripherals/nrf/$(MCU_CHIP)/power.c \
peripherals/nrf/timers.c \
sd_mutex.c \
supervisor/shared/memory.c

View File

@ -36,9 +36,9 @@
#include "common-hal/bleio/Characteristic.h"
#include "shared-module/bleio/Characteristic.h"
// TODO - should these be per object?? *****
STATIC volatile bleio_characteristic_obj_t *m_read_characteristic;
STATIC volatile uint8_t m_tx_in_progress;
// Serialize gattc writes that send a response. This might be done per object?
STATIC nrf_mutex_t *m_write_mutex;
STATIC uint16_t get_cccd(bleio_characteristic_obj_t *characteristic) {

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2018 Artur Pacholec
* Copyright (c) 2019 Dan Halbert for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@ -29,9 +29,13 @@
#include "ble_drv.h"
#include "ble_gatts.h"
#include "nrf_soc.h"
#include "sd_mutex.h"
#include "lib/utils/interrupt_char.h"
#include "py/runtime.h"
#include "py/stream.h"
#include "tick.h"
#include "common-hal/bleio/__init__.h"
#include "common-hal/bleio/CharacteristicBuffer.h"
@ -43,10 +47,13 @@ STATIC void characteristic_buffer_on_ble_evt(ble_evt_t *ble_evt, void *param) {
ble_gatts_evt_write_t *evt_write = &ble_evt->evt.gatts_evt.params.write;
// Event handle must match the handle for my characteristic.
if (evt_write->handle == self->characteristic->handle) {
// Push all the data onto the ring buffer.
// Push all the data onto the ring buffer, but wait for any reads to finish.
sd_mutex_acquire_wait_no_vm(&self->ringbuf_mutex);
for (size_t i = 0; i < evt_write->len; i++) {
ringbuf_put(&self->ringbuf, evt_write->data[i]);
}
// Don't check for errors: we're in an event handler.
sd_mutex_release(&self->ringbuf_mutex);
break;
}
}
@ -54,22 +61,75 @@ STATIC void characteristic_buffer_on_ble_evt(ble_evt_t *ble_evt, void *param) {
}
// Assumes that buffer_size has been validated before call.
void common_hal_bleio_characteristic_buffer_construct(bleio_characteristic_buffer_obj_t *self, bleio_characteristic_obj_t *characteristic, size_t buffer_size) {
// Assumes that timeout and buffer_size have been validated before call.
void common_hal_bleio_characteristic_buffer_construct(bleio_characteristic_buffer_obj_t *self,
bleio_characteristic_obj_t *characteristic,
mp_float_t timeout,
size_t buffer_size) {
self->characteristic = characteristic;
self->timeout_ms = timeout * 1000;
// This is a macro.
ringbuf_alloc(&self->ringbuf, buffer_size);
// true means long-lived, so it won't be moved.
ringbuf_alloc(&self->ringbuf, buffer_size, true);
sd_mutex_new(&self->ringbuf_mutex);
ble_drv_add_event_handler(characteristic_buffer_on_ble_evt, self);
}
// Returns a uint8_t byte value, or -1 if no data is available.
int common_hal_bleio_characteristic_buffer_read(bleio_characteristic_buffer_obj_t *self) {
return ringbuf_get(&self->ringbuf);
int common_hal_bleio_characteristic_buffer_read(bleio_characteristic_buffer_obj_t *self, uint8_t *data, size_t len, int *errcode) {
uint64_t start_ticks = ticks_ms;
// Wait for all bytes received or timeout
while ( (ringbuf_count(&self->ringbuf) < len) && (ticks_ms - start_ticks < self->timeout_ms) ) {
#ifdef MICROPY_VM_HOOK_LOOP
MICROPY_VM_HOOK_LOOP ;
// Allow user to break out of a timeout with a KeyboardInterrupt.
if ( mp_hal_is_interrupted() ) {
return 0;
}
#endif
}
// Copy received data. Lock out writes while copying.
sd_mutex_acquire_wait(&self->ringbuf_mutex);
size_t rx_bytes = MIN(ringbuf_count(&self->ringbuf), len);
for ( size_t i = 0; i < rx_bytes; i++ ) {
data[i] = ringbuf_get(&self->ringbuf);
}
// Writes now OK.
sd_mutex_release_check(&self->ringbuf_mutex);
return rx_bytes;
}
uint32_t common_hal_bleio_characteristic_buffer_rx_characters_available(bleio_characteristic_buffer_obj_t *self) {
return ringbuf_count(&self->ringbuf);
}
void common_hal_bleio_characteristic_buffer_clear_rx_buffer(bleio_characteristic_buffer_obj_t *self) {
// prevent conflict with uart irq
sd_mutex_acquire_wait(&self->ringbuf_mutex);
ringbuf_clear(&self->ringbuf);
sd_mutex_release_check(&self->ringbuf_mutex);
}
bool common_hal_bleio_characteristic_buffer_deinited(bleio_characteristic_buffer_obj_t *self) {
return self->characteristic == NULL;
}
void common_hal_bleio_characteristic_buffer_deinit(bleio_characteristic_buffer_obj_t *self) {
ble_drv_remove_event_handler(characteristic_buffer_on_ble_evt, self);
if (!common_hal_bleio_characteristic_buffer_deinited(self)) {
ble_drv_remove_event_handler(characteristic_buffer_on_ble_evt, self);
}
}
bool common_hal_bleio_characteristic_buffer_connected(bleio_characteristic_buffer_obj_t *self) {
return self->characteristic != NULL &&
self->characteristic->service != NULL &&
self->characteristic->service->device != NULL &&
common_hal_bleio_device_get_conn_handle(self->characteristic->service->device) != BLE_CONN_HANDLE_INVALID;
}

View File

@ -27,15 +27,18 @@
#ifndef MICROPY_INCLUDED_COMMON_HAL_BLEIO_CHARACTERISTICBUFFER_H
#define MICROPY_INCLUDED_COMMON_HAL_BLEIO_CHARACTERISTICBUFFER_H
#include "py/ringbuf.h"
#include "nrf_soc.h"
#include "py/ringbuf.h"
#include "shared-bindings/bleio/Characteristic.h"
typedef struct {
mp_obj_base_t base;
bleio_characteristic_obj_t *characteristic;
uint32_t timeout_ms;
// Ring buffer storing consecutive incoming values.
ringbuf_t ringbuf;
nrf_mutex_t ringbuf_mutex;
} bleio_characteristic_buffer_obj_t;
#endif // MICROPY_INCLUDED_COMMON_HAL_BLEIO_CHARACTERISTICBUFFER_H

View File

@ -262,11 +262,13 @@ STATIC bool discover_services(bleio_device_obj_t *device, uint16_t start_handle)
mp_raise_OSError_msg(translate("Failed to discover services"));
}
// Serialize discovery.
err_code = sd_mutex_acquire(m_discovery_mutex);
if (err_code != NRF_SUCCESS) {
mp_raise_OSError_msg(translate("Failed to acquire mutex"));
}
// Wait for someone else to release m_discovery_mutex.
while (sd_mutex_acquire(m_discovery_mutex) == NRF_ERROR_SOC_MUTEX_ALREADY_TAKEN) {
#ifdef MICROPY_VM_HOOK_LOOP
MICROPY_VM_HOOK_LOOP

View File

@ -52,33 +52,6 @@
static uint32_t get_nrf_baud (uint32_t baudrate);
static uint16_t ringbuf_count(ringbuf_t *r)
{
volatile int count = r->iput - r->iget;
if ( count < 0 ) {
count += r->size;
}
return (uint16_t) count;
}
static void ringbuf_clear(ringbuf_t *r)
{
r->iput = r->iget = 0;
}
// will overwrite old data
static void ringbuf_put_n(ringbuf_t* r, uint8_t* buf, uint8_t bufsize)
{
for(uint8_t i=0; i < bufsize; i++) {
if ( ringbuf_put(r, buf[i]) < 0 ) {
// if full overwrite old data
(void) ringbuf_get(r);
ringbuf_put(r, buf[i]);
}
}
}
static void uart_callback_irq (const nrfx_uarte_event_t * event, void * context) {
busio_uart_obj_t* self = (busio_uart_obj_t*) context;
@ -145,16 +118,20 @@ void common_hal_busio_uart_construct (busio_uart_obj_t *self,
// Init buffer for rx
if ( rx != mp_const_none ) {
self->rbuf.buf = (uint8_t *) gc_alloc(receiver_buffer_size, false, false);
// Initially allocate the UART's buffer in the long-lived part of the
// heap. UARTs are generally long-lived objects, but the "make long-
// lived" machinery is incapable of moving internal pointers like
// self->buffer, so do it manually. (However, as long as internal
// pointers like this are NOT moved, allocating the buffer
// in the long-lived pool is not strictly necessary)
// (This is a macro.)
ringbuf_alloc(&self->rbuf, receiver_buffer_size, true);
if ( !self->rbuf.buf ) {
nrfx_uarte_uninit(&self->uarte);
mp_raise_msg(&mp_type_MemoryError, translate("Failed to allocate RX buffer"));
}
self->rbuf.size = receiver_buffer_size;
self->rbuf.iget = self->rbuf.iput = 0;
self->rx_pin_number = rx->number;
claim_pin(rx);
}

56
ports/nrf/sd_mutex.c Normal file
View File

@ -0,0 +1,56 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2019 Dan Halbert for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "py/mpconfig.h"
#include "py/runtime.h"
#include "nrf_soc.h"
void sd_mutex_acquire_check(nrf_mutex_t* p_mutex) {
uint32_t err_code = sd_mutex_acquire(p_mutex);
if (err_code != NRF_SUCCESS) {
mp_raise_OSError_msg_varg(translate("Failed to acquire mutex, err 0x%04x"), err_code);
}
}
void sd_mutex_acquire_wait(nrf_mutex_t* p_mutex) {
while (sd_mutex_acquire(p_mutex) == NRF_ERROR_SOC_MUTEX_ALREADY_TAKEN) {
#ifdef MICROPY_VM_HOOK_LOOP
MICROPY_VM_HOOK_LOOP
#endif
}
}
void sd_mutex_acquire_wait_no_vm(nrf_mutex_t* p_mutex) {
while (sd_mutex_acquire(p_mutex) == NRF_ERROR_SOC_MUTEX_ALREADY_TAKEN) {
}
}
void sd_mutex_release_check(nrf_mutex_t* p_mutex) {
uint32_t err_code = sd_mutex_release(p_mutex);
if (err_code != NRF_SUCCESS) {
mp_raise_OSError_msg_varg(translate("Failed to release mutex, err 0x%04x"), err_code);
}
}

46
ports/nrf/sd_mutex.h Normal file
View File

@ -0,0 +1,46 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2019 Dan Halbert for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#ifndef MICROPY_INCLUDED_NRF_SD_MUTEX_H
#define MICROPY_INCLUDED_NRF_SD_MUTEX_H
#include "nrf_soc.h"
// Helpers for common usage of nrf_mutex.
// Try to acquire a mutex right now. Raise exception if we can't get it.
void sd_mutex_acquire_check(nrf_mutex_t* p_mutex);
// Wait for a mutex to become available. Run VM background tasks while waiting.
void sd_mutex_acquire_wait(nrf_mutex_t* p_mutex);
// Wait for a mutex to become available.. Block VM while waiting.
void sd_mutex_acquire_wait_no_vm(nrf_mutex_t* p_mutex);
// Release a mutex, and raise exception on error.
void sd_mutex_release_check(nrf_mutex_t* p_mutex);
#endif // MICROPY_INCLUDED_NRF_SD_MUTEX_H

View File

@ -26,6 +26,8 @@
#ifndef MICROPY_INCLUDED_PY_RINGBUF_H
#define MICROPY_INCLUDED_PY_RINGBUF_H
#include "py/gc.h"
#include <stdint.h>
typedef struct _ringbuf_t {
@ -40,9 +42,9 @@ typedef struct _ringbuf_t {
// ringbuf_t buf = {buf_array, sizeof(buf_array)};
// Dynamic initialization. This creates root pointer!
#define ringbuf_alloc(r, sz) \
#define ringbuf_alloc(r, sz, long_lived) \
{ \
(r)->buf = m_new(uint8_t, sz); \
(r)->buf = gc_alloc(sz, false, long_lived); \
(r)->size = sz; \
(r)->iget = (r)->iput = 0; \
}
@ -71,4 +73,30 @@ static inline int ringbuf_put(ringbuf_t *r, uint8_t v) {
return 0;
}
static inline uint16_t ringbuf_count(ringbuf_t *r)
{
volatile int count = r->iput - r->iget;
if ( count < 0 ) {
count += r->size;
}
return (uint16_t) count;
}
static inline void ringbuf_clear(ringbuf_t *r)
{
r->iput = r->iget = 0;
}
// will overwrite old data
static inline void ringbuf_put_n(ringbuf_t* r, uint8_t* buf, uint8_t bufsize)
{
for(uint8_t i=0; i < bufsize; i++) {
if ( ringbuf_put(r, buf[i]) < 0 ) {
// if full overwrite old data
(void) ringbuf_get(r);
ringbuf_put(r, buf[i]);
}
}
}
#endif // MICROPY_INCLUDED_PY_RINGBUF_H

View File

@ -103,7 +103,7 @@ STATIC mp_obj_t stream_read_generic(size_t n_args, const mp_obj_t *args, byte fl
// CPython does a readall, but here we silently let negatives through,
// and they will cause a MemoryError.
mp_int_t sz;
if (n_args == 1 || ((sz = mp_obj_get_int(args[1])) == -1)) {
if (n_args == 1 || args[1] == mp_const_none || ((sz = mp_obj_get_int(args[1])) == -1)) {
return stream_readall(args[0]);
}

View File

@ -24,10 +24,21 @@
* THE SOFTWARE.
*/
#include "py/mperrno.h"
#include "py/ioctl.h"
#include "py/objproperty.h"
#include "py/runtime.h"
#include "py/stream.h"
#include "shared-bindings/bleio/CharacteristicBuffer.h"
#include "shared-bindings/bleio/UUID.h"
#include "shared-bindings/util.h"
STATIC void raise_error_if_not_connected(bleio_characteristic_buffer_obj_t *self) {
if (!common_hal_bleio_characteristic_buffer_connected(self)) {
mp_raise_ValueError(translate("Not connected"));
}
}
//| .. currentmodule:: bleio
//|
@ -36,27 +47,34 @@
//|
//| Accumulates a Characteristic's incoming values in a FIFO buffer.
//|
//| .. class:: CharacteristicBuffer(Characteristic, buffer_size=0)
//| .. class:: CharacteristicBuffer(Characteristic, *, timeout=1, buffer_size=64)
//|
//| Create a new Characteristic object identified by the specified UUID.
//|
//| :param bleio.Characteristic characteristic: The characteristic to monitor
//| :param int timeout: the timeout in seconds to wait for the first character and between subsequent characters.//|
//| :param int buffer_size: Size of ring buffer that stores incoming data coming from client.
//| Must be >= 1.
//|
STATIC mp_obj_t bleio_characteristic_buffer_make_new(const mp_obj_type_t *type, size_t n_args, const mp_obj_t *pos_args, mp_map_t *kw_args) {
enum { ARG_characteristic, ARG_buffer_size, };
enum { ARG_characteristic, ARG_timeout, ARG_buffer_size, };
static const mp_arg_t allowed_args[] = {
{ MP_QSTR_characteristic, MP_ARG_REQUIRED | MP_ARG_OBJ },
{ MP_QSTR_buffer_size, MP_ARG_REQUIRED | MP_ARG_INT },
{ MP_QSTR_timeout, MP_ARG_KW_ONLY | MP_ARG_OBJ, {.u_obj = MP_OBJ_NEW_SMALL_INT(1)} },
{ MP_QSTR_buffer_size, MP_ARG_KW_ONLY | MP_ARG_INT, {.u_int = 64} },
};
mp_arg_val_t args[MP_ARRAY_SIZE(allowed_args)];
mp_arg_parse_all(n_args, pos_args, kw_args, MP_ARRAY_SIZE(allowed_args), allowed_args, args);
const mp_obj_t characteristic = args[ARG_characteristic].u_obj;
const int buffer_size = args[ARG_buffer_size].u_int;
mp_float_t timeout = mp_obj_get_float(args[ARG_timeout].u_obj);
if (timeout < 0.0f) {
mp_raise_ValueError(translate("timeout must be >= 0.0"));
}
const int buffer_size = args[ARG_buffer_size].u_int;
if (buffer_size < 1) {
mp_raise_ValueError(translate("buffer_size must be >= 1"));
}
@ -69,30 +87,117 @@ STATIC mp_obj_t bleio_characteristic_buffer_make_new(const mp_obj_type_t *type,
self->base.type = &bleio_characteristic_buffer_type;
self->characteristic = MP_OBJ_TO_PTR(characteristic);
common_hal_bleio_characteristic_buffer_construct(self, self->characteristic, buffer_size);
common_hal_bleio_characteristic_buffer_construct(self, self->characteristic, timeout, buffer_size);
return MP_OBJ_FROM_PTR(self);
}
//| .. method:: read()
// These are standard stream methods. Code is in py/stream.c.
//
//| .. method:: read(nbytes=None)
//|
//| Read characters. If ``nbytes`` is specified then read at most that many
//| bytes. Otherwise, read everything that arrives until the connection
//| times out. Providing the number of bytes expected is highly recommended
//| because it will be faster.
//|
//| :return: Data read
//| :rtype: bytes or None
//|
//| .. method:: readinto(buf)
//|
//| Read bytes into the ``buf``. Read at most ``len(buf)`` bytes.
//|
//| :return: number of bytes read and stored into ``buf``
//| :rtype: int or None (on a non-blocking error)
//|
//| .. method:: readline()
//|
//| Read a line, ending in a newline character.
//|
//| :return: the line read
//| :rtype: int or None
//|
//| Read a single byte from the buffer. If no character is available, return None.
STATIC mp_obj_t bleio_characteristic_buffer_read(mp_obj_t self_in) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
int byte = common_hal_bleio_characteristic_buffer_read(self);
if (byte == -1) {
return mp_const_none;
// These three methods are used by the shared stream methods.
STATIC mp_uint_t bleio_characteristic_buffer_read(mp_obj_t self_in, void *buf_in, mp_uint_t size, int *errcode) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
raise_error_if_deinited(common_hal_bleio_characteristic_buffer_deinited(self));
raise_error_if_not_connected(self);
byte *buf = buf_in;
// make sure we want at least 1 char
if (size == 0) {
return 0;
}
return MP_OBJ_NEW_SMALL_INT(byte);
return common_hal_bleio_characteristic_buffer_read(self, buf, size, errcode);
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_buffer_read_obj, bleio_characteristic_buffer_read);
STATIC mp_uint_t bleio_characteristic_buffer_write(mp_obj_t self_in, const void *buf_in, mp_uint_t size, int *errcode) {
mp_raise_NotImplementedError(translate("CharacteristicBuffer writing not provided"));
return 0;
}
STATIC mp_uint_t bleio_characteristic_buffer_ioctl(mp_obj_t self_in, mp_uint_t request, mp_uint_t arg, int *errcode) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
raise_error_if_deinited(common_hal_bleio_characteristic_buffer_deinited(self));
raise_error_if_not_connected(self);
if (!common_hal_bleio_characteristic_buffer_connected(self)) {
mp_raise_ValueError(translate("Not connected."));
}
mp_uint_t ret;
if (request == MP_IOCTL_POLL) {
mp_uint_t flags = arg;
ret = 0;
if ((flags & MP_IOCTL_POLL_RD) && common_hal_bleio_characteristic_buffer_rx_characters_available(self) > 0) {
ret |= MP_IOCTL_POLL_RD;
}
// No writing provided.
// if ((flags & MP_IOCTL_POLL_WR) && common_hal_busio_uart_ready_to_tx(self)) {
// ret |= MP_IOCTL_POLL_WR;
// }
} else {
*errcode = MP_EINVAL;
ret = MP_STREAM_ERROR;
}
return ret;
}
//| .. attribute:: in_waiting
//|
//| The number of bytes in the input buffer, available to be read
//|
STATIC mp_obj_t bleio_characteristic_buffer_obj_get_in_waiting(mp_obj_t self_in) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
raise_error_if_deinited(common_hal_bleio_characteristic_buffer_deinited(self));
return MP_OBJ_NEW_SMALL_INT(common_hal_bleio_characteristic_buffer_rx_characters_available(self));
}
MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_buffer_get_in_waiting_obj, bleio_characteristic_buffer_obj_get_in_waiting);
const mp_obj_property_t bleio_characteristic_buffer_in_waiting_obj = {
.base.type = &mp_type_property,
.proxy = {(mp_obj_t)&bleio_characteristic_buffer_get_in_waiting_obj,
(mp_obj_t)&mp_const_none_obj,
(mp_obj_t)&mp_const_none_obj},
};
//| .. method:: reset_input_buffer()
//|
//| Discard any unread characters in the input buffer.
//|
STATIC mp_obj_t bleio_characteristic_buffer_obj_reset_input_buffer(mp_obj_t self_in) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
raise_error_if_deinited(common_hal_bleio_characteristic_buffer_deinited(self));
common_hal_bleio_characteristic_buffer_clear_rx_buffer(self);
return mp_const_none;
}
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_buffer_reset_input_buffer_obj, bleio_characteristic_buffer_obj_reset_input_buffer);
//| .. method:: deinit()
//|
//| Disable permanently.
//|
STATIC mp_obj_t bleio_characteristic_buffer_deinit(mp_obj_t self_in) {
bleio_characteristic_buffer_obj_t *self = MP_OBJ_TO_PTR(self_in);
common_hal_bleio_characteristic_buffer_deinit(self);
@ -101,15 +206,39 @@ STATIC mp_obj_t bleio_characteristic_buffer_deinit(mp_obj_t self_in) {
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_buffer_deinit_obj, bleio_characteristic_buffer_deinit);
STATIC const mp_rom_map_elem_t bleio_characteristic_buffer_locals_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_read), MP_ROM_PTR(&bleio_characteristic_buffer_read_obj) },
{ MP_ROM_QSTR(MP_QSTR_deinit), MP_ROM_PTR(&bleio_characteristic_buffer_deinit_obj) },
// Standard stream methods.
{ MP_OBJ_NEW_QSTR(MP_QSTR_read), MP_ROM_PTR(&mp_stream_read_obj) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_readline), MP_ROM_PTR(&mp_stream_unbuffered_readline_obj)},
{ MP_OBJ_NEW_QSTR(MP_QSTR_readinto), MP_ROM_PTR(&mp_stream_readinto_obj) },
// CharacteristicBuffer is currently read-only.
// { MP_OBJ_NEW_QSTR(MP_QSTR_write), MP_ROM_PTR(&mp_stream_write_obj) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_reset_input_buffer), MP_ROM_PTR(&bleio_characteristic_buffer_reset_input_buffer_obj) },
// Properties
{ MP_ROM_QSTR(MP_QSTR_in_waiting), MP_ROM_PTR(&bleio_characteristic_buffer_in_waiting_obj) },
};
STATIC MP_DEFINE_CONST_DICT(bleio_characteristic_buffer_locals_dict, bleio_characteristic_buffer_locals_dict_table);
STATIC const mp_stream_p_t characteristic_buffer_stream_p = {
.read = bleio_characteristic_buffer_read,
.write = bleio_characteristic_buffer_write,
.ioctl = bleio_characteristic_buffer_ioctl,
.is_text = false,
// Match PySerial when possible, such as disallowing optional length argument for .readinto()
.pyserial_compatibility = true,
};
const mp_obj_type_t bleio_characteristic_buffer_type = {
{ &mp_type_type },
.name = MP_QSTR_CharacteristicBuffer,
.make_new = bleio_characteristic_buffer_make_new,
.getiter = mp_identity_getiter,
.iternext = mp_stream_unbuffered_iter,
.protocol = &characteristic_buffer_stream_p,
.locals_dict = (mp_obj_dict_t*)&bleio_characteristic_buffer_locals_dict
};

View File

@ -31,9 +31,12 @@
extern const mp_obj_type_t bleio_characteristic_buffer_type;
extern void common_hal_bleio_characteristic_buffer_construct(bleio_characteristic_buffer_obj_t *self, bleio_characteristic_obj_t *characteristic, size_t buffer_size);
// Returns a uint8_t byte value, or -1 if no data is available.
int common_hal_bleio_characteristic_buffer_read(bleio_characteristic_buffer_obj_t *self);
extern void common_hal_bleio_characteristic_buffer_construct(bleio_characteristic_buffer_obj_t *self, bleio_characteristic_obj_t *characteristic, mp_float_t timeout, size_t buffer_size);
int common_hal_bleio_characteristic_buffer_read(bleio_characteristic_buffer_obj_t *self, uint8_t *data, size_t len, int *errcode);
uint32_t common_hal_bleio_characteristic_buffer_rx_characters_available(bleio_characteristic_buffer_obj_t *self);
void common_hal_bleio_characteristic_buffer_clear_rx_buffer(bleio_characteristic_buffer_obj_t *self);
bool common_hal_bleio_characteristic_buffer_deinited(bleio_characteristic_buffer_obj_t *self);
int common_hal_bleio_characteristic_buffer_deinit(bleio_characteristic_buffer_obj_t *self);
bool common_hal_bleio_characteristic_buffer_connected(bleio_characteristic_buffer_obj_t *self);
#endif // MICROPY_INCLUDED_SHARED_BINDINGS_BLEIO_CHARACTERISTICBUFFER_H

View File

@ -70,20 +70,51 @@ STATIC mp_obj_t bleio_uuid_make_new(const mp_obj_type_t *type, size_t n_args, co
common_hal_bleio_uuid_construct(self, uuid16, NULL);
} else {
mp_buffer_info_t bufinfo;
if (!mp_get_buffer(value, &bufinfo, MP_BUFFER_READ)) {
mp_raise_ValueError(translate("UUID value is not int or byte buffer"));
if (MP_OBJ_IS_STR(value)) {
// 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'
GET_STR_DATA_LEN(value, chars, len);
char hex[32];
// Validate length, hyphens, and hex digits.
bool good_uuid =
len == 36 && chars[8] == '-' && chars[13] == '-' && chars[18] == '-' && chars[23] == '-';
if (good_uuid) {
size_t hex_idx = 0;
for (int i = 0; i < len; i++) {
if (unichar_isxdigit(chars[i])) {
hex[hex_idx] = chars[i];
hex_idx++;
}
}
good_uuid = hex_idx == 32;
}
if (!good_uuid) {
mp_raise_ValueError(translate("UUID string not 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'"));
}
size_t hex_idx = 0;
for (int i = 15; i >= 0; i--) {
uuid128[i] = (unichar_xdigit_value(hex[hex_idx]) << 4) | unichar_xdigit_value(hex[hex_idx + 1]);
hex_idx += 2;
}
} else {
// Last possibility is that it's a buf.
mp_buffer_info_t bufinfo;
if (!mp_get_buffer(value, &bufinfo, MP_BUFFER_READ)) {
mp_raise_ValueError(translate("UUID value is not str, int or byte buffer"));
}
if (bufinfo.len != 16) {
mp_raise_ValueError(translate("Byte buffer must be 16 bytes."));
}
memcpy(uuid128, bufinfo.buf, 16);
}
if (bufinfo.len != 16) {
mp_raise_ValueError(translate("Byte buffer must be 16 bytes."));
}
memcpy(uuid128, bufinfo.buf, 16);
// Str and bytes both get constructed the same way here.
uint32_t uuid16 = (uuid128[13] << 8) | uuid128[12];
uuid128[12] = 0;
uuid128[13] = 0;
common_hal_bleio_uuid_construct(self, uuid16, bufinfo.buf);
common_hal_bleio_uuid_construct(self, uuid16, uuid128);
}
return MP_OBJ_FROM_PTR(self);
@ -200,9 +231,32 @@ STATIC mp_obj_t bleio_uuid_binary_op(mp_binary_op_t op, mp_obj_t lhs_in, mp_obj_
}
}
void bleio_uuid_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) {
bleio_uuid_obj_t *self = MP_OBJ_TO_PTR(self_in);
uint32_t size = common_hal_bleio_uuid_get_size(self);
if (size == 16) {
mp_printf(print, "UUID(0x%04x)", common_hal_bleio_uuid_get_uuid16(self));
} else {
uint8_t uuid128[16];
(void) common_hal_bleio_uuid_get_uuid128(self, uuid128);
mp_printf(print, "UUID('"
"%02x%02x%02x%02x-"
"%02x%02x-"
"%02x%02x-"
"%02x%02x-"
"%02x%02x%02x%02x%02x%02x')",
uuid128[15], uuid128[14], uuid128[13], uuid128[12],
uuid128[11], uuid128[10],
uuid128[9], uuid128[8],
uuid128[7], uuid128[6],
uuid128[5], uuid128[4], uuid128[3], uuid128[2], uuid128[1], uuid128[0]);
}
}
const mp_obj_type_t bleio_uuid_type = {
{ &mp_type_type },
.name = MP_QSTR_UUID,
.print = bleio_uuid_print,
.make_new = bleio_uuid_make_new,
.unary_op = bleio_uuid_unary_op,
.binary_op = bleio_uuid_binary_op,

View File

@ -62,7 +62,7 @@
//|
//| *New in CircuitPython 4.0:* ``timeout`` has incompatibly changed units from milliseconds to seconds.
//| The new upper limit on ``timeout`` is meant to catch mistaken use of milliseconds.
//|
typedef struct {
mp_obj_base_t base;
} busio_uart_parity_obj_t;
@ -172,7 +172,7 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(busio_uart___exit___obj, 4, 4, busio_
//| Read bytes into the ``buf``. Read at most ``len(buf)`` bytes.
//|
//| :return: number of bytes read and stored into ``buf``
//| :rtype: bytes or None
//| :rtype: int or None (on a non-blocking error)
//|
//| *New in CircuitPython 4.0:* No length parameter is permitted.