Merge branch 'main' into msgpack

This commit is contained in:
iot49 2021-01-05 11:19:11 -08:00 committed by GitHub
commit 1a82555803
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
176 changed files with 4566 additions and 1206 deletions

View File

@ -35,6 +35,7 @@ jobs:
python-version: 3.8
- name: Install deps
run: |
sudo apt-get update
sudo apt-get install -y eatmydata
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64 latexmk texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli mypy
@ -42,6 +43,32 @@ jobs:
run: |
gcc --version
python3 --version
- name: Translations
run: make check-translate
- name: New boards check
run: python3 -u ci_new_boards_check.py
working-directory: tools
- name: Duplicate USB VID/PID Check
run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid
- name: Build and Validate Stubs
run: make check-stubs -j2
- uses: actions/upload-artifact@v2
with:
name: stubs
path: circuitpython-stubs*
- name: Test Documentation Build (HTML)
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/html
- name: Test Documentation Build (LaTeX/PDF)
run: |
make latexpdf
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/latex
- name: Build mpy-cross
run: make -C mpy-cross -j2
- name: Build unix port
@ -67,32 +94,6 @@ jobs:
- name: mpy Tests
run: MICROPY_CPYTHON3=python3.8 MICROPY_MICROPYTHON=../ports/unix/micropython_coverage ./run-tests -j1 --via-mpy -d basics float
working-directory: tests
- name: Build and Validate Stubs
run: make check-stubs -j2
- uses: actions/upload-artifact@v2
with:
name: stubs
path: circuitpython-stubs*
- name: Test Documentation Build (HTML)
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/html
- name: Test Documentation Build (LaTeX/PDF)
run: |
make latexpdf
- uses: actions/upload-artifact@v2
with:
name: docs
path: _build/latex
- name: Translations
run: make check-translate
- name: New boards check
run: python3 -u ci_new_boards_check.py
working-directory: tools
- name: Duplicate USB VID/PID Check
run: python3 -u -m tools.ci_check_duplicate_usb_vid_pid
- name: Build mpy-cross.static-raspbian
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
- uses: actions/upload-artifact@v2
@ -184,6 +185,7 @@ jobs:
- "arduino_nano_33_iot"
- "arduino_zero"
- "bast_pro_mini_m0"
- "bastble"
- "bdmicro_vina_d21"
- "bdmicro_vina_d51"
- "bless_dev_board_multi_sensor"
@ -310,6 +312,7 @@ jobs:
- "sparkfun_samd21_mini"
- "sparkfun_samd51_thing_plus"
- "spresense"
- "stackrduino_m0_pro"
- "stm32f411ce_blackpill"
- "stm32f411ve_discovery"
- "stm32f412zg_discovery"
@ -342,8 +345,8 @@ jobs:
run: |
sudo apt-get install -y gettext
pip install requests sh click setuptools awscli
wget https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
wget --no-verbose https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
- name: Versions
run: |
gcc --version

2
.gitmodules vendored
View File

@ -152,7 +152,7 @@
url = https://github.com/adafruit/Adafruit_CircuitPython_RFM69.git
[submodule "ports/esp32s2/esp-idf"]
path = ports/esp32s2/esp-idf
url = https://github.com/jepler/esp-idf.git
url = https://github.com/adafruit/esp-idf.git
[submodule "ports/esp32s2/certificates/nina-fw"]
path = ports/esp32s2/certificates/nina-fw
url = https://github.com/adafruit/nina-fw.git

View File

@ -61,7 +61,7 @@ STATIC struct {
typedef struct __packed {
uint8_t properties;
uint16_t value_handle;
uint8_t uuid[0]; // 2 or 16 bytes
uint8_t uuid[]; // 2 or 16 bytes
} characteristic_declaration_t;
STATIC uint8_t bleio_properties_to_ble_spec_properties(uint8_t bleio_properties) {
@ -1010,21 +1010,22 @@ void process_read_group_req(uint16_t conn_handle, uint16_t mtu, uint8_t dlen, ui
}
int att_read_group_req(uint16_t conn_handle, uint16_t start_handle, uint16_t end_handle, uint16_t uuid, uint8_t response_buffer[]) {
struct __packed {
typedef struct __packed {
struct bt_att_hdr h;
struct bt_att_read_group_req r;
} req = { {
.code = BT_ATT_OP_READ_GROUP_REQ,
}, {
.start_handle = start_handle,
.end_handle = end_handle,
}
};
req.r.uuid[0] = uuid & 0xff;
req.r.uuid[1] = uuid >> 8;
} req_t;
uint8_t req_bytes[sizeof(req_t) + sizeof(uuid)];
req_t *req = (req_t *) req_bytes;
return send_req_wait_for_rsp(conn_handle, sizeof(req), (uint8_t *) &req, response_buffer);
req->h.code = BT_ATT_OP_READ_GROUP_REQ;
req->r.start_handle = start_handle;
req->r.end_handle = end_handle;
req->r.uuid[0] = uuid & 0xff;
req->r.uuid[1] = uuid >> 8;
return send_req_wait_for_rsp(conn_handle, sizeof(req_bytes), req_bytes, response_buffer);
}
STATIC void process_read_group_rsp(uint16_t conn_handle, uint8_t dlen, uint8_t data[]) {
@ -1305,20 +1306,21 @@ STATIC void process_read_type_req(uint16_t conn_handle, uint16_t mtu, uint8_t dl
}
int att_read_type_req(uint16_t conn_handle, uint16_t start_handle, uint16_t end_handle, uint16_t type, uint8_t response_buffer[]) {
struct __packed {
typedef struct __packed {
struct bt_att_hdr h;
struct bt_att_read_type_req r;
} req = { {
.code = BT_ATT_OP_READ_TYPE_REQ,
}, {
.start_handle = start_handle,
.end_handle = end_handle,
}
};
req.r.uuid[0] = type & 0xff;
req.r.uuid[1] = type >> 8;
} req_t;
return send_req_wait_for_rsp(conn_handle, sizeof(req), (uint8_t *) &req, response_buffer);
uint8_t req_bytes[sizeof(req_t) + sizeof(type)];
req_t *req = (req_t *) req_bytes;
req->h.code = BT_ATT_OP_READ_TYPE_REQ;
req->r.start_handle = start_handle;
req->r.end_handle = end_handle;
req->r.uuid[0] = type & 0xff;
req->r.uuid[1] = type >> 8;
return send_req_wait_for_rsp(conn_handle, sizeof(req_bytes), req_bytes, response_buffer);
}
STATIC void process_read_type_rsp(uint16_t conn_handle, uint8_t dlen, uint8_t data[]) {

View File

@ -69,7 +69,7 @@ struct bt_att_info_128 {
#define BT_ATT_OP_FIND_INFO_RSP 0x05
struct bt_att_find_info_rsp {
uint8_t format;
uint8_t info[0];
uint8_t info[];
} __packed;
/* Find By Type Value Request */
@ -78,7 +78,7 @@ struct bt_att_find_type_req {
uint16_t start_handle;
uint16_t end_handle;
uint16_t type;
uint8_t value[0];
uint8_t value[];
} __packed;
struct bt_att_handle_group {
@ -89,7 +89,8 @@ struct bt_att_handle_group {
/* Find By Type Value Response */
#define BT_ATT_OP_FIND_TYPE_RSP 0x07
struct bt_att_find_type_rsp {
struct bt_att_handle_group list[0];
uint8_t _dummy[0];
struct bt_att_handle_group list[];
} __packed;
/* Read By Type Request */
@ -97,19 +98,19 @@ struct bt_att_find_type_rsp {
struct bt_att_read_type_req {
uint16_t start_handle;
uint16_t end_handle;
uint8_t uuid[0];
uint8_t uuid[];
} __packed;
struct bt_att_data {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Read By Type Response */
#define BT_ATT_OP_READ_TYPE_RSP 0x09
struct bt_att_read_type_rsp {
uint8_t len;
struct bt_att_data data[0];
struct bt_att_data data[];
} __packed;
/* Read Request */
@ -121,7 +122,8 @@ struct bt_att_read_req {
/* Read Response */
#define BT_ATT_OP_READ_RSP 0x0b
struct bt_att_read_rsp {
uint8_t value[0];
uint8_t _dummy[0];
uint8_t value[];
} __packed;
/* Read Blob Request */
@ -134,7 +136,8 @@ struct bt_att_read_blob_req {
/* Read Blob Response */
#define BT_ATT_OP_READ_BLOB_RSP 0x0d
struct bt_att_read_blob_rsp {
uint8_t value[0];
uint8_t _dummy[0];
uint8_t value[];
} __packed;
/* Read Multiple Request */
@ -142,13 +145,15 @@ struct bt_att_read_blob_rsp {
#define BT_ATT_OP_READ_MULT_REQ 0x0e
struct bt_att_read_mult_req {
uint16_t handles[0];
uint8_t _dummy[0];
uint16_t handles[];
} __packed;
/* Read Multiple Respose */
#define BT_ATT_OP_READ_MULT_RSP 0x0f
struct bt_att_read_mult_rsp {
uint8_t value[0];
uint8_t _dummy[0];
uint8_t value[];
} __packed;
/* Read by Group Type Request */
@ -156,27 +161,27 @@ struct bt_att_read_mult_rsp {
struct bt_att_read_group_req {
uint16_t start_handle;
uint16_t end_handle;
uint8_t uuid[0];
uint8_t uuid[];
} __packed;
struct bt_att_group_data {
uint16_t start_handle;
uint16_t end_handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Read by Group Type Response */
#define BT_ATT_OP_READ_GROUP_RSP 0x11
struct bt_att_read_group_rsp {
uint8_t len;
struct bt_att_group_data data[0];
struct bt_att_group_data data[];
} __packed;
/* Write Request */
#define BT_ATT_OP_WRITE_REQ 0x12
struct bt_att_write_req {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Write Response */
@ -187,7 +192,7 @@ struct bt_att_write_req {
struct bt_att_prepare_write_req {
uint16_t handle;
uint16_t offset;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Prepare Write Respond */
@ -195,7 +200,7 @@ struct bt_att_prepare_write_req {
struct bt_att_prepare_write_rsp {
uint16_t handle;
uint16_t offset;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Execute Write Request */
@ -214,14 +219,14 @@ struct bt_att_exec_write_req {
#define BT_ATT_OP_NOTIFY 0x1b
struct bt_att_notify {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Handle Value Indication */
#define BT_ATT_OP_INDICATE 0x1d
struct bt_att_indicate {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Handle Value Confirm */
@ -233,14 +238,15 @@ struct bt_att_signature {
#define BT_ATT_OP_READ_MULT_VL_REQ 0x20
struct bt_att_read_mult_vl_req {
uint16_t handles[0];
uint8_t _dummy[0];
uint16_t handles[];
} __packed;
/* Read Multiple Respose */
#define BT_ATT_OP_READ_MULT_VL_RSP 0x21
struct bt_att_read_mult_vl_rsp {
uint16_t len;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Handle Multiple Value Notification */
@ -248,19 +254,19 @@ struct bt_att_read_mult_vl_rsp {
struct bt_att_notify_mult {
uint16_t handle;
uint16_t len;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Write Command */
#define BT_ATT_OP_WRITE_CMD 0x52
struct bt_att_write_cmd {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;
/* Signed Write Command */
#define BT_ATT_OP_SIGNED_WRITE_CMD 0xd2
struct bt_att_signed_write_cmd {
uint16_t handle;
uint8_t value[0];
uint8_t value[];
} __packed;

View File

@ -454,7 +454,7 @@ struct bt_hci_handle_count {
#define BT_HCI_OP_HOST_NUM_COMPLETED_PACKETS BT_OP(BT_OGF_BASEBAND, 0x0035)
struct bt_hci_cp_host_num_completed_packets {
uint8_t num_handles;
struct bt_hci_handle_count h[0];
struct bt_hci_handle_count h[];
} __packed;
#define BT_HCI_OP_WRITE_INQUIRY_MODE BT_OP(BT_OGF_BASEBAND, 0x0045)
@ -1099,7 +1099,7 @@ struct bt_hci_ext_adv_set {
struct bt_hci_cp_le_set_ext_adv_enable {
uint8_t enable;
uint8_t set_num;
struct bt_hci_ext_adv_set s[0];
struct bt_hci_ext_adv_set s[];
} __packed;
#define BT_HCI_OP_LE_READ_MAX_ADV_DATA_LEN BT_OP(BT_OGF_LE, 0x003a)
@ -1158,7 +1158,7 @@ struct bt_hci_cp_le_set_ext_scan_param {
uint8_t own_addr_type;
uint8_t filter_policy;
uint8_t phys;
struct bt_hci_ext_scan_phy p[0];
struct bt_hci_ext_scan_phy p[];
} __packed;
/* Extends BT_HCI_LE_SCAN_FILTER_DUP */
@ -1189,7 +1189,7 @@ struct bt_hci_cp_le_ext_create_conn {
uint8_t own_addr_type;
bt_addr_le_t peer_addr;
uint8_t phys;
struct bt_hci_ext_conn_phy p[0];
struct bt_hci_ext_conn_phy p[];
} __packed;
#define BT_HCI_OP_LE_PER_ADV_CREATE_SYNC BT_OP(BT_OGF_LE, 0x0044)
@ -1354,7 +1354,7 @@ struct bt_hci_evt_role_change {
#define BT_HCI_EVT_NUM_COMPLETED_PACKETS 0x13
struct bt_hci_evt_num_completed_packets {
uint8_t num_handles;
struct bt_hci_handle_count h[0];
struct bt_hci_handle_count h[];
} __packed;
#define BT_HCI_EVT_PIN_CODE_REQ 0x16
@ -1510,11 +1510,11 @@ struct bt_hci_evt_le_advertising_info {
uint8_t evt_type;
bt_addr_le_t addr;
uint8_t length;
uint8_t data[0];
uint8_t data[];
} __packed;
struct bt_hci_evt_le_advertising_report {
uint8_t num_reports;
struct bt_hci_evt_le_advertising_info adv_info[0];
struct bt_hci_evt_le_advertising_info adv_info[];
} __packed;
#define BT_HCI_EVT_LE_CONN_UPDATE_COMPLETE 0x03
@ -1593,7 +1593,7 @@ struct bt_hci_evt_le_direct_adv_info {
} __packed;
struct bt_hci_evt_le_direct_adv_report {
uint8_t num_reports;
struct bt_hci_evt_le_direct_adv_info direct_adv_info[0];
struct bt_hci_evt_le_direct_adv_info direct_adv_info[];
} __packed;
#define BT_HCI_EVT_LE_PHY_UPDATE_COMPLETE 0x0c
@ -1628,11 +1628,11 @@ struct bt_hci_evt_le_ext_advertising_info {
uint16_t interval;
bt_addr_le_t direct_addr;
uint8_t length;
uint8_t data[0];
uint8_t data[];
} __packed;
struct bt_hci_evt_le_ext_advertising_report {
uint8_t num_reports;
struct bt_hci_evt_le_ext_advertising_info adv_info[0];
struct bt_hci_evt_le_ext_advertising_info adv_info[];
} __packed;
#define BT_HCI_EVT_LE_PER_ADV_SYNC_ESTABLISHED 0x0e
@ -1654,7 +1654,7 @@ struct bt_hci_evt_le_per_advertising_report {
uint8_t unused;
uint8_t data_status;
uint8_t length;
uint8_t data[0];
uint8_t data[];
} __packed;
#define BT_HCI_EVT_LE_PER_ADV_SYNC_LOST 0x10

View File

@ -104,7 +104,7 @@ struct bt_hci_cp_vs_set_trace_enable {
#define BT_HCI_OP_VS_READ_BUILD_INFO BT_OP(BT_OGF_VS, 0x0008)
struct bt_hci_rp_vs_read_build_info {
uint8_t status;
uint8_t info[0];
uint8_t info[];
} __packed;
struct bt_hci_vs_static_addr {
@ -116,7 +116,7 @@ struct bt_hci_vs_static_addr {
struct bt_hci_rp_vs_read_static_addrs {
uint8_t status;
uint8_t num_addrs;
struct bt_hci_vs_static_addr a[0];
struct bt_hci_vs_static_addr a[];
} __packed;
#define BT_HCI_OP_VS_READ_KEY_HIERARCHY_ROOTS BT_OP(BT_OGF_VS, 0x000a)
@ -143,7 +143,7 @@ struct bt_hci_vs_cmd {
struct bt_hci_rp_vs_read_host_stack_cmds {
uint8_t status;
uint8_t num_cmds;
struct bt_hci_vs_cmd c[0];
struct bt_hci_vs_cmd c[];
} __packed;
#define BT_HCI_VS_SCAN_REQ_REPORTS_DISABLED 0x00
@ -189,7 +189,7 @@ struct bt_hci_rp_vs_read_tx_power_level {
struct bt_hci_rp_vs_read_usb_transport_mode {
uint8_t status;
uint8_t num_supported_modes;
uint8_t supported_mode[0];
uint8_t supported_mode[];
} __packed;
#define BT_HCI_VS_USB_H2_MODE 0x00
@ -210,7 +210,7 @@ struct bt_hci_evt_vs {
#define BT_HCI_EVT_VS_FATAL_ERROR 0x02
struct bt_hci_evt_vs_fatal_error {
uint64_t pc;
uint8_t err_info[0];
uint8_t err_info[];
} __packed;
#define BT_HCI_VS_TRACE_LMP_TX 0x01
@ -221,7 +221,7 @@ struct bt_hci_evt_vs_fatal_error {
#define BT_HCI_EVT_VS_TRACE_INFO 0x03
struct bt_hci_evt_vs_trace_info {
uint8_t type;
uint8_t data[0];
uint8_t data[];
} __packed;
#define BT_HCI_EVT_VS_SCAN_REQ_RX 0x04
@ -267,14 +267,14 @@ struct bt_hci_rp_mesh_get_opts {
#define BT_HCI_OC_MESH_SET_SCAN_FILTER 0x01
struct bt_hci_mesh_pattern {
uint8_t pattern_len;
uint8_t pattern[0];
uint8_t pattern[];
} __packed;
struct bt_hci_cp_mesh_set_scan_filter {
uint8_t scan_filter;
uint8_t filter_dup;
uint8_t num_patterns;
struct bt_hci_mesh_pattern patterns[0];
struct bt_hci_mesh_pattern patterns[];
} __packed;
struct bt_hci_rp_mesh_set_scan_filter {
uint8_t status;
@ -365,11 +365,11 @@ struct bt_hci_evt_mesh_scan_report {
int8_t rssi;
uint32_t instant;
uint8_t data_len;
uint8_t data[0];
uint8_t data[];
} __packed;
struct bt_hci_evt_mesh_scanning_report {
uint8_t num_reports;
struct bt_hci_evt_mesh_scan_report reports[0];
struct bt_hci_evt_mesh_scan_report reports[];
} __packed;
#ifdef __cplusplus

View File

@ -45,7 +45,7 @@ struct bt_l2cap_sig_hdr {
#define BT_L2CAP_CMD_REJECT 0x01
struct bt_l2cap_cmd_reject {
uint16_t reason;
uint8_t data[0];
uint8_t data[];
} __packed;
struct bt_l2cap_cmd_reject_cid_data {
@ -88,7 +88,7 @@ struct bt_l2cap_conn_rsp {
struct bt_l2cap_conf_req {
uint16_t dcid;
uint16_t flags;
uint8_t data[0];
uint8_t data[];
} __packed;
#define BT_L2CAP_CONF_RSP 0x05
@ -96,7 +96,7 @@ struct bt_l2cap_conf_rsp {
uint16_t scid;
uint16_t flags;
uint16_t result;
uint8_t data[0];
uint8_t data[];
} __packed;
/* Option type used by MTU config request data */
@ -108,7 +108,7 @@ struct bt_l2cap_conf_rsp {
struct bt_l2cap_conf_opt {
uint8_t type;
uint8_t len;
uint8_t data[0];
uint8_t data[];
} __packed;
#define BT_L2CAP_DISCONN_REQ 0x06
@ -139,7 +139,7 @@ struct bt_l2cap_info_req {
struct bt_l2cap_info_rsp {
uint16_t type;
uint16_t result;
uint8_t data[0];
uint8_t data[];
} __packed;
#define BT_L2CAP_CONN_PARAM_REQ 0x12
@ -201,7 +201,7 @@ struct bt_l2cap_ecred_conn_req {
uint16_t mtu;
uint16_t mps;
uint16_t credits;
uint16_t scid[0];
uint16_t scid[];
} __packed;
#define BT_L2CAP_ECRED_CONN_RSP 0x18
@ -210,14 +210,14 @@ struct bt_l2cap_ecred_conn_rsp {
uint16_t mps;
uint16_t credits;
uint16_t result;
uint16_t dcid[0];
uint16_t dcid[];
} __packed;
#define BT_L2CAP_ECRED_RECONF_REQ 0x19
struct bt_l2cap_ecred_reconf_req {
uint16_t mtu;
uint16_t mps;
uint16_t scid[0];
uint16_t scid[];
} __packed;
#define BT_L2CAP_RECONF_SUCCESS 0x0000

@ -1 +1 @@
Subproject commit aa7e741530df471d206a4a321823a37a913a0eb8
Subproject commit c4b06e419f3d515478b05bb8ce03ebdb29cddec4

@ -1 +1 @@
Subproject commit 41f7a3530d4cacdbf668399d3a015ea29c7e169b
Subproject commit 8bb1210eebed4846dae7e76ff1db86a010b132bc

@ -1 +1 @@
Subproject commit 209edd164eb640a8ced561a54505792fc99a67b9
Subproject commit ce30b04a3c8e557d48a0607ddcb25272b196a433

@ -1 +1 @@
Subproject commit 5d81a9ea822a85e46be4a512ac44abf21e77d816
Subproject commit 4f5dc66d50e43ca8d413ab0d86c125a7a13d394f

@ -1 +1 @@
Subproject commit 01f3f6674b4493ba29b857e0f43deb69975736ec
Subproject commit fce466bd2bb70ca86b79e5cb36bbaca00afacfd1

@ -1 +1 @@
Subproject commit 9fe8f314c032cee89b9ad7697d61e9cba76431ff
Subproject commit bea5d4a347aeece71a421ee292551264e3bf7ae2

@ -1 +1 @@
Subproject commit f1cc47f024b27e670b9bf2a51c89e32f93c1b957
Subproject commit fee951908cc5f1ba7db5edd2537fade09d626730

@ -1 +1 @@
Subproject commit 434e5b5346cb0a1a9eb15989b00278be87cb2ff1
Subproject commit 608291801ce7112b280d32518de79993cc80963a

@ -1 +1 @@
Subproject commit cfffc233784961929d722ea4e9acfe5786790609
Subproject commit 4696e07638eff28392b57162d2a70e20473e97b7

@ -1 +1 @@
Subproject commit 6143ec2a96a6d218041e9cab5968de26702d7bbf
Subproject commit dd7cc167c528a94a9feed81f9c52b5d372f68258

@ -1 +1 @@
Subproject commit 53902152c674b0ba31536b50291f7ddd28960f47
Subproject commit c070f6e8dbc37757cbcb444269c6cd6a4b676647

@ -1 +1 @@
Subproject commit 88738da275a83acabb14b7140d1c79b33cdc7b02
Subproject commit 9d91ec849efb5fbc3d26d350a75a61f15d19bc48

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-10-10 23:51+0000\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-30 22:25+0000\n"
"Last-Translator: oon arfiandwi <oon.arfiandwi@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: ID\n"
@ -14,15 +14,21 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.3-dev\n"
"X-Generator: Weblate 4.4.1-dev\n"
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
"\n"
"Kode selesai berjalan. Menunggu memuat ulang.\n"
"Kode selesai beroperasi.\n"
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -58,7 +64,7 @@ msgstr "pin alamat %d dan pin rgb %d menunjukkan tinggi %d, bukan %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
msgstr "%q gagal: %d"
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
@ -74,7 +80,7 @@ msgstr "%q indeks di luar batas"
#: py/obj.c
msgid "%q indices must be integers, not %q"
msgstr ""
msgstr "%q indeks harus bilangan bulat, bukan %q"
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -82,7 +88,7 @@ msgstr "daftar %q harus berupa daftar"
#: shared-bindings/memorymonitor/AllocationAlarm.c
msgid "%q must be >= 0"
msgstr ""
msgstr "%q harus >= 0"
#: shared-bindings/_bleio/CharacteristicBuffer.c
#: shared-bindings/_bleio/PacketBuffer.c shared-bindings/displayio/Group.c
@ -98,7 +104,7 @@ msgstr "%q harus berupa tuple dengan panjang 2"
#: shared-bindings/canio/Match.c
msgid "%q out of range"
msgstr ""
msgstr "%q di luar jangkauan"
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
msgid "%q pin invalid"
@ -122,23 +128,23 @@ msgstr ""
#: py/proto.c
msgid "'%q' object does not support '%q'"
msgstr ""
msgstr "Objek '%q' tidak mendukung '%q'"
#: py/obj.c
msgid "'%q' object does not support item assignment"
msgstr ""
msgstr "Objek '%q' tidak mendukung penugasan item"
#: py/obj.c
msgid "'%q' object does not support item deletion"
msgstr ""
msgstr "Objek '%q' tidak mendukung penghapusan item"
#: py/runtime.c
msgid "'%q' object has no attribute '%q'"
msgstr ""
msgstr "Objek '%q' tidak memiliki atribut '%q'"
#: py/runtime.c
msgid "'%q' object is not an iterator"
msgstr ""
msgstr "Objek '%q' bukan merupakan iterator"
#: py/objtype.c py/runtime.c
msgid "'%q' object is not callable"
@ -146,7 +152,7 @@ msgstr ""
#: py/runtime.c
msgid "'%q' object is not iterable"
msgstr ""
msgstr "Objek '%q' tidak dapat diulang"
#: py/obj.c
msgid "'%q' object is not subscriptable"
@ -220,7 +226,7 @@ msgstr "'await' diluar fungsi"
#: py/compile.c
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
msgstr "'await', 'async for' atau 'async with' di luar fungsi async"
#: py/compile.c
msgid "'break' outside loop"
@ -252,7 +258,7 @@ msgstr "'return' diluar fungsi"
#: py/compile.c
msgid "'yield from' inside async function"
msgstr ""
msgstr "'yield from' di dalam fungsi async"
#: py/compile.c
msgid "'yield' outside function"
@ -281,7 +287,7 @@ msgstr "Sebuah channel hardware interrupt sedang digunakan"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "ADC2 is being used by WiFi"
msgstr ""
msgstr "ADC2 sedang digunakan oleh WiFi"
#: shared-bindings/_bleio/Address.c shared-bindings/ipaddress/IPv4Address.c
#, c-format
@ -304,13 +310,13 @@ msgstr "Semua perangkat I2C sedang digunakan"
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
msgstr "Semua unit PCNT sedang digunakan"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/esp32s2/common-hal/canio/Listener.c
#: ports/stm/common-hal/canio/Listener.c
msgid "All RX FIFOs in use"
msgstr ""
msgstr "Semua RX FIFO sedang digunakan"
#: ports/esp32s2/common-hal/busio/SPI.c ports/nrf/common-hal/busio/SPI.c
msgid "All SPI peripherals are in use"
@ -392,7 +398,7 @@ msgstr "Send yang lain sudah aktif"
msgid "Array must contain halfwords (type 'H')"
msgstr "Array harus mengandung halfwords (ketik 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Nilai array harus berupa byte tunggal."
@ -504,8 +510,8 @@ msgstr "Panjang buffer harus kelipatan 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Penyangga harus memiliki panjang setidaknya 1"
@ -528,7 +534,7 @@ msgstr "Pin bus %d sudah digunakan"
msgid "Byte buffer must be 16 bytes."
msgstr "Byte buffer harus 16 byte."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Bytes harus di antara 0 dan 255."
@ -540,6 +546,18 @@ msgstr "Blok CBC harus merupakan kelipatan 16 byte"
msgid "Call super().__init__() before accessing native object."
msgstr "Panggil super().__init__() sebelum mengakses objek asli."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "Tidak dapat mengatur CCCD pada Karakteristik lokal"
@ -576,6 +594,10 @@ msgstr ""
"Tidak dapat menggunakan output di kedua channel dengan menggunakan pin yang "
"sama"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Tidak dapat membaca tanpa pin MISO."
@ -623,6 +645,10 @@ msgstr ""
"Tidak dapat membuat variasi frekuensi pada penghitung waktu yang sudah "
"digunakan"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Tidak dapat menulis tanpa pin MOSI."
@ -954,6 +980,10 @@ msgstr "File sudah ada"
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -963,11 +993,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
"Frekuensi yang ditangkap berada di atas kemampuan. Penangkapan Ditunda."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr "Frekuensi harus cocok dengan PWMOut yang ada menggunakan timer ini"
@ -1101,6 +1126,10 @@ msgstr "Pin DAC yang diberikan tidak valid"
msgid "Invalid PWM frequency"
msgstr "Frekuensi PWM tidak valid"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumen tidak valid"
@ -1161,6 +1190,7 @@ msgstr "Fase tidak valid"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1317,7 +1347,7 @@ msgstr "Tidak ada DAC (Digital Analog Converter) di dalam chip"
msgid "No DMA channel found"
msgstr "tidak ada channel DMA ditemukan"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1481,10 +1511,14 @@ msgstr ""
"Hanya monokrom, 4bpp atau 8bpp yang diindeks, dan 16bpp atau lebih yang "
"didukung: %d bpp diberikan"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1532,6 +1566,7 @@ msgstr "Izin ditolak"
msgid "Pin does not have ADC capabilities"
msgstr "Pin tidak mempunya kemampuan untuk ADC (Analog Digital Converter)"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1544,10 +1579,6 @@ msgstr "Pin harus mendukung interupsi perangkat keras"
msgid "Pin number already reserved by EXTI"
msgstr "Nomor pin sudah dipesan oleh EXTI"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1587,10 +1618,12 @@ msgid "Prefix buffer must be on the heap"
msgstr "Buffer awalan harus ada di heap"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Tekan tombol apa saja untuk masuk ke dalam REPL. Gunakan CTRL+D untuk reset "
"(Reload)"
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1726,7 +1759,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Potongan dan nilai panjangnya berbeda."
@ -1799,18 +1832,21 @@ msgid ""
"enough power for the whole circuit and press reset (after ejecting "
"CIRCUITPY).\n"
msgstr ""
"Kekuatan mikrokontroler menurun. Pastikan catu daya Anda menyediakan\n"
"daya yang cukup untuk seluruh rangkaian dan tekan reset (setelah "
"mengeluarkan CIRCUITPY).\n"
#: shared-module/audiomixer/MixerVoice.c
msgid "The sample's bits_per_sample does not match the mixer's"
msgstr ""
msgstr "Sampel bits_per_sampel tidak cocok dengan mixer"
#: shared-module/audiomixer/MixerVoice.c
msgid "The sample's channel count does not match the mixer's"
msgstr ""
msgstr "Jumlah saluran sampel tidak cocok dengan mixer"
#: shared-module/audiomixer/MixerVoice.c
msgid "The sample's sample rate does not match the mixer's"
msgstr ""
msgstr "Tingkat sampel dari sampel tidak cocok dengan mixer"
#: shared-module/audiomixer/MixerVoice.c
msgid "The sample's signedness does not match the mixer's"
@ -1822,15 +1858,15 @@ msgstr ""
#: shared-bindings/displayio/TileGrid.c shared-module/displayio/TileGrid.c
msgid "Tile index out of bounds"
msgstr ""
msgstr "Indeks ubin di luar batas"
#: shared-bindings/displayio/TileGrid.c
msgid "Tile value out of bounds"
msgstr ""
msgstr "Nilai ubin di luar batas"
#: shared-bindings/displayio/TileGrid.c
msgid "Tile width must exactly divide bitmap width"
msgstr ""
msgstr "Lebar ubin harus persis membagi lebar bitmap"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Time is in the past."
@ -1856,15 +1892,20 @@ msgstr "Terlalu banyak channel dalam sampel"
#: shared-module/displayio/__init__.c
msgid "Too many display busses"
msgstr ""
msgstr "Terlalu banyak tampilan bus"
#: shared-module/displayio/__init__.c
msgid "Too many displays"
msgstr ""
msgstr "Terlalu banyak tampilan"
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
"Total data yang akan ditulis lebih besar daripada outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
@ -1872,35 +1913,35 @@ msgstr ""
#: shared-bindings/time/__init__.c
msgid "Tuple or struct_time argument required"
msgstr ""
msgstr "Diperlukan argumen Tuple atau struct_time"
#: ports/stm/common-hal/busio/UART.c
msgid "UART Buffer allocation error"
msgstr ""
msgstr "Kesalahan alokasi Buffer UART"
#: ports/stm/common-hal/busio/UART.c
msgid "UART De-init error"
msgstr ""
msgstr "Kesalahan UART De-init"
#: ports/stm/common-hal/busio/UART.c
msgid "UART Init Error"
msgstr ""
msgstr "Kesalahan Init UART"
#: ports/stm/common-hal/busio/UART.c
msgid "UART Re-init error"
msgstr ""
msgstr "Kesalahan Re-init UART"
#: ports/stm/common-hal/busio/UART.c
msgid "UART write error"
msgstr ""
msgstr "Kesalahan penulisan UART"
#: shared-module/usb_hid/Device.c
msgid "USB Busy"
msgstr ""
msgstr "USB Sibuk"
#: shared-module/usb_hid/Device.c
msgid "USB Error"
msgstr ""
msgstr "Kesalahan USB"
#: shared-bindings/_bleio/UUID.c
msgid "UUID integer value must be 0-0xffff"
@ -1945,6 +1986,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -2010,6 +2055,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2072,6 +2121,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2154,7 +2207,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -3030,7 +3084,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3168,6 +3222,14 @@ msgstr "non-keyword arg setelah */**"
msgid "non-keyword arg after keyword arg"
msgstr "non-keyword arg setelah keyword arg"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3240,6 +3302,10 @@ msgstr "panjang data string memiliki keganjilan (odd-length)"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
#, fuzzy
msgid "offset out of bounds"
@ -3254,7 +3320,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3586,6 +3652,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#, fuzzy
msgid "timeout must be >= 0.0"
@ -3846,6 +3916,22 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Kode selesai berjalan. Menunggu memuat ulang.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr ""
#~ "Frekuensi yang ditangkap berada di atas kemampuan. Penangkapan Ditunda."
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Tekan tombol apa saja untuk masuk ke dalam REPL. Gunakan CTRL+D untuk "
#~ "reset (Reload)"
#~ msgid ""
#~ "\n"
#~ "To exit, please reset the board without "

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-05 11:08-0800\n"
"POT-Creation-Date: 2021-01-04 12:55-0600\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"
@ -20,7 +20,13 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
@ -392,7 +398,7 @@ msgstr ""
msgid "Array must contain halfwords (type 'H')"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr ""
@ -526,7 +532,7 @@ msgstr ""
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr ""
@ -538,6 +544,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -570,6 +588,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr ""
@ -613,6 +635,10 @@ msgstr ""
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr ""
@ -940,6 +966,10 @@ msgstr ""
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -949,10 +979,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1084,6 +1110,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1144,6 +1174,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1458,10 +1489,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1520,10 +1555,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1564,7 +1595,7 @@ msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, any key or file write.\n"
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
@ -1700,7 +1731,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1915,6 +1946,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -1979,6 +2014,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2121,7 +2160,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -2466,6 +2506,10 @@ msgstr ""
msgid "data must be of equal length"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "data type not understood"
msgstr ""
#: py/parsenum.c
msgid "decimal numbers not supported"
msgstr ""
@ -2784,7 +2828,7 @@ msgid "input and output shapes are not compatible"
msgstr ""
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
msgid "input argument must be an integer, a tuple, or a list"
msgstr ""
#: extmod/ulab/code/fft/fft.c
@ -3008,7 +3052,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3027,6 +3071,10 @@ msgstr ""
msgid "maxiter should be > 0"
msgstr ""
#: extmod/ulab/code/numerical/numerical.c
msgid "median argument must be an ndarray"
msgstr ""
#: py/runtime.c
#, c-format
msgid "memory allocation failed, allocating %u bytes"
@ -3150,6 +3198,14 @@ msgstr ""
msgid "non-keyword arg after keyword arg"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3222,6 +3278,10 @@ msgstr ""
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3235,7 +3295,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3248,10 +3308,6 @@ msgstr ""
msgid "operation is implemented for 1D Boolean arrays only"
msgstr ""
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented for flattened array"
msgstr ""
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
msgstr ""
@ -3571,6 +3627,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr ""
@ -3595,6 +3655,10 @@ msgstr ""
msgid "too many arguments provided with the given format"
msgstr ""
#: extmod/ulab/code/ulab_create.c
msgid "too many dimensions"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "too many indices"
msgstr ""
@ -3604,6 +3668,10 @@ msgstr ""
msgid "too many values to unpack (expected %d)"
msgstr ""
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays"
msgstr ""
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
@ -3612,10 +3680,6 @@ msgstr ""
msgid "trigger level must be 0 or 1"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
msgstr ""
#: py/obj.c
msgid "tuple/list has wrong length"
msgstr ""

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-12-02 20:29+0000\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-04 18:33+0000\n"
"Last-Translator: vkuthan <vit.kuthan@seznam.cz>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: cs\n"
@ -19,10 +19,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Kód byl dokončen. Čekám na opětovné načtení.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -58,11 +62,11 @@ msgstr "%d adresní piny a %d rgb piny označují výšku %d, nikoli %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
msgstr "Selhání %q: %d"
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
msgstr "%q se nyní používá"
msgstr "Používá se %q"
#: extmod/moductypes.c ports/atmel-samd/common-hal/pulseio/PulseIn.c
#: ports/cxd56/common-hal/pulseio/PulseIn.c
@ -70,11 +74,11 @@ msgstr "%q se nyní používá"
#: ports/stm/common-hal/pulseio/PulseIn.c py/obj.c py/objstr.c
#: py/objstrunicode.c
msgid "%q index out of range"
msgstr "%q index je mimo rozsah"
msgstr "Index %q je mimo rozsah"
#: py/obj.c
msgid "%q indices must be integers, not %q"
msgstr "%q indexy musí být celá čísla, ne %q"
msgstr "Indexy %q musí být celá čísla, ne %q"
#: shared-bindings/vectorio/Polygon.c
msgid "%q list must be a list"
@ -90,11 +94,11 @@ msgstr "%q musí být >= 0"
#: shared-bindings/memorymonitor/AllocationAlarm.c
#: shared-bindings/vectorio/Circle.c shared-bindings/vectorio/Rectangle.c
msgid "%q must be >= 1"
msgstr " %q musí být > = 1"
msgstr "%q musí být > = 1"
#: shared-module/vectorio/Polygon.c
msgid "%q must be a tuple of length 2"
msgstr " %q musí být n-tice délky 2"
msgstr "%q musí být n-tice délky 2"
#: shared-bindings/canio/Match.c
msgid "%q out of range"
@ -102,23 +106,23 @@ msgstr "%q je mimo rozsah"
#: ports/atmel-samd/common-hal/microcontroller/Pin.c
msgid "%q pin invalid"
msgstr ""
msgstr "Pin %q není platný"
#: shared-bindings/fontio/BuiltinFont.c
msgid "%q should be an int"
msgstr " %q by měl být int"
msgstr "%q by měl být int"
#: py/bc.c py/objnamedtuple.c
msgid "%q() takes %d positional arguments but %d were given"
msgstr ""
msgstr "%q() vyžaduje %d pozičních argumentů, ale %d jich bylo zadáno"
#: py/argcheck.c
msgid "'%q' argument required"
msgstr ""
msgstr "Je vyžadován argument '%q'"
#: py/runtime.c
msgid "'%q' object cannot assign attribute '%q'"
msgstr ""
msgstr "'%q' nemůže přiřadit atribut '%q'"
#: py/proto.c
msgid "'%q' object does not support '%q'"
@ -392,7 +396,7 @@ msgstr ""
msgid "Array must contain halfwords (type 'H')"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr ""
@ -502,8 +506,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -526,7 +530,7 @@ msgstr ""
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr ""
@ -538,6 +542,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -570,6 +586,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr ""
@ -613,6 +633,10 @@ msgstr ""
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr ""
@ -940,6 +964,10 @@ msgstr ""
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -949,10 +977,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1084,6 +1108,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1144,6 +1172,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1300,7 +1329,7 @@ msgstr ""
msgid "No DMA channel found"
msgstr ""
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1458,10 +1487,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1507,6 +1540,7 @@ msgstr ""
msgid "Pin does not have ADC capabilities"
msgstr ""
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1519,10 +1553,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1559,7 +1589,11 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
@ -1695,7 +1729,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1831,6 +1865,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr ""
@ -1910,6 +1948,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -1974,6 +2016,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2030,6 +2076,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2112,7 +2162,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -2987,7 +3038,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3125,6 +3176,14 @@ msgstr ""
msgid "non-keyword arg after keyword arg"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3197,6 +3256,10 @@ msgstr ""
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3210,7 +3273,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3542,6 +3605,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr ""
@ -3801,6 +3868,13 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Kód byl dokončen. Čekám na opětovné nahrání.\n"
#~ msgid ""
#~ "\n"
#~ "To exit, please reset the board without "

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-11-26 03:11+0000\n"
"Last-Translator: Daniel Bravo Darriba <bravodarriba@gmail.com>\n"
"Language: de_DE\n"
@ -18,10 +18,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Der Code wurde ausgeführt. Warte auf reload.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -391,7 +395,7 @@ msgstr "Ein anderer Sendevorgang ist schon aktiv"
msgid "Array must contain halfwords (type 'H')"
msgstr "Array muss Halbwörter enthalten (type 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Array-Werte sollten aus Einzelbytes bestehen."
@ -505,8 +509,8 @@ msgstr "Die Pufferlänge muss ein vielfaches von 512 sein"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Der Puffer muss ein vielfaches von 512 bytes sein"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Der Puffer muss eine Mindestenslänge von 1 haben"
@ -529,7 +533,7 @@ msgstr "Bus pin %d wird schon benutzt"
msgid "Byte buffer must be 16 bytes."
msgstr "Der Puffer muss 16 Bytes lang sein."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Ein Bytes kann nur Werte zwischen 0 und 255 annehmen."
@ -541,6 +545,18 @@ msgstr "CBC-Blöcke müssen ein Vielfaches von 16 Bytes sein"
msgid "Call super().__init__() before accessing native object."
msgstr "Rufe super().__init__() vor dem Zugriff auf ein natives Objekt auf."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "CCCD kann nicht auf lokales Merkmal eingestellt werden"
@ -574,6 +590,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Kann nicht beite Kanäle auf dem gleichen Pin ausgeben"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Kann ohne MISO-Pin nicht lesen."
@ -618,6 +638,10 @@ msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
"Die Frequenz eines bereits verwendeten Timers kann nicht variiert werden"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Kann nicht ohne MOSI-Pin schreiben."
@ -951,6 +975,10 @@ msgstr "Datei existiert"
msgid "Filters too complex"
msgstr "Filter zu komplex"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Format nicht unterstützt"
@ -960,12 +988,6 @@ msgstr "Format nicht unterstützt"
msgid "Framebuffer requires %d bytes"
msgstr "Framepuffer benötigt %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
"Die aufgezeichnete Frequenz liegt über der Leistungsgrenze. Aufnahme "
"angehalten."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1101,6 +1123,10 @@ msgstr "Ungültiger DAC-Pin angegeben"
msgid "Invalid PWM frequency"
msgstr "Ungültige PWM Frequenz"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ungültiges Argument"
@ -1161,6 +1187,7 @@ msgstr "Ungültige Phase"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1319,7 +1346,7 @@ msgstr "Kein DAC im Chip vorhanden"
msgid "No DMA channel found"
msgstr "Kein DMA Kanal gefunden"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1483,10 +1510,14 @@ msgstr ""
"Nur monochrome, indizierte 4bpp oder 8bpp, und 16bpp oder größere BMPs "
"unterstützt: %d bpp wurden gegeben"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1532,6 +1563,7 @@ msgstr "Zugang verweigert"
msgid "Pin does not have ADC capabilities"
msgstr "Pin hat keine ADC Funktionalität"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "Pin kann nur als Eingang verwendet werden"
@ -1544,10 +1576,6 @@ msgstr "Pin muss Hardware-Interrupts unterstützen"
msgid "Pin number already reserved by EXTI"
msgstr "PIN-Nummer bereits von EXTI reserviert"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1587,10 +1615,12 @@ msgid "Prefix buffer must be on the heap"
msgstr "Der Präfixbuffer muss sich auf dem Heap befinden"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Drücke eine Taste um dich mit der REPL zu verbinden. Drücke Strg-D zum neu "
"laden."
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1725,7 +1755,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Slice und Wert (value) haben unterschiedliche Längen."
@ -1875,6 +1905,10 @@ msgstr ""
"Die Gesamtzahl der zu schreibenden Daten ist größer als "
"outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Zurückverfolgung (jüngste Aufforderung zuletzt):\n"
@ -1954,6 +1988,10 @@ msgstr "Konnte Farbpalettendaten nicht lesen"
msgid "Unable to write to nvm."
msgstr "Schreiben in nvm nicht möglich."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Unerwarteter nrfx uuid-Typ"
@ -2022,6 +2060,10 @@ msgstr "Nicht unterstützte Operation"
msgid "Unsupported pull value."
msgstr "Nicht unterstützter Pull-Wert."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2087,6 +2129,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "WiFi Passwort muss zwischen 8 und 63 Zeichen lang sein"
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Schreiben nicht unterstüzt für diese Charakteristik"
@ -2171,7 +2217,8 @@ msgstr "Argumente müssen ndarrays sein"
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "Array/Bytes auf der rechten Seite erforderlich"
@ -3065,7 +3112,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "max_length muss 0-%d sein, wenn fixed_length %s ist"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3203,6 +3250,14 @@ msgstr "Nicht-Schlüsselwort arg nach * / **"
msgid "non-keyword arg after keyword arg"
msgstr "Nicht-Schlüsselwort Argument nach Schlüsselwort Argument"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3276,6 +3331,10 @@ msgstr "String mit ungerader Länge"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "offset außerhalb der Grenzen"
@ -3289,7 +3348,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "nur eine sample_rate=16000 wird unterstützt"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
"Es werden nur Slices mit Schritt = 1 (auch bekannt als None) unterstützt"
@ -3627,6 +3686,10 @@ msgstr "Das Zeitlimit hat den maximal zulässigen Wert überschritten"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "Das Zeitlimit muss 0,0-100,0 Sekunden betragen"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "timeout muss >= 0.0 sein"
@ -3890,6 +3953,23 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Der Code wurde ausgeführt. Warte auf reload.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr ""
#~ "Die aufgezeichnete Frequenz liegt über der Leistungsgrenze. Aufnahme "
#~ "angehalten."
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Drücke eine Taste um dich mit der REPL zu verbinden. Drücke Strg-D zum "
#~ "neu laden."
#~ msgid "arctan2 is implemented for scalars and ndarrays only"
#~ msgstr "arctan2 ist nur für Skalare und ndarrays implementiert"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -19,7 +19,13 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
@ -387,7 +393,7 @@ msgstr ""
msgid "Array must contain halfwords (type 'H')"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr ""
@ -497,8 +503,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -521,7 +527,7 @@ msgstr ""
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr ""
@ -533,6 +539,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -565,6 +583,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr ""
@ -608,6 +630,10 @@ msgstr ""
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr ""
@ -935,6 +961,10 @@ msgstr ""
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -944,10 +974,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1079,6 +1105,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1139,6 +1169,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1295,7 +1326,7 @@ msgstr ""
msgid "No DMA channel found"
msgstr ""
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1453,10 +1484,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1502,6 +1537,7 @@ msgstr ""
msgid "Pin does not have ADC capabilities"
msgstr ""
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1514,10 +1550,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1554,7 +1586,11 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
@ -1690,7 +1726,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1826,6 +1862,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr ""
@ -1905,6 +1945,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -1969,6 +2013,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2025,6 +2073,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2107,7 +2159,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -2982,7 +3035,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3120,6 +3173,14 @@ msgstr ""
msgid "non-keyword arg after keyword arg"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3192,6 +3253,10 @@ msgstr ""
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3205,7 +3270,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3537,6 +3602,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr ""

View File

@ -7,24 +7,28 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-11-27 18:34+0000\n"
"Last-Translator: Iván Montiel Cardona <ivan_montiel2013@hotmail.com>\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-30 22:25+0000\n"
"Last-Translator: Hugo Dahl <hugo@code-jedi.com>\n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.4-dev\n"
"X-Generator: Weblate 4.4.1-dev\n"
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"El código terminó su ejecución. Esperando para recargar.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -397,7 +401,7 @@ msgstr "Otro envío ya está activo"
msgid "Array must contain halfwords (type 'H')"
msgstr "El array debe contener medias palabras (escriba 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Valores del array deben ser bytes individuales."
@ -511,8 +515,8 @@ msgstr "El tamaño del búfer debe ser múltiplo de 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Búfer deber ser un múltiplo de 512 bytes"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer debe ser de longitud 1 como minimo"
@ -535,7 +539,7 @@ msgstr "Bus pin %d ya está siendo utilizado"
msgid "Byte buffer must be 16 bytes."
msgstr "Búfer Byte debe de ser 16 bytes."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Bytes debe estar entre 0 y 255."
@ -547,6 +551,18 @@ msgstr "Los bloques CBC deben ser múltiplos de 16 bytes"
msgid "Call super().__init__() before accessing native object."
msgstr "Llame a super().__ init __() antes de acceder al objeto nativo."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "No se puede configurar CCCD en la característica local"
@ -581,6 +597,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "No se puede tener ambos canales en el mismo pin"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "No se puede leer sin pin MISO."
@ -624,6 +644,10 @@ msgstr "No se puede obtener inequívocamente sizeof escalar"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "No puede variar la frecuencia en un temporizador que ya está en uso"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "No se puede escribir sin pin MOSI."
@ -955,6 +979,10 @@ msgstr "El archivo ya existe"
msgid "Filters too complex"
msgstr "Filtros muy complejos"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Sin capacidades para el formato"
@ -964,10 +992,6 @@ msgstr "Sin capacidades para el formato"
msgid "Framebuffer requires %d bytes"
msgstr "Framebuffer requiere %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Frecuencia capturada por encima de la capacidad. Captura en pausa."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1102,6 +1126,10 @@ msgstr "Pin suministrado inválido para DAC"
msgid "Invalid PWM frequency"
msgstr "Frecuencia PWM inválida"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1162,6 +1190,7 @@ msgstr "Fase inválida"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1208,7 +1237,7 @@ msgstr "Modo de ejecución inválido."
#: shared-module/_bleio/Attribute.c
msgid "Invalid security_mode"
msgstr "Modo de seguridad no válido"
msgstr "'security_mode' no válido"
#: shared-bindings/audiomixer/Mixer.c
msgid "Invalid voice"
@ -1248,7 +1277,7 @@ msgstr "Length debe ser un int"
#: py/objslice.c
msgid "Length must be non-negative"
msgstr "Longitud no deberia ser negativa"
msgstr "Length no deberia ser negativa"
#: shared-module/bitbangio/SPI.c
msgid "MISO pin init failed."
@ -1318,7 +1347,7 @@ msgstr "El chip no tiene DAC"
msgid "No DMA channel found"
msgstr "No se encontró el canal DMA"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1482,10 +1511,14 @@ msgstr ""
"Solo se admiten BMP monocromáticos, indexados de 4 bpp u 8 bpp y 16 bpp o "
"más: %d bpp proporcionados"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr "Solo un color puede ser transparente a la vez"
@ -1533,6 +1566,7 @@ msgstr "Permiso denegado"
msgid "Pin does not have ADC capabilities"
msgstr "Pin no tiene capacidad ADC"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "El pin es solo de entrada"
@ -1545,10 +1579,6 @@ msgstr "El pin debe admitir interrupciones de hardware"
msgid "Pin number already reserved by EXTI"
msgstr "Número de pin ya reservado por EXTI"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1592,9 +1622,12 @@ msgid "Prefix buffer must be on the heap"
msgstr "El prefijo del buffer debe estar en el heap"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Presiona cualquier tecla para entrar al REPL. Usa CTRL-D para recargar."
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1729,7 +1762,7 @@ msgstr "El contexto del lado del servidor no puede tener un hostname"
msgid "Size not supported"
msgstr "Sin capacidades para el tamaño"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Slice y value tienen tamaños diferentes."
@ -1879,6 +1912,10 @@ msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
"Los datos totales a escribir son más grandes que outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (ultima llamada reciente):\n"
@ -1958,6 +1995,10 @@ msgstr "No se pudo leer los datos de la paleta de colores"
msgid "Unable to write to nvm."
msgstr "Imposible escribir en nvm."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Tipo de uuid nrfx inesperado"
@ -2024,6 +2065,10 @@ msgstr "Operación no soportada"
msgid "Unsupported pull value."
msgstr "valor pull no soportado."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2089,6 +2134,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "La clave de WiFi debe ser entre 8 y 63 caracteres"
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Escrituras no admitidas en Characteristic"
@ -2171,7 +2220,8 @@ msgstr "argumentos deben ser ndarrays"
msgid "array and index length must be equal"
msgstr "Longitud del array e índice tienen que ser iguales"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "array/bytes requeridos en el lado derecho"
@ -3056,8 +3106,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "max_length debe ser 0-%d cuando fixed_length es %s"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_lenght debe ser > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3196,6 +3246,14 @@ msgstr ""
"no deberia estar/tener agumento por palabra clave despues de argumento por "
"palabra clave"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr "norma está definida para arrays 1D y 2D"
@ -3269,6 +3327,10 @@ msgstr "string de longitud impar"
msgid "offset is too large"
msgstr "offset es demasiado grande"
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "offset fuera de límites"
@ -3282,7 +3344,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "solo se admite sample_rate=16000"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "solo se admiten segmentos con step=1 (alias None)"
@ -3617,6 +3679,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr "el tiempo de espera debe ser 0.0-100.0 segundos"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "tiempo muerto debe ser >= 0.0"
@ -3876,6 +3942,23 @@ msgstr "zi debe ser de tipo flotante"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi debe ser una forma (n_section,2)"
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "El código terminó su ejecución. Esperando para recargar.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr "Frecuencia capturada por encima de la capacidad. Captura en pausa."
#~ msgid "max_length must be > 0"
#~ msgstr "max_lenght debe ser > 0"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Presiona cualquier tecla para entrar al REPL. Usa CTRL-D para recargar."
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Solo hay capacidad para enchufes IPv4 SOCK_STREAM"

View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2018-12-20 22:15-0800\n"
"Last-Translator: Timothy <me@timothygarcia.ca>\n"
"Language-Team: fil\n"
@ -18,7 +18,13 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
@ -390,7 +396,7 @@ msgstr "Isa pang send ay aktibo na"
msgid "Array must contain halfwords (type 'H')"
msgstr "May halfwords (type 'H') dapat ang array"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Array values ay dapat single bytes."
@ -502,8 +508,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer dapat ay hindi baba sa 1 na haba"
@ -527,7 +533,7 @@ msgstr "Ginagamit na ang DAC"
msgid "Byte buffer must be 16 bytes."
msgstr "buffer ay dapat bytes-like object"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Sa gitna ng 0 o 255 dapat ang bytes."
@ -539,6 +545,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -572,6 +590,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Hindi maaaring output ang mga parehong channel sa parehong pin"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Hindi maaring mabasa kapag walang MISO pin."
@ -615,6 +637,10 @@ msgstr "Hindi puedeng hindi sigurado ang get sizeof scalar"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Hindi maaring isulat kapag walang MOSI pin."
@ -948,6 +974,10 @@ msgstr "Mayroong file"
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -957,10 +987,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1094,6 +1120,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr "Mali ang PWM frequency"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Maling argumento"
@ -1154,6 +1184,7 @@ msgstr "Mali ang phase"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1310,7 +1341,7 @@ msgstr "Walang DAC sa chip"
msgid "No DMA channel found"
msgstr "Walang DMA channel na mahanap"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1471,10 +1502,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1521,6 +1556,7 @@ msgstr "Walang pahintulot"
msgid "Pin does not have ADC capabilities"
msgstr "Ang pin ay walang kakayahan sa ADC"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1533,10 +1569,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1573,10 +1605,12 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Pindutin ang anumang key upang pumasok sa REPL. Gamitin ang CTRL-D upang i-"
"reload."
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1712,7 +1746,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Slice at value iba't ibang haba."
@ -1848,6 +1882,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (pinakahuling huling tawag): \n"
@ -1927,6 +1965,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr "Hindi ma i-sulat sa NVM."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
#, fuzzy
msgid "Unexpected nrfx uuid type"
@ -1993,6 +2035,10 @@ msgstr "Hindi sinusuportahang operasyon"
msgid "Unsupported pull value."
msgstr "Hindi suportado ang pull value."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2057,6 +2103,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2139,7 +2189,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "array/bytes kinakailangan sa kanang bahagi"
@ -3031,7 +3082,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3169,6 +3220,14 @@ msgstr "non-keyword arg sa huli ng */**"
msgid "non-keyword arg after keyword arg"
msgstr "non-keyword arg sa huli ng keyword arg"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3241,6 +3300,10 @@ msgstr "odd-length string"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
#, fuzzy
msgid "offset out of bounds"
@ -3255,7 +3318,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "ang mga slices lamang na may hakbang = 1 (aka None) ang sinusuportahan"
@ -3591,6 +3654,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#, fuzzy
msgid "timeout must be >= 0.0"
@ -3853,6 +3920,11 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Pindutin ang anumang key upang pumasok sa REPL. Gamitin ang CTRL-D upang "
#~ "i-reload."
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q indeks ay dapat integers, hindi %s"

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -19,7 +19,13 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
@ -387,7 +393,7 @@ msgstr ""
msgid "Array must contain halfwords (type 'H')"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr ""
@ -497,8 +503,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -521,7 +527,7 @@ msgstr ""
msgid "Byte buffer must be 16 bytes."
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr ""
@ -533,6 +539,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -565,6 +583,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr ""
@ -608,6 +630,10 @@ msgstr ""
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr ""
@ -935,6 +961,10 @@ msgstr ""
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -944,10 +974,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1079,6 +1105,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1139,6 +1169,7 @@ msgstr ""
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1295,7 +1326,7 @@ msgstr ""
msgid "No DMA channel found"
msgstr ""
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1453,10 +1484,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1502,6 +1537,7 @@ msgstr ""
msgid "Pin does not have ADC capabilities"
msgstr ""
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1514,10 +1550,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1554,7 +1586,11 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
@ -1690,7 +1726,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1826,6 +1862,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr ""
@ -1905,6 +1945,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -1969,6 +2013,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2025,6 +2073,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2107,7 +2159,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -2982,7 +3035,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3120,6 +3173,14 @@ msgstr ""
msgid "non-keyword arg after keyword arg"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3192,6 +3253,10 @@ msgstr ""
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3205,7 +3270,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3537,6 +3602,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr ""

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2018-10-02 16:27+0200\n"
"Last-Translator: Enrico Paganin <enrico.paganin@mail.com>\n"
"Language-Team: \n"
@ -18,7 +18,13 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
@ -389,7 +395,7 @@ msgstr "Another send è gia activato"
msgid "Array must contain halfwords (type 'H')"
msgstr "Array deve avere mezzoparole (typo 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Valori di Array dovrebbero essere bytes singulari"
@ -502,8 +508,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Il buffer deve essere lungo almeno 1"
@ -527,7 +533,7 @@ msgstr "DAC già in uso"
msgid "Byte buffer must be 16 bytes."
msgstr "i buffer devono essere della stessa lunghezza"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "I byte devono essere compresi tra 0 e 255"
@ -539,6 +545,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -572,6 +590,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Impossibile dare in output entrambi i canal sullo stesso pin"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Impossibile leggere senza pin MISO."
@ -616,6 +638,10 @@ msgstr "Impossibile ricavare la grandezza scalare di sizeof inequivocabilmente"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Impossibile scrivere senza pin MOSI."
@ -948,6 +974,10 @@ msgstr "File esistente"
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -957,10 +987,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1094,6 +1120,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr "Frequenza PWM non valida"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argomento non valido"
@ -1156,6 +1186,7 @@ msgstr "Fase non valida"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1314,7 +1345,7 @@ msgstr "Nessun DAC sul chip"
msgid "No DMA channel found"
msgstr "Nessun canale DMA trovato"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1476,10 +1507,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1530,6 +1565,7 @@ msgstr "Permesso negato"
msgid "Pin does not have ADC capabilities"
msgstr "Il pin non ha capacità di ADC"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1542,10 +1578,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1583,9 +1615,12 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Premi un qualunque tasto per entrare nel REPL. Usa CTRL-D per ricaricare."
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1723,7 +1758,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1859,6 +1894,10 @@ msgstr "Troppi schermi"
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (chiamata più recente per ultima):\n"
@ -1938,6 +1977,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr "Imposibile scrivere su nvm."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
#, fuzzy
msgid "Unexpected nrfx uuid type"
@ -2004,6 +2047,10 @@ msgstr "Operazione non supportata"
msgid "Unsupported pull value."
msgstr "Valore di pull non supportato."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2060,6 +2107,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2142,7 +2193,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -3033,7 +3085,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3172,6 +3224,14 @@ msgstr "argomento non nominato dopo */**"
msgid "non-keyword arg after keyword arg"
msgstr "argomento non nominato seguito da argomento nominato"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3246,6 +3306,10 @@ msgstr "stringa di lunghezza dispari"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
#, fuzzy
msgid "offset out of bounds"
@ -3260,7 +3324,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "solo slice con step=1 (aka None) sono supportate"
@ -3598,6 +3662,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#, fuzzy
msgid "timeout must be >= 0.0"
@ -3860,6 +3928,10 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Premi un qualunque tasto per entrare nel REPL. Usa CTRL-D per ricaricare."
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "gli indici %q devono essere interi, non %s"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-11-27 18:34+0000\n"
"Last-Translator: sporeball <sporeballdev@gmail.com>\n"
"Language-Team: none\n"
@ -21,10 +21,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"コードの実行が完了しました。リロードを待っています。\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -394,7 +398,7 @@ msgstr "他のsendがすでにアクティブ"
msgid "Array must contain halfwords (type 'H')"
msgstr "array のタイプは16ビット ('H') でなければなりません"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Arrayの各値は1バイトでなければなりません"
@ -506,8 +510,8 @@ msgstr "バッファ長は512の倍数でなければなりません"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "バッファは512の倍数でなければなりません"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "バッファ長は少なくとも1以上でなければなりません"
@ -530,7 +534,7 @@ msgstr "Busピン%dはすでに使用中"
msgid "Byte buffer must be 16 bytes."
msgstr "バッファは16バイトでなければなりません"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "バイト値は0から255の間でなければなりません"
@ -544,6 +548,18 @@ msgstr ""
"ネイティブオブジェクトにアクセスする前にsuper().__init__()を呼び出してくださ"
"い"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "ローカルのCharacteristicにはCCCDを設定できません"
@ -576,6 +592,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "同じピン上の両チャネルに出力できません"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "MISOピンなしで読み込めません"
@ -619,6 +639,10 @@ msgstr "スカラのサイズを曖昧さなしに取得できません"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "使用中のタイマー上では周波数を変えられません"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "MOSIピンなしで書き込みできません"
@ -948,6 +972,10 @@ msgstr "ファイルが存在します"
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "非対応の形式"
@ -957,10 +985,6 @@ msgstr "非対応の形式"
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "キャプチャした周波数は能力を超えています。キャプチャ停止"
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr "このタイマーを使う既存のPWMOutと周波数を一致させる必要があります"
@ -1094,6 +1118,10 @@ msgstr "不正なDACピンが与えられました"
msgid "Invalid PWM frequency"
msgstr "無効なPWM周波数"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "不正な引数"
@ -1154,6 +1182,7 @@ msgstr "不正なphase"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1310,7 +1339,7 @@ msgstr "チップにDACがありません"
msgid "No DMA channel found"
msgstr "DMAチャネルが見つかりません"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1470,10 +1499,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1520,6 +1553,7 @@ msgstr "パーミッション拒否"
msgid "Pin does not have ADC capabilities"
msgstr "ピンにADCの能力がありません"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "ピンは入力専用"
@ -1532,10 +1566,6 @@ msgstr "ピンはハードウェア割り込みに対応していなければな
msgid "Pin number already reserved by EXTI"
msgstr "ピン番号はすでにEXTIによって予約されています"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1572,8 +1602,12 @@ msgid "Prefix buffer must be on the heap"
msgstr "Prefixバッファはヒープ上になければなりません"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgstr "何らかのキーを押すとREPLに入ります。CTRL-Dでリロード。"
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1708,7 +1742,7 @@ msgstr ""
msgid "Size not supported"
msgstr "サイズは対応していません"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "スライスと値の長さが一致しません"
@ -1850,6 +1884,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "トレースバック(最新の呼び出しが末尾):\n"
@ -1930,6 +1968,10 @@ msgstr "カラーパレットデータを読み込めません"
msgid "Unable to write to nvm."
msgstr "nvmに書き込みできません"
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "想定されていないnrfx UUID型"
@ -1994,6 +2036,10 @@ msgstr "非対応の操作"
msgid "Unsupported pull value."
msgstr "非対応のpull値"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2050,6 +2096,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "WiFiパスワードは8〜63文字でなければなりません"
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2132,7 +2182,8 @@ msgstr "引数はndarrayでなければなりません"
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "右辺にはarray/bytesが必要"
@ -3012,8 +3063,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_lengthは0より大きくなければなりません"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3150,6 +3201,14 @@ msgstr "*/** の後に非キーワード引数は置けません"
msgid "non-keyword arg after keyword arg"
msgstr "キーワード引数の後に非キーワード引数は置けません"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3222,6 +3281,10 @@ msgstr "奇数長の文字列"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3235,7 +3298,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3570,6 +3633,10 @@ msgstr "タイムアウト長は対応する最大値を超えています"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "timeoutは0.0〜100.0秒でなければなりません"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "timeoutは0.0以上でなければなりません"
@ -3829,6 +3896,22 @@ msgstr "ziはfloat値でなければなりません"
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "コードの実行が完了しました。リロードを待っています。\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr "キャプチャした周波数は能力を超えています。キャプチャ停止"
#~ msgid "max_length must be > 0"
#~ msgstr "max_lengthは0より大きくなければなりません"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr "何らかのキーを押すとREPLに入ります。CTRL-Dでリロード。"
#~ msgid "axis must be -1, 0, None, or 1"
#~ msgstr "axisは -1, 0, 1, None のいずれかでなければなりません"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-10-05 12:12+0000\n"
"Last-Translator: Michal Čihař <michal@cihar.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -20,10 +20,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"실행 완료 코드. 재장전 을 기다리는 중입니다\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -390,7 +394,7 @@ msgstr ""
msgid "Array must contain halfwords (type 'H')"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr ""
@ -502,8 +506,8 @@ msgstr ""
msgid "Buffer must be a multiple of 512 bytes"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "잘못된 크기의 버퍼. >1 여야합니다"
@ -526,7 +530,7 @@ msgstr ""
msgid "Byte buffer must be 16 bytes."
msgstr "잘못된 크기의 버퍼. 16 바이트 여야합니다."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "바이트는 0에서 255 사이 여야합니다."
@ -538,6 +542,18 @@ msgstr ""
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -570,6 +586,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "MISO핀이 없으면 읽을 수 없습니다"
@ -613,6 +633,10 @@ msgstr ""
msgid "Cannot vary frequency on a timer that is already in use"
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr ""
@ -940,6 +964,10 @@ msgstr ""
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr ""
@ -949,10 +977,6 @@ msgstr ""
msgid "Framebuffer requires %d bytes"
msgstr ""
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1084,6 +1108,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr ""
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr ""
@ -1144,6 +1172,7 @@ msgstr "단계가 잘못되었습니다"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1300,7 +1329,7 @@ msgstr ""
msgid "No DMA channel found"
msgstr ""
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1458,10 +1487,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr ""
@ -1507,6 +1540,7 @@ msgstr ""
msgid "Pin does not have ADC capabilities"
msgstr ""
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1519,10 +1553,6 @@ msgstr ""
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1559,7 +1589,11 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
@ -1695,7 +1729,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr ""
@ -1831,6 +1865,10 @@ msgstr ""
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr ""
@ -1911,6 +1949,10 @@ msgstr ""
msgid "Unable to write to nvm."
msgstr ""
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr ""
@ -1975,6 +2017,10 @@ msgstr ""
msgid "Unsupported pull value."
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2031,6 +2077,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2113,7 +2163,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr ""
@ -2988,7 +3039,7 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
@ -3126,6 +3177,14 @@ msgstr ""
msgid "non-keyword arg after keyword arg"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3198,6 +3257,10 @@ msgstr ""
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr ""
@ -3211,7 +3274,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
@ -3543,6 +3606,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr ""
@ -3802,6 +3869,13 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "실행 완료 코드. 재장전 을 기다리는 중입니다\n"
#~ msgid "%q indices must be integers, not %s"
#~ msgstr "%q 인덱스는 %s 가 아닌 정수 여야합니다"

View File

@ -5,24 +5,28 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-10-27 16:47+0000\n"
"Last-Translator: Jelle Jager <jell@jjc.id.au>\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-23 20:14+0000\n"
"Last-Translator: _fonzlate <vooralfred@gmail.com>\n"
"Language-Team: none\n"
"Language: nl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.3.2-dev\n"
"X-Generator: Weblate 4.4.1-dev\n"
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Code is uitgevoerd. Wachten op herladen.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -294,7 +298,7 @@ msgstr "Adres type buiten bereik"
#: ports/esp32s2/common-hal/canio/CAN.c
msgid "All CAN peripherals are in use"
msgstr ""
msgstr "Alle CAN-peripherals zijn in gebruik"
#: ports/esp32s2/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "All I2C peripherals are in use"
@ -304,7 +308,7 @@ msgstr "Alle I2C peripherals zijn in gebruik"
#: ports/esp32s2/common-hal/frequencyio/FrequencyIn.c
#: ports/esp32s2/common-hal/rotaryio/IncrementalEncoder.c
msgid "All PCNT units in use"
msgstr ""
msgstr "Alle PCNT-eenheden zijn in gebruik"
#: ports/atmel-samd/common-hal/canio/Listener.c
#: ports/esp32s2/common-hal/canio/Listener.c
@ -392,7 +396,7 @@ msgstr "Een andere send is al actief"
msgid "Array must contain halfwords (type 'H')"
msgstr "Array moet halfwords (type 'H') bevatten"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Array waardes moet enkele bytes zijn."
@ -427,7 +431,7 @@ msgstr ""
#: ports/esp32s2/common-hal/canio/CAN.c
msgid "Baudrate not supported by peripheral"
msgstr ""
msgstr "Baudrate wordt niet ondersteund door randapparatuur"
#: shared-module/displayio/Display.c
#: shared-module/framebufferio/FramebufferDisplay.c
@ -441,7 +445,7 @@ msgstr "Bit clock en word select moeten een clock eenheid delen"
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid "Bit depth must be from 1 to 6 inclusive, not %d"
msgstr ""
msgstr "Bitdiepte moet tussen 1 en 6 liggen, niet %d"
#: shared-bindings/audiobusio/PDMIn.c
msgid "Bit depth must be multiple of 8."
@ -504,8 +508,8 @@ msgstr "Buffer lengte moet een veelvoud van 512 zijn"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Buffer moet een veelvoud van 512 bytes zijn"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Buffer moet op zijn minst lengte 1 zijn"
@ -528,7 +532,7 @@ msgstr "Bus pin %d al in gebruik"
msgid "Byte buffer must be 16 bytes."
msgstr "Byte buffer moet 16 bytes zijn."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Bytes moeten tussen 0 en 255 liggen."
@ -540,6 +544,18 @@ msgstr "CBC blocks moeten meervouden van 16 bytes zijn"
msgid "Call super().__init__() before accessing native object."
msgstr "Roep super().__init__() aan voor toegang native object."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "Kan CCCD niet toewijzen aan lokaal Characteristic"
@ -573,6 +589,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Output van beide kanalen kan niet op dezelfde pin"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Kan niet lezen zonder MISO pin."
@ -617,6 +637,10 @@ msgstr "Kan niet ondubbelzinning sizeof scalar verkrijgen"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "Kan de frequentie van een timer die al in gebruik is niet variëren"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Kan niet schrijven zonder MOSI pin."
@ -859,7 +883,7 @@ msgstr "Verwachtte een adres"
#: shared-bindings/alarm/__init__.c
msgid "Expected an alarm"
msgstr ""
msgstr "Verwachtte een alarm"
#: shared-module/_pixelbuf/PixelBuf.c
#, c-format
@ -876,7 +900,7 @@ msgstr "FFT alleen voor ndarrays gedefineerd"
#: extmod/ulab/code/fft/fft.c
msgid "FFT is implemented for linear arrays only"
msgstr ""
msgstr "FFT is alleen geïmplementeerd voor lineaire arrays"
#: ports/esp32s2/common-hal/socketpool/Socket.c
msgid "Failed SSL handshake"
@ -948,6 +972,10 @@ msgstr "Bestand bestaat"
msgid "Filters too complex"
msgstr "Filters zijn te complex"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr "Firmware image is ongeldig"
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Formaat wordt niet ondersteund"
@ -957,11 +985,6 @@ msgstr "Formaat wordt niet ondersteund"
msgid "Framebuffer requires %d bytes"
msgstr "Framebuffer benodigd %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
"De vastgelegde frequentie is boven de capaciteit. Vastleggen gepauzeerd."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1010,7 +1033,7 @@ msgstr "I2SOut is niet beschikbaar"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "IOs 0, 2 & 4 do not support internal pullup in sleep"
msgstr ""
msgstr "IO's 0, 2 en 4 ondersteunen geen interne pullup in slaapstand"
#: shared-bindings/aesio/aes.c
#, c-format
@ -1031,7 +1054,7 @@ msgstr "Incorrecte buffer grootte"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "Initialization failed due to lack of memory"
msgstr ""
msgstr "De initialisatie is mislukt vanwege een gebrek aan geheugen"
#: ports/atmel-samd/common-hal/pulseio/PulseIn.c
msgid "Input taking too long"
@ -1096,6 +1119,10 @@ msgstr "Ongeldige DAC pin opgegeven"
msgid "Invalid PWM frequency"
msgstr "Ongeldige PWM frequentie"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr "Ongeldige Pin"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ongeldig argument"
@ -1156,6 +1183,7 @@ msgstr "Ongeldige fase"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1292,7 +1320,7 @@ msgstr "Een meervoud van 6 rgb pinnen moet worden gebruikt, niet %d"
#: ports/esp32s2/common-hal/nvm/ByteArray.c
msgid "NVS Error"
msgstr ""
msgstr "NVS-fout"
#: py/parse.c
msgid "Name too long"
@ -1312,10 +1340,10 @@ msgstr "Geen DAC op de chip"
msgid "No DMA channel found"
msgstr "Geen DMA kanaal gevonden"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
msgstr "Geen I2C-apparaat op adres: %x"
#: ports/esp32s2/common-hal/busio/SPI.c ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c
@ -1457,7 +1485,7 @@ msgstr "Alleen IPv4 adressen worden ondersteund"
#: ports/esp32s2/common-hal/socketpool/SocketPool.c
msgid "Only IPv4 sockets supported"
msgstr ""
msgstr "Alleen IPv4-sockets ondersteund"
#: shared-module/displayio/OnDiskBitmap.c
#, c-format
@ -1476,8 +1504,12 @@ msgstr ""
"Alleen monochrome en 4bpp of 8bpp, en 16bpp of grotere geïndiceerde BMP's "
"zijn ondersteund: %d bpp is gegeven"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr "Slechts één alarm.time alarm kan worden ingesteld."
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
@ -1528,6 +1560,7 @@ msgstr "Toegang geweigerd"
msgid "Pin does not have ADC capabilities"
msgstr "Pin heeft geen ADC mogelijkheden"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "Pin kan alleen voor invoer gebruikt worden"
@ -1540,10 +1573,6 @@ msgstr "Pin moet hardware interrupts ondersteunen"
msgid "Pin number already reserved by EXTI"
msgstr "Pin nummer al gereserveerd door EXTI"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1587,10 +1616,14 @@ msgid "Prefix buffer must be on the heap"
msgstr "Prefix buffer moet op de heap zijn"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
"Druk een willekeurige toets om de REPL te starten. Gebruik CTRL+D om te "
"herstarten."
"herstarten.\n"
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1725,7 +1758,7 @@ msgstr "Context aan de serverkant kan geen hostnaam hebben"
msgid "Size not supported"
msgstr "Afmeting niet ondersteund"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Slice en waarde hebben verschillende lengtes."
@ -1762,7 +1795,7 @@ msgstr "Geef op zijn minst 1 UART pin op"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Supply one of monotonic_time or epoch_time"
msgstr ""
msgstr "Geef monotonic_time of epoch_time"
#: shared-bindings/gnss/GNSS.c
msgid "System entry must be gnss.SatelliteSystem"
@ -1837,7 +1870,7 @@ msgstr "Tile breedte moet exact de bitmap breedte verdelen"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Time is in the past."
msgstr ""
msgstr "Tijdstip ligt in het verleden."
#: ports/nrf/common-hal/_bleio/Adapter.c
#, c-format
@ -1871,6 +1904,10 @@ msgstr "Teveel beeldschermen"
msgid "Total data to write is larger than outgoing_packet_length"
msgstr "Totale data om te schrijven is groter dan outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (meest recente call laatst):\n"
@ -1950,6 +1987,10 @@ msgstr "Niet in staat kleurenpalet data te lezen"
msgid "Unable to write to nvm."
msgstr "Niet in staat om naar nvm te schrijven."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr "Kan niet naar sleep_memory schrijven."
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Onverwacht mrfx uuid type"
@ -2016,6 +2057,10 @@ msgstr "Niet-ondersteunde operatie"
msgid "Unsupported pull value."
msgstr "Niet-ondersteunde pull-waarde."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr "Update Mislukt"
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2081,6 +2126,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "WiFi wachtwoord moet tussen 8 en 63 karakters bevatten"
#: main.c
msgid "Woken up by alarm.\n"
msgstr "Gewekt door alarm.\n"
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Schrijven niet ondersteund op Characteristic"
@ -2136,7 +2185,7 @@ msgstr "argsort argument moet een ndarray zijn"
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort is not implemented for flattened arrays"
msgstr ""
msgstr "argsort wordt niet geïmplementeerd voor vlakke arrays"
#: py/runtime.c
msgid "argument has wrong type"
@ -2161,15 +2210,16 @@ msgstr "argumenten moeten ndarrays zijn"
#: extmod/ulab/code/ndarray.c
msgid "array and index length must be equal"
msgstr ""
msgstr "array en indexlengte moeten gelijk zijn"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "array/bytes vereist aan de rechterkant"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get (arg)min/(arg)max of empty sequence"
msgstr ""
msgstr "verzoek om (arg)min.(arg)max te krijgen van lege reeks"
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
@ -2181,15 +2231,15 @@ msgstr "attributen nog niet ondersteund"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis is out of bounds"
msgstr ""
msgstr "as is buiten bereik"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, or an integer"
msgstr ""
msgstr "as moet None of een integer zijn"
#: extmod/ulab/code/numerical/numerical.c
msgid "axis too long"
msgstr ""
msgstr "as te lang"
#: py/builtinevex.c
msgid "bad compile mode"
@ -2395,7 +2445,7 @@ msgstr "kan niet schakelen tussen handmatige en automatische veld specificatie"
#: extmod/ulab/code/ndarray_operators.c
msgid "cannot cast output with casting rule"
msgstr ""
msgstr "kan uitvoer niet converteren zonder conversieregel"
#: py/objtype.c
msgid "cannot create '%q' instances"
@ -2496,7 +2546,7 @@ msgstr "kon SD kaart versie niet bepalen"
#: extmod/ulab/code/numerical/numerical.c
msgid "cross is defined for 1D arrays of length 3"
msgstr ""
msgstr "kruis wordt gedefinieerd voor 1D-arrays van lengte 3"
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
@ -2539,7 +2589,7 @@ msgstr "diff argument moet een ndarray zijn"
#: extmod/ulab/code/numerical/numerical.c
msgid "differentiation order out of range"
msgstr ""
msgstr "differentiatievolgorde buiten bereik"
#: py/modmath.c py/objfloat.c py/objint_longlong.c py/objint_mpz.c py/runtime.c
#: shared-bindings/math/__init__.c
@ -2572,7 +2622,7 @@ msgstr "end_x moet een int zijn"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "epoch_time not supported on this board"
msgstr ""
msgstr "epoch_time niet ondersteund op dit bord"
#: ports/nrf/common-hal/busio/UART.c
#, c-format
@ -2662,7 +2712,7 @@ msgstr "eerste argument moet een functie zijn"
#: extmod/ulab/code/ulab_create.c
msgid "first argument must be a tuple of ndarrays"
msgstr ""
msgstr "eerste argument moet een tupel van ndarrays zijn"
#: extmod/ulab/code/ndarray.c
msgid "first argument must be an iterable"
@ -2719,7 +2769,7 @@ msgstr "functie heeft hetzelfde teken aan beide uiteinden van het interval"
#: extmod/ulab/code/ndarray.c
msgid "function is defined for ndarrays only"
msgstr ""
msgstr "functie is alleen gedefinieerd voor ndarrays"
#: py/argcheck.c
#, c-format
@ -2816,7 +2866,7 @@ msgstr "inline assembler moet een functie zijn"
#: extmod/ulab/code/ndarray.c
msgid "input and output shapes are not compatible"
msgstr ""
msgstr "in- en uitvoervormen zijn niet compatibel"
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
@ -2828,7 +2878,7 @@ msgstr "invoer array lengte moet een macht van 2 zijn"
#: extmod/ulab/code/ulab_create.c
msgid "input arrays are not compatible"
msgstr ""
msgstr "input arrays zijn niet compatibel"
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
@ -2844,19 +2894,19 @@ msgstr "invoermatrix is singulier"
#: extmod/ulab/code/user/user.c
msgid "input must be a dense ndarray"
msgstr ""
msgstr "invoer moet een gesloten ndarray zijn"
#: extmod/ulab/code/ulab_create.c
msgid "input must be a tensor of rank 2"
msgstr ""
msgstr "invoer moet een tensor van rang 2 zijn"
#: extmod/ulab/code/ulab_create.c extmod/ulab/code/user/user.c
msgid "input must be an ndarray"
msgstr ""
msgstr "invoer moet een ndarray zijn"
#: extmod/ulab/code/filter/filter.c
msgid "input must be one-dimensional"
msgstr ""
msgstr "invoer moet eendimensionaal zijn"
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
@ -2872,7 +2922,7 @@ msgstr "invoervectors moeten van gelijke lengte zijn"
#: extmod/ulab/code/poly/poly.c
msgid "inputs are not iterable"
msgstr ""
msgstr "invoer is niet itereerbaar"
#: py/parsenum.c
msgid "int() arg 2 must be >= 2 and <= 36"
@ -2946,7 +2996,7 @@ msgstr "ongeldige syntax voor nummer"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "io must be rtc io"
msgstr ""
msgstr "io moet rtc io zijn"
#: py/objtype.c
msgid "issubclass() arg 1 must be a class"
@ -3017,7 +3067,7 @@ msgstr "long int wordt niet ondersteund in deze build"
#: ports/esp32s2/common-hal/canio/CAN.c
msgid "loopback + silent mode not supported by peripheral"
msgstr ""
msgstr "loopback + silent mode wordt niet ondersteund door randapparaat"
#: py/parse.c
msgid "malformed f-string"
@ -3046,12 +3096,12 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "max_length moet 0-%d zijn als fixed_length %s is"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_length moet >0 zijn"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
msgstr ""
msgstr "maximaal aantal dimensies is 4"
#: py/runtime.c
msgid "maximum recursion depth exceeded"
@ -3059,11 +3109,11 @@ msgstr "maximale recursiediepte overschreden"
#: extmod/ulab/code/approx/approx.c
msgid "maxiter must be > 0"
msgstr ""
msgstr "maxiter moet groter dan 0 zijn"
#: extmod/ulab/code/approx/approx.c
msgid "maxiter should be > 0"
msgstr ""
msgstr "maxiter moet groter dan 0 zijn"
#: py/runtime.c
#, c-format
@ -3184,9 +3234,17 @@ msgstr "niet-trefwoord argument na */**"
msgid "non-keyword arg after keyword arg"
msgstr "niet-trefwoord argument na trefwoord argument"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
msgstr "norm is gedefinieerd voor 1D en 2D arrays"
#: shared-bindings/_bleio/UUID.c
msgid "not a 128-bit UUID"
@ -3254,7 +3312,11 @@ msgstr "string met oneven lengte"
#: extmod/ulab/code/ulab_create.c
msgid "offset is too large"
msgstr ""
msgstr "compensatie is te groot"
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr "compensatie moet groter of gelijk 0 zijn"
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
@ -3269,7 +3331,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "alleen sample_rate=16000 wordt ondersteund"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "alleen segmenten met step=1 (ook wel None) worden ondersteund"
@ -3280,11 +3342,11 @@ msgstr "operands konden niet samen verzonden worden"
#: extmod/ulab/code/ndarray.c
msgid "operation is implemented for 1D Boolean arrays only"
msgstr ""
msgstr "operatie is alleen geïmplementeerd voor 1D Booleaanse arrays"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented for flattened array"
msgstr ""
msgstr "operatie is niet geïmplementeerd voor vlakke array"
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
@ -3423,7 +3485,7 @@ msgstr "gevraagde lengte is %d maar object heeft lengte %d"
#: extmod/ulab/code/ndarray_operators.c
msgid "results cannot be cast to specified type"
msgstr ""
msgstr "resultaat kan niet naar gespecificeerd type geconverteerd worden"
#: py/compile.c
msgid "return annotation must be an identifier"
@ -3445,7 +3507,7 @@ msgstr "rgb_pins[%d] bevindt zich niet op dezelfde poort als klok"
#: extmod/ulab/code/numerical/numerical.c
msgid "roll argument must be an ndarray"
msgstr ""
msgstr "roll argument moet een ndarray zijn"
#: py/objstr.c
msgid "rsplit(None,n)"
@ -3473,7 +3535,7 @@ msgstr "scriptcompilatie wordt niet ondersteund"
#: extmod/ulab/code/ndarray.c
msgid "shape must be a tuple"
msgstr ""
msgstr "vorm moet een tupel zijn"
#: py/objstr.c
msgid "sign not allowed in string format specifier"
@ -3604,6 +3666,10 @@ msgstr "time-outduur is groter dan de ondersteunde maximale waarde"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "timeout moet tussen 0.0 en 100.0 seconden zijn"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "timeout moet groter dan 0.0 zijn"
@ -3622,7 +3688,7 @@ msgstr "timestamp buiten bereik voor platform time_t"
#: extmod/ulab/code/ndarray.c
msgid "tobytes can be invoked for dense arrays only"
msgstr ""
msgstr "tobytes kunnen alleen ingeroepen worden voor gesloten arrays"
#: shared-module/struct/__init__.c
msgid "too many arguments provided with the given format"
@ -3643,7 +3709,7 @@ msgstr "trapz is gedefinieerd voor eendimensionale arrays van gelijke lengte"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "trigger level must be 0 or 1"
msgstr ""
msgstr "triggerniveau moet 0 of 1 zijn"
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
@ -3656,12 +3722,12 @@ msgstr "tuple of lijst heeft onjuiste lengte"
#: ports/esp32s2/common-hal/canio/CAN.c
#, c-format
msgid "twai_driver_install returned esp-idf error #%d"
msgstr ""
msgstr "twai_driver_install geeft esp-idf fout #%d"
#: ports/esp32s2/common-hal/canio/CAN.c
#, c-format
msgid "twai_start returned esp-idf error #%d"
msgstr ""
msgstr "twai_start geeft esp-idf error #%d"
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/esp32s2/common-hal/busio/UART.c ports/nrf/common-hal/busio/UART.c
@ -3789,11 +3855,11 @@ msgstr "vectoren moeten van gelijke lengte zijn"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "wakeup conflict"
msgstr ""
msgstr "conflict bij ontwaken"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "watchdog not initialized"
msgstr ""
msgstr "watchdog niet geïnitialiseerd"
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
@ -3809,11 +3875,11 @@ msgstr "window moet <= interval zijn"
#: extmod/ulab/code/numerical/numerical.c
msgid "wrong axis index"
msgstr ""
msgstr "foute index voor as"
#: extmod/ulab/code/ulab_create.c
msgid "wrong axis specified"
msgstr ""
msgstr "onjuiste as gespecificeerd"
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
@ -3863,6 +3929,33 @@ msgstr "zi moet van type float zijn"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi moet vorm (n_section, 2) hebben"
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Code is uitgevoerd. Wachten op herladen.\n"
#~ msgid "PinAlarm not yet implemented"
#~ msgstr "PinAlarm nog niet geïmplementeerd"
#~ msgid "Pretending to deep sleep until alarm, any key or file write.\n"
#~ msgstr ""
#~ "Simuleert diepe slaapstand tot alarm, een willekeurige toets of schrijven "
#~ "naar bestand.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr ""
#~ "De vastgelegde frequentie is boven de capaciteit. Vastleggen gepauzeerd."
#~ msgid "max_length must be > 0"
#~ msgstr "max_length moet >0 zijn"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Druk een willekeurige toets om de REPL te starten. Gebruik CTRL+D om te "
#~ "herstarten."
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Alleen IPv4 SOCK_STREAM sockets worden ondersteund"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-02 20:29+0000\n"
"Last-Translator: Maciej Stankiewicz <tawezik@gmail.com>\n"
"Language-Team: pl\n"
@ -21,10 +21,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Kod wykonany. Czekam na przeładowanie.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -394,7 +398,7 @@ msgstr "Wysyłanie jest już w toku"
msgid "Array must contain halfwords (type 'H')"
msgstr "Tablica musi zawierać pół-słowa (typ 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Wartości powinny być bajtami."
@ -506,8 +510,8 @@ msgstr "Długość bufora musi być wielokrotnością 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Bufor musi być wielokrotnością 512 bajtów"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Bufor musi mieć długość 1 lub więcej"
@ -530,7 +534,7 @@ msgstr "Nóżka magistrali %d jest w użyciu"
msgid "Byte buffer must be 16 bytes."
msgstr "Bufor musi mieć 16 bajtów."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Bytes musi być między 0 a 255."
@ -542,6 +546,18 @@ msgstr "Bloki CBC muszą być wielokrotnościami 16 bajtów"
msgid "Call super().__init__() before accessing native object."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr ""
@ -574,6 +590,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Nie można mieć obu kanałów na tej samej nóżce"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Nie można czytać bez nóżki MISO."
@ -617,6 +637,10 @@ msgstr "Wielkość skalara jest niejednoznaczna"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "Nie można zmieniać częstotliwości timera, który jest już używany"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Nie można pisać bez nóżki MOSI."
@ -948,6 +972,10 @@ msgstr "Plik istnieje"
msgid "Filters too complex"
msgstr ""
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Nie wspierany format"
@ -957,10 +985,6 @@ msgstr "Nie wspierany format"
msgid "Framebuffer requires %d bytes"
msgstr "Bufor ramki wymaga %d bajtów"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Uzyskana częstotliwość jest niemożliwa. Spauzowano."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1094,6 +1118,10 @@ msgstr ""
msgid "Invalid PWM frequency"
msgstr "Zła częstotliwość PWM"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Zły argument"
@ -1154,6 +1182,7 @@ msgstr "Zła faza"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1311,7 +1340,7 @@ msgstr "Brak DAC"
msgid "No DMA channel found"
msgstr "Nie znaleziono kanału DMA"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1469,10 +1498,14 @@ msgid ""
"%d bpp given"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr "W danym momencie przezroczysty może być tylko jeden kolor"
@ -1518,6 +1551,7 @@ msgstr "Odmowa dostępu"
msgid "Pin does not have ADC capabilities"
msgstr "Nóżka nie obsługuje ADC"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr ""
@ -1530,10 +1564,6 @@ msgstr "Pin musi obsługiwać przerwania sprzętowe"
msgid "Pin number already reserved by EXTI"
msgstr ""
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1570,8 +1600,12 @@ msgid "Prefix buffer must be on the heap"
msgstr ""
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgstr "Dowolny klawisz aby uruchomić konsolę. CTRL-D aby przeładować."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1706,7 +1740,7 @@ msgstr ""
msgid "Size not supported"
msgstr ""
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Fragment i wartość są różnych długości."
@ -1842,6 +1876,10 @@ msgstr "Zbyt wiele wyświetlaczy"
msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Ślad wyjątku (najnowsze wywołanie na końcu):\n"
@ -1921,6 +1959,10 @@ msgstr "Nie można odczytać danych palety"
msgid "Unable to write to nvm."
msgstr "Błąd zapisu do NVM."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Nieoczekiwany typ nrfx uuid"
@ -1985,6 +2027,10 @@ msgstr "Zła operacja"
msgid "Unsupported pull value."
msgstr "Zła wartość podciągnięcia."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2047,6 +2093,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr ""
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr ""
@ -2129,7 +2179,8 @@ msgstr ""
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "tablica/bytes wymagane po prawej stronie"
@ -3005,8 +3056,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr ""
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_length musi być > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3143,6 +3194,14 @@ msgstr "argument nienazwany po */**"
msgid "non-keyword arg after keyword arg"
msgstr "argument nienazwany po nazwanym"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3215,6 +3274,10 @@ msgstr "łańcuch o nieparzystej długości"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "offset poza zakresem"
@ -3228,7 +3291,7 @@ msgid "only sample_rate=16000 is supported"
msgstr ""
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "tylko fragmenty ze step=1 (lub None) są wspierane"
@ -3562,6 +3625,10 @@ msgstr ""
msgid "timeout must be 0.0-100.0 seconds"
msgstr ""
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "timeout musi być >= 0.0"
@ -3821,6 +3888,22 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Kod wykonany. Czekam na przeładowanie.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr "Uzyskana częstotliwość jest niemożliwa. Spauzowano."
#~ msgid "max_length must be > 0"
#~ msgstr "max_length musi być > 0"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr "Dowolny klawisz aby uruchomić konsolę. CTRL-D aby przeładować."
#~ msgid "number of arguments must be 2, or 3"
#~ msgstr "liczba argumentów musi wynosić 2 lub 3"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-11-30 18:06+0000\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2021-01-01 04:29+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -14,15 +14,23 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.4-dev\n"
"X-Generator: Weblate 4.4.1-dev\n"
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
"\n"
"O código concluiu a execução. Esperando pela recarga.\n"
"O código concluiu a sua execução.\n"
#: main.c
msgid ""
"\n"
"Code stopped by auto-reload.\n"
msgstr ""
"\n"
"O código parou através do auto-reload.\n"
#: supervisor/shared/safe_mode.c
msgid ""
@ -396,7 +404,7 @@ msgstr "Outro envio já está ativo"
msgid "Array must contain halfwords (type 'H')"
msgstr "Array deve conter meias palavras (tipo 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Os valores das matrizes devem ser bytes simples."
@ -512,8 +520,8 @@ msgstr "O comprimento do Buffer deve ser um múltiplo de 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "O buffer deve ser um múltiplo de 512 bytes"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "O comprimento do buffer deve ter pelo menos 1"
@ -536,7 +544,7 @@ msgstr "O pino bus %d já está em uso"
msgid "Byte buffer must be 16 bytes."
msgstr "O buffer deve ter 16 bytes."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Os bytes devem estar entre 0 e 255."
@ -548,6 +556,21 @@ msgstr "Os blocos CBC devem ter múltiplos de 16 bytes"
msgid "Call super().__init__() before accessing native object."
msgstr "Chame super().__init__() antes de acessar o objeto nativo."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr "O alarme só pode acontecer no RTC IO a partir do deep sleep."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
"O alarme só pode acontecer em um pino com nível baixo enquanto os outros "
"alarmes só com nível alto a partir do deep sleep."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
"O alarme só é possível nos dois pinos com sinal baixo a partir do deep sleep."
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "Não é possível definir o CCCD com a característica local"
@ -566,7 +589,7 @@ msgstr "Não é possível excluir valores"
#: ports/mimxrt10xx/common-hal/digitalio/DigitalInOut.c
#: ports/nrf/common-hal/digitalio/DigitalInOut.c
msgid "Cannot get pull while in output mode"
msgstr "Não é possível obter pull enquanto está modo de saída"
msgstr "Não é possível obter (pull) enquanto estiver no modo saída"
#: ports/nrf/common-hal/microcontroller/Processor.c
msgid "Cannot get temperature"
@ -582,6 +605,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Não é possível emitir os dois canais no mesmo pino"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr "Não é possível obter (pull) nos pinos somente de entrada."
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Não é possível ler sem o pino MISO."
@ -626,6 +653,10 @@ msgstr "Não é possível obter inequivocamente o tamanho do escalar"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "Não é possível variar a frequência em um timer que já esteja em uso"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr "Não é possível acordar (wake) no pino edge. Nível apenas."
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Não é possível fazer a escrita sem um pino MOSI."
@ -868,7 +899,7 @@ msgstr "Um endereço esperado"
#: shared-bindings/alarm/__init__.c
msgid "Expected an alarm"
msgstr ""
msgstr "Um alarme era esperado"
#: shared-module/_pixelbuf/PixelBuf.c
#, c-format
@ -957,6 +988,10 @@ msgstr "Arquivo já existe"
msgid "Filters too complex"
msgstr "Os filtros são muito complexos"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr "A imagem do firmware é invalida"
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "O formato não é suportado"
@ -966,11 +1001,6 @@ msgstr "O formato não é suportado"
msgid "Framebuffer requires %d bytes"
msgstr "O Framebuffer requer %d bytes"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr ""
"A frequência capturada está acima da capacidade. A captura está em pausa."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr ""
@ -1019,7 +1049,7 @@ msgstr "O I2SOut não está disponível"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "IOs 0, 2 & 4 do not support internal pullup in sleep"
msgstr ""
msgstr "IOs 0, 2 e 4 não suportam pullup interno em repouso (sleep)"
#: shared-bindings/aesio/aes.c
#, c-format
@ -1105,6 +1135,10 @@ msgstr "O pino DAC informado é inválido"
msgid "Invalid PWM frequency"
msgstr "Frequência PWM inválida"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr "Pino inválido"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Argumento inválido"
@ -1165,6 +1199,7 @@ msgstr "Fase Inválida"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1319,12 +1354,12 @@ msgstr "Nenhum DAC no chip"
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
msgid "No DMA channel found"
msgstr "Nenhum canal DMA encontrado"
msgstr "Nenhum canal DMA foi encontrado"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
msgstr "Nenhum dispositivo I2C no endereço: %x"
#: ports/esp32s2/common-hal/busio/SPI.c ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c
@ -1484,9 +1519,13 @@ msgstr ""
"São compatíveis apenas os BMPs monocromáticos, indexados em 4bpp ou 8bpp e "
"16bpp ou superior: determinado %d bpp"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
msgstr "Apenas um alarme alarm.time pode ser definido."
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr "Apenas um alarme alarm.touch pode ser definido."
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
@ -1537,6 +1576,7 @@ msgstr "Permissão negada"
msgid "Pin does not have ADC capabilities"
msgstr "O pino não tem recursos de ADC"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "Apenas o pino de entrada"
@ -1549,10 +1589,6 @@ msgstr "O pino deve ser compatível com as interrupções do hardware"
msgid "Pin number already reserved by EXTI"
msgstr "Número do PIN já está reservado através da EXTI"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1598,9 +1634,15 @@ msgstr ""
"(heap)"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
"Pressione qualquer tecla para entrar no REPL. Use CTRL-D para recarregar."
"Pressione qualquer tecla para entrar no REPL. Use CTRL-D para recarregar.\n"
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Tentando entrar no deep sleep até o alarme, pressione CTRL-C ou grave o "
"arquivo.\n"
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1735,7 +1777,7 @@ msgstr "O contexto do lado do servidor não pode ter nome de host"
msgid "Size not supported"
msgstr "O tamanho não é suportado"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Fatie e avalie os diferentes comprimentos."
@ -1772,7 +1814,7 @@ msgstr "Forneça pelo menos um pino UART"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Supply one of monotonic_time or epoch_time"
msgstr ""
msgstr "Forneça um de monotonic_time ou de epoch_time"
#: shared-bindings/gnss/GNSS.c
msgid "System entry must be gnss.SatelliteSystem"
@ -1848,7 +1890,7 @@ msgstr "A largura do bloco deve dividir exatamente com a largura do bitmap"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Time is in the past."
msgstr ""
msgstr "O tempo está no passado."
#: ports/nrf/common-hal/_bleio/Adapter.c
#, c-format
@ -1885,6 +1927,10 @@ msgid "Total data to write is larger than outgoing_packet_length"
msgstr ""
"O total dos dados que serão gravados é maior que outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr "O TouchAlarm não está disponívle no modo light sleep"
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (a última chamada mais recente):\n"
@ -1964,6 +2010,10 @@ msgstr "Não foi possível ler os dados da paleta de cores"
msgid "Unable to write to nvm."
msgstr "Não é possível gravar no nvm."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr "Não foi possível escrever no sleep_memory."
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Tipo uuid nrfx inesperado"
@ -2030,6 +2080,10 @@ msgstr "Operação não suportada"
msgid "Unsupported pull value."
msgstr "O valor pull não é compatível."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr "A atualização falou"
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2096,6 +2150,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "A senha do Wi-Fi deve ter entre 8 e 63 caracteres"
#: main.c
msgid "Woken up by alarm.\n"
msgstr "Foi despertado através do alarme.\n"
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "A escrita não é compatível na Característica"
@ -2178,7 +2236,8 @@ msgstr "os argumentos devem ser ndarrays"
msgid "array and index length must be equal"
msgstr "a matriz e comprimento do índice devem ser iguais"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "matriz/bytes são necessários no lado direito"
@ -2592,7 +2651,7 @@ msgstr "end_x deve ser um int"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "epoch_time not supported on this board"
msgstr ""
msgstr "O epoch_time não é compatível com esta placa"
#: ports/nrf/common-hal/busio/UART.c
#, c-format
@ -2965,7 +3024,7 @@ msgstr "sintaxe inválida para o número"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "io must be rtc io"
msgstr ""
msgstr "O io deve ser rtc io"
#: py/objtype.c
msgid "issubclass() arg 1 must be a class"
@ -3065,8 +3124,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "o max_length deve ser 0-%d quando Fixed_length for %s"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_length deve ser > 0"
msgid "max_length must be >= 0"
msgstr "max_length deve ser >= 0"
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3205,6 +3264,14 @@ msgstr "um arg sem palavra-chave após */ **"
msgid "non-keyword arg after keyword arg"
msgstr "um arg não-palavra-chave após a palavra-chave arg"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr "o tempo limite não zero deve ser > 0.01"
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr "o tempo limite não zero deve ser >= intervalo"
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr "a norma é definida para matrizes 1D e 2D"
@ -3277,6 +3344,10 @@ msgstr "sequência com comprimento ímpar"
msgid "offset is too large"
msgstr "o offset é muito grande"
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr "o offset deve ser >= 0"
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "desvio fora dos limites"
@ -3290,7 +3361,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "apenas sample_rate = 16000 é compatível"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
"apenas fatias com a etapa=1 (também conhecida como Nenhuma) são compatíveis"
@ -3629,6 +3700,10 @@ msgstr "a duração do tempo limite excedeu o valor máximo suportado"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "o tempo limite deve ser entre 0.0 a 100.0 segundos"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr "o tempo limite deve ser < 655.35 seg"
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "o tempo limite deve ser >= 0,0"
@ -3668,7 +3743,7 @@ msgstr "o trapz está definido para 1D arrays de igual tamanho"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "trigger level must be 0 or 1"
msgstr ""
msgstr "nível do gatilho deve ser 0 ou 1"
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
@ -3814,7 +3889,7 @@ msgstr "os vetores devem ter os mesmos comprimentos"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "wakeup conflict"
msgstr ""
msgstr "conflito de wakeup"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "watchdog not initialized"
@ -3888,6 +3963,32 @@ msgstr "zi deve ser de um tipo float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi deve estar na forma (n_section, 2)"
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "O código concluiu a execução. Esperando pela recarga.\n"
#~ msgid "PinAlarm not yet implemented"
#~ msgstr "PinAlarm ainda não foi implementado"
#~ msgid "Pretending to deep sleep until alarm, any key or file write.\n"
#~ msgstr ""
#~ "Simular o deep sleep até o alarme, até qualquer chave ou até a escrita do "
#~ "arquivo.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr ""
#~ "A frequência capturada está acima da capacidade. A captura está em pausa."
#~ msgid "max_length must be > 0"
#~ msgstr "max_length deve ser > 0"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Pressione qualquer tecla para entrar no REPL. Use CTRL-D para recarregar."
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "São suportados apenas soquetes IPv4 SOCK_STREAM"

View File

@ -5,8 +5,8 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"PO-Revision-Date: 2020-11-30 18:06+0000\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-12-28 17:59+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sv\n"
@ -14,15 +14,19 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.4-dev\n"
"X-Generator: Weblate 4.4.1-dev\n"
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Koden har kört klart. Väntar på omladdning.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -392,7 +396,7 @@ msgstr "En annan send är redan aktiv"
msgid "Array must contain halfwords (type 'H')"
msgstr "Matrisen måste innehålla halfwords (typ \"H\")"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Matrisvärden ska bestå av enstaka bytes."
@ -504,8 +508,8 @@ msgstr "Buffertlängd måste vara en multipel av 512"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Bufferten måste vara en multipel av 512 byte"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Bufferten måste ha minst längd 1"
@ -528,7 +532,7 @@ msgstr "Busspinne %d används redan"
msgid "Byte buffer must be 16 bytes."
msgstr "Byte-buffert måste vara 16 byte."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Bytes måste vara mellan 0 och 255."
@ -540,6 +544,18 @@ msgstr "CBC-block måste vara multiplar om 16 byte"
msgid "Call super().__init__() before accessing native object."
msgstr "Anropa super().__init__() innan du använder det ursprungliga objektet."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "Kan inte ställa in CCCD på lokal karaktäristik"
@ -573,6 +589,10 @@ msgstr ""
msgid "Cannot output both channels on the same pin"
msgstr "Det går inte att mata ut båda kanalerna på samma pinne"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Kan inte läsa utan MISO-pinne."
@ -617,6 +637,10 @@ msgstr "Kan inte entydigt få sizeof scalar"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "Det går inte att ändra frekvensen på en timer som redan används"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Kan inte skriva utan MOSI-pinne."
@ -859,7 +883,7 @@ msgstr "Förväntade en adress"
#: shared-bindings/alarm/__init__.c
msgid "Expected an alarm"
msgstr ""
msgstr "Förväntade ett larm"
#: shared-module/_pixelbuf/PixelBuf.c
#, c-format
@ -948,6 +972,10 @@ msgstr "Filen finns redan"
msgid "Filters too complex"
msgstr "Filter för komplexa"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr "Firmware-avbilden är ogiltig"
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Formatet stöds inte"
@ -957,10 +985,6 @@ msgstr "Formatet stöds inte"
msgid "Framebuffer requires %d bytes"
msgstr "Framebuffer kräver %d byte"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Infångningsfrekvens är för hög. Infångning pausad."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr "Frekvensen måste matcha befintlig PWMOut med denna timer"
@ -1008,7 +1032,7 @@ msgstr "I2SOut är inte tillgängligt"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "IOs 0, 2 & 4 do not support internal pullup in sleep"
msgstr ""
msgstr "IO 0, 2 & 4 stöder inte intern pullup för sovläge"
#: shared-bindings/aesio/aes.c
#, c-format
@ -1094,6 +1118,10 @@ msgstr "Ogiltig DAC-pinne angiven"
msgid "Invalid PWM frequency"
msgstr "Ogiltig PWM-frekvens"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr "Ogiltig pinne"
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Ogiltigt argument"
@ -1154,6 +1182,7 @@ msgstr "Ogiltig fas"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1311,10 +1340,10 @@ msgstr "Ingen DAC på chipet"
msgid "No DMA channel found"
msgstr "Ingen DMA-kanal hittades"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
msgstr "Ingen I2C-enhet på adress: %x"
#: ports/esp32s2/common-hal/busio/SPI.c ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/stm/common-hal/busio/SPI.c
@ -1474,8 +1503,12 @@ msgstr ""
"Endast monokrom, indexerad 4 bpp eller 8 bpp och 16 bpp eller högre BMP: er "
"stöds: %d bpp angiven"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr "Endast ett alarm.time kan ställas in."
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
@ -1525,6 +1558,7 @@ msgstr "Åtkomst nekad"
msgid "Pin does not have ADC capabilities"
msgstr "Pinnen har inte ADC-funktionalitet"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "Pinnen är enbart ingång"
@ -1537,10 +1571,6 @@ msgstr "Pinnen måste stödja hårdvaruavbrott"
msgid "Pin number already reserved by EXTI"
msgstr "PInn-nummer redan reserverat av EXTI"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1584,9 +1614,14 @@ msgid "Prefix buffer must be on the heap"
msgstr "Prefixbufferten måste finnas på heap"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
"Tryck på valfri tangent för att gå in i REPL. Använd CTRL-D för att ladda "
"om.\n"
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
"Tryck på valfri knapp för att gå in i REPL. Använd CTRL-D för att ladda om."
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1721,7 +1756,7 @@ msgstr "Serversidans kontext kan inte ha värdnamn"
msgid "Size not supported"
msgstr "Storleken stöds inte"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Slice och värde har olika längd."
@ -1758,7 +1793,7 @@ msgstr "Ange minst en UART-pinne"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Supply one of monotonic_time or epoch_time"
msgstr ""
msgstr "Ange en av monotonic_time eller epoch_time"
#: shared-bindings/gnss/GNSS.c
msgid "System entry must be gnss.SatelliteSystem"
@ -1833,7 +1868,7 @@ msgstr "Tile-bredd måste vara jämnt delbar med bredd på bitmap"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "Time is in the past."
msgstr ""
msgstr "Tid har passerats."
#: ports/nrf/common-hal/_bleio/Adapter.c
#, c-format
@ -1867,6 +1902,10 @@ msgstr "För många displayer"
msgid "Total data to write is larger than outgoing_packet_length"
msgstr "Total data som ska skrivas är större än outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (senaste anrop):\n"
@ -1946,6 +1985,10 @@ msgstr "Det går inte att läsa färgpalettdata"
msgid "Unable to write to nvm."
msgstr "Det gick inte att skriva till nvm."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr "Det gick inte att skriva till sleep_memory."
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Oväntad nrfx uuid-typ"
@ -2012,6 +2055,10 @@ msgstr "Åtgärd som inte stöds"
msgid "Unsupported pull value."
msgstr "Ogiltigt Pull-värde."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr "Uppdateringen misslyckades"
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2074,6 +2121,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "WiFi-lösenord måste vara mellan 8 och 63 tecken"
#: main.c
msgid "Woken up by alarm.\n"
msgstr "Vaknade av larm.\n"
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Skrivning stöds inte på karaktäristik"
@ -2156,7 +2207,8 @@ msgstr "argumenten måste vara ndarray"
msgid "array and index length must be equal"
msgstr "array och indexlängd måste vara lika"
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "array/bytes krävs på höger sida"
@ -2566,7 +2618,7 @@ msgstr "color ska vara en int"
#: shared-bindings/alarm/time/TimeAlarm.c
msgid "epoch_time not supported on this board"
msgstr ""
msgstr "epoch_time stöds inte av detta kort"
#: ports/nrf/common-hal/busio/UART.c
#, c-format
@ -2939,7 +2991,7 @@ msgstr "ogiltig syntax för tal"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "io must be rtc io"
msgstr ""
msgstr "io måste vara rtc io"
#: py/objtype.c
msgid "issubclass() arg 1 must be a class"
@ -3039,8 +3091,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "max_length måste vara 0-%d när fixed_length är %s"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "max_length måste vara > 0"
msgid "max_length must be >= 0"
msgstr "max_length måste vara >= 0"
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3177,6 +3229,14 @@ msgstr "icke nyckelord arg efter * / **"
msgid "non-keyword arg after keyword arg"
msgstr "icke nyckelord arg efter nyckelord arg"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr "Icke-noll timeout måste vara > 0.01"
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr "Icke-noll timeout måste vara >= intervall"
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr "norm är definierad för 1D- och 2D-matriser"
@ -3249,6 +3309,10 @@ msgstr "sträng har udda längd"
msgid "offset is too large"
msgstr "offset är för stor"
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr "offset måste vara >= 0"
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "offset utanför gränserna"
@ -3262,7 +3326,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "enbart sample_rate=16000 stöds"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "endast segment med steg=1 (aka Ingen) stöds"
@ -3597,6 +3661,10 @@ msgstr "timeout-längd överskred det maximala värde som stöds"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "timeout måste vara 0.0-100.0 sekunder"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr "timeout måste vara < 655,35 sekunder"
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "timeout måste vara >= 0.0"
@ -3636,7 +3704,7 @@ msgstr "trapz är definierad för 1D-matriser med samma längd"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "trigger level must be 0 or 1"
msgstr ""
msgstr "triggernivå måste vara 0 eller 1"
#: extmod/ulab/code/linalg/linalg.c
msgid "tuple index out of range"
@ -3782,7 +3850,7 @@ msgstr "vektorer måste ha samma längd"
#: ports/esp32s2/common-hal/alarm/pin/__init__.c
msgid "wakeup conflict"
msgstr ""
msgstr "wakeup-konflikt"
#: ports/esp32s2/common-hal/watchdog/WatchDogTimer.c
msgid "watchdog not initialized"
@ -3856,6 +3924,30 @@ msgstr "zi måste vara av typ float"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi måste vara i formen (n_section, 2)"
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Koden har kört klart. Väntar på omladdning.\n"
#~ msgid "PinAlarm not yet implemented"
#~ msgstr "PinAlarm är inte implementerat ännu"
#~ msgid "Pretending to deep sleep until alarm, any key or file write.\n"
#~ msgstr "Fingerar djup sömn tills larm, valfri tangent eller filskrivning.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr "Infångningsfrekvens är för hög. Infångning pausad."
#~ msgid "max_length must be > 0"
#~ msgstr "max_length måste vara > 0"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr ""
#~ "Tryck på valfri knapp för att gå in i REPL. Använd CTRL-D för att ladda "
#~ "om."
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Endast IPv4 SOCK_STREAM sockets stöds"

View File

@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: circuitpython-cn\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-11-27 23:57-0500\n"
"POT-Creation-Date: 2020-12-22 22:54+0530\n"
"PO-Revision-Date: 2020-11-19 01:28+0000\n"
"Last-Translator: hexthat <hexthat@gmail.com>\n"
"Language-Team: Chinese Hanyu Pinyin\n"
@ -20,10 +20,14 @@ msgstr ""
#: main.c
msgid ""
"\n"
"Code done running. Waiting for reload.\n"
"Code done running.\n"
msgstr ""
#: main.c
msgid ""
"\n"
"Dàimǎ yǐ wánchéng yùnxíng. Zhèngzài děngdài chóngxīn jiāzài.\n"
"Code stopped by auto-reload.\n"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid ""
@ -394,7 +398,7 @@ msgstr "Lìng yīgè fāsòng yǐjīng jīhuó"
msgid "Array must contain halfwords (type 'H')"
msgstr "Shùzǔ bìxū bāohán bàn zìshù (type 'H')"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Array values should be single bytes."
msgstr "Shùzǔ zhí yīnggāi shì dāngè zì jié."
@ -506,8 +510,8 @@ msgstr "Huǎn chōng qū cháng dù bì xū wéi 512 de bèi shù"
msgid "Buffer must be a multiple of 512 bytes"
msgstr "Huǎn chōng qū bì xū shì 512 zì jié de bèi shù"
#: shared-bindings/bitbangio/I2C.c shared-bindings/busdevice/I2CDevice.c
#: shared-bindings/busio/I2C.c
#: shared-bindings/adafruit_bus_device/I2CDevice.c
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Huǎnchōng qū bìxū zhìshǎo chángdù 1"
@ -530,7 +534,7 @@ msgstr "Zǒngxiàn yǐn jiǎo %d yǐ zài shǐyòng zhōng"
msgid "Byte buffer must be 16 bytes."
msgstr "Zì jié huǎnchōng qū bìxū shì 16 zì jié."
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Bytes must be between 0 and 255."
msgstr "Zì jié bìxū jiè yú 0 dào 255 zhī jiān."
@ -542,6 +546,18 @@ msgstr "CBC kuài bì xū shì 16 zì jié de bèi shù"
msgid "Call super().__init__() before accessing native object."
msgstr "Zài fǎngwèn běn jī wùjiàn zhīqián diàoyòng super().__init__()."
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on RTC IO from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on one low pin while others alarm high from deep sleep."
msgstr ""
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Can only alarm on two low pins from deep sleep."
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
msgid "Can't set CCCD on local Characteristic"
msgstr "Wúfǎ jiāng CCCD shèzhì wéi běndì tèzhēng"
@ -574,6 +590,10 @@ msgstr "Nín wúfǎ sǎomiáo kuòzhǎn de, kě liánjiē de guǎnggào."
msgid "Cannot output both channels on the same pin"
msgstr "Wúfǎ shūchū tóng yīgè yǐn jiǎo shàng de liǎng gè píndào"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot pull on input-only pin."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot read without MISO pin."
msgstr "Wúfǎ dòu qǔ méiyǒu MISO de yǐn jiǎo."
@ -617,6 +637,10 @@ msgstr "Wúfǎ míngquè de huòdé biāoliàng de dàxiǎo"
msgid "Cannot vary frequency on a timer that is already in use"
msgstr "Wúfǎ gēnggǎi yǐ zài shǐyòng de jìshí qì shàng de pínlǜ"
#: ports/esp32s2/common-hal/alarm/pin/PinAlarm.c
msgid "Cannot wake on pin edge. Only level."
msgstr ""
#: shared-module/bitbangio/SPI.c
msgid "Cannot write without MOSI pin."
msgstr "Wúfǎ xiě rù MOSI de yǐn jiǎo."
@ -946,6 +970,10 @@ msgstr "Wénjiàn cúnzài"
msgid "Filters too complex"
msgstr "guò lǜ qì tài fù zá"
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Firmware image is invalid"
msgstr ""
#: ports/cxd56/common-hal/camera/Camera.c
msgid "Format not supported"
msgstr "Bù zhīyuán géshì"
@ -955,10 +983,6 @@ msgstr "Bù zhīyuán géshì"
msgid "Framebuffer requires %d bytes"
msgstr "zhēn huǎn chōng qū xū yào %d zì jié"
#: ports/atmel-samd/common-hal/frequencyio/FrequencyIn.c
msgid "Frequency captured is above capability. Capture Paused."
msgstr "Pínlǜ bǔhuò gāo yú nénglì. Bǔhuò zàntíng."
#: ports/stm/common-hal/pwmio/PWMOut.c
msgid "Frequency must match existing PWMOut using this timer"
msgstr "Pínlǜ bìxū yǔ shǐyòng cǐ jìshí qì de xiàn yǒu PWMOut xiāng pǐpèi"
@ -1092,6 +1116,10 @@ msgstr "Tí gōng liǎo wúxiào de DAC yǐn jiǎo"
msgid "Invalid PWM frequency"
msgstr "Wúxiào de PWM pínlǜ"
#: ports/esp32s2/common-hal/analogio/AnalogIn.c
msgid "Invalid Pin"
msgstr ""
#: py/moduerrno.c shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid argument"
msgstr "Wúxiào de cānshù"
@ -1152,6 +1180,7 @@ msgstr "Jiēduàn wúxiào"
#: ports/atmel-samd/common-hal/audioio/AudioOut.c
#: ports/atmel-samd/common-hal/touchio/TouchIn.c
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
#: ports/esp32s2/common-hal/touchio/TouchIn.c shared-bindings/pwmio/PWMOut.c
#: shared-module/rgbmatrix/RGBMatrix.c
msgid "Invalid pin"
@ -1308,7 +1337,7 @@ msgstr "Méiyǒu DAC zài xīnpiàn shàng de"
msgid "No DMA channel found"
msgstr "Wèi zhǎodào DMA píndào"
#: shared-module/busdevice/I2CDevice.c
#: shared-module/adafruit_bus_device/I2CDevice.c
#, c-format
msgid "No I2C device at address: %x"
msgstr ""
@ -1471,10 +1500,14 @@ msgstr ""
"Jǐn zhīchí dān sè, suǒyǐn wéi 4bpp huò 8bpp yǐjí 16bpp huò gèng gāo de BMP: "
"Gěi chū %d bpp"
#: ports/esp32s2/common-hal/alarm/__init__.c
#: ports/esp32s2/common-hal/alarm/time/TimeAlarm.c
msgid "Only one alarm.time alarm can be set."
msgstr ""
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "Only one alarm.touch alarm can be set."
msgstr ""
#: shared-module/displayio/ColorConverter.c
msgid "Only one color can be transparent at a time"
msgstr "Yīcì zhǐ néng yǒuyī zhǒng yánsè shì tòumíng de"
@ -1521,6 +1554,7 @@ msgstr "Quánxiàn bèi jùjué"
msgid "Pin does not have ADC capabilities"
msgstr "Pin méiyǒu ADC nénglì"
#: shared-bindings/adafruit_bus_device/SPIDevice.c
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pin is input only"
msgstr "Yǐn jiǎo jǐn shūrù"
@ -1533,10 +1567,6 @@ msgstr "Yǐn jiǎo bìxū zhīchí yìngjiàn zhōngduàn"
msgid "Pin number already reserved by EXTI"
msgstr "Zhēn hào yǐ bèi EXTI bǎoliú"
#: ports/esp32s2/common-hal/alarm/__init__.c
msgid "PinAlarm not yet implemented"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid ""
@ -1577,8 +1607,12 @@ msgid "Prefix buffer must be on the heap"
msgstr "Qiánzhuì huǎnchōng qū bìxū zài duī shàng"
#: main.c
msgid "Press any key to enter the REPL. Use CTRL-D to reload."
msgstr "Àn xià rènhé jiàn jìnrù REPL. Shǐyòng CTRL-D chóngxīn jiāzài."
msgid "Press any key to enter the REPL. Use CTRL-D to reload.\n"
msgstr ""
#: main.c
msgid "Pretending to deep sleep until alarm, CTRL-C or file write.\n"
msgstr ""
#: shared-bindings/digitalio/DigitalInOut.c
msgid "Pull not used when direction is output."
@ -1713,7 +1747,7 @@ msgstr "Fúwùqì duān shàngxiàwén bùnéng jùyǒu zhǔjī míng"
msgid "Size not supported"
msgstr "bù zhī chí dà xiǎo"
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "Slice and value different lengths."
msgstr "Qiēpiàn hé zhí bùtóng chángdù."
@ -1858,6 +1892,10 @@ msgstr "Xiǎnshì tài duō"
msgid "Total data to write is larger than outgoing_packet_length"
msgstr "Yào xiě rù de zǒng shùjù dàyú outgoing_packet_length"
#: ports/esp32s2/common-hal/alarm/touch/TouchAlarm.c
msgid "TouchAlarm not available in light sleep"
msgstr ""
#: py/obj.c
msgid "Traceback (most recent call last):\n"
msgstr "Traceback (Zuìjìn yīcì dǎ diànhuà):\n"
@ -1937,6 +1975,10 @@ msgstr "Wúfǎ dòu qǔ sè tiáo shùjù"
msgid "Unable to write to nvm."
msgstr "Wúfǎ xiě rù nvm."
#: shared-bindings/alarm/SleepMemory.c
msgid "Unable to write to sleep_memory."
msgstr ""
#: ports/nrf/common-hal/_bleio/UUID.c
msgid "Unexpected nrfx uuid type"
msgstr "Yìwài de nrfx uuid lèixíng"
@ -2003,6 +2045,10 @@ msgstr "Bù zhīchí de cāozuò"
msgid "Unsupported pull value."
msgstr "Bù zhīchí de lādòng zhí."
#: ports/esp32s2/common-hal/dualbank/__init__.c
msgid "Update Failed"
msgstr ""
#: ports/nrf/common-hal/_bleio/Characteristic.c
#: ports/nrf/common-hal/_bleio/Descriptor.c
msgid "Value length != required fixed length"
@ -2066,6 +2112,10 @@ msgstr ""
msgid "WiFi password must be between 8 and 63 characters"
msgstr "WiFi mìmǎ bìxū jiè yú 8 dào 63 gè zìfú zhī jiān"
#: main.c
msgid "Woken up by alarm.\n"
msgstr ""
#: ports/nrf/common-hal/_bleio/PacketBuffer.c
msgid "Writes not supported on Characteristic"
msgstr "Tèzhēng bù zhīchí xiě rù"
@ -2148,7 +2198,8 @@ msgstr "cānshù bìxū shì ndarrays"
msgid "array and index length must be equal"
msgstr ""
#: py/objarray.c shared-bindings/nvm/ByteArray.c
#: py/objarray.c shared-bindings/alarm/SleepMemory.c
#: shared-bindings/nvm/ByteArray.c
msgid "array/bytes required on right side"
msgstr "yòu cè xūyào shùzǔ/zì jié"
@ -3029,8 +3080,8 @@ msgid "max_length must be 0-%d when fixed_length is %s"
msgstr "Dāng gùdìng chángdù wèi %s shí, zuìdà chángdù bìxū wèi 0-%d"
#: shared-bindings/_bleio/Characteristic.c shared-bindings/_bleio/Descriptor.c
msgid "max_length must be > 0"
msgstr "Max_length bìxū > 0"
msgid "max_length must be >= 0"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "maximum number of dimensions is 4"
@ -3167,6 +3218,14 @@ msgstr "zài */** zhīhòu fēi guānjiàn cí cānshù"
msgid "non-keyword arg after keyword arg"
msgstr "guānjiàn zì cānshù zhīhòu de fēi guānjiàn zì cānshù"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "non-zero timeout must be > 0.01"
msgstr ""
#: shared-bindings/_bleio/Adapter.c
msgid "non-zero timeout must be >= interval"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "norm is defined for 1D and 2D arrays"
msgstr ""
@ -3239,6 +3298,10 @@ msgstr "jīshù zìfú chuàn"
msgid "offset is too large"
msgstr ""
#: shared-bindings/dualbank/__init__.c
msgid "offset must be >= 0"
msgstr ""
#: py/objstr.c py/objstrunicode.c
msgid "offset out of bounds"
msgstr "piānlí biānjiè"
@ -3252,7 +3315,7 @@ msgid "only sample_rate=16000 is supported"
msgstr "Jǐn zhīchí cǎiyàng lǜ = 16000"
#: py/objarray.c py/objstr.c py/objstrunicode.c py/objtuple.c
#: shared-bindings/nvm/ByteArray.c
#: shared-bindings/alarm/SleepMemory.c shared-bindings/nvm/ByteArray.c
msgid "only slices with step=1 (aka None) are supported"
msgstr "jǐn zhīchí bù zhǎng = 1(jí wú) de qiēpiàn"
@ -3586,6 +3649,10 @@ msgstr "chāoshí shíjiān chāoguò zuìdà zhīchí zhí"
msgid "timeout must be 0.0-100.0 seconds"
msgstr "Chāo shí shíjiān bìxū wèi 0.0 Dào 100.0 Miǎo"
#: ports/nrf/common-hal/_bleio/Adapter.c
msgid "timeout must be < 655.35 secs"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
msgid "timeout must be >= 0.0"
msgstr "chāoshí bìxū shì >= 0.0"
@ -3845,6 +3912,22 @@ msgstr "zi bìxū wèi fú diǎn xíng"
msgid "zi must be of shape (n_section, 2)"
msgstr "zi bìxū jùyǒu xíngzhuàng (n_section,2)"
#~ msgid ""
#~ "\n"
#~ "Code done running. Waiting for reload.\n"
#~ msgstr ""
#~ "\n"
#~ "Dàimǎ yǐ wánchéng yùnxíng. Zhèngzài děngdài chóngxīn jiāzài.\n"
#~ msgid "Frequency captured is above capability. Capture Paused."
#~ msgstr "Pínlǜ bǔhuò gāo yú nénglì. Bǔhuò zàntíng."
#~ msgid "max_length must be > 0"
#~ msgstr "Max_length bìxū > 0"
#~ msgid "Press any key to enter the REPL. Use CTRL-D to reload."
#~ msgstr "Àn xià rènhé jiàn jìnrù REPL. Shǐyòng CTRL-D chóngxīn jiāzài."
#~ msgid "Only IPv4 SOCK_STREAM sockets supported"
#~ msgstr "Jǐn zhīchí IPv4 SOCK_STREAM tào jiē zì"

39
main.c
View File

@ -112,9 +112,6 @@ STATIC void start_mp(supervisor_allocation* heap) {
reset_status_led();
autoreload_stop();
supervisor_workflow_reset();
#if CIRCUITPY_ALARM
alarm_reset();
#endif
// Stack limit should be less than real stack size, so we have a chance
// to recover from limit hit. (Limit is measured in bytes.)
@ -158,6 +155,13 @@ STATIC void start_mp(supervisor_allocation* heap) {
mp_obj_list_init(mp_sys_argv, 0);
#if CIRCUITPY_ALARM
// Record which alarm woke us up, if any. An object may be created so the heap must be functional.
alarm_save_wake_alarm();
// Reset alarm module only after we retrieved the wakeup alarm.
alarm_reset();
#endif
#if CIRCUITPY_NETWORK
network_module_init();
#endif
@ -256,10 +260,10 @@ STATIC void print_code_py_status_message(safe_mode_t safe_mode) {
STATIC bool run_code_py(safe_mode_t safe_mode) {
bool serial_connected_at_start = serial_connected();
#if CIRCUITPY_AUTORELOAD_DELAY_MS > 0
if (serial_connected_at_start) {
serial_write("\n");
print_code_py_status_message(safe_mode);
}
serial_write("\n");
print_code_py_status_message(safe_mode);
print_safe_mode_message(safe_mode);
serial_write("\n");
#endif
pyexec_result_t result;
@ -285,6 +289,7 @@ STATIC bool run_code_py(safe_mode_t safe_mode) {
filesystem_flush();
supervisor_allocation* heap = allocate_remaining_memory();
start_mp(heap);
found_main = maybe_run_list(supported_filenames, &result);
#if CIRCUITPY_FULL_BUILD
if (!found_main){
@ -302,16 +307,17 @@ STATIC bool run_code_py(safe_mode_t safe_mode) {
if (result.return_code & PYEXEC_FORCED_EXIT) {
return reload_requested;
}
if (reload_requested && result.return_code == PYEXEC_EXCEPTION) {
serial_write_compressed(translate("\nCode stopped by auto-reload.\n"));
} else {
serial_write_compressed(translate("\nCode done running.\n"));
}
}
// Program has finished running.
// Display a different completion message if the user has no USB attached (cannot save files)
if (!serial_connected_at_start) {
serial_write_compressed(translate("\nCode done running. Waiting for reload.\n"));
}
bool serial_connected_before_animation = false;
bool serial_connected_before_animation = serial_connected();
#if CIRCUITPY_DISPLAYIO
bool refreshed_epaper_display = false;
#endif
@ -354,7 +360,6 @@ STATIC bool run_code_py(safe_mode_t safe_mode) {
serial_write_compressed(translate("Woken up by alarm.\n"));
board_init();
supervisor_set_run_reason(RUN_REASON_STARTUP);
// TODO: Reset any volatile memory the user may have access to.
return true;
}
#endif
@ -405,7 +410,7 @@ STATIC bool run_code_py(safe_mode_t safe_mode) {
alarm_enter_deep_sleep();
// Does not return.
} else {
serial_write_compressed(translate("Pretending to deep sleep until alarm, any key or file write.\n"));
serial_write_compressed(translate("Pretending to deep sleep until alarm, CTRL-C or file write.\n"));
}
}
}
@ -611,6 +616,10 @@ void gc_collect(void) {
background_callback_gc_collect();
#if CIRCUITPY_ALARM
common_hal_alarm_gc_collect();
#endif
#if CIRCUITPY_DISPLAYIO
displayio_gc_collect();
#endif

View File

@ -94,21 +94,21 @@ endif
ifeq ($(CHIP_FAMILY), samd51)
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
OPTIMIZATION_FLAGS ?= -O2
OPTIMIZATION_FLAGS ?= -O2 -fno-inline-functions
# TinyUSB defines
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAMD51 -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
endif
ifeq ($(CHIP_FAMILY), same51)
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
OPTIMIZATION_FLAGS ?= -O2
OPTIMIZATION_FLAGS ?= -O2 -fno-inline-functions
# TinyUSB defines
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAME5X -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
endif
ifeq ($(CHIP_FAMILY), same54)
PERIPHERALS_CHIP_FAMILY=sam_d5x_e5x
OPTIMIZATION_FLAGS ?= -O2
OPTIMIZATION_FLAGS ?= -O2 -fno-inline-functions
# TinyUSB defines
CFLAGS += -DCFG_TUSB_MCU=OPT_MCU_SAME5X -DCFG_TUD_MIDI_RX_BUFSIZE=128 -DCFG_TUD_CDC_RX_BUFSIZE=256 -DCFG_TUD_MIDI_TX_BUFSIZE=128 -DCFG_TUD_CDC_TX_BUFSIZE=256 -DCFG_TUD_MSC_BUFSIZE=1024
endif
@ -116,6 +116,9 @@ endif
# option to override default optimization level, set in boards/$(BOARD)/mpconfigboard.mk
CFLAGS += $(OPTIMIZATION_FLAGS)
# Add -ftree-vrp optimization and checking to all builds. It's not enabled for -Os by default.
CFLAGS += -ftree-vrp
$(echo PERIPHERALS_CHIP_FAMILY=$(PERIPHERALS_CHIP_FAMILY))
#Debugging/Optimization
ifeq ($(DEBUG), 1)

View File

@ -22,6 +22,7 @@ CIRCUITPY_GAMEPAD = 1
CIRCUITPY_BUSDEVICE = 1
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_HID
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_SD
#FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_ADXL34x

View File

@ -9,3 +9,5 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0

View File

@ -21,6 +21,7 @@ CFLAGS_INLINE_LIMIT = 50
CIRCUITPY_MSGPACK = 0
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Crickit
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Motor
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -28,4 +28,5 @@ CFLAGS_INLINE_LIMIT = 35
SUPEROPT_GC = 0
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_RFM69

View File

@ -29,4 +29,5 @@ CFLAGS_INLINE_LIMIT = 35
SUPEROPT_GC = 0
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_RFM9x

View File

@ -27,6 +27,7 @@ CFLAGS_INLINE_LIMIT = 55
SUPEROPT_GC = 0
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_LIS3DH
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -15,3 +15,6 @@ LONGINT_IMPL = MPZ
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_BITBANG_APA102 = 1
#Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_DotStar

View File

@ -21,6 +21,7 @@ CIRCUITPY_GAMEPAD = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_PS2IO = 0
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Register
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_SD

View File

@ -21,6 +21,7 @@ CIRCUITPY_GAMEPAD = 0
CIRCUITPY_RGBMATRIX = 0
CIRCUITPY_PS2IO = 0
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Register
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_SD

View File

@ -13,4 +13,5 @@ LONGINT_IMPL = MPZ
CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_USTACK = 1
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -16,3 +16,5 @@ CIRCUITPY_AUDIOBUSIO = 0
CIRCUITPY_VECTORIO = 0
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_DotStar
SUPEROPT_GC = 0

View File

@ -0,0 +1,37 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 Scott Shawcroft for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "supervisor/board.h"
void board_init(void) {
}
bool board_requests_safe_mode(void) {
return false;
}
void reset_board(void) {
}

View File

@ -0,0 +1,33 @@
#define MICROPY_HW_BOARD_NAME "StackRduino M0 PRO"
#define MICROPY_HW_MCU_NAME "samd21g18"
#define MICROPY_HW_LED_STATUS (&pin_PA17)
#define MICROPY_HW_NEOPIXEL (&pin_PA06)
#define SPI_FLASH_BAUDRATE (8000000)
#define SPI_FLASH_MOSI_PIN &pin_PB22
#define SPI_FLASH_MISO_PIN &pin_PB03
#define SPI_FLASH_SCK_PIN &pin_PB23
#define SPI_FLASH_CS_PIN &pin_PA27
// These are pins not to reset.
#define MICROPY_PORT_A (PORT_PA06)
#define MICROPY_PORT_B (0)
#define MICROPY_PORT_C (0)
#define BOARD_HAS_CRYSTAL 1
#define DEFAULT_I2C_BUS_SCL (&pin_PA23)
#define DEFAULT_I2C_BUS_SDA (&pin_PA22)
#define DEFAULT_SPI_BUS_SCK (&pin_PB11)
#define DEFAULT_SPI_BUS_MOSI (&pin_PB10)
#define DEFAULT_SPI_BUS_MISO (&pin_PA12)
#define DEFAULT_UART_BUS_RX (&pin_PA11)
#define DEFAULT_UART_BUS_TX (&pin_PA10)
// USB is always used internally so skip the pin objects for it.
#define IGNORE_PIN_PA24 1
#define IGNORE_PIN_PA25 1

View File

@ -0,0 +1,58 @@
USB_VID = 0x1209
USB_PID = 0xE3E3
USB_PRODUCT = "StackRduino M0 PRO"
USB_MANUFACTURER = "StackRduino"
CHIP_VARIANT = SAMD21G18A
CHIP_FAMILY = samd21
SPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "W25Q64JV_IQ"
LONGINT_IMPL = MPZ
CIRCUITPY_BITBANGIO = 0
CIRCUITPY_FREQUENCYIO = 0
CIRCUITPY_COUNTIO = 0
CIRCUITPY_I2CPERIPHERAL = 0
CIRCUITPY_VECTORIO = 0
CIRCUITPY_BUSDEVICE = 0
CFLAGS_INLINE_LIMIT = 55
SUPEROPT_GC = 0
CFLAGS_BOARD = --param max-inline-insns-auto=15
ifeq ($(TRANSLATION), ja)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
endif
ifeq ($(TRANSLATION), zh_Latn_pinyin)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
endif
ifeq ($(TRANSLATION), de_DE)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
SUPEROPT_VM = 0
endif
ifeq ($(TRANSLATION), pl)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
SUPEROPT_VM = 0
endif
ifeq ($(TRANSLATION), fr)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
SUPEROPT_VM = 0
endif
ifeq ($(TRANSLATION), pt_BR)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
SUPEROPT_VM = 0
endif
ifeq ($(TRANSLATION), es)
RELEASE_NEEDS_CLEAN_BUILD = 1
CFLAGS_INLINE_LIMIT = 35
SUPEROPT_VM = 0
endif

View File

@ -0,0 +1,40 @@
#include "shared-bindings/board/__init__.h"
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A0), MP_ROM_PTR(&pin_PA02) },
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_PB08) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_PB09) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_PA04) },
{ MP_ROM_QSTR(MP_QSTR_A4), MP_ROM_PTR(&pin_PA05) },
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_PB11) },
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB10) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_PA12) },
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_PA10) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PA10) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA22) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA23) },
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_PA08) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_PA09) },
{ MP_ROM_QSTR(MP_QSTR_D4), MP_ROM_PTR(&pin_PA14) },
{ MP_ROM_QSTR(MP_QSTR_D5), MP_ROM_PTR(&pin_PA15) },
{ MP_ROM_QSTR(MP_QSTR_D6), MP_ROM_PTR(&pin_PA20) },
{ MP_ROM_QSTR(MP_QSTR_D7), MP_ROM_PTR(&pin_PA21) },
{ MP_ROM_QSTR(MP_QSTR_D8), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_D9), MP_ROM_PTR(&pin_PA07) },
{ MP_ROM_QSTR(MP_QSTR_D10), MP_ROM_PTR(&pin_PA18) },
{ MP_ROM_QSTR(MP_QSTR_D11), MP_ROM_PTR(&pin_PA16) },
{ MP_ROM_QSTR(MP_QSTR_D12), MP_ROM_PTR(&pin_PA19) },
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_PA17) },
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_PA28) },
{ MP_ROM_QSTR(MP_QSTR_BUTTON), MP_ROM_PTR(&pin_PA28) },
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_PA13) },
{ MP_ROM_QSTR(MP_QSTR_CHRG_EN), MP_ROM_PTR(&pin_PA13) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

@ -9,8 +9,8 @@ CHIP_VARIANT = SAMD21G18A
CHIP_FAMILY = samd21
SPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "GD25Q16C"
EXTERNAL_FLASH_DEVICE_COUNT = 2
EXTERNAL_FLASH_DEVICES = "GD25Q16C, GD25Q64C"
LONGINT_IMPL = MPZ
CIRCUITPY_AUDIOIO = 1

View File

@ -6,5 +6,7 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_GATE_OUT), MP_ROM_PTR(&pin_PA11) },
{ MP_ROM_QSTR(MP_QSTR_GATE_IN), MP_ROM_PTR(&pin_PA14) },
{ MP_ROM_QSTR(MP_QSTR_PITCH_IN), MP_ROM_PTR(&pin_PB08) },
/* Board revisions starting from v5 have PB10 tied to ground. */
{ MP_ROM_QSTR(MP_QSTR_V5), MP_ROM_PTR(&pin_PB10) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_global_dict_table);

View File

@ -24,3 +24,4 @@ CIRCUITPY_TOUCHIO=0
CIRCUITPY_BUSDEVICE=1
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice

View File

@ -27,4 +27,5 @@ CIRCUITPY_COUNTIO=0
CIRCUITPY_BUSDEVICE=1
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_SD

View File

@ -197,7 +197,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
#endif
#ifdef SAM_D5X_E5X
DAC->EVCTRL.reg |= DAC_EVCTRL_STARTEI0;
DAC->DACCTRL[0].reg = DAC_DACCTRL_CCTRL_CC100K |
DAC->DACCTRL[0].reg = DAC_DACCTRL_CCTRL_CC12M |
DAC_DACCTRL_ENABLE |
DAC_DACCTRL_LEFTADJ;
DAC->CTRLB.reg = DAC_CTRLB_REFSEL_VREFPU;
@ -206,7 +206,7 @@ void common_hal_audioio_audioout_construct(audioio_audioout_obj_t* self,
#ifdef SAM_D5X_E5X
if (channel1_enabled) {
DAC->EVCTRL.reg |= DAC_EVCTRL_STARTEI1;
DAC->DACCTRL[1].reg = DAC_DACCTRL_CCTRL_CC100K |
DAC->DACCTRL[1].reg = DAC_DACCTRL_CCTRL_CC12M |
DAC_DACCTRL_ENABLE |
DAC_DACCTRL_LEFTADJ;
DAC->CTRLB.reg = DAC_CTRLB_REFSEL_VREFPU;

View File

@ -82,7 +82,8 @@ void frequencyin_emergency_cancel_capture(uint8_t index) {
#ifdef SAM_D5X_E5X
NVIC_EnableIRQ(EIC_0_IRQn + self->channel);
#endif
mp_raise_RuntimeError(translate("Frequency captured is above capability. Capture Paused."));
// Frequency captured is above capability. Capture paused.
// We can't raise an error here; we're in an interrupt handler.
}
void frequencyin_interrupt_handler(uint8_t index) {

View File

@ -169,6 +169,9 @@ void common_hal_never_reset_pin(const mcu_pin_obj_t* pin) {
}
void common_hal_reset_pin(const mcu_pin_obj_t* pin) {
if (pin == NULL) {
return;
}
reset_pin_number(pin->number);
}

View File

@ -122,7 +122,7 @@ CFLAGS += \
-fdata-sections \
-Wall \
OPTIMIZATION_FLAGS ?= -O2
OPTIMIZATION_FLAGS ?= -O2 -fno-inline-functions
# option to override compiler optimization level, set in boards/$(BOARD)/mpconfigboard.mk
CFLAGS += $(OPTIMIZATION_FLAGS)

View File

@ -106,6 +106,8 @@ INC += -isystem esp-idf/components/heap/include
INC += -isystem esp-idf/components/esp_system/include
INC += -isystem esp-idf/components/spi_flash/include
INC += -isystem esp-idf/components/nvs_flash/include
INC += -isystem esp-idf/components/app_update/include
INC += -isystem esp-idf/components/bootloader_support/include
INC += -I$(BUILD)/esp-idf/config
CFLAGS += -DHAVE_CONFIG_H \
@ -118,7 +120,7 @@ CFLAGS += -DSTACK_CANARY_VALUE=0xa5a5a5a5
#Debugging/Optimization
ifeq ($(DEBUG), 1)
CFLAGS += -ggdb
CFLAGS += -DDEBUG -ggdb
OPTIMIZATION_FLAGS ?= -Og
# You may want to enable these flags to make setting breakpoints easier.
# CFLAGS += -fno-inline -fno-ipa-sra
@ -143,7 +145,6 @@ LDFLAGS += -L$(BUILD)/esp-idf/esp-idf/esp32s2 \
-Tesp32s2.peripherals.ld \
-Lesp-idf/components/esp_rom/esp32s2/ld \
-Tesp32s2.rom.ld \
-Tesp32s2.rom.api.ld \
-Tesp32s2.rom.libgcc.ld \
-Tesp32s2.rom.newlib-data.ld \
-Tesp32s2.rom.newlib-funcs.ld \
@ -192,6 +193,7 @@ SRC_C += \
lib/utils/sys_stdio_mphal.c \
lib/netutils/netutils.c \
peripherals/timer.c \
peripherals/touch.c \
peripherals/pcnt.c \
peripherals/pins.c \
peripherals/rmt.c \
@ -276,7 +278,7 @@ menuconfig: $(BUILD)/esp-idf/config
# qstr builds include headers so we need to make sure they are up to date
$(HEADER_BUILD)/qstr.split: | $(BUILD)/esp-idf/config/sdkconfig.h
ESP_IDF_COMPONENTS_LINK = freertos log hal esp_system esp_adc_cal esp32s2 bootloader_support pthread esp_timer vfs spi_flash app_update esp_common esp32s2 heap newlib driver xtensa soc esp_ringbuf esp_wifi esp_event wpa_supplicant mbedtls efuse nvs_flash esp_netif lwip esp_rom esp-tls
ESP_IDF_COMPONENTS_LINK = freertos log esp_system esp_adc_cal esp32s2 bootloader_support pthread esp_timer vfs spi_flash app_update esp_common esp32s2 heap newlib driver xtensa soc esp_ringbuf esp_wifi esp_event wpa_supplicant mbedtls efuse nvs_flash esp_netif lwip esp-tls
ESP_IDF_COMPONENTS_INCLUDE = driver freertos log soc
@ -288,11 +290,11 @@ ESP_IDF_WIFI_COMPONENTS_EXPANDED = $(foreach component, $(ESP_IDF_WIFI_COMPONENT
MBEDTLS_COMPONENTS_LINK = crypto tls x509
MBEDTLS_COMPONENTS_LINK_EXPANDED = $(foreach component, $(MBEDTLS_COMPONENTS_LINK), $(BUILD)/esp-idf/esp-idf/mbedtls/mbedtls/library/libmbed$(component).a)
BINARY_BLOBS = esp-idf/components/xtensa/esp32s2/libxt_hal.a
BINARY_BLOBS = esp-idf/components/xtensa/esp32s2/libhal.a
BINARY_WIFI_BLOBS = libcoexist.a libcore.a libespnow.a libmesh.a libnet80211.a libpp.a librtc.a libsmartconfig.a libphy.a
BINARY_BLOBS += $(addprefix esp-idf/components/esp_wifi/lib/esp32s2/, $(BINARY_WIFI_BLOBS))
ESP_IDF_COMPONENTS_EXPANDED += $(BUILD)/esp-idf/esp-idf/soc/soc/esp32s2/libsoc_esp32s2.a esp-idf/components/xtensa/esp32s2/libxt_hal.a
ESP_IDF_COMPONENTS_EXPANDED += $(BUILD)/esp-idf/esp-idf/soc/soc/esp32s2/libsoc_esp32s2.a
ESP_AUTOGEN_LD = $(BUILD)/esp-idf/esp-idf/esp32s2/esp32s2_out.ld $(BUILD)/esp-idf/esp-idf/esp32s2/ld/esp32s2.project.ld
FLASH_FLAGS = --flash_mode $(CIRCUITPY_ESP_FLASH_MODE) --flash_freq $(CIRCUITPY_ESP_FLASH_FREQ) --flash_size $(CIRCUITPY_ESP_FLASH_SIZE)
@ -308,7 +310,6 @@ esp-idf-stamp: $(BUILD)/esp-idf/config/sdkconfig.h
esp-idf/esp32s2/ld/esp32s2.project.ld \
esp-idf/esp_event/libesp_event.a \
esp-idf/esp_netif/libesp_netif.a \
esp-idf/esp_rom/libesp_rom.a \
esp-idf/esp_system/libesp_system.a \
esp-idf/esp_wifi/libesp_wifi.a \
esp-idf/lwip/liblwip.a \
@ -336,10 +337,10 @@ $(BUILD)/firmware.uf2: $(BUILD)/circuitpython-firmware.bin
$(Q)$(PYTHON3) $(TOP)/tools/uf2/utils/uf2conv.py -f 0xbfdd4eee -b 0x0000 -c -o $@ $^
flash: $(BUILD)/firmware.bin
esptool.py --chip esp32s2 -p $(PORT) --no-stub -b 460800 --before=default_reset --after=no_reset write_flash $(FLASH_FLAGS) 0x0000 $^
esptool.py --chip esp32s2 -p $(PORT) -b 460800 --before=default_reset --after=no_reset write_flash $(FLASH_FLAGS) 0x0000 $^
flash-circuitpython-only: $(BUILD)/circuitpython-firmware.bin
esptool.py --chip esp32s2 -p $(PORT) --no-stub -b 460800 --before=default_reset --after=no_reset write_flash $(FLASH_FLAGS) 0x10000 $^
esptool.py --chip esp32s2 -p $(PORT) -b 460800 --before=default_reset --after=no_reset write_flash $(FLASH_FLAGS) 0x10000 $^
include $(TOP)/py/mkrules.mk

View File

@ -7,7 +7,7 @@ This port adds the ESP32-S2 line of modules from Espressif to Circuitpython. ESP
- **bindings/** contains some required bindings to the ESP-IDF for exceptions and memory.
- **boards/** contains the configuration files for each development board and breakout available on the port.
- **common-hal/** contains the port-specific module implementations, used by shared-module and shared-bindings.
- **esp-idf/** contains the Espressif IoT development framework installation, includign all the drivers for the port.
- **esp-idf/** contains the Espressif IoT development framework installation, including all the drivers for the port.
- **modules/** contains information specific to certain ESP32-S2 hardware modules, such as the pins used for flash and RAM on the WROVER and WROOM.
- **peripherals/** contains peripheral setup files and peripheral mapping information, sorted by family and sub-variant. Most files in this directory can be generated with the python scripts in **tools/**.
- **supervisor/** contains port-specific implementations of internal flash, serial and USB, as well as the **port.c** file, which initializes the port at startup.

View File

@ -115,8 +115,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
busio_spi_obj_t* spi = &displays[0].fourwire_bus.inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL);

View File

@ -26,7 +26,7 @@
//Micropython setup
#define MICROPY_HW_BOARD_NAME "MagTag"
#define MICROPY_HW_BOARD_NAME "Adafruit MagTag"
#define MICROPY_HW_MCU_NAME "ESP32S2"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO1)

View File

@ -26,7 +26,7 @@
//Micropython setup
#define MICROPY_HW_BOARD_NAME "Metro ESP32S2"
#define MICROPY_HW_BOARD_NAME "Adafruit Metro ESP32S2"
#define MICROPY_HW_MCU_NAME "ESP32S2"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO45)

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
// SPI Flash and RAM
common_hal_never_reset_pin(&pin_GPIO26);

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
}
bool board_requests_safe_mode(void) {

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
// Crystal
common_hal_never_reset_pin(&pin_GPIO15);

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
//Crystal
common_hal_never_reset_pin(&pin_GPIO15);

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
// SPI Flash and RAM
common_hal_never_reset_pin(&pin_GPIO26);

View File

@ -30,7 +30,6 @@
#define MICROPY_HW_MCU_NAME "ESP32S2"
#define CIRCUITPY_BOOT_BUTTON (&pin_GPIO0)
#define BOARD_USER_SAFE_MODE_ACTION translate("pressing boot button at start up.\n")
#define AUTORESET_DELAY_MS 500

View File

@ -9,9 +9,9 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_GPIO12) },
@ -82,18 +82,16 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_GPIO40) }, // MTDO
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_GPIO45) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO13) }, // Blue LED
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_GPIO40) }, // APA102
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_GPIO45) }, // APA102
{ MP_ROM_QSTR(MP_QSTR_LDO2), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_LDO2), MP_ROM_PTR(&pin_GPIO21) }, // Second LDO Enable control
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) }, // Second LDO Enable control
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_AMB), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) }, // Ambient Light Sensor
{ MP_ROM_QSTR(MP_QSTR_AMB), MP_ROM_PTR(&pin_GPIO4) }, // Ambient Light Sensor
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },

View File

@ -34,8 +34,10 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO20);
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */
// SPI Flash and RAM
common_hal_never_reset_pin(&pin_GPIO26);

View File

@ -36,3 +36,13 @@
// #define MICROPY_HW_APA102_MOSI (&pin_GPIO40)
// #define MICROPY_HW_APA102_SCK (&pin_GPIO45)
#define DEFAULT_I2C_BUS_SCL (&pin_GPIO38)
#define DEFAULT_I2C_BUS_SDA (&pin_GPIO33)
#define DEFAULT_SPI_BUS_SCK (&pin_GPIO36)
#define DEFAULT_SPI_BUS_MOSI (&pin_GPIO35)
#define DEFAULT_SPI_BUS_MISO (&pin_GPIO37)
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)

View File

@ -9,10 +9,9 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A1), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_D15), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_A2), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_D16), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_A3), MP_ROM_PTR(&pin_GPIO12) },
@ -26,7 +25,7 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_A5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_D19), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_D25), MP_ROM_PTR(&pin_GPIO36) },
@ -83,17 +82,16 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_A6), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_GPIO40) }, // MTDO
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_GPIO45) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO13) }, // Blue LED
{ MP_ROM_QSTR(MP_QSTR_LDO2), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_APA102_MOSI), MP_ROM_PTR(&pin_GPIO40) }, // APA102
{ MP_ROM_QSTR(MP_QSTR_APA102_SCK), MP_ROM_PTR(&pin_GPIO45) }, // APA102
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_LDO2), MP_ROM_PTR(&pin_GPIO21) }, // Second LDO Enable control
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) }, // Second LDO Enable control
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_AMB), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) }, // Ambient Light Sensor
{ MP_ROM_QSTR(MP_QSTR_AMB), MP_ROM_PTR(&pin_GPIO4) }, // Ambient Light Sensor
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },

View File

@ -0,0 +1,66 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 microDev
* Copyright (c) 2020 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 <string.h>
#include "py/runtime.h"
#include "common-hal/alarm/SleepMemory.h"
#include "esp_log.h"
#include "esp_sleep.h"
// Data storage for singleton instance of SleepMemory.
// Might be RTC_SLOW_MEM or RTC_FAST_MEM, depending on setting of CONFIG_ESP32S2_RTCDATA_IN_FAST_MEM.
static RTC_DATA_ATTR uint8_t _sleep_mem[SLEEP_MEMORY_LENGTH];
void alarm_sleep_memory_reset(void) {
// ESP-IDF build system takes care of doing esp_sleep_pd_config() or the equivalentwith
// the correct settings, depending on which RTC mem we are using.
// https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/api-reference/system/sleep_modes.html#power-down-of-rtc-peripherals-and-memories
}
uint32_t common_hal_alarm_sleep_memory_get_length(alarm_sleep_memory_obj_t *self) {
return sizeof(_sleep_mem);
}
bool common_hal_alarm_sleep_memory_set_bytes(alarm_sleep_memory_obj_t *self, uint32_t start_index, const uint8_t* values, uint32_t len) {
if (start_index + len > sizeof(_sleep_mem)) {
return false;
}
memcpy((uint8_t *) (_sleep_mem + start_index), values, len);
return true;
}
void common_hal_alarm_sleep_memory_get_bytes(alarm_sleep_memory_obj_t *self, uint32_t start_index, uint8_t* values, uint32_t len) {
if (start_index + len > sizeof(_sleep_mem)) {
return;
}
memcpy(values, (uint8_t *) (_sleep_mem + start_index), len);
}

View File

@ -0,0 +1,53 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 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_ESP32S2_COMMON_HAL_ALARM_SLEEPMEMORY_H
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ALARM_SLEEPMEMORY_H
#include "py/obj.h"
// There are several places we could store persistent data for SleepMemory:
//
// RTC registers: There are a few 32-bit registers maintained during deep sleep.
// We are already using one for saving sleep information during deep sleep.
//
// RTC Fast Memory: 8kB, also used for deep-sleep power-on stub.
// RTC Slow Memory: 8kB, also used for the ULP (tiny co-processor available during sleep).
//
// The ESP-IDF build system takes care of the power management of these regions.
// RTC_DATA_ATTR will allocate storage in RTC_SLOW_MEM unless CONFIG_ESP32S2_RTCDATA_IN_FAST_MEM
// is set. Any memory not allocated by us can be used by the ESP-IDF for heap or other purposes.
// Use half of RTC_SLOW_MEM or RTC_FAST_MEM.
#define SLEEP_MEMORY_LENGTH (4096)
typedef struct {
mp_obj_base_t base;
} alarm_sleep_memory_obj_t;
extern void alarm_sleep_memory_reset(void);
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ALARM_SLEEPMEMORY_H

View File

@ -1,10 +1,10 @@
/*
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Scott Shawcroft for Adafruit Industries
* Copyright (c) 2019 Lucian Copeland for Adafruit Industries
* Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
* Copyright (c) 2020 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
@ -25,32 +25,53 @@
* THE SOFTWARE.
*/
#include "py/gc.h"
#include "py/obj.h"
#include "py/objtuple.h"
#include "py/runtime.h"
#include "shared-bindings/alarm/__init__.h"
#include "shared-bindings/alarm/SleepMemory.h"
#include "shared-bindings/alarm/pin/PinAlarm.h"
#include "shared-bindings/alarm/time/TimeAlarm.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "shared-bindings/alarm/touch/TouchAlarm.h"
#include "shared-bindings/wifi/__init__.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "supervisor/port.h"
#include "supervisor/shared/workflow.h"
#include "common-hal/alarm/__init__.h"
#include "esp_sleep.h"
#include "components/soc/soc/esp32s2/include/soc/rtc_cntl_reg.h"
#include "components/driver/include/driver/uart.h"
// Singleton instance of SleepMemory.
const alarm_sleep_memory_obj_t alarm_sleep_memory_obj = {
.base = {
.type = &alarm_sleep_memory_type,
},
};
void alarm_reset(void) {
alarm_sleep_memory_reset();
alarm_pin_pinalarm_reset();
alarm_time_timealarm_reset();
alarm_touch_touchalarm_reset();
esp_sleep_disable_wakeup_source(ESP_SLEEP_WAKEUP_ALL);
}
STATIC esp_sleep_wakeup_cause_t _get_wakeup_cause(void) {
if (alarm_pin_pinalarm_woke_us_up()) {
return ESP_SLEEP_WAKEUP_GPIO;
}
if (alarm_time_timealarm_woke_us_up()) {
return ESP_SLEEP_WAKEUP_TIMER;
}
if (alarm_touch_touchalarm_woke_us_up()) {
return ESP_SLEEP_WAKEUP_TOUCHPAD;
}
return esp_sleep_get_wakeup_cause();
}
@ -59,19 +80,20 @@ bool alarm_woken_from_sleep(void) {
}
STATIC mp_obj_t _get_wake_alarm(size_t n_alarms, const mp_obj_t *alarms) {
switch (_get_wakeup_cause()) {
esp_sleep_wakeup_cause_t cause = _get_wakeup_cause();
switch (cause) {
case ESP_SLEEP_WAKEUP_TIMER: {
return alarm_time_timealarm_get_wakeup_alarm(n_alarms, alarms);
}
case ESP_SLEEP_WAKEUP_EXT0: {
// TODO: implement pin alarm wake.
break;
case ESP_SLEEP_WAKEUP_GPIO:
case ESP_SLEEP_WAKEUP_EXT0:
case ESP_SLEEP_WAKEUP_EXT1: {
return alarm_pin_pinalarm_get_wakeup_alarm(n_alarms, alarms);
}
case ESP_SLEEP_WAKEUP_TOUCHPAD:
// TODO: implement TouchIO
// Wake up from touch on pad, esp_sleep_get_touchpad_wakeup_status()
return alarm_touch_touchalarm_get_wakeup_alarm(n_alarms, alarms);
break;
case ESP_SLEEP_WAKEUP_UNDEFINED:
@ -88,24 +110,9 @@ mp_obj_t common_hal_alarm_get_wake_alarm(void) {
// Set up light sleep or deep sleep alarms.
STATIC void _setup_sleep_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms) {
bool time_alarm_set = false;
alarm_time_time_alarm_obj_t *time_alarm = MP_OBJ_NULL;
for (size_t i = 0; i < n_alarms; i++) {
if (MP_OBJ_IS_TYPE(alarms[i], &alarm_pin_pin_alarm_type)) {
mp_raise_NotImplementedError(translate("PinAlarm not yet implemented"));
} else if (MP_OBJ_IS_TYPE(alarms[i], &alarm_time_time_alarm_type)) {
if (time_alarm_set) {
mp_raise_ValueError(translate("Only one alarm.time alarm can be set."));
}
time_alarm = MP_OBJ_TO_PTR(alarms[i]);
time_alarm_set = true;
}
}
if (time_alarm_set) {
alarm_time_timealarm_set_alarm(time_alarm);
}
alarm_pin_pinalarm_set_alarms(deep_sleep, n_alarms, alarms);
alarm_time_timealarm_set_alarms(deep_sleep, n_alarms, alarms);
alarm_touch_touchalarm_set_alarm(deep_sleep, n_alarms, alarms);
}
STATIC void _idle_until_alarm(void) {
@ -114,28 +121,23 @@ STATIC void _idle_until_alarm(void) {
RUN_BACKGROUND_TASKS;
// Allow ctrl-C interrupt.
if (alarm_woken_from_sleep()) {
alarm_save_wake_alarm();
return;
}
port_idle_until_interrupt();
}
}
// Is it safe to do a light sleep? Check whether WiFi is on or there are
// other ongoing tasks that should not be shut down.
STATIC bool _light_sleep_ok(void) {
return !common_hal_wifi_radio_get_enabled(&common_hal_wifi_radio_obj) && !supervisor_workflow_active();
}
mp_obj_t common_hal_alarm_light_sleep_until_alarms(size_t n_alarms, const mp_obj_t *alarms) {
_setup_sleep_alarms(false, n_alarms, alarms);
// Light sleep can break some functionality so only do it when possible. Otherwise we idle.
if (_light_sleep_ok()) {
esp_light_sleep_start();
} else {
_idle_until_alarm();
// We cannot esp_light_sleep_start() here because it shuts down all non-RTC peripherals.
_idle_until_alarm();
if (mp_hal_is_interrupted()) {
return mp_const_none; // Shouldn't be given to python code because exception handling should kick in.
}
mp_obj_t wake_alarm = _get_wake_alarm(n_alarms, alarms);
alarm_reset();
return wake_alarm;
@ -146,7 +148,13 @@ void common_hal_alarm_set_deep_sleep_alarms(size_t n_alarms, const mp_obj_t *ala
}
void NORETURN alarm_enter_deep_sleep(void) {
alarm_pin_pinalarm_prepare_for_deep_sleep();
alarm_touch_touchalarm_prepare_for_deep_sleep();
// The ESP-IDF caches the deep sleep settings and applies them before sleep.
// We don't need to worry about resetting them in the interim.
esp_deep_sleep_start();
}
void common_hal_alarm_gc_collect(void) {
gc_collect_ptr(alarm_get_wake_alarm());
}

View File

@ -27,6 +27,10 @@
#ifndef MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ALARM__INIT__H
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ALARM__INIT__H
void alarm_reset(void);
#include "common-hal/alarm/SleepMemory.h"
const alarm_sleep_memory_obj_t alarm_sleep_memory_obj;
extern void alarm_reset(void);
#endif // MICROPY_INCLUDED_ESP32S2_COMMON_HAL_ALARM__INIT__H

View File

@ -4,6 +4,7 @@
* The MIT License (MIT)
*
* Copyright (c) 2020 Dan Halbert for Adafruit Industries
* Copyright (c) 2020 Scott Shawcroft for Adafruit Industries
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@ -24,30 +25,283 @@
* THE SOFTWARE.
*/
#include "esp_sleep.h"
#include "py/runtime.h"
#include "shared-bindings/alarm/pin/PinAlarm.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "supervisor/esp_port.h"
void common_hal_alarm_pin_pin_alarm_construct(alarm_pin_pin_alarm_obj_t *self, mcu_pin_obj_t *pin, bool value, bool edge, bool pull) {
#include "components/driver/include/driver/rtc_io.h"
#include "components/esp32s2/include/esp_sleep.h"
#include "components/freertos/include/freertos/FreeRTOS.h"
#include "components/soc/src/esp32s2/include/hal/gpio_ll.h"
#include "components/xtensa/include/esp_debug_helpers.h"
void common_hal_alarm_pin_pinalarm_construct(alarm_pin_pinalarm_obj_t *self, mcu_pin_obj_t *pin, bool value, bool edge, bool pull) {
if (edge) {
mp_raise_ValueError(translate("Cannot wake on pin edge. Only level."));
}
if (pull && !GPIO_IS_VALID_OUTPUT_GPIO(pin->number)) {
mp_raise_ValueError(translate("Cannot pull on input-only pin."));
}
self->pin = pin;
self->value = value;
self->edge = edge;
self->pull = pull;
}
mcu_pin_obj_t *common_hal_alarm_pin_pin_alarm_get_pin(alarm_pin_pin_alarm_obj_t *self) {
mcu_pin_obj_t *common_hal_alarm_pin_pinalarm_get_pin(alarm_pin_pinalarm_obj_t *self) {
return self->pin;
}
bool common_hal_alarm_pin_pin_alarm_get_value(alarm_pin_pin_alarm_obj_t *self) {
bool common_hal_alarm_pin_pinalarm_get_value(alarm_pin_pinalarm_obj_t *self) {
return self->value;
}
bool common_hal_alarm_pin_pin_alarm_get_edge(alarm_pin_pin_alarm_obj_t *self) {
return self->edge;
bool common_hal_alarm_pin_pinalarm_get_edge(alarm_pin_pinalarm_obj_t *self) {
return false;
}
bool common_hal_alarm_pin_pin_alarm_get_pull(alarm_pin_pin_alarm_obj_t *self) {
bool common_hal_alarm_pin_pinalarm_get_pull(alarm_pin_pinalarm_obj_t *self) {
return self->pull;
}
gpio_isr_handle_t gpio_interrupt_handle;
// Low and high are relative to pin number. 32+ is high. <32 is low.
static volatile uint32_t pin_31_0_status = 0;
static volatile uint32_t pin_63_32_status = 0;
void gpio_interrupt(void *arg) {
(void) arg;
gpio_ll_get_intr_status(&GPIO, xPortGetCoreID(), (uint32_t*) &pin_31_0_status);
gpio_ll_clear_intr_status(&GPIO, pin_31_0_status);
gpio_ll_get_intr_status_high(&GPIO, xPortGetCoreID(), (uint32_t*) &pin_63_32_status);
gpio_ll_clear_intr_status_high(&GPIO, pin_63_32_status);
// disable the interrupts that fired, maybe all of them
for (size_t i = 0; i < 32; i++) {
uint32_t mask = 1 << i;
if ((pin_31_0_status & mask) != 0) {
gpio_ll_intr_disable(&GPIO, i);
}
if ((pin_63_32_status & mask) != 0) {
gpio_ll_intr_disable(&GPIO, 32 + i);
}
}
BaseType_t high_task_wakeup;
vTaskNotifyGiveFromISR(circuitpython_task, &high_task_wakeup);
if (high_task_wakeup) {
portYIELD_FROM_ISR();
}
}
bool alarm_pin_pinalarm_woke_us_up(void) {
return pin_31_0_status != 0 || pin_63_32_status != 0;
}
mp_obj_t alarm_pin_pinalarm_get_wakeup_alarm(size_t n_alarms, const mp_obj_t *alarms) {
// First, check to see if we match any given alarms.
uint64_t pin_status = ((uint64_t) pin_63_32_status) << 32 | pin_31_0_status;
for (size_t i = 0; i < n_alarms; i++) {
if (!MP_OBJ_IS_TYPE(alarms[i], &alarm_pin_pinalarm_type)) {
continue;
}
alarm_pin_pinalarm_obj_t *alarm = MP_OBJ_TO_PTR(alarms[i]);
if ((pin_status & (1ull << alarm->pin->number)) != 0) {
return alarms[i];
}
}
esp_sleep_wakeup_cause_t cause = esp_sleep_get_wakeup_cause();
size_t pin_number = 64;
if (cause == ESP_SLEEP_WAKEUP_EXT0) {
pin_number = REG_GET_FIELD(RTC_IO_EXT_WAKEUP0_REG, RTC_IO_EXT_WAKEUP0_SEL);
} else {
if (cause == ESP_SLEEP_WAKEUP_EXT1) {
pin_status = esp_sleep_get_ext1_wakeup_status();
}
// If the cause is GPIO, we've already snagged pin_status in the interrupt.
// We'll only get here if we pretended to deep sleep. Light sleep will
// pass in existing objects.
for (size_t i = 0; i < 64; i++) {
if ((pin_status & (1ull << i)) != 0) {
pin_number = i;
break;
}
}
}
alarm_pin_pinalarm_obj_t *alarm = m_new_obj(alarm_pin_pinalarm_obj_t);
alarm->base.type = &alarm_pin_pinalarm_type;
alarm->pin = NULL;
// Map the pin number back to a pin object.
for (size_t i = 0; i < mcu_pin_globals.map.used; i++) {
const mcu_pin_obj_t* pin_obj = MP_OBJ_TO_PTR(mcu_pin_globals.map.table[i].value);
if ((size_t) pin_obj->number == pin_number) {
alarm->pin = mcu_pin_globals.map.table[i].value;
break;
}
}
return alarm;
}
// These must be static because we need to configure pulls later, right before
// deep sleep.
static uint64_t high_alarms = 0;
static uint64_t low_alarms = 0;
static uint64_t pull_pins = 0;
void alarm_pin_pinalarm_reset(void) {
if (gpio_interrupt_handle != NULL) {
esp_intr_free(gpio_interrupt_handle);
gpio_interrupt_handle = NULL;
}
for (size_t i = 0; i < 64; i++) {
uint64_t mask = 1ull << i;
bool high = (high_alarms & mask) != 0;
bool low = (low_alarms & mask) != 0;
if (!(high || low)) {
continue;
}
reset_pin_number(i);
}
high_alarms = 0;
low_alarms = 0;
pull_pins = 0;
pin_63_32_status = 0;
pin_31_0_status = 0;
}
void alarm_pin_pinalarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms) {
// Bitmask of wake up settings.
size_t high_count = 0;
size_t low_count = 0;
for (size_t i = 0; i < n_alarms; i++) {
// TODO: Check for ULP or touch alarms because they can't coexist with GPIO alarms.
if (!MP_OBJ_IS_TYPE(alarms[i], &alarm_pin_pinalarm_type)) {
continue;
}
alarm_pin_pinalarm_obj_t *alarm = MP_OBJ_TO_PTR(alarms[i]);
gpio_num_t pin_number = alarm->pin->number;
if (alarm->value) {
high_alarms |= 1ull << pin_number;
high_count++;
} else {
low_alarms |= 1ull << pin_number;
low_count++;
}
if (alarm->pull) {
pull_pins |= 1ull << pin_number;
}
}
if (high_count == 0 && low_count == 0) {
return;
}
if (deep_sleep && low_count > 2 && high_count == 0) {
mp_raise_ValueError(translate("Can only alarm on two low pins from deep sleep."));
}
if (deep_sleep && low_count > 1 && high_count > 0) {
mp_raise_ValueError(translate("Can only alarm on one low pin while others alarm high from deep sleep."));
}
// Only use ext0 and ext1 during deep sleep.
if (deep_sleep) {
if (high_count > 0) {
if (esp_sleep_enable_ext1_wakeup(high_alarms, ESP_EXT1_WAKEUP_ANY_HIGH) != ESP_OK) {
mp_raise_ValueError(translate("Can only alarm on RTC IO from deep sleep."));
}
}
size_t low_pins[2];
size_t j = 0;
for (size_t i = 0; i < 64; i++) {
uint64_t mask = 1ull << i;
if ((low_alarms & mask) != 0) {
low_pins[j++] = i;
}
if (j == 2) {
break;
}
}
if (low_count > 1) {
if (esp_sleep_enable_ext1_wakeup(1ull << low_pins[1], ESP_EXT1_WAKEUP_ALL_LOW) != ESP_OK) {
mp_raise_ValueError(translate("Can only alarm on RTC IO from deep sleep."));
}
}
if (low_count > 0) {
if (esp_sleep_enable_ext0_wakeup(low_pins[0], 0) != ESP_OK) {
mp_raise_ValueError(translate("Can only alarm on RTC IO from deep sleep."));
}
}
} else {
// Enable GPIO wake up if we're sleeping.
esp_sleep_enable_gpio_wakeup();
}
// Set GPIO interrupts so they wake us from light sleep or from idle via the
// interrupt handler above.
pin_31_0_status = 0;
pin_63_32_status = 0;
if (gpio_isr_register(gpio_interrupt, NULL, 0, &gpio_interrupt_handle) != ESP_OK) {
mp_raise_ValueError(translate("Can only alarm on RTC IO from deep sleep."));
}
for (size_t i = 0; i < 64; i++) {
uint64_t mask = 1ull << i;
bool high = (high_alarms & mask) != 0;
bool low = (low_alarms & mask) != 0;
bool pull = (pull_pins & mask) != 0;
if (!(high || low)) {
continue;
}
if (rtc_gpio_is_valid_gpio(i)) {
rtc_gpio_deinit(i);
}
gpio_int_type_t interrupt_mode = GPIO_INTR_DISABLE;
gpio_pull_mode_t pull_mode = GPIO_FLOATING;
if (high) {
interrupt_mode = GPIO_INTR_HIGH_LEVEL;
pull_mode = GPIO_PULLDOWN_ONLY;
}
if (low) {
interrupt_mode = GPIO_INTR_LOW_LEVEL;
pull_mode = GPIO_PULLUP_ONLY;
}
gpio_set_direction(i, GPIO_MODE_DEF_INPUT);
PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[i], PIN_FUNC_GPIO);
if (pull) {
gpio_set_pull_mode(i, pull_mode);
size_t j = 0;
while (gpio_get_level(i) == false) {
j++;
}
}
never_reset_pin_number(i);
// Sets interrupt type and wakeup bits.
gpio_wakeup_enable(i, interrupt_mode);
gpio_intr_enable(i);
}
}
void alarm_pin_pinalarm_prepare_for_deep_sleep(void) {
if (pull_pins == 0) {
return;
}
for (size_t i = 0; i < 64; i++) {
uint64_t mask = 1ull << i;
bool pull = (pull_pins & mask) != 0;
if (!pull) {
continue;
}
bool high = (high_alarms & mask) != 0;
bool low = (low_alarms & mask) != 0;
// The pull direction is opposite from alarm value.
if (high) {
rtc_gpio_pullup_dis(i);
rtc_gpio_pulldown_en(i);
}
if (low) {
rtc_gpio_pullup_en(i);
rtc_gpio_pulldown_dis(i);
}
}
}

View File

@ -31,7 +31,11 @@ typedef struct {
mp_obj_base_t base;
mcu_pin_obj_t *pin;
bool value;
bool all_same_value;
bool edge;
bool pull;
} alarm_pin_pin_alarm_obj_t;
} alarm_pin_pinalarm_obj_t;
void alarm_pin_pinalarm_reset(void);
void alarm_pin_pinalarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms);
void alarm_pin_pinalarm_prepare_for_deep_sleep(void);
mp_obj_t alarm_pin_pinalarm_get_wakeup_alarm(size_t n_alarms, const mp_obj_t *alarms);
bool alarm_pin_pinalarm_woke_us_up(void);

View File

@ -34,24 +34,25 @@
#include "shared-bindings/alarm/time/TimeAlarm.h"
#include "shared-bindings/time/__init__.h"
void common_hal_alarm_time_time_alarm_construct(alarm_time_time_alarm_obj_t *self, mp_float_t monotonic_time) {
void common_hal_alarm_time_timealarm_construct(alarm_time_timealarm_obj_t *self, mp_float_t monotonic_time) {
self->monotonic_time = monotonic_time;
}
mp_float_t common_hal_alarm_time_time_alarm_get_monotonic_time(alarm_time_time_alarm_obj_t *self) {
mp_float_t common_hal_alarm_time_timealarm_get_monotonic_time(alarm_time_timealarm_obj_t *self) {
return self->monotonic_time;
}
mp_obj_t alarm_time_timealarm_get_wakeup_alarm(size_t n_alarms, const mp_obj_t *alarms) {
// First, check to see if we match
for (size_t i = 0; i < n_alarms; i++) {
if (MP_OBJ_IS_TYPE(alarms[i], &alarm_time_time_alarm_type)) {
if (MP_OBJ_IS_TYPE(alarms[i], &alarm_time_timealarm_type)) {
return alarms[i];
}
}
alarm_time_time_alarm_obj_t *timer = m_new_obj(alarm_time_time_alarm_obj_t);
timer->base.type = &alarm_time_time_alarm_type;
alarm_time_timealarm_obj_t *timer = m_new_obj(alarm_time_timealarm_obj_t);
timer->base.type = &alarm_time_timealarm_type;
// TODO: Set monotonic_time based on the RTC state.
timer->monotonic_time = 0.0f;
return timer;
}
@ -62,9 +63,7 @@ STATIC bool woke_up = false;
void timer_callback(void *arg) {
(void) arg;
woke_up = true;
if (sleeping_circuitpython_task) {
xTaskNotifyGive(sleeping_circuitpython_task);
}
xTaskNotifyGive(circuitpython_task);
}
bool alarm_time_timealarm_woke_us_up(void) {
@ -78,7 +77,24 @@ void alarm_time_timealarm_reset(void) {
woke_up = false;
}
void alarm_time_timealarm_set_alarm(alarm_time_time_alarm_obj_t *self) {
void alarm_time_timealarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms) {
bool timealarm_set = false;
alarm_time_timealarm_obj_t *timealarm = MP_OBJ_NULL;
for (size_t i = 0; i < n_alarms; i++) {
if (!MP_OBJ_IS_TYPE(alarms[i], &alarm_time_timealarm_type)) {
continue;
}
if (timealarm_set) {
mp_raise_ValueError(translate("Only one alarm.time alarm can be set."));
}
timealarm = MP_OBJ_TO_PTR(alarms[i]);
timealarm_set = true;
}
if (!timealarm_set) {
return;
}
if (pretend_sleep_timer != NULL) {
esp_timer_stop(pretend_sleep_timer);
} else {
@ -93,7 +109,7 @@ void alarm_time_timealarm_set_alarm(alarm_time_time_alarm_obj_t *self) {
// Compute how long to actually sleep, considering the time now.
mp_float_t now_secs = uint64_to_float(common_hal_time_monotonic_ms()) / 1000.0f;
mp_float_t wakeup_in_secs = MAX(0.0f, self->monotonic_time - now_secs);
mp_float_t wakeup_in_secs = MAX(0.0f, timealarm->monotonic_time - now_secs);
const uint64_t sleep_for_us = (uint64_t) (wakeup_in_secs * 1000000);
esp_sleep_enable_timer_wakeup(sleep_for_us);

View File

@ -30,11 +30,11 @@
typedef struct {
mp_obj_base_t base;
mp_float_t monotonic_time; // values compatible with time.monotonic_time()
} alarm_time_time_alarm_obj_t;
} alarm_time_timealarm_obj_t;
// Find the alarm object that caused us to wake up or create an equivalent one.
mp_obj_t alarm_time_timealarm_get_wakeup_alarm(size_t n_alarms, const mp_obj_t *alarms);
// Check for the wake up alarm from pretend deep sleep.
bool alarm_time_timealarm_woke_us_up(void);
void alarm_time_timealarm_set_alarm(alarm_time_time_alarm_obj_t *self);
void alarm_time_timealarm_set_alarms(bool deep_sleep, size_t n_alarms, const mp_obj_t *alarms);
void alarm_time_timealarm_reset(void);

View File

@ -0,0 +1,153 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 microDev
*
* 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 "shared-bindings/alarm/touch/TouchAlarm.h"
#include "shared-bindings/microcontroller/__init__.h"
#include "esp_sleep.h"
#include "peripherals/touch.h"
#include "supervisor/esp_port.h"
static volatile bool woke_up = false;
static touch_pad_t touch_channel = TOUCH_PAD_MAX;
void common_hal_alarm_touch_touchalarm_construct(alarm_touch_touchalarm_obj_t *self, const mcu_pin_obj_t *pin) {
if (pin->touch_channel == TOUCH_PAD_MAX) {
mp_raise_ValueError(translate("Invalid pin"));
}
claim_pin(pin);
self->pin = pin;
}
mp_obj_t alarm_touch_touchalarm_get_wakeup_alarm(const size_t n_alarms, const mp_obj_t *alarms) {
// First, check to see if we match any given alarms.
for (size_t i = 0; i < n_alarms; i++) {
if (MP_OBJ_IS_TYPE(alarms[i], &alarm_touch_touchalarm_type)) {
return alarms[i];
}
}
alarm_touch_touchalarm_obj_t *alarm = m_new_obj(alarm_touch_touchalarm_obj_t);
alarm->base.type = &alarm_touch_touchalarm_type;
alarm->pin = NULL;
// Map the pin number back to a pin object.
for (size_t i = 0; i < mcu_pin_globals.map.used; i++) {
const mcu_pin_obj_t* pin_obj = MP_OBJ_TO_PTR(mcu_pin_globals.map.table[i].value);
if (pin_obj->touch_channel == touch_channel) {
alarm->pin = mcu_pin_globals.map.table[i].value;
break;
}
}
return alarm;
}
// This is used to wake the main CircuitPython task.
void touch_interrupt(void *arg) {
(void) arg;
woke_up = true;
BaseType_t task_wakeup;
vTaskNotifyGiveFromISR(circuitpython_task, &task_wakeup);
if (task_wakeup) {
portYIELD_FROM_ISR();
}
}
void alarm_touch_touchalarm_set_alarm(const bool deep_sleep, const size_t n_alarms, const mp_obj_t *alarms) {
bool touch_alarm_set = false;
alarm_touch_touchalarm_obj_t *touch_alarm = MP_OBJ_NULL;
for (size_t i = 0; i < n_alarms; i++) {
if (MP_OBJ_IS_TYPE(alarms[i], &alarm_touch_touchalarm_type)) {
if (!touch_alarm_set) {
touch_alarm = MP_OBJ_TO_PTR(alarms[i]);
touch_alarm_set = true;
} else {
mp_raise_ValueError(translate("Only one alarm.touch alarm can be set."));
}
}
}
if (!touch_alarm_set) {
return;
}
touch_channel = touch_alarm->pin->touch_channel;
// configure interrupt for pretend to deep sleep
// this will be disabled if we actually deep sleep
// intialize touchpad
peripherals_touch_reset();
peripherals_touch_never_reset(true);
peripherals_touch_init(touch_channel);
// wait for touch data to reset
mp_hal_delay_ms(10);
// configure trigger threshold
uint32_t touch_value;
touch_pad_read_benchmark(touch_channel, &touch_value);
touch_pad_set_thresh(touch_channel, touch_value * 0.1); //10%
// configure touch interrupt
touch_pad_timeout_set(true, SOC_TOUCH_PAD_THRESHOLD_MAX);
touch_pad_isr_register(touch_interrupt, NULL, TOUCH_PAD_INTR_MASK_ALL);
touch_pad_intr_enable(TOUCH_PAD_INTR_MASK_ACTIVE | TOUCH_PAD_INTR_MASK_INACTIVE | TOUCH_PAD_INTR_MASK_TIMEOUT);
}
void alarm_touch_touchalarm_prepare_for_deep_sleep(void) {
// intialize touchpad
peripherals_touch_never_reset(false);
peripherals_touch_reset();
peripherals_touch_init(touch_channel);
// configure touchpad for sleep
touch_pad_sleep_channel_enable(touch_channel, true);
touch_pad_sleep_channel_enable_proximity(touch_channel, false);
// wait for touch data to reset
mp_hal_delay_ms(10);
// configure trigger threshold
uint32_t touch_value;
touch_pad_sleep_channel_read_smooth(touch_channel, &touch_value);
touch_pad_sleep_set_threshold(touch_channel, touch_value * 0.1); //10%
// enable touchpad wakeup
esp_sleep_enable_touchpad_wakeup();
esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON);
}
bool alarm_touch_touchalarm_woke_us_up(void) {
return woke_up;
}
void alarm_touch_touchalarm_reset(void) {
woke_up = false;
touch_channel = TOUCH_PAD_MAX;
peripherals_touch_never_reset(false);
}

View File

@ -0,0 +1,46 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 microDev
*
* 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_COMMON_HAL_ALARM_TOUCH_TOUCHALARM_H
#define MICROPY_INCLUDED_COMMON_HAL_ALARM_TOUCH_TOUCHALARM_H
#include "py/obj.h"
#include "common-hal/microcontroller/Pin.h"
typedef struct {
mp_obj_base_t base;
const mcu_pin_obj_t *pin;
} alarm_touch_touchalarm_obj_t;
// Find the alarm object that caused us to wake up or create an equivalent one.
mp_obj_t alarm_touch_touchalarm_get_wakeup_alarm(const size_t n_alarms, const mp_obj_t *alarms);
// Check for the wake up alarm from pretend deep sleep.
void alarm_touch_touchalarm_set_alarm(const bool deep_sleep, const size_t n_alarms, const mp_obj_t *alarms);
void alarm_touch_touchalarm_prepare_for_deep_sleep(void);
bool alarm_touch_touchalarm_woke_us_up(void);
void alarm_touch_touchalarm_reset(void);
#endif // MICROPY_INCLUDED_COMMON_HAL_ALARM_TOUCH_TOUCHALARM_H

View File

@ -34,8 +34,10 @@
#include "shared-bindings/microcontroller/Pin.h"
#include <string.h>
#define DEFAULT_VREF 1100
#define NO_OF_SAMPLES 64
#define NO_OF_SAMPLES 2
#define ATTENUATION ADC_ATTEN_DB_11
#define DATA_WIDTH ADC_WIDTH_BIT_13
@ -66,11 +68,14 @@ uint16_t common_hal_analogio_analogin_get_value(analogio_analogin_obj_t *self) {
adc1_config_channel_atten((adc1_channel_t)self->pin->adc_channel, ATTENUATION);
} else if (self->pin->adc_index == ADC_UNIT_2) {
adc2_config_channel_atten((adc2_channel_t)self->pin->adc_channel, ATTENUATION);
} else {
mp_raise_ValueError(translate("Invalid Pin"));
}
// Automatically select calibration process depending on status of efuse
esp_adc_cal_characteristics_t *adc_chars = calloc(1, sizeof(esp_adc_cal_characteristics_t));
esp_adc_cal_characterize(self->pin->adc_index, ATTENUATION, DATA_WIDTH, DEFAULT_VREF, adc_chars);
esp_adc_cal_characteristics_t adc_chars;
memset(&adc_chars, 0, sizeof(adc_chars));
esp_adc_cal_characterize(self->pin->adc_index, ATTENUATION, DATA_WIDTH, DEFAULT_VREF, &adc_chars);
uint32_t adc_reading = 0;
//Multisampling
@ -89,7 +94,7 @@ uint16_t common_hal_analogio_analogin_get_value(analogio_analogin_obj_t *self) {
adc_reading /= NO_OF_SAMPLES;
// This corrects non-linear regions of the ADC range with a LUT, so it's a better reading than raw
uint32_t voltage = esp_adc_cal_raw_to_voltage(adc_reading, adc_chars);
uint32_t voltage = esp_adc_cal_raw_to_voltage(adc_reading, &adc_chars);
return voltage * ((1 << 16) - 1)/3300;
}

View File

@ -29,7 +29,7 @@
#include "common-hal/microcontroller/Pin.h"
#include "components/hal/include/hal/adc_types.h"
#include "components/soc/include/hal/adc_types.h"
#include "FreeRTOS.h"
#include "freertos/semphr.h"
#include "py/obj.h"

View File

@ -29,7 +29,7 @@
#include "common-hal/microcontroller/Pin.h"
#include "components/hal/include/hal/i2c_types.h"
#include "components/soc/include/hal/i2c_types.h"
#include "FreeRTOS.h"
#include "freertos/semphr.h"
#include "py/obj.h"

View File

@ -248,12 +248,8 @@ void common_hal_busio_spi_deinit(busio_spi_obj_t *self) {
spi_bus_free(self->host_id);
common_hal_reset_pin(self->clock_pin);
if (self->MOSI_pin != NULL) {
common_hal_reset_pin(self->MOSI_pin);
}
if (self->MISO_pin != NULL) {
common_hal_reset_pin(self->MISO_pin);
}
common_hal_reset_pin(self->MOSI_pin);
common_hal_reset_pin(self->MISO_pin);
self->clock_pin = NULL;
self->MISO_pin = NULL;
self->MOSI_pin = NULL;
@ -273,7 +269,7 @@ bool common_hal_busio_spi_configure(busio_spi_obj_t *self,
self->bits = bits;
self->target_frequency = baudrate;
self->hal_context.timing_conf = &self->timing_conf;
esp_err_t result = spi_hal_cal_clock_conf(&self->hal_context,
esp_err_t result = spi_hal_get_clock_conf(&self->hal_context,
self->target_frequency,
128 /* duty_cycle */,
self->connected_through_gpio,
@ -366,7 +362,8 @@ bool common_hal_busio_spi_transfer(busio_spi_obj_t *self, const uint8_t *data_ou
burst_length = sizeof(hal->hw->data_buf);
// When switching to non-DMA, we need to make sure DMA is off. Otherwise,
// the S2 will transmit zeroes instead of our data.
spi_ll_txdma_disable(hal->hw);
hal->hw->dma_out_link.dma_tx_ena = 0;
hal->hw->dma_out_link.stop = 1;
}
// This rounds up.

View File

@ -30,8 +30,8 @@
#include "common-hal/microcontroller/Pin.h"
#include "components/driver/include/driver/spi_common_internal.h"
#include "components/hal/include/hal/spi_hal.h"
#include "components/hal/include/hal/spi_types.h"
#include "components/soc/include/hal/spi_hal.h"
#include "components/soc/include/hal/spi_types.h"
#include "py/obj.h"
typedef struct {

View File

@ -29,7 +29,7 @@
#include "common-hal/microcontroller/Pin.h"
#include "components/hal/include/hal/uart_types.h"
#include "components/soc/include/hal/uart_types.h"
#include "py/obj.h"
typedef struct {

View File

@ -30,7 +30,7 @@
#include "components/driver/include/driver/gpio.h"
#include "components/hal/include/hal/gpio_hal.h"
#include "components/soc/include/hal/gpio_hal.h"
void common_hal_digitalio_digitalinout_never_reset(
digitalio_digitalinout_obj_t *self) {

View File

@ -0,0 +1,139 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 microDev
*
* 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 "common-hal/dualbank/__init__.h"
#include "shared-bindings/dualbank/__init__.h"
#include <string.h>
#include "esp_log.h"
#include "esp_ota_ops.h"
static const esp_partition_t *update_partition = NULL;
static esp_ota_handle_t update_handle = 0;
static const char *TAG = "dualbank";
void dualbank_reset(void) {
// should use `abort` instead of `end`
// but not in idf v4.2
// esp_ota_abort(update_handle);
if (esp_ota_end(update_handle) == ESP_OK) {
update_handle = 0;
update_partition = NULL;
}
}
static void __attribute__((noreturn)) task_fatal_error(void) {
ESP_LOGE(TAG, "Exiting task due to fatal error...");
mp_raise_RuntimeError(translate("Update Failed"));
}
void common_hal_dualbank_flash(const void *buf, const size_t len, const size_t offset) {
esp_err_t err;
const esp_partition_t *running = esp_ota_get_running_partition();
const esp_partition_t *last_invalid = esp_ota_get_last_invalid_partition();
if (update_partition == NULL) {
update_partition = esp_ota_get_next_update_partition(NULL);
ESP_LOGI(TAG, "Running partition type %d subtype %d (offset 0x%08x)",
running->type, running->subtype, running->address);
ESP_LOGI(TAG, "Writing partition type %d subtype %d (offset 0x%08x)\n",
update_partition->type, update_partition->subtype, update_partition->address);
assert(update_partition != NULL);
}
if (update_handle == 0) {
if (len > sizeof(esp_image_header_t) + sizeof(esp_image_segment_header_t) + sizeof(esp_app_desc_t)) {
esp_app_desc_t new_app_info;
memcpy(&new_app_info, &((char *)buf)[sizeof(esp_image_header_t) + sizeof(esp_image_segment_header_t)], sizeof(esp_app_desc_t));
ESP_LOGI(TAG, "New firmware version: %s", new_app_info.version);
esp_app_desc_t running_app_info;
if (esp_ota_get_partition_description(running, &running_app_info) == ESP_OK) {
ESP_LOGI(TAG, "Running firmware version: %s", running_app_info.version);
}
esp_app_desc_t invalid_app_info;
if (esp_ota_get_partition_description(last_invalid, &invalid_app_info) == ESP_OK) {
ESP_LOGI(TAG, "Last invalid firmware version: %s", invalid_app_info.version);
}
// check new version with running version
if (memcmp(new_app_info.version, running_app_info.version, sizeof(new_app_info.version)) == 0) {
ESP_LOGW(TAG, "New version is the same as running version.");
task_fatal_error();
}
// check new version with last invalid partition
if (last_invalid != NULL) {
if (memcmp(new_app_info.version, invalid_app_info.version, sizeof(new_app_info.version)) == 0) {
ESP_LOGW(TAG, "New version is the same as invalid version.");
task_fatal_error();
}
}
err = esp_ota_begin(update_partition, OTA_SIZE_UNKNOWN, &update_handle);
if (err != ESP_OK) {
ESP_LOGE(TAG, "esp_ota_begin failed (%s)", esp_err_to_name(err));
task_fatal_error();
}
} else {
ESP_LOGE(TAG, "received package is not fit len");
task_fatal_error();
}
}
if (offset == 0) {
err = esp_ota_write(update_handle, buf, len);
} else {
err = esp_ota_write_with_offset(update_handle, buf, len, offset);
}
if (err != ESP_OK) {
ESP_LOGE(TAG, "esp_ota_write failed (%s)", esp_err_to_name(err));
task_fatal_error();
}
}
void common_hal_dualbank_switch(void) {
if (esp_ota_end(update_handle) == ESP_OK) {
update_handle = 0;
update_partition = NULL;
}
esp_err_t err = esp_ota_set_boot_partition(esp_ota_get_next_update_partition(NULL));
if (err != ESP_OK) {
if (err == ESP_ERR_OTA_VALIDATE_FAILED) {
ESP_LOGE(TAG, "Image validation failed, image is corrupted");
mp_raise_RuntimeError(translate("Firmware image is invalid"));
}
ESP_LOGE(TAG, "esp_ota_set_boot_partition failed (%s)!", esp_err_to_name(err));
task_fatal_error();
}
}

View File

@ -0,0 +1,32 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2020 microDev
*
* 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_ESP32S2_COMMON_HAL_DUALBANK___INIT___H
#define MICROPY_INCLUDED_ESP32S2_COMMON_HAL_DUALBANK___INIT___H
extern void dualbank_reset(void);
#endif //MICROPY_INCLUDED_ESP32S2_COMMON_HAL_DUALBANK___INIT___H

View File

@ -32,7 +32,7 @@
#include "py/mphal.h"
#include "components/driver/include/driver/gpio.h"
#include "components/hal/include/hal/gpio_hal.h"
#include "components/soc/include/hal/gpio_hal.h"
#ifdef MICROPY_HW_NEOPIXEL
bool neopixel_in_use;
@ -44,6 +44,20 @@ STATIC uint32_t in_use[2];
bool apa102_mosi_in_use;
bool apa102_sck_in_use;
STATIC void floating_gpio_reset(gpio_num_t pin_number) {
// This is the same as gpio_reset_pin(), but without the pullup.
// Note that gpio_config resets the iomatrix to GPIO_FUNC as well.
gpio_config_t cfg = {
.pin_bit_mask = BIT64(pin_number),
.mode = GPIO_MODE_DISABLE,
.pull_up_en = false,
.pull_down_en = false,
.intr_type = GPIO_INTR_DISABLE,
};
gpio_config(&cfg);
PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[pin_number], 0);
}
void never_reset_pin_number(gpio_num_t pin_number) {
if (pin_number == -1 ) {
return;
@ -63,6 +77,8 @@ void reset_pin_number(gpio_num_t pin_number) {
never_reset_pins[pin_number / 32] &= ~(1 << pin_number % 32);
in_use[pin_number / 32] &= ~(1 << pin_number % 32);
floating_gpio_reset(pin_number);
#ifdef MICROPY_HW_NEOPIXEL
if (pin_number == MICROPY_HW_NEOPIXEL->number) {
neopixel_in_use = false;
@ -73,6 +89,9 @@ void reset_pin_number(gpio_num_t pin_number) {
}
void common_hal_reset_pin(const mcu_pin_obj_t* pin) {
if (pin == NULL) {
return;
}
reset_pin_number(pin->number);
}
@ -83,9 +102,7 @@ void reset_all_pins(void) {
(never_reset_pins[i / 32] & (1 << i % 32)) != 0) {
continue;
}
gpio_set_direction(i, GPIO_MODE_DEF_INPUT);
gpio_pullup_dis(i);
gpio_pulldown_dis(i);
floating_gpio_reset(i);
}
in_use[0] = 0;
in_use[1] = 0;

Some files were not shown because too many files have changed in this diff Show More