Merge branch 'main' into plasma2040w

This commit is contained in:
Bernhard Bablok 2023-04-28 08:41:02 +02:00
commit a86c5f7310
361 changed files with 14457 additions and 1760 deletions

View File

@ -30,7 +30,9 @@ runs:
# espressif # espressif
- name: Get espressif toolchain - name: Get espressif toolchain
if: inputs.port == 'espressif' if: inputs.port == 'espressif'
run: sudo apt-get install -y ninja-build run: |
sudo apt-get update
sudo apt-get install -y ninja-build
shell: bash shell: bash
- name: Install IDF tools - name: Install IDF tools
if: inputs.port == 'espressif' if: inputs.port == 'espressif'

View File

@ -7,6 +7,7 @@ runs:
run: | run: |
wget --no-verbose https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz wget --no-verbose https://adafruit-circuit-python.s3.amazonaws.com/gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz
sudo tar -C /usr --strip-components=1 -xaf gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz sudo tar -C /usr --strip-components=1 -xaf gcc-arm-10.3-2021.07-x86_64-aarch64-none-elf.tar.xz
sudo apt-get update
sudo apt-get install -y mtools sudo apt-get install -y mtools
shell: bash shell: bash
- name: Install mkfs.fat - name: Install mkfs.fat

View File

@ -174,6 +174,7 @@ jobs:
uses: ./.github/actions/deps/submodules uses: ./.github/actions/deps/submodules
- name: Install dependencies - name: Install dependencies
run: | run: |
sudo apt-get update
sudo apt-get install -y latexmk librsvg2-bin texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra sudo apt-get install -y latexmk librsvg2-bin texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra
pip install -r requirements-doc.txt pip install -r requirements-doc.txt
- name: Build and Validate Stubs - name: Build and Validate Stubs

View File

@ -30,7 +30,9 @@ jobs:
- name: Set up external - name: Set up external
uses: ./.github/actions/deps/external uses: ./.github/actions/deps/external
- name: Install dependencies - name: Install dependencies
run: sudo apt-get install -y gettext uncrustify run: |
sudo apt-get update
sudo apt-get install -y gettext uncrustify
- name: Run pre-commit - name: Run pre-commit
uses: pre-commit/action@v3.0.0 uses: pre-commit/action@v3.0.0
- name: Make patch - name: Make patch

11
.gitmodules vendored
View File

@ -324,3 +324,14 @@
path = ports/broadcom/peripherals path = ports/broadcom/peripherals
url = https://github.com/adafruit/broadcom-peripherals.git url = https://github.com/adafruit/broadcom-peripherals.git
branch = main-build branch = main-build
[submodule "ports/silabs/gecko_sdk"]
path = ports/silabs/gecko_sdk
url = https://github.com/SiliconLabs/gecko_sdk.git
branch = v4.2.1
[submodule "ports/silabs/tools/slc_cli_linux"]
path = ports/silabs/tools/slc_cli_linux
url = https://github.com/SiliconLabs/circuitpython_slc_cli_linux
[submodule "ports/raspberrypi/lib/PicoDVI"]
path = ports/raspberrypi/lib/PicoDVI
url = https://github.com/circuitpython/PicoDVI.git
branch = circuitpython

View File

@ -123,7 +123,7 @@ accordingly.
## Attribution ## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org),
version 1.4, available at version 1.4, available at
<https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>, <https://www.contributor-covenant.org/version/1/4/code-of-conduct.html>,
and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html). and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html).

View File

@ -345,3 +345,7 @@ fetch-submodules:
remove-submodules: remove-submodules:
git submodule deinit -f --all git submodule deinit -f --all
rm -rf .git/modules/* rm -rf .git/modules/*
.PHONY: fetch-tags
fetch-tags:
git fetch --tags --recurse-submodules=no --shallow-since="2023-02-01" https://github.com/adafruit/circuitpython HEAD

View File

@ -216,6 +216,7 @@ exclude_patterns = ["**/build*",
"ports/nrf/usb", "ports/nrf/usb",
"ports/raspberrypi/sdk", "ports/raspberrypi/sdk",
"ports/raspberrypi/lib", "ports/raspberrypi/lib",
"ports/silabs",
"ports/stm/st_driver", "ports/stm/st_driver",
"ports/stm/packages", "ports/stm/packages",
"ports/stm/peripherals", "ports/stm/peripherals",

@ -1 +1 @@
Subproject commit 73fafcbe4c66b23df63be31e9227353b695abb08 Subproject commit 427cc923976229bcb981ca6f218ebe8efd636df6

View File

@ -74,6 +74,10 @@ CIRCUITPY_WEB_API_PORT
~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~
TCP port number used for the web HTTP API. Defaults to 80 when omitted. TCP port number used for the web HTTP API. Defaults to 80 when omitted.
CIRCUITPY_WEB_INSTANCE_NAME
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Name the board advertises as for the WEB workflow. Defaults to human readable board name if omitted.
CIRCUITPY_WIFI_PASSWORD CIRCUITPY_WIFI_PASSWORD
~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
Wi-Fi password used to auto connect to CIRCUITPY_WIFI_SSID. Wi-Fi password used to auto connect to CIRCUITPY_WIFI_SSID.

View File

@ -40,6 +40,7 @@ SUPPORTED_PORTS = [
"mimxrt10xx", "mimxrt10xx",
"nrf", "nrf",
"raspberrypi", "raspberrypi",
"silabs",
"stm", "stm",
] ]

View File

@ -72,7 +72,8 @@ Read-only characteristic that returns the UTF-8 encoded version string.
The web workflow is depends on adding Wi-Fi credentials into the `settings.toml` file. The keys are The web workflow is depends on adding Wi-Fi credentials into the `settings.toml` file. The keys are
`CIRCUITPY_WIFI_SSID` and `CIRCUITPY_WIFI_PASSWORD`. Once these are defined, CircuitPython will `CIRCUITPY_WIFI_SSID` and `CIRCUITPY_WIFI_PASSWORD`. Once these are defined, CircuitPython will
automatically connect to the network and start the webserver used for the workflow. The webserver automatically connect to the network and start the webserver used for the workflow. The webserver
is on port 80 unless overridden by `CIRCUITPY_WEB_API_PORT`. It also enables MDNS. is on port 80 unless overridden by `CIRCUITPY_WEB_API_PORT`. It also enables MDNS. The name
of the board as advertised to the network can be overridden by `CIRCUITPY_WEB_INSTANCE_NAME`.
Here is an example `/settings.toml`: Here is an example `/settings.toml`:
@ -86,6 +87,7 @@ CIRCUITPY_WIFI_PASSWORD="secretpassword"
CIRCUITPY_WEB_API_PASSWORD="passw0rd" CIRCUITPY_WEB_API_PASSWORD="passw0rd"
CIRCUITPY_WEB_API_PORT=80 CIRCUITPY_WEB_API_PORT=80
CIRCUITPY_WEB_INSTANCE_NAME=""
``` ```
MDNS is used to resolve [`circuitpython.local`](http://circuitpython.local) to a device specific MDNS is used to resolve [`circuitpython.local`](http://circuitpython.local) to a device specific

View File

@ -101,6 +101,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -126,6 +129,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -164,11 +168,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q harus %d-%d" msgstr "%q harus %d-%d"
@ -196,6 +200,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -464,6 +472,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Semua channel event sedang digunakan" msgstr "Semua channel event sedang digunakan"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -472,6 +481,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Semua channel event yang disinkronisasi sedang digunakan" msgstr "Semua channel event yang disinkronisasi sedang digunakan"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Semua timer untuk pin ini sedang digunakan" msgstr "Semua timer untuk pin ini sedang digunakan"
@ -1123,10 +1133,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1231,7 +1237,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1290,6 +1298,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Ukuran potongan format tidak valid" msgstr "Ukuran potongan format tidak valid"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1721,10 +1733,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Sampel berlebihan harus kelipatan 8." msgstr "Sampel berlebihan harus kelipatan 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -98,6 +98,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -123,6 +126,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -161,11 +165,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -193,6 +197,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -461,6 +469,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -469,6 +478,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "" msgstr ""
@ -1113,10 +1123,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1219,7 +1225,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1278,6 +1286,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "" msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1704,10 +1716,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -102,6 +102,9 @@ msgstr "%d adresní pin, %d rgb pin a %d dlaždice indikuje výšku %d, ne %d"
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -127,6 +130,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -165,11 +169,11 @@ msgstr "Délka %q musí být <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "Délka %q musí být >= %d" msgstr "Délka %q musí být >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q musí být %d" msgstr "%q musí být %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q musí být %d-%d" msgstr "%q musí být %d-%d"
@ -197,6 +201,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -465,6 +473,7 @@ msgstr "Všechny kanály jsou používány"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Všechny kanály událostí jsou již používány" msgstr "Všechny kanály událostí jsou již používány"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -473,6 +482,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Všechny časovače pro tento pin jsou používány" msgstr "Všechny časovače pro tento pin jsou používány"
@ -1123,10 +1133,6 @@ msgstr "Chyba inicializace I2C"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "Periférie I2C je používána" msgstr "Periférie I2C je používána"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1231,7 +1237,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1290,6 +1298,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Neplatná velikost bloku" msgstr "Neplatná velikost bloku"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Chybná multicastová MAC adresa" msgstr "Chybná multicastová MAC adresa"
@ -1717,10 +1729,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -110,6 +110,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -135,6 +138,7 @@ msgstr "%q in %q muss von Typ %q sein, nicht %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -173,11 +177,11 @@ msgstr "%q länge muss kleiner oder gleich %d sein"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "%q länge muss größer oder gleich %d sein" msgstr "%q länge muss größer oder gleich %d sein"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q muss %d entsprechen" msgstr "%q muss %d entsprechen"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q muss %d-%d sein" msgstr "%q muss %d-%d sein"
@ -206,6 +210,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "%q muss ein Array vom Typ 'H' sein" msgstr "%q muss ein Array vom Typ 'H' sein"
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -475,6 +483,7 @@ msgstr "Alle Kanäle werden verwendet"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Alle Event-Kanäle werden benutzt" msgstr "Alle Event-Kanäle werden benutzt"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Alle State-Maschinen in Verwendung" msgstr "Alle State-Maschinen in Verwendung"
@ -483,6 +492,7 @@ msgstr "Alle State-Maschinen in Verwendung"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Alle Sync Event-Kanäle werden benutzt" msgstr "Alle Sync Event-Kanäle werden benutzt"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Alle Timer für diesen Pin werden bereits benutzt" msgstr "Alle Timer für diesen Pin werden bereits benutzt"
@ -1143,10 +1153,6 @@ msgstr "I2C-Initialisierungsfehler"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "I2C Peripherie in Verwendung" msgstr "I2C Peripherie in Verwendung"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut nicht verfügbar"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "In-Puffer-Elemente müssen <= 4 Bytes lang sein" msgstr "In-Puffer-Elemente müssen <= 4 Bytes lang sein"
@ -1255,7 +1261,9 @@ msgid "Interrupt error."
msgstr "Interrupt Fehler." msgstr "Interrupt Fehler."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1314,6 +1322,10 @@ msgstr "Ungültiges Format"
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Ungültige format chunk size" msgstr "Ungültige format chunk size"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Ungültige Multicast-MAC-Adresse" msgstr "Ungültige Multicast-MAC-Adresse"
@ -1747,10 +1759,6 @@ msgstr "Out-Buffer-Elemente müssen <= 4 bytes lang sein"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Oversample muss ein Vielfaches von 8 sein." msgstr "Oversample muss ein Vielfaches von 8 sein."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "PDMIn nicht verfügbar"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4460,6 +4468,12 @@ msgstr "zi muss eine Gleitkommazahl sein"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi muss die Form (n_section, 2) haben" msgstr "zi muss die Form (n_section, 2) haben"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut nicht verfügbar"
#~ msgid "PDMIn not available"
#~ msgstr "PDMIn nicht verfügbar"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "Außerhalb des Bereichs der Quelle" #~ msgstr "Außerhalb des Bereichs der Quelle"

View File

@ -106,6 +106,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -131,6 +134,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -169,11 +173,11 @@ msgstr "%q μήκος πρέπει να είναι <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "%q μήκος πρέπει να είναι >= %d" msgstr "%q μήκος πρέπει να είναι >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q πρέπει να είναι %d" msgstr "%q πρέπει να είναι %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q πρέπει να είναι %d-%d" msgstr "%q πρέπει να είναι %d-%d"
@ -201,6 +205,10 @@ msgstr "%q πρέπει να είναι bytearray ή array τύπου 'h', 'H',
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -469,6 +477,7 @@ msgstr "Όλα τα κανάλια είναι σε χρήση"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Όλα τα κανάλια συμβάντων είναι σε χρήση" msgstr "Όλα τα κανάλια συμβάντων είναι σε χρήση"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Όλες οι μηχανές κατάστασης είναι σε χρήση" msgstr "Όλες οι μηχανές κατάστασης είναι σε χρήση"
@ -477,6 +486,7 @@ msgstr "Όλες οι μηχανές κατάστασης είναι σε χρή
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Όλα τα κανάλια συμβάντων συγχρονισμού είναι σε χρήση" msgstr "Όλα τα κανάλια συμβάντων συγχρονισμού είναι σε χρήση"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Όλοι οι χρονιστές για αυτό το pin χρησιμοποιούνται ήδη" msgstr "Όλοι οι χρονιστές για αυτό το pin χρησιμοποιούνται ήδη"
@ -1133,10 +1143,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1239,7 +1245,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1298,6 +1306,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "" msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1724,10 +1736,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n" "POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2023-03-31 14:39+0000\n" "PO-Revision-Date: 2023-04-22 15:51+0000\n"
"Last-Translator: Jose David M <jquintana202020@gmail.com>\n" "Last-Translator: Jose David M <jquintana202020@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: es\n" "Language: es\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17-dev\n" "X-Generator: Weblate 4.18-dev\n"
#: main.c #: main.c
msgid "" msgid ""
@ -113,6 +113,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -138,6 +141,7 @@ msgstr "%q en %q debe ser del tipo %q, no %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -176,11 +180,11 @@ msgstr "%q longitud debe ser <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "%q longitud debe ser >= %d" msgstr "%q longitud debe ser >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q debe ser %d" msgstr "%q debe ser %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q debe ser %d-%d" msgstr "%q debe ser %d-%d"
@ -208,6 +212,10 @@ msgstr "%q debe ser un byte-matriz o matriz de tipo 'h', 'H', 'b', o 'B'"
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "%q debe ser un arreglo de tipo 'H'" msgstr "%q debe ser un arreglo de tipo 'H'"
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr "%q debe ser una matriz de tipo 'h'"
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -476,6 +484,7 @@ msgstr "Todos los canales están en uso"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Todos los canales de eventos están en uso" msgstr "Todos los canales de eventos están en uso"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Todas las máquinas de estado están en uso" msgstr "Todas las máquinas de estado están en uso"
@ -486,6 +495,7 @@ msgstr ""
"Todos los canales de eventos de sincronización (sync event channels) están " "Todos los canales de eventos de sincronización (sync event channels) están "
"en uso" "en uso"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Todos los timers para este pin están en uso" msgstr "Todos los timers para este pin están en uso"
@ -1150,10 +1160,6 @@ msgstr "Error en la inicialización I2C"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "Dispositivo I2C en uso" msgstr "Dispositivo I2C en uso"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut no disponible"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1265,7 +1271,9 @@ msgid "Interrupt error."
msgstr "Error de interrupción." msgstr "Error de interrupción."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1324,6 +1332,10 @@ msgstr "Formato inválido"
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Formato de fragmento de formato no válido" msgstr "Formato de fragmento de formato no válido"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr "Contraseña hexadecimal no válida"
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Dirección MAC de multidifusión inválida" msgstr "Dirección MAC de multidifusión inválida"
@ -1760,10 +1772,6 @@ msgstr "Los elementos del búfer de salida deben ser de una longitud <= 4 bytes"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "El sobremuestreo debe ser un múltiplo de 8." msgstr "El sobremuestreo debe ser un múltiplo de 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "PDMIn no esta disponible"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4457,6 +4465,12 @@ msgstr "zi debe ser de tipo flotante"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi debe ser una forma (n_section,2)" msgstr "zi debe ser una forma (n_section,2)"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut no disponible"
#~ msgid "PDMIn not available"
#~ msgstr "PDMIn no esta disponible"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "fuera de rango de fuente" #~ msgstr "fuera de rango de fuente"

View File

@ -99,6 +99,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -124,6 +127,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -162,11 +166,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -194,6 +198,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -464,6 +472,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Lahat ng event channels ginagamit" msgstr "Lahat ng event channels ginagamit"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -472,6 +481,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Lahat ng sync event channels ay ginagamit" msgstr "Lahat ng sync event channels ay ginagamit"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Lahat ng timers para sa pin na ito ay ginagamit" msgstr "Lahat ng timers para sa pin na ito ay ginagamit"
@ -1123,10 +1133,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1231,7 +1237,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1290,6 +1298,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Mali ang format ng chunk size" msgstr "Mali ang format ng chunk size"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1719,10 +1731,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Oversample ay dapat multiple ng 8." msgstr "Oversample ay dapat multiple ng 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: 0.1\n" "Project-Id-Version: 0.1\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n" "POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2023-02-26 06:37+0000\n" "PO-Revision-Date: 2023-04-18 13:22+0000\n"
"Last-Translator: Neradoc <weblate@ri1.fr>\n" "Last-Translator: Jeff Epler <jepler@gmail.com>\n"
"Language: fr\n" "Language: fr\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n" "Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.16-dev\n" "X-Generator: Weblate 4.17\n"
#: main.c #: main.c
msgid "" msgid ""
@ -40,6 +40,9 @@ msgid ""
"Please file an issue with your program at https://github.com/adafruit/" "Please file an issue with your program at https://github.com/adafruit/"
"circuitpython/issues." "circuitpython/issues."
msgstr "" msgstr ""
"\n"
"Veuillez signaler un problème avec votre programme sur https://github.com/"
"adafruit/circuitpython/issues."
#: supervisor/shared/safe_mode.c #: supervisor/shared/safe_mode.c
msgid "" msgid ""
@ -110,6 +113,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -135,6 +141,7 @@ msgstr "%q dans %q doit être de type %q, pas %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -173,11 +180,11 @@ msgstr "La longeur de %q doit être <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "La longeur de %q doit être >= %d" msgstr "La longeur de %q doit être >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q doit être %d" msgstr "%q doit être %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q doit être %d-%d" msgstr "%q doit être %d-%d"
@ -205,6 +212,10 @@ msgstr "%q doit être a bytearray ou array de type 'h', 'H', 'b', ou 'B'"
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -473,6 +484,7 @@ msgstr "Tout les canaux sont utilisés"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Tous les canaux d'événements sont utilisés" msgstr "Tous les canaux d'événements sont utilisés"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Tous les automates finis sont utilisés" msgstr "Tous les automates finis sont utilisés"
@ -481,6 +493,7 @@ msgstr "Tous les automates finis sont utilisés"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Tout les canaux d'événements sync sont utilisés" msgstr "Tout les canaux d'événements sync sont utilisés"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Tous les minuteurs pour cette broche sont utilisés" msgstr "Tous les minuteurs pour cette broche sont utilisés"
@ -1153,10 +1166,6 @@ msgstr "Erreur d'initialisation I2C"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "Périphérique I2C utilisé" msgstr "Périphérique I2C utilisé"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut n'est pas disponible"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "Éléments dans le tampon doivent être <= à 4 octets" msgstr "Éléments dans le tampon doivent être <= à 4 octets"
@ -1271,7 +1280,9 @@ msgid "Interrupt error."
msgstr "Erreur d'interruption." msgstr "Erreur d'interruption."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1330,6 +1341,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Taille de bloc de formatage invalide" msgstr "Taille de bloc de formatage invalide"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Adresse MAC multicast invalide" msgstr "Adresse MAC multicast invalide"
@ -1766,10 +1781,6 @@ msgstr "Éléments du tampon de sortie doivent être <= à 4 octets"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Le sur-échantillonage doit être un multiple de 8." msgstr "Le sur-échantillonage doit être un multiple de 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "PDMIn non disponible"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4476,6 +4487,12 @@ msgstr "zi doit être de type float"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi doit être de forme (n_section, 2)" msgstr "zi doit être de forme (n_section, 2)"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut n'est pas disponible"
#~ msgid "PDMIn not available"
#~ msgstr "PDMIn non disponible"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "dépassement des bornes de source" #~ msgstr "dépassement des bornes de source"

View File

@ -98,6 +98,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -123,6 +126,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -161,11 +165,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -193,6 +197,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -461,6 +469,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -469,6 +478,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "" msgstr ""
@ -1113,10 +1123,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1219,7 +1225,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1278,6 +1286,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "" msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1704,10 +1716,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -102,6 +102,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -127,6 +130,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -165,11 +169,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -197,6 +201,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -467,6 +475,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Tutti i canali eventi utilizati" msgstr "Tutti i canali eventi utilizati"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Tutte le state machines sono in uso" msgstr "Tutte le state machines sono in uso"
@ -475,6 +484,7 @@ msgstr "Tutte le state machines sono in uso"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Tutti i canali di eventi sincronizzati in uso" msgstr "Tutti i canali di eventi sincronizzati in uso"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Tutti i timer per questo pin sono in uso" msgstr "Tutti i timer per questo pin sono in uso"
@ -1125,10 +1135,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1233,7 +1239,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1292,6 +1300,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "" msgstr ""
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1723,10 +1735,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "L'oversampling deve essere multiplo di 8." msgstr "L'oversampling deve essere multiplo di 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
#, fuzzy #, fuzzy
msgid "" msgid ""

View File

@ -104,6 +104,9 @@ msgstr "%dアドレスピン、%dRGBピン、%dタイルは%dの高さを指示
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
#, fuzzy #, fuzzy
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -130,6 +133,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -168,11 +172,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -200,6 +204,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -468,6 +476,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "全てのイベントチャネルが使用中" msgstr "全てのイベントチャネルが使用中"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -476,6 +485,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "全ての同期イベントチャネルが使用中" msgstr "全ての同期イベントチャネルが使用中"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "このピン用の全てのタイマが使用中" msgstr "このピン用の全てのタイマが使用中"
@ -1124,10 +1134,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOutが利用できません"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1232,7 +1238,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1291,6 +1299,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "フォーマットチャンクのサイズが不正" msgstr "フォーマットチャンクのサイズが不正"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1719,10 +1731,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "オーバーサンプルは8の倍数でなければなりません" msgstr "オーバーサンプルは8の倍数でなければなりません"
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4382,6 +4390,9 @@ msgstr "ziはfloat値でなければなりません"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "" msgstr ""
#~ msgid "I2SOut not available"
#~ msgstr "I2SOutが利用できません"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "ソースが範囲外" #~ msgstr "ソースが範囲外"

View File

@ -99,6 +99,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -124,6 +127,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -162,11 +166,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -194,6 +198,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -462,6 +470,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -470,6 +479,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "" msgstr ""
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "핀의 모든 타이머가 사용 중입니다" msgstr "핀의 모든 타이머가 사용 중입니다"
@ -1116,10 +1126,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1222,7 +1228,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1281,6 +1289,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "형식 청크 크기가 잘못되었습니다" msgstr "형식 청크 크기가 잘못되었습니다"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1707,10 +1719,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."

View File

@ -98,6 +98,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -123,6 +126,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -161,11 +165,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -193,6 +197,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -461,6 +469,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Alle event kanalen zijn in gebruik" msgstr "Alle event kanalen zijn in gebruik"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -469,6 +478,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Alle sync event kanalen zijn in gebruik" msgstr "Alle sync event kanalen zijn in gebruik"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Alle timers voor deze pin zijn in gebruik" msgstr "Alle timers voor deze pin zijn in gebruik"
@ -1119,10 +1129,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut is niet beschikbaar"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1227,7 +1233,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1286,6 +1294,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Ongeldig formaat stuk grootte" msgstr "Ongeldig formaat stuk grootte"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1718,10 +1730,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Oversample moet een meervoud van 8 zijn." msgstr "Oversample moet een meervoud van 8 zijn."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4392,6 +4400,9 @@ msgstr "zi moet van type float zijn"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi moet vorm (n_section, 2) hebben" msgstr "zi moet vorm (n_section, 2) hebben"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut is niet beschikbaar"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "buiten bereik van bron" #~ msgstr "buiten bereik van bron"

View File

@ -100,6 +100,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "" msgstr ""
@ -125,6 +128,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -163,11 +167,11 @@ msgstr ""
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "" msgstr ""
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "" msgstr ""
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "" msgstr ""
@ -195,6 +199,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -463,6 +471,7 @@ msgstr ""
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Wszystkie kanały zdarzeń w użyciu" msgstr "Wszystkie kanały zdarzeń w użyciu"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "" msgstr ""
@ -471,6 +480,7 @@ msgstr ""
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Wszystkie kanały zdarzeń synchronizacji w użyciu" msgstr "Wszystkie kanały zdarzeń synchronizacji w użyciu"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Wszystkie timery tej nóżki w użyciu" msgstr "Wszystkie timery tej nóżki w użyciu"
@ -1119,10 +1129,6 @@ msgstr ""
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "" msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut niedostępne"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "" msgstr ""
@ -1227,7 +1233,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1286,6 +1294,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Zła wielkość fragmentu formatu" msgstr "Zła wielkość fragmentu formatu"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "" msgstr ""
@ -1712,10 +1724,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Nadpróbkowanie musi być wielokrotnością 8." msgstr "Nadpróbkowanie musi być wielokrotnością 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4368,6 +4376,9 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "" msgstr ""
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut niedostępne"
#~ msgid "pixel value requires too many bits" #~ msgid "pixel value requires too many bits"
#~ msgstr "wartość piksela wymaga zbyt wielu bitów" #~ msgstr "wartość piksela wymaga zbyt wielu bitów"

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n" "POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2023-03-31 14:39+0000\n" "PO-Revision-Date: 2023-04-22 06:48+0000\n"
"Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n" "Last-Translator: Wellington Terumi Uemura <wellingtonuemura@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: pt_BR\n" "Language: pt_BR\n"
@ -14,7 +14,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.17-dev\n" "X-Generator: Weblate 4.18-dev\n"
#: main.c #: main.c
msgid "" msgid ""
@ -111,6 +111,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -136,6 +139,7 @@ msgstr "%q em %q deve ser do tipo %q e não %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -174,11 +178,11 @@ msgstr "o comprimento de %q deve ser <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "o comprimento de %q deve ser >= %d" msgstr "o comprimento de %q deve ser >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q deve ser %d" msgstr "%q deve ser %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "o %q deve ser %d-%d" msgstr "o %q deve ser %d-%d"
@ -206,6 +210,10 @@ msgstr "%q deve ser um bytearray ou uma matriz do tipo 'h', 'H', 'b', ou 'B'"
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "%q deve ser uma matriz do tipo 'H'" msgstr "%q deve ser uma matriz do tipo 'H'"
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr "%q deve ser uma matriz do tipo 'h'"
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -478,6 +486,7 @@ msgstr "Todos os canais estão em uso"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Todos os canais de eventos em uso" msgstr "Todos os canais de eventos em uso"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "O estado de todas as máquinas em uso" msgstr "O estado de todas as máquinas em uso"
@ -486,6 +495,7 @@ msgstr "O estado de todas as máquinas em uso"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Todos os canais dos eventos de sincronização em uso" msgstr "Todos os canais dos eventos de sincronização em uso"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Todos os temporizadores para este pino estão em uso" msgstr "Todos os temporizadores para este pino estão em uso"
@ -1147,10 +1157,6 @@ msgstr "Erro de inicialização do I2C"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "Periférico I2C em uso" msgstr "Periférico I2C em uso"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "O I2SOut não está disponível"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "Os elementos In-buffer devem ter um comprimento de <= 4 bytes" msgstr "Os elementos In-buffer devem ter um comprimento de <= 4 bytes"
@ -1261,7 +1267,9 @@ msgid "Interrupt error."
msgstr "Erro de interrupção." msgstr "Erro de interrupção."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1320,6 +1328,10 @@ msgstr "Formato inválido"
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Tamanho do pedaço de formato inválido" msgstr "Tamanho do pedaço de formato inválido"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr "Senha hexadecimal inválida"
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Endereço MAC multicast inválido" msgstr "Endereço MAC multicast inválido"
@ -1753,10 +1765,6 @@ msgstr "Os elementos Out-buffer devem ter um comprimento de <= 4 bytes"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "A superamostragem deve ser um múltiplo de 8." msgstr "A superamostragem deve ser um múltiplo de 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "O PDMIn não está disponível"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4457,6 +4465,12 @@ msgstr "zi deve ser de um tipo float"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi deve estar na forma (n_section, 2)" msgstr "zi deve estar na forma (n_section, 2)"
#~ msgid "I2SOut not available"
#~ msgstr "O I2SOut não está disponível"
#~ msgid "PDMIn not available"
#~ msgstr "O PDMIn não está disponível"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "fora do alcance da fonte" #~ msgstr "fora do alcance da fonte"

View File

@ -105,6 +105,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -130,6 +133,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -168,11 +172,11 @@ msgstr "Длинна %q должна быть <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "Длинна %q должна быть >= %d" msgstr "Длинна %q должна быть >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q должно быть %d" msgstr "%q должно быть %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q должно быть %d-%d" msgstr "%q должно быть %d-%d"
@ -200,6 +204,10 @@ msgstr "%q должно быть bytearray или array типа 'h', 'H', 'b',
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -468,6 +476,7 @@ msgstr "Все каналы уже используются"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Все каналы событий уже используются" msgstr "Все каналы событий уже используются"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Все машины состояний уже используются" msgstr "Все машины состояний уже используются"
@ -476,6 +485,7 @@ msgstr "Все машины состояний уже используются"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Все каналы событий синхронизации уже используются" msgstr "Все каналы событий синхронизации уже используются"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Все таймеры для этого пина уже используются" msgstr "Все таймеры для этого пина уже используются"
@ -1150,10 +1160,6 @@ msgstr "Ошибка инициализации I2C"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "Периферийное устройство I2C уже используется" msgstr "Периферийное устройство I2C уже используется"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut недоступен"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "Элементы буфера должны быть длиной <= 4 байта" msgstr "Элементы буфера должны быть длиной <= 4 байта"
@ -1264,7 +1270,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1323,6 +1331,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Неверный размер блока формата" msgstr "Неверный размер блока формата"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Неверный MAC-адрес multicast" msgstr "Неверный MAC-адрес multicast"
@ -1760,10 +1772,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4421,6 +4429,9 @@ msgstr "zi должно быть типа float"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi должен иметь форму (n_section, 2)" msgstr "zi должен иметь форму (n_section, 2)"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut недоступен"
#~ msgid "64 bit types" #~ msgid "64 bit types"
#~ msgstr "64-битные типы" #~ msgstr "64-битные типы"

View File

@ -6,7 +6,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n" "POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2023-03-31 14:39+0000\n" "PO-Revision-Date: 2023-04-22 06:48+0000\n"
"Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n" "Last-Translator: Jonny Bergdahl <jonny@bergdahl.it>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
"Language: sv\n" "Language: sv\n"
@ -14,7 +14,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17-dev\n" "X-Generator: Weblate 4.18-dev\n"
#: main.c #: main.c
msgid "" msgid ""
@ -110,6 +110,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -135,6 +138,7 @@ msgstr "%q i %q måste vara av typen %q, inte %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -173,11 +177,11 @@ msgstr "längden på %q måste vara <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "längden på %q måste vara >= %d" msgstr "längden på %q måste vara >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q måste vara %d" msgstr "%q måste vara %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q måste vara %d-%d" msgstr "%q måste vara %d-%d"
@ -207,6 +211,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "%q måste vara en array av typen 'H'" msgstr "%q måste vara en array av typen 'H'"
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr "%q måste vara en matris av typen 'h'"
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -475,6 +483,7 @@ msgstr "Alla kanaler används"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Alla händelsekanaler används" msgstr "Alla händelsekanaler används"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Alla tillståndsmaskiner används" msgstr "Alla tillståndsmaskiner används"
@ -483,6 +492,7 @@ msgstr "Alla tillståndsmaskiner används"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Alla händelsekanaler används" msgstr "Alla händelsekanaler används"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Alla timers för denna pinne är i bruk" msgstr "Alla timers för denna pinne är i bruk"
@ -1136,10 +1146,6 @@ msgstr "I2C-initieringsfel"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "I2C-enhet används redan" msgstr "I2C-enhet används redan"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut är inte tillgängligt"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "Antal element i buffert måste vara <= 4 byte" msgstr "Antal element i buffert måste vara <= 4 byte"
@ -1246,7 +1252,9 @@ msgid "Interrupt error."
msgstr "Interrupt-fel." msgstr "Interrupt-fel."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1305,6 +1313,10 @@ msgstr "Ogiltigt format"
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Ogiltig formatsegmentstorlek" msgstr "Ogiltig formatsegmentstorlek"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr "Ogiltigt hex-lösenord"
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Ogiltig MAC-adress för multicast" msgstr "Ogiltig MAC-adress för multicast"
@ -1737,10 +1749,6 @@ msgstr "Element i utbuffer måste vara <= 4 byte långa"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Översampling måste vara multipel av 8." msgstr "Översampling måste vara multipel av 8."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "PDMIn inte tillgänglig"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4419,6 +4427,12 @@ msgstr "zi måste vara av typ float"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi måste vara i formen (n_section, 2)" msgstr "zi måste vara i formen (n_section, 2)"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut är inte tillgängligt"
#~ msgid "PDMIn not available"
#~ msgstr "PDMIn inte tillgänglig"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "utanför räckvidd för source" #~ msgstr "utanför räckvidd för source"

View File

@ -106,6 +106,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -131,6 +134,7 @@ msgstr ""
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -169,11 +173,11 @@ msgstr "%q boyutu <= %d olmalıdır"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "%q boyutu >= %d olmalıdır" msgstr "%q boyutu >= %d olmalıdır"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q, %d olmalıdır" msgstr "%q, %d olmalıdır"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q, %d-%d olmalıdır" msgstr "%q, %d-%d olmalıdır"
@ -201,6 +205,10 @@ msgstr "%q 'h', 'H', 'b' ya da 'B' tipi bir bytearray ya da array olmalı"
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "" msgstr ""
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr ""
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -470,6 +478,7 @@ msgstr "Tüm kanallar kullanımda"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "Tüm olay kanalları kullanımda" msgstr "Tüm olay kanalları kullanımda"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "Tüm durum makineleri kullanımda" msgstr "Tüm durum makineleri kullanımda"
@ -478,6 +487,7 @@ msgstr "Tüm durum makineleri kullanımda"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "Tüm asenkron olay kanalları kullanımda" msgstr "Tüm asenkron olay kanalları kullanımda"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "Bu pin için tüm zamanlayıcılar kullanımda" msgstr "Bu pin için tüm zamanlayıcılar kullanımda"
@ -1129,10 +1139,6 @@ msgstr "I2C init hatası"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "I2C çevre cihazı kullanımda" msgstr "I2C çevre cihazı kullanımda"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut uygundeğil"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "Buffer öğeleri <=4 bayt uzunluğunda olmalı" msgstr "Buffer öğeleri <=4 bayt uzunluğunda olmalı"
@ -1237,7 +1243,9 @@ msgid "Interrupt error."
msgstr "" msgstr ""
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1297,6 +1305,10 @@ msgstr ""
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Geçersiz biçim yığın boyutu" msgstr "Geçersiz biçim yığın boyutu"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "Geçersiz multicast MAC adresi" msgstr "Geçersiz multicast MAC adresi"
@ -1723,10 +1735,6 @@ msgstr ""
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "" msgstr ""
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr ""
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -4380,6 +4388,9 @@ msgstr ""
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "" msgstr ""
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut uygundeğil"
#~ msgid "64 bit types" #~ msgid "64 bit types"
#~ msgstr "64 bit tipler" #~ msgstr "64 bit tipler"

View File

@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: circuitpython-cn\n" "Project-Id-Version: circuitpython-cn\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-01-04 12:55-0600\n" "POT-Creation-Date: 2021-01-04 12:55-0600\n"
"PO-Revision-Date: 2023-03-01 17:39+0000\n" "PO-Revision-Date: 2023-04-09 17:51+0000\n"
"Last-Translator: hexthat <hexthat@gmail.com>\n" "Last-Translator: hexthat <hexthat@gmail.com>\n"
"Language-Team: Chinese Hanyu Pinyin\n" "Language-Team: Chinese Hanyu Pinyin\n"
"Language: zh_Latn_pinyin\n" "Language: zh_Latn_pinyin\n"
@ -15,7 +15,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.16\n" "X-Generator: Weblate 4.17-dev\n"
#: main.c #: main.c
msgid "" msgid ""
@ -113,6 +113,9 @@ msgstr ""
#: ports/raspberrypi/common-hal/analogio/AnalogOut.c #: ports/raspberrypi/common-hal/analogio/AnalogOut.c
#: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c #: ports/raspberrypi/common-hal/rtc/RTC.c ports/stm/common-hal/alarm/__init__.c
#: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c #: ports/stm/common-hal/canio/Listener.c ports/stm/common-hal/rtc/RTC.c
#: shared-bindings/audiobusio/I2SOut.c shared-bindings/audiobusio/PDMIn.c
#: shared-bindings/keypad/KeyMatrix.c shared-bindings/keypad/Keys.c
#: shared-bindings/keypad/ShiftRegisterKeys.c
msgid "%q" msgid "%q"
msgstr "%q" msgstr "%q"
@ -138,6 +141,7 @@ msgstr "%q zhōng de %q bì xū shì %q lèi xíng, ér bù shì %q"
#: ports/espressif/common-hal/espulp/ULP.c #: ports/espressif/common-hal/espulp/ULP.c
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/microcontroller/Pin.c #: shared-bindings/microcontroller/Pin.c
@ -176,11 +180,11 @@ msgstr "%q chángdù bìxū <= %d"
msgid "%q length must be >= %d" msgid "%q length must be >= %d"
msgstr "%q chángdù bìxū >= %d" msgstr "%q chángdù bìxū >= %d"
#: py/argcheck.c #: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
msgid "%q must be %d" msgid "%q must be %d"
msgstr "%q bìxū %d" msgstr "%q bìxū %d"
#: py/argcheck.c #: py/argcheck.c shared-bindings/displayio/Bitmap.c
msgid "%q must be %d-%d" msgid "%q must be %d-%d"
msgstr "%q bì xū wéi %d-%d" msgstr "%q bì xū wéi %d-%d"
@ -209,6 +213,10 @@ msgstr ""
msgid "%q must be array of type 'H'" msgid "%q must be array of type 'H'"
msgstr "%q bì xū shì lèi xíng wéi 'H' de shù zǔ" msgstr "%q bì xū shì lèi xíng wéi 'H' de shù zǔ"
#: shared-module/synthio/__init__.c
msgid "%q must be array of type 'h'"
msgstr "%q bìxū shì lèixíng wéi 'h' de shùzǔ"
#: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c #: ports/raspberrypi/bindings/cyw43/__init__.c py/argcheck.c py/objexcept.c
#: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c #: shared-bindings/canio/CAN.c shared-bindings/digitalio/Pull.c
msgid "%q must be of type %q or %q, not %q" msgid "%q must be of type %q or %q, not %q"
@ -477,6 +485,7 @@ msgstr "suǒyǒu píndào dōu zài shǐyòng zhōng"
msgid "All event channels in use" msgid "All event channels in use"
msgstr "suǒyǒu shìjiàn píndào dōu zài shǐyòng zhōng" msgstr "suǒyǒu shìjiàn píndào dōu zài shǐyòng zhōng"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/rp2pio/StateMachine.c #: ports/raspberrypi/common-hal/rp2pio/StateMachine.c
msgid "All state machines in use" msgid "All state machines in use"
msgstr "suǒyǒu zhuàngtàijī dōu zài shǐyòng zhōng" msgstr "suǒyǒu zhuàngtàijī dōu zài shǐyòng zhōng"
@ -485,6 +494,7 @@ msgstr "suǒyǒu zhuàngtàijī dōu zài shǐyòng zhōng"
msgid "All sync event channels in use" msgid "All sync event channels in use"
msgstr "suǒyǒu tóngbù shìjiàn píndào dōu zài shǐyòng zhōng" msgstr "suǒyǒu tóngbù shìjiàn píndào dōu zài shǐyòng zhōng"
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "All timers for this pin are in use" msgid "All timers for this pin are in use"
msgstr "cǐ yǐnjiǎo de suǒyǒu jìshíqì dōu zài shǐyòng zhōng" msgstr "cǐ yǐnjiǎo de suǒyǒu jìshíqì dōu zài shǐyòng zhōng"
@ -826,11 +836,11 @@ msgstr "Liánjiē yǐ duàn kāi, wúfǎ zài shǐyòng. Chuàngjiàn yīgè xī
#: shared-bindings/bitmaptools/__init__.c #: shared-bindings/bitmaptools/__init__.c
msgid "Coordinate arrays have different lengths" msgid "Coordinate arrays have different lengths"
msgstr "" msgstr "zuòbiāo shùzǔ jùyǒu bùtóng de chángdù"
#: shared-bindings/bitmaptools/__init__.c #: shared-bindings/bitmaptools/__init__.c
msgid "Coordinate arrays types have different sizes" msgid "Coordinate arrays types have different sizes"
msgstr "" msgstr "zuòbiāo shùzǔ lèixíng jùyǒu bùtóng de dàxiǎo"
#: py/persistentcode.c #: py/persistentcode.c
msgid "Corrupt .mpy file" msgid "Corrupt .mpy file"
@ -1140,10 +1150,6 @@ msgstr "I2C qǐdòng cuòwù"
msgid "I2C peripheral in use" msgid "I2C peripheral in use"
msgstr "I2C wài shè zhèng zài shǐ yòng zhōng" msgstr "I2C wài shè zhèng zài shǐ yòng zhōng"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr "I2SOut bù kě yòng"
#: ports/raspberrypi/bindings/rp2pio/StateMachine.c #: ports/raspberrypi/bindings/rp2pio/StateMachine.c
msgid "In-buffer elements must be <= 4 bytes long" msgid "In-buffer elements must be <= 4 bytes long"
msgstr "huǎn chōng nèi yuán sù bì xū <= 4 zì jié cháng" msgstr "huǎn chōng nèi yuán sù bì xū <= 4 zì jié cháng"
@ -1253,7 +1259,9 @@ msgid "Interrupt error."
msgstr "zhōng duàn cuò wù." msgstr "zhōng duàn cuò wù."
#: ports/mimxrt10xx/common-hal/audiobusio/__init__.c #: ports/mimxrt10xx/common-hal/audiobusio/__init__.c
#: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c py/argcheck.c #: ports/mimxrt10xx/common-hal/pwmio/PWMOut.c
#: ports/raspberrypi/bindings/picodvi/Framebuffer.c
#: ports/raspberrypi/common-hal/picodvi/Framebuffer.c py/argcheck.c
#: shared-bindings/digitalio/DigitalInOut.c #: shared-bindings/digitalio/DigitalInOut.c
#: shared-bindings/displayio/EPaperDisplay.c #: shared-bindings/displayio/EPaperDisplay.c
msgid "Invalid %q" msgid "Invalid %q"
@ -1280,7 +1288,7 @@ msgstr "Wúxiào de BSSID"
#: main.c #: main.c
msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n" msgid "Invalid CIRCUITPY_PYSTACK_SIZE\n"
msgstr "" msgstr "wú xiào CIRCUITPY_PYSTACK_SIZE\n"
#: shared-bindings/wifi/Radio.c #: shared-bindings/wifi/Radio.c
msgid "Invalid MAC address" msgid "Invalid MAC address"
@ -1306,12 +1314,16 @@ msgstr "wú xiào data_pins[%d]"
#: shared-module/msgpack/__init__.c #: shared-module/msgpack/__init__.c
msgid "Invalid format" msgid "Invalid format"
msgstr "" msgstr "géshì wúxiào"
#: shared-module/audiocore/WaveFile.c #: shared-module/audiocore/WaveFile.c
msgid "Invalid format chunk size" msgid "Invalid format chunk size"
msgstr "Géshì kuài dàxiǎo wúxiào" msgstr "Géshì kuài dàxiǎo wúxiào"
#: shared-bindings/wifi/Radio.c
msgid "Invalid hex password"
msgstr ""
#: ports/espressif/common-hal/wifi/Radio.c #: ports/espressif/common-hal/wifi/Radio.c
msgid "Invalid multicast MAC address" msgid "Invalid multicast MAC address"
msgstr "wú xiào de duō bō MAC dì zhǐ" msgstr "wú xiào de duō bō MAC dì zhǐ"
@ -1744,10 +1756,6 @@ msgstr "huǎn chōng wài yuán sù bì xū <= 4 zì jié cháng"
msgid "Oversample must be multiple of 8." msgid "Oversample must be multiple of 8."
msgstr "Guò cǎiyàng bìxū shì 8 de bèishù." msgstr "Guò cǎiyàng bìxū shì 8 de bèishù."
#: shared-bindings/audiobusio/PDMIn.c
msgid "PDMIn not available"
msgstr "PDMIn bù kě yòng"
#: shared-bindings/pwmio/PWMOut.c #: shared-bindings/pwmio/PWMOut.c
msgid "" msgid ""
"PWM frequency not writable when variable_frequency is False on construction." "PWM frequency not writable when variable_frequency is False on construction."
@ -1981,7 +1989,7 @@ msgstr "bǐ lì chǐ cùn bì xū chú yǐ 3"
#: ports/espressif/common-hal/_bleio/Adapter.c #: ports/espressif/common-hal/_bleio/Adapter.c
#: ports/nrf/common-hal/_bleio/Adapter.c #: ports/nrf/common-hal/_bleio/Adapter.c
msgid "Scan already in progress. Stop with stop_scan." msgid "Scan already in progress. Stop with stop_scan."
msgstr "" msgstr "Sǎomiáo yǐ zài jìnxíng zhōng. Shǐyòng stop_scan tíngzhǐ."
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c #: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c #: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
@ -2298,7 +2306,7 @@ msgstr "wèi zhī de BLE cuò wù: %d"
#: ports/raspberrypi/common-hal/wifi/__init__.c #: ports/raspberrypi/common-hal/wifi/__init__.c
#, c-format #, c-format
msgid "Unknown error code %d" msgid "Unknown error code %d"
msgstr "" msgstr "Wèizhī cuòwù dàimǎ %d"
#: shared-bindings/wifi/Radio.c #: shared-bindings/wifi/Radio.c
#, c-format #, c-format
@ -4425,6 +4433,12 @@ msgstr "zi bìxū wèi fú diǎn xíng"
msgid "zi must be of shape (n_section, 2)" msgid "zi must be of shape (n_section, 2)"
msgstr "zi bìxū jùyǒu xíngzhuàng (n_section,2)" msgstr "zi bìxū jùyǒu xíngzhuàng (n_section,2)"
#~ msgid "I2SOut not available"
#~ msgstr "I2SOut bù kě yòng"
#~ msgid "PDMIn not available"
#~ msgstr "PDMIn bù kě yòng"
#~ msgid "out of range of source" #~ msgid "out of range of source"
#~ msgstr "yuán fàn wéi wài" #~ msgstr "yuán fàn wéi wài"

18
main.c
View File

@ -153,11 +153,15 @@ STATIC void start_mp(supervisor_allocation *heap, supervisor_allocation *pystack
supervisor_workflow_reset(); supervisor_workflow_reset();
// Stack limit should be less than real stack size, so we have a chance // Stack limit should be less than real stack size, so we have a chance
// to recover from limit hit. (Limit is measured in bytes.) // to recover from limit hit. (Limit is measured in bytes.) The top of the
// stack is set to our current state. Not the actual top.
mp_stack_ctrl_init(); mp_stack_ctrl_init();
if (stack_get_bottom() != NULL) { uint32_t *stack_bottom = stack_get_bottom();
mp_stack_set_limit(stack_get_length() - 1024); if (stack_bottom != NULL) {
size_t stack_length = stack_get_length();
mp_stack_set_top(stack_bottom + (stack_length / sizeof(uint32_t)));
mp_stack_set_limit(stack_length - 1024);
} }
@ -712,10 +716,16 @@ STATIC bool run_code_py(safe_mode_t safe_mode, bool *simulate_reset) {
// time_to_next_change is in ms and ticks are slightly shorter so // time_to_next_change is in ms and ticks are slightly shorter so
// we'll undersleep just a little. It shouldn't matter. // we'll undersleep just a little. It shouldn't matter.
if (time_to_next_change > 0) {
port_interrupt_after_ticks(time_to_next_change); port_interrupt_after_ticks(time_to_next_change);
#endif
port_idle_until_interrupt(); port_idle_until_interrupt();
} }
#else
// No status LED can we sleep until we are interrupted by some
// interaction.
port_idle_until_interrupt();
#endif
}
} }
// Done waiting, start the board back up. // Done waiting, start the board back up.

View File

@ -310,7 +310,7 @@ int main(int argc, char **argv) {
return main_(argc, argv); return main_(argc, argv);
} }
uint mp_import_stat(const char *path) { mp_import_stat_t mp_import_stat(const char *path) {
(void)path; (void)path;
return MP_IMPORT_STAT_NO_EXIST; return MP_IMPORT_STAT_NO_EXIST;
} }

View File

@ -42,18 +42,18 @@
// PB03 is physical pin "SCL" on the Metro M4 express // PB03 is physical pin "SCL" on the Metro M4 express
// so you can't use this code AND an i2c peripheral // so you can't use this code AND an i2c peripheral
// at the same time unless you change this // at the same time unless you change this
void port_start_background_task(void) { void port_start_background_tick(void) {
REG_PORT_DIRSET1 = (1 << 3); REG_PORT_DIRSET1 = (1 << 3);
REG_PORT_OUTSET1 = (1 << 3); REG_PORT_OUTSET1 = (1 << 3);
} }
void port_finish_background_task(void) { void port_finish_background_tick(void) {
REG_PORT_OUTCLR1 = (1 << 3); REG_PORT_OUTCLR1 = (1 << 3);
} }
#else #else
void port_start_background_task(void) { void port_start_background_tick(void) {
} }
void port_finish_background_task(void) { void port_finish_background_tick(void) {
} }
#endif #endif

View File

@ -69,7 +69,7 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
@ -82,7 +82,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -47,11 +47,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PA01, &pin_PA00, NULL, false); common_hal_busio_spi_construct(spi, &pin_PA01, &pin_PA00, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -62,7 +62,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -48,11 +48,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PA13, &pin_PA12, NULL, false); common_hal_busio_spi_construct(spi, &pin_PA13, &pin_PA12, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -63,7 +63,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -57,11 +57,11 @@ uint8_t refresh_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false); common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -72,7 +72,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_epaperdisplay_obj_t *display = &displays[0].epaper_display; displayio_epaperdisplay_obj_t *display = &allocate_display()->epaper_display;
display->base.type = &displayio_epaperdisplay_type; display->base.type = &displayio_epaperdisplay_type;
common_hal_displayio_epaperdisplay_construct(display, common_hal_displayio_epaperdisplay_construct(display,
bus, bus,
@ -106,7 +106,8 @@ void board_init(void) {
false, // chip_select (don't always toggle chip select) false, // chip_select (don't always toggle chip select)
false, // grayscale false, // grayscale
false, // acep false, // acep
false); // two_byte_sequence_length false, // two_byte_sequence_length
false); // address_little_endian
} }
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here. // Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here.

View File

@ -46,11 +46,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PA23, &pin_PA22, NULL, false); common_hal_busio_spi_construct(spi, &pin_PA23, &pin_PA22, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -61,7 +61,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -97,11 +97,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PA13, &pin_PA15, NULL, false); common_hal_busio_spi_construct(spi, &pin_PA13, &pin_PA15, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -115,7 +115,7 @@ void board_init(void) {
uint32_t cfg0 = lookupCfg(CFG_DISPLAY_CFG0, 0x000000); uint32_t cfg0 = lookupCfg(CFG_DISPLAY_CFG0, 0x000000);
uint32_t offX = (cfg0 >> 8) & 0xff; uint32_t offX = (cfg0 >> 8) & 0xff;
uint32_t offY = (cfg0 >> 16) & 0xff; uint32_t offY = (cfg0 >> 16) & 0xff;
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -44,6 +44,8 @@ CIRCUITPY_AUDIOIO = 1
CIRCUITPY_AUDIOMIXER = 1 CIRCUITPY_AUDIOMIXER = 1
CIRCUITPY_DISPLAYIO = 1 CIRCUITPY_DISPLAYIO = 1
CIRCUITPY_KEYPAD = 1 CIRCUITPY_KEYPAD = 1
CIRCUITPY_KEYPAD_SHIFTREGISTERKEYS = 0
CIRCUITPY_KEYPAD_KEYMATRIX = 0
CIRCUITPY_MATH = 1 CIRCUITPY_MATH = 1
CIRCUITPY_STAGE = 1 CIRCUITPY_STAGE = 1
CIRCUITPY_SYNTHIO = 1 CIRCUITPY_SYNTHIO = 1

View File

@ -68,11 +68,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false); common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -83,7 +83,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -70,11 +70,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false); common_hal_busio_spi_construct(spi, &pin_PB13, &pin_PB15, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -85,7 +85,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -61,7 +61,7 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
paralleldisplay_parallelbus_obj_t *bus = &displays[0].parallel_bus; paralleldisplay_parallelbus_obj_t *bus = &allocate_display_bus()->parallel_bus;
bus->base.type = &paralleldisplay_parallelbus_type; bus->base.type = &paralleldisplay_parallelbus_type;
common_hal_paralleldisplay_parallelbus_construct(bus, common_hal_paralleldisplay_parallelbus_construct(bus,
&pin_PA16, // Data0 &pin_PA16, // Data0
@ -72,7 +72,7 @@ void board_init(void) {
&pin_PA00, // Reset &pin_PA00, // Reset
0); // Frequency 0); // Frequency
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -78,7 +78,7 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
paralleldisplay_parallelbus_obj_t *bus = &displays[0].parallel_bus; paralleldisplay_parallelbus_obj_t *bus = &allocate_display_bus()->parallel_bus;
bus->base.type = &paralleldisplay_parallelbus_type; bus->base.type = &paralleldisplay_parallelbus_type;
common_hal_paralleldisplay_parallelbus_construct(bus, common_hal_paralleldisplay_parallelbus_construct(bus,
&pin_PA16, // Data0 &pin_PA16, // Data0
@ -89,7 +89,7 @@ void board_init(void) {
&pin_PA00, // Reset &pin_PA00, // Reset
0); // Frequency 0); // Frequency
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -65,11 +65,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_PB20, &pin_PB19, NULL, false); common_hal_busio_spi_construct(spi, &pin_PB20, &pin_PB19, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -80,7 +80,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -95,13 +95,13 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_OBJ_NEW_QSTR(MP_QSTR_I2S_SDIN), MP_ROM_PTR(&pin_PA22) }, { MP_OBJ_NEW_QSTR(MP_QSTR_I2S_SDIN), MP_ROM_PTR(&pin_PA22) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_I2S_BCLK), MP_ROM_PTR(&pin_PB16) }, { MP_OBJ_NEW_QSTR(MP_QSTR_I2S_BCLK), MP_ROM_PTR(&pin_PB16) },
// RTL8720D // RTL8720D - follows the schematic, but see comments
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_PWR), MP_ROM_PTR(&pin_PA18) }, // CHIP_PU { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_PWR), MP_ROM_PTR(&pin_PA18) }, // CHIP_PU
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_RXD), MP_ROM_PTR(&pin_PC22) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_RXD), MP_ROM_PTR(&pin_PC22) }, // *NOT* THE MAIN RX FOR THE RTL CHIP (may be a log UART?)
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_TXD), MP_ROM_PTR(&pin_PC23) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_TXD), MP_ROM_PTR(&pin_PC23) }, // *NOT* THE MAIN TX FOR THE RTL CHIP (may be a log UART?)
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_MOSI), MP_ROM_PTR(&pin_PB24) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_MOSI), MP_ROM_PTR(&pin_PB24) }, // used as the UART TX for the RTL chip
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_CLK), MP_ROM_PTR(&pin_PB25) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_CLK), MP_ROM_PTR(&pin_PB25) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_MISO), MP_ROM_PTR(&pin_PC24) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_MISO), MP_ROM_PTR(&pin_PC24) }, // used as the UART RX for the RTL chip
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_CS), MP_ROM_PTR(&pin_PC25) }, { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_CS), MP_ROM_PTR(&pin_PC25) },
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_READY), MP_ROM_PTR(&pin_PC20) }, // IRQ0 { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_READY), MP_ROM_PTR(&pin_PC20) }, // IRQ0
{ MP_OBJ_NEW_QSTR(MP_QSTR_RTL_DIR), MP_ROM_PTR(&pin_PA19) }, // SYNC { MP_OBJ_NEW_QSTR(MP_QSTR_RTL_DIR), MP_ROM_PTR(&pin_PA19) }, // SYNC

View File

@ -77,8 +77,8 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
// MicroMod UART1 pins // MicroMod UART1 pins
{ MP_ROM_QSTR(MP_QSTR_UART_TX1), MP_ROM_PTR(&pin_PB31) }, // MicroMod UART_TX1 | CircuitPython TX (PB31) { MP_ROM_QSTR(MP_QSTR_UART_TX1), MP_ROM_PTR(&pin_PB31) }, // MicroMod UART_TX1 | CircuitPython TX (PB31)
{ MP_ROM_QSTR(MP_QSTR_UART_RX1), MP_ROM_PTR(&pin_PB30) }, // MicroMod UART_RX1 | CircuitPython RX (PB30) { MP_ROM_QSTR(MP_QSTR_UART_RX1), MP_ROM_PTR(&pin_PB30) }, // MicroMod UART_RX1 | CircuitPython RX (PB30)
// { MP_ROM_QSTR(MP_QSTR_UART_RTS1), MP_ROM_PTR() }, // MicroMod RTS1 (not connected) { MP_ROM_QSTR(MP_QSTR_UART_RTS1), MP_ROM_PTR(&pin_PB00) }, // MicroMod RTS1
// { MP_ROM_QSTR(MP_QSTR_UART_CTS1), MP_ROM_PTR() }, // MicroMod CTS1 (not connected) { MP_ROM_QSTR(MP_QSTR_UART_CTS1), MP_ROM_PTR(&pin_PB01) }, // MicroMod CTS1
// CircuitPython default UART pins // CircuitPython default UART pins
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB31) }, // CircuitPython TX | MicroMod UART_TX1 (PB31) { MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB31) }, // CircuitPython TX | MicroMod UART_TX1 (PB31)

View File

@ -70,7 +70,7 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
@ -82,7 +82,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -156,7 +156,7 @@ void frequencyin_interrupt_handler(uint8_t index) {
} }
// Check if we've reached the upper limit of detection // Check if we've reached the upper limit of detection
if (!supervisor_background_tasks_ok() || self->errored_too_fast) { if (!supervisor_background_ticks_ok() || self->errored_too_fast) {
self->errored_too_fast = true; self->errored_too_fast = true;
frequencyin_emergency_cancel_capture(i); frequencyin_emergency_cancel_capture(i);
} }

View File

@ -100,11 +100,12 @@ endif
CIRCUITPY_ALARM ?= 1 CIRCUITPY_ALARM ?= 1
CIRCUITPY_PS2IO ?= 1
CIRCUITPY_SAMD ?= 1
CIRCUITPY_FLOPPYIO ?= $(CIRCUITPY_FULL_BUILD) CIRCUITPY_FLOPPYIO ?= $(CIRCUITPY_FULL_BUILD)
CIRCUITPY_FRAMEBUFFERIO ?= $(CIRCUITPY_FULL_BUILD) CIRCUITPY_FRAMEBUFFERIO ?= $(CIRCUITPY_FULL_BUILD)
CIRCUITPY_PS2IO ?= 1
CIRCUITPY_RGBMATRIX ?= $(CIRCUITPY_FRAMEBUFFERIO) CIRCUITPY_RGBMATRIX ?= $(CIRCUITPY_FRAMEBUFFERIO)
CIRCUITPY_SAMD ?= 1
CIRCUITPY_SYNTHIO_MAX_CHANNELS = 12
CIRCUITPY_WATCHDOG ?= 1 CIRCUITPY_WATCHDOG ?= 1
endif # samd51 endif # samd51

View File

@ -28,9 +28,9 @@
#include "py/runtime.h" #include "py/runtime.h"
#include "supervisor/port.h" #include "supervisor/port.h"
void port_start_background_task(void) { void port_start_background_tick(void) {
} }
void port_finish_background_task(void) { void port_finish_background_tick(void) {
} }
void port_background_tick(void) { void port_background_tick(void) {

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -36,7 +36,7 @@ void board_init(void) {
fb->base.type = &videocore_framebuffer_type; fb->base.type = &videocore_framebuffer_type;
common_hal_videocore_framebuffer_construct(fb, 640, 480); common_hal_videocore_framebuffer_construct(fb, 640, 480);
framebufferio_framebufferdisplay_obj_t *display = &displays[0].framebuffer_display; framebufferio_framebufferdisplay_obj_t *display = &allocate_display()->framebuffer_display;
display->base.type = &framebufferio_framebufferdisplay_type; display->base.type = &framebufferio_framebufferdisplay_type;
common_hal_framebufferio_framebufferdisplay_construct( common_hal_framebufferio_framebufferdisplay_construct(
display, display,

View File

@ -42,6 +42,7 @@ void common_hal_videocore_framebuffer_deinit(videocore_framebuffer_obj_t *self)
if (vcmailbox_release_framebuffer()) { if (vcmailbox_release_framebuffer()) {
self->framebuffer = NULL; self->framebuffer = NULL;
} }
self->base.type = &mp_type_NoneType;
} }
bool common_hal_videocore_framebuffer_deinited(videocore_framebuffer_obj_t *self) { bool common_hal_videocore_framebuffer_deinited(videocore_framebuffer_obj_t *self) {

View File

@ -34,7 +34,7 @@ void port_background_tick(void) {
} }
void port_background_task(void) { void port_background_task(void) {
} }
void port_start_background_task(void) { void port_start_background_tick(void) {
} }
void port_finish_background_task(void) { void port_finish_background_tick(void) {
} }

View File

@ -51,8 +51,8 @@ void port_background_tick(void) {
void port_background_task(void) { void port_background_task(void) {
} }
void port_start_background_task(void) { void port_start_background_tick(void) {
} }
void port_finish_background_task(void) { void port_finish_background_tick(void) {
} }

View File

@ -55,11 +55,11 @@ void board_init(void) {
busio_i2c_obj_t *i2c = common_hal_board_create_i2c(0); busio_i2c_obj_t *i2c = common_hal_board_create_i2c(0);
// What we would do if it wasn't the shared board I2C: (for reference) // What we would do if it wasn't the shared board I2C: (for reference)
// busio_i2c_obj_t *i2c = &displays[0].i2cdisplay_bus.inline_bus; // busio_i2c_obj_t *i2c = &allocate_display_bus()->i2cdisplay_bus.inline_bus;
// common_hal_busio_i2c_construct(i2c, &pin_GPIO23, &pin_GPIO22, 100000, 0); // common_hal_busio_i2c_construct(i2c, &pin_GPIO23, &pin_GPIO22, 100000, 0);
// common_hal_busio_i2c_never_reset(i2c); // common_hal_busio_i2c_never_reset(i2c);
displayio_i2cdisplay_obj_t *bus = &displays[0].i2cdisplay_bus; displayio_i2cdisplay_obj_t *bus = &allocate_display_bus()->i2cdisplay_bus;
bus->base.type = &displayio_i2cdisplay_type; bus->base.type = &displayio_i2cdisplay_type;
common_hal_displayio_i2cdisplay_construct(bus, common_hal_displayio_i2cdisplay_construct(bus,
i2c, i2c,
@ -67,7 +67,7 @@ void board_init(void) {
NULL NULL
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -52,7 +52,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -63,7 +63,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(
display, display,

View File

@ -72,7 +72,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -85,7 +85,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -72,7 +72,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -85,7 +85,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -72,7 +72,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -85,7 +85,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -72,7 +72,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -85,7 +85,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -56,11 +56,11 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO38); common_hal_never_reset_pin(&pin_GPIO38);
#endif /* DEBUG */ #endif /* DEBUG */
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -71,7 +71,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(
display, display,

View File

@ -120,11 +120,11 @@ void board_init(void) {
common_hal_never_reset_pin(&pin_GPIO44); common_hal_never_reset_pin(&pin_GPIO44);
#endif /* DEBUG */ #endif /* DEBUG */
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO36, &pin_GPIO35, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -135,7 +135,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_epaperdisplay_obj_t *display = &displays[0].epaper_display; displayio_epaperdisplay_obj_t *display = &allocate_display()->epaper_display;
display->base.type = &displayio_epaperdisplay_type; display->base.type = &displayio_epaperdisplay_type;
common_hal_displayio_epaperdisplay_construct( common_hal_displayio_epaperdisplay_construct(
display, display,
@ -167,7 +167,8 @@ void board_init(void) {
false, // always_toggle_chip_select false, // always_toggle_chip_select
true, // grayscale true, // grayscale
false, // acep false, // acep
false); // two_byte_sequence_length false, // two_byte_sequence_length
false); // address_little_endian
} }
bool espressif_board_reset_pin_number(gpio_num_t pin_number) { bool espressif_board_reset_pin_number(gpio_num_t pin_number) {

View File

@ -43,11 +43,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO7, &pin_GPIO6, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO7, &pin_GPIO6, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -58,7 +58,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -44,11 +44,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO7, &pin_GPIO6, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO7, &pin_GPIO6, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -59,7 +59,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -71,7 +71,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -84,7 +84,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -71,11 +71,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO6, &pin_GPIO7, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO6, &pin_GPIO7, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -86,7 +86,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -63,11 +63,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO18, &pin_GPIO23, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO18, &pin_GPIO23, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -78,7 +78,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -72,7 +72,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -85,7 +85,7 @@ void board_init(void) {
0, // polarity 0, // polarity
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -65,7 +65,8 @@ uint8_t display_init_sequence[] = {
}; };
static void display_init(void) { static void display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -76,7 +77,6 @@ static void display_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -90,7 +90,7 @@ static void display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -43,11 +43,11 @@ uint8_t display_init_sequence[] = {
}; };
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO12, &pin_GPIO11, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO12, &pin_GPIO11, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(bus, common_hal_displayio_fourwire_construct(bus,
spi, spi,
@ -58,7 +58,7 @@ void board_init(void) {
0, // Polarity 0, // Polarity
0); // Phase 0); // Phase
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -65,7 +65,8 @@ uint8_t display_init_sequence[] = {
}; };
static void display_init(void) { static void display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -76,7 +77,6 @@ static void display_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -90,7 +90,7 @@ static void display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -45,7 +45,8 @@ uint8_t display_init_sequence[] = {
}; };
static void display_init(void) { static void display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -56,7 +57,6 @@ static void display_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -71,7 +71,7 @@ static void display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -48,7 +48,8 @@ uint8_t display_init_sequence[] = {
}; };
static void display_init(void) { static void display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -60,7 +61,6 @@ static void display_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -74,7 +74,7 @@ static void display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -54,7 +54,7 @@ uint8_t display_init_sequence[] = { // SSD1306
static void display_init(void) { static void display_init(void) {
busio_i2c_obj_t *i2c = common_hal_board_create_i2c(0); busio_i2c_obj_t *i2c = common_hal_board_create_i2c(0);
displayio_i2cdisplay_obj_t *bus = &displays[0].i2cdisplay_bus; displayio_i2cdisplay_obj_t *bus = &allocate_display_bus()->i2cdisplay_bus;
bus->base.type = &displayio_i2cdisplay_type; bus->base.type = &displayio_i2cdisplay_type;
common_hal_displayio_i2cdisplay_construct(bus, common_hal_displayio_i2cdisplay_construct(bus,
i2c, i2c,
@ -62,7 +62,7 @@ static void display_init(void) {
&pin_GPIO18 // reset &pin_GPIO18 // reset
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(display, common_hal_displayio_display_construct(display,
bus, bus,

View File

@ -0,0 +1,399 @@
/*
*
* The MIT License (MIT)
*
* Copyright (c) 2023 CDarius
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "supervisor/board.h"
#include "mpconfigboard.h"
#include "shared-bindings/busio/SPI.h"
#include "shared-bindings/busio/I2C.h"
#include "shared-bindings/displayio/FourWire.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "shared-module/displayio/__init__.h"
#include "shared-module/displayio/mipi_constants.h"
#include "shared-bindings/board/__init__.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "components/driver/include/driver/gpio.h"
#include "components/hal/include/hal/gpio_hal.h"
#include "common-hal/microcontroller/Pin.h"
#include "../../pmic/axp192/axp192.h"
displayio_fourwire_obj_t board_display_obj;
#define DELAY 0x80
#define PMIC_POWER_SOURCE_USB 0
#define PMIC_POWER_SOURCE_M_BUS 1
// display init sequence according to M5Gfx
uint8_t display_init_sequence[] = {
0x01,DELAY,0x80, // Software reset then delay 0x80 (128ms)
0xC8,0x03,0xFF,0x93,0x42, // Turn on the external command
0xC0,0x02,0x12, 0x12, // Power Control 1
0xC1,0x01,0x03, // Power Control 2
0xC5,0x01,0xF2, // VCOM Control 1
0xB0,0x01,0xE0, // RGB Interface SYNC Mode
0xF6,0x03,0x01, 0x00, 0x00, // Interface control
0XE0,0x0F,0x00,0x0C,0x11,0x04,0x11,0x08,0x37,0x89,0x4C,0x06,0x0C,0x0A,0x2E,0x34,0x0F, // Positive Gamma Correction
0xE1,0x0F,0x00,0x0B,0x11,0x05,0x13,0x09,0x33,0x67,0x48,0x07,0x0E,0x0B,0x2E,0x33,0x0F, // Negative Gamma Correction
0xB6,0x04,0x08,0x82,0x1D,0x04, // Display Function Control
0x3A,0x01,0x55, // COLMOD: Pixel Format Set 16 bit
0x21,0x00, // Display inversion ON
0x36,0x01,0x08, // Memory Access Control: RGB order
0x11,DELAY,0x78, // Exit Sleep then delay 0x78 (120ms)
0x29,DELAY,0x78, // Display on then delay 0x78 (120ms)
};
static bool pmic_set_power_source(uint8_t source, busio_i2c_obj_t *i2c) {
int rc;
uint8_t read_buf[1];
uint8_t write_buf[2];
switch (source)
{
case PMIC_POWER_SOURCE_USB:
// Set GPIO to 3.3V (when LDO OUTPUT mode is active)
write_buf[0] = AXP192_GPIO0_LDO_VOLTAGE;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = (read_buf[0] & ~AXP192_GPIO0_LDO_VOLTAGE_MASK) | AXP192_GPIO0_LDO_VOLTAGE_3_3V;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Set GPIO0 to LDO_OUTPUT to set N_VBUSEN high
// When N_VBUSEN is high IPSOUT do not select VBUS as source (BUS_5V)
write_buf[0] = AXP192_GPIO0_FUNCTION;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = (read_buf[0] & ~AXP192_GPIO0_FUNCTION_MASK) | AXP192_GPIO0_FUNCTION_LDO_OUTPUT;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
#if M5STACK_CORE2_5V_OUTPUT_ENABLE_DEFAULT
// Set EXTENT output high to enable 5V power boost
write_buf[0] = AXP192_DCDC13_LDO23_CTRL;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = read_buf[0] | AXP192_DCDC13_LDO23_CTRL_EXTEN;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
#endif
// Enable VBUS-IPSOUT when N_VBUSEN is high
write_buf[0] = AXP192_VBUS_IPSOUT;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = read_buf[0] & ~AXP192_VBUS_IPSOUT_IGNORE_VBUSEN;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
return true;
case PMIC_POWER_SOURCE_M_BUS:
// Enable VBUS-IPSOUT regardless of f N_VBUSEN
write_buf[0] = AXP192_VBUS_IPSOUT;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = read_buf[0] | AXP192_VBUS_IPSOUT_IGNORE_VBUSEN;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Set EXTENT output low to disable 5V power boost
write_buf[0] = AXP192_DCDC13_LDO23_CTRL;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = read_buf[0] & ~AXP192_DCDC13_LDO23_CTRL_EXTEN;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Set GPIO0 to float and the pull down resistor set N_VBUSEN low
// When N_VBUSEN is low IPSOUT select VBUS as source (BUS_5V)
write_buf[0] = AXP192_GPIO0_FUNCTION;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
write_buf[1] = (read_buf[0] & ~AXP192_GPIO0_FUNCTION_MASK) | AXP192_GPIO0_FUNCTION_FLOATING;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
return true;
default:
return false;
}
}
static bool pmic_init(busio_i2c_obj_t *i2c) {
int rc;
uint8_t read_buf[1];
uint8_t write_buf[2];
if (!pmic_common_init(i2c)) {
return false;
}
// Reg: 30h
// The VBUS-IPSOUT path can be selected to be opened regardless of the status of N_VBUSEN
// VBUS VHOLD pressure limit control disabled
// VBUS current limit control enabled
write_buf[0] = AXP192_VBUS_IPSOUT;
write_buf[1] = AXP192_VBUS_IPSOUT_VBUS_LIMIT_CURRENT |
AXP192_VBUS_IPSOUT_VBUS_LIMIT_CURRENT_500mA;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 33h
// Charge function enable control bit, including internal and external channels
// Charging target voltage: 4.2V
// Charging end current: End charging when charging current is less than 10% setting
// Internal path charging current: 100mA
write_buf[0] = AXP192_CHARGING_CTRL1;
write_buf[1] = AXP192_CHARGING_CTRL1_ENABLE |
AXP192_CHARGING_CTRL1_VOLTAGE_4_20V |
AXP192_CHARGING_CTRL1_CHARGING_THRESH_10PERC |
AXP192_CHARGING_CTRL1_CURRENT_360mA;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 98h
// PWM1 frequency
write_buf[0] = AXP192_PWM1_OUTPUT_FREQUECY;
write_buf[1] = 0x00;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 99h
// PWM1 duty cycle Y1
write_buf[0] = AXP192_PWM1_DUTY_RATIO_Y1;
write_buf[1] = 0xFF;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 9Ah
// PWM1 duty cycle Y2
write_buf[0] = AXP192_PWM1_DUTY_RATIO_Y2;
write_buf[1] = 0xFF;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 93h
// Speaker off (GPIO2 output low)
write_buf[0] = AXP192_GPIO2_FUNCTION;
write_buf[1] = AXP192_GPIO2_FUNCTION_LOW_OUTPUT;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 28h
// LDO2 (SD + TFT Logic): 3.3V
// LDO3 (Vibration motore): Set to minimum voltage 1.8V
write_buf[0] = AXP192_LDO23_OUT_VOLTAGE;
write_buf[1] = AXP192_LDO23_OUT_VOLTAGE_LDO2_3_3V |
AXP192_LDO23_OUT_VOLTAGE_LDO3_1_8V;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 26h
// DCDC1 (ESP32 VDD): 3.350V
write_buf[0] = AXP192_DCDC1_OUT_VOLTAGE;
write_buf[1] = AXP192_DCDC1_OUT_VOLTAGE_3_350V;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 27h
// DCDC3 (TFT backlight): 3.0V
write_buf[0] = AXP192_DCDC3_OUT_VOLTAGE;
write_buf[1] = AXP192_DCDC3_OUT_VOLTAGE_3_0V;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 12h
// Enable:
// DCDC1 ESP32 VDD, touch screen and 3.3V on M-Bus
// DCDC3 LCD backlight
// LDO2 LCD logic and SD card
write_buf[0] = AXP192_DCDC13_LDO23_CTRL;
write_buf[1] = AXP192_DCDC13_LDO23_CTRL_LDO2 |
AXP192_DCDC13_LDO23_CTRL_DCDC3 |
AXP192_DCDC13_LDO23_CTRL_DCDC1;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 92h
// Set GPIO1 Sys green LED output as PWM
// PWM duty cycle is set to 100% therefore sys led is off
write_buf[0] = AXP192_GPIO1_FUNCTION;
write_buf[1] = AXP192_GPIO1_FUNCTION_PWM1_OUTPUT;
rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
/*
* Select power source:
* If there is voltage on VBUS means that BUS_5V is powered from M-BUS
* and it can use VBUS as power source. If no voltage is present on VBUS
* disable VBUS and rely on ACIN (USB_5V) as power source.
*/
write_buf[0] = AXP192_INPUT_POWER_STATE;
rc = common_hal_busio_i2c_write_read(i2c, AXP192_I2C_ADDRESS, write_buf, 1, read_buf, sizeof(read_buf));
if (rc != 0) {
return false;
}
uint8_t powersource = (read_buf[0] & AXP192_INPUT_POWER_STATE_VBUS_AVAILABLE) ?
PMIC_POWER_SOURCE_M_BUS : PMIC_POWER_SOURCE_USB;
if (!pmic_set_power_source(powersource, i2c)) {
return false;
}
if (!pmic_disable_all_irq(i2c)) {
return false;
}
if (!pmic_clear_all_irq(i2c)) {
return false;
}
if (!pmic_enable_power_key_press_irq(i2c)) {
return false;
}
if (!pmic_enable_low_battery_irq(i2c)) {
return false;
}
return true;
}
static bool display_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct(
bus,
spi,
&pin_GPIO15, // DC
&pin_GPIO5, // CS
NULL, // RST
32000000, // baudrate
0, // polarity
0 // phase
);
displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type;
common_hal_displayio_display_construct(
display,
bus,
320, // width (after rotation)
240, // height (after rotation)
0, // column start
0, // row start
0, // rotation
16, // color depth
false, // grayscale
false, // pixels in a byte share a row. Only valid for depths < 8
1, // bytes per cell. Only valid for depths < 8
false, // reverse_pixels_in_byte. Only valid for depths < 8
true, // reverse_pixels_in_word
MIPI_COMMAND_SET_COLUMN_ADDRESS, // set column command
MIPI_COMMAND_SET_PAGE_ADDRESS, // set row command
MIPI_COMMAND_WRITE_MEMORY_START, // write memory command
display_init_sequence,
sizeof(display_init_sequence),
NULL, // backlight pin
NO_BRIGHTNESS_COMMAND,
1.0f, // brightness
false, // single_byte_bounds
false, // data_as_commands
true, // auto_refresh
61, // native_frames_per_second
true, // backlight_on_high
false, // SH1107_addressing
50000 // backlight pwm frequency
);
return true;
}
void board_init(void) {
busio_i2c_obj_t *internal_i2c = common_hal_board_create_i2c(0);
if (!pmic_init(internal_i2c)) {
mp_printf(&mp_plat_print, "could not initialize axp192 pmic\n");
return;
}
if (!display_init()) {
mp_printf(&mp_plat_print, "could not initialize the display");
return;
}
}

View File

@ -0,0 +1,44 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2023 CDarius
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
// Micropython setup
#define MICROPY_HW_BOARD_NAME "M5Stack Core2"
#define MICROPY_HW_MCU_NAME "ESP32"
#define CIRCUITPY_BOARD_I2C (2)
#define CIRCUITPY_BOARD_I2C_PIN {{.scl = &pin_GPIO22, .sda = &pin_GPIO21}, \
{.scl = &pin_GPIO33, .sda = &pin_GPIO32}}
#define CIRCUITPY_BOARD_SPI (1)
#define CIRCUITPY_BOARD_SPI_PIN {{.clock = &pin_GPIO18, .mosi = &pin_GPIO23, .miso = &pin_GPIO38}}
#define CIRCUITPY_BOARD_UART (1)
#define CIRCUITPY_BOARD_UART_PIN {{.tx = &pin_GPIO14, .rx = &pin_GPIO13}}
// UART pins attached to the USB-serial converter chip
#define CIRCUITPY_CONSOLE_UART_TX (&pin_GPIO1)
#define CIRCUITPY_CONSOLE_UART_RX (&pin_GPIO3)

View File

@ -0,0 +1,20 @@
CIRCUITPY_CREATOR_ID = 0x10151015
CIRCUITPY_CREATION_ID = 0x00320008
IDF_TARGET = esp32
CIRCUITPY_ESP_FLASH_MODE = qio
CIRCUITPY_ESP_FLASH_FREQ = 80m
CIRCUITPY_ESP_FLASH_SIZE = 16MB
M5STACK_CORE2_5V_OUTPUT_ENABLE_DEFAULT = 1
CFLAGS += -DM5STACK_CORE2_5V_OUTPUT_ENABLE_DEFAULT=$(M5STACK_CORE2_5V_OUTPUT_ENABLE_DEFAULT)
SRC_C += pmic/axp192/axp192.c
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Display_Text
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_FakeRequests
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_Requests

View File

@ -0,0 +1,95 @@
#include "shared-bindings/board/__init__.h"
#include "shared-module/displayio/__init__.h"
CIRCUITPY_BOARD_BUS_SINGLETON(porta_i2c, i2c, 1)
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
// External pins are in silkscreen order, from top to bottom, left side, then right side
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_GPIO23) },
{ MP_ROM_QSTR(MP_QSTR_D23), MP_ROM_PTR(&pin_GPIO23) },
{ MP_ROM_QSTR(MP_QSTR_MISO), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_D38), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_SCK), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_D18), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_D3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_PORTC_RX), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_RX2), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_D13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_D21), MP_ROM_PTR(&pin_GPIO21) },
{ MP_ROM_QSTR(MP_QSTR_PORTA_SDA), MP_ROM_PTR(&pin_GPIO32) },
{ MP_ROM_QSTR(MP_QSTR_D32), MP_ROM_PTR(&pin_GPIO32) },
{ MP_ROM_QSTR(MP_QSTR_D27), MP_ROM_PTR(&pin_GPIO27) },
{ MP_ROM_QSTR(MP_QSTR_A27), MP_ROM_PTR(&pin_GPIO27) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SDO), MP_ROM_PTR(&pin_GPIO2) },
{ MP_ROM_QSTR(MP_QSTR_D2), MP_ROM_PTR(&pin_GPIO2) },
{ MP_ROM_QSTR(MP_QSTR_A35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_D35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_PORTB_IN), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_A36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_D36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_A25), MP_ROM_PTR(&pin_GPIO25) },
{ MP_ROM_QSTR(MP_QSTR_D25), MP_ROM_PTR(&pin_GPIO25) },
{ MP_ROM_QSTR(MP_QSTR_PORTB_OUT), MP_ROM_PTR(&pin_GPIO26) },
{ MP_ROM_QSTR(MP_QSTR_A26), MP_ROM_PTR(&pin_GPIO26) },
{ MP_ROM_QSTR(MP_QSTR_D26), MP_ROM_PTR(&pin_GPIO26) },
{ MP_ROM_QSTR(MP_QSTR_D1), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_PORTC_TX), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_TX2), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_D14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_GPIO22) },
{ MP_ROM_QSTR(MP_QSTR_D22), MP_ROM_PTR(&pin_GPIO22) },
{ MP_ROM_QSTR(MP_QSTR_PORTA_SCL), MP_ROM_PTR(&pin_GPIO33) },
{ MP_ROM_QSTR(MP_QSTR_D33), MP_ROM_PTR(&pin_GPIO33) },
{ MP_ROM_QSTR(MP_QSTR_D19), MP_ROM_PTR(&pin_GPIO19) },
{ MP_ROM_QSTR(MP_QSTR_I2S_LRC), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_I2S_PDM_MIC_CLOCK), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_D0), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_I2S_PDM_MIC_DATA), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_D34), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_A34), MP_ROM_PTR(&pin_GPIO34) },
{ MP_ROM_QSTR(MP_QSTR_I2S_SCK), MP_ROM_PTR(&pin_GPIO12) },
// tft
{ MP_ROM_QSTR(MP_QSTR_TFT_CS), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_TFT_DC), MP_ROM_PTR(&pin_GPIO15) },
// { MP_ROM_QSTR(MP_QSTR_TFT_RESET), MP_ROM_PTR(&pin_GPIO33) }, AXP_IO4
// { MP_ROM_QSTR(MP_QSTR_TFT_BACKLIGHT), MP_ROM_PTR(&pin_GPIO32) }, AXP_DC3
// sd card
{ MP_ROM_QSTR(MP_QSTR_SD_CS),MP_ROM_PTR(&pin_GPIO4) },
// touch screen
{ MP_ROM_QSTR(MP_QSTR_TOUCH_INT),MP_ROM_PTR(&pin_GPIO39) },
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_PORTA_I2C), MP_ROM_PTR(&board_porta_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_ROM_QSTR(MP_QSTR_DISPLAY), MP_ROM_PTR(&displays[0].display)}
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -0,0 +1,34 @@
CONFIG_ESP32_ECO3_CACHE_LOCK_FIX=y
CONFIG_ESP32_SPIRAM_SUPPORT=y
CONFIG_ESP32_REV_MIN_3=y
#
# LWIP
#
CONFIG_LWIP_LOCAL_HOSTNAME="M5StaskCore2"
# end of LWIP
#
# SPI RAM config
#
# CONFIG_SPIRAM_TYPE_AUTO=y
# CONFIG_SPIRAM_TYPE_ESPPSRAM16 is not set
# CONFIG_SPIRAM_TYPE_ESPPSRAM32 is not set
CONFIG_SPIRAM_TYPE_ESPPSRAM64=y
CONFIG_SPIRAM_SIZE=8388608
# end of SPI RAM config
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
# CONFIG_SPIRAM_RODATA is not set
CONFIG_SPIRAM_SPEED_80M=y
# CONFIG_SPIRAM_SPEED_40M is not set
# CONFIG_SPIRAM_SPEED_26M is not set
# CONFIG_SPIRAM_SPEED_20M is not set
CONFIG_SPIRAM=y
CONFIG_SPIRAM_BOOT_INIT=y
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
CONFIG_SPIRAM_USE_MEMMAP=y
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
# CONFIG_SPIRAM_USE_MALLOC is not set
CONFIG_SPIRAM_MEMTEST=y
# CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY is not set

View File

@ -57,7 +57,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -71,7 +71,7 @@ void board_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -57,7 +57,7 @@ uint8_t display_init_sequence[] = {
void board_init(void) { void board_init(void) {
busio_spi_obj_t *spi = common_hal_board_create_spi(0); busio_spi_obj_t *spi = common_hal_board_create_spi(0);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -71,7 +71,7 @@ void board_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -29,12 +29,15 @@
#include "shared-bindings/busio/SPI.h" #include "shared-bindings/busio/SPI.h"
#include "shared-bindings/busio/I2C.h" #include "shared-bindings/busio/I2C.h"
#include "shared-bindings/displayio/FourWire.h" #include "shared-bindings/displayio/FourWire.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "shared-module/displayio/__init__.h" #include "shared-module/displayio/__init__.h"
#include "shared-module/displayio/mipi_constants.h" #include "shared-module/displayio/mipi_constants.h"
#include "shared-bindings/board/__init__.h" #include "shared-bindings/board/__init__.h"
#include "shared-bindings/microcontroller/Pin.h"
#include "components/driver/include/driver/gpio.h"
#include "components/hal/include/hal/gpio_hal.h"
#include "common-hal/microcontroller/Pin.h"
#include "axp192.h" #include "../../pmic/axp192/axp192.h"
// display init sequence according to adafruit_st7735r.py library // display init sequence according to adafruit_st7735r.py library
uint8_t display_init_sequence[] = { uint8_t display_init_sequence[] = {
@ -59,12 +62,13 @@ uint8_t display_init_sequence[] = {
0x29,0x80,0x64 // _DISPON 0x29,0x80,0x64 // _DISPON
}; };
static bool pmic_init(void) { static bool pmic_init(busio_i2c_obj_t *i2c) {
int rc; int rc;
// uint8_t read_buf[1];
uint8_t write_buf[2]; uint8_t write_buf[2];
busio_i2c_obj_t *internal_i2c = common_hal_board_create_i2c(0); if (!pmic_common_init(i2c)) {
return false;
}
// Reg: 30h // Reg: 30h
// The VBUS-IPSOUT path can be selected to be opened regardless of the status of N_VBUSEN // The VBUS-IPSOUT path can be selected to be opened regardless of the status of N_VBUSEN
@ -72,16 +76,7 @@ static bool pmic_init(void) {
// VBUS current limit control disabled // VBUS current limit control disabled
write_buf[0] = AXP192_VBUS_IPSOUT; write_buf[0] = AXP192_VBUS_IPSOUT;
write_buf[1] = AXP192_VBUS_IPSOUT_IGNORE_VBUSEN; write_buf[1] = AXP192_VBUS_IPSOUT_IGNORE_VBUSEN;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 31h
// VOFF Shutdown voltage setting ( 3.0V )
write_buf[0] = AXP192_POWER_OFF_VOLTAGE;
write_buf[1] = AXP192_POWER_OFF_VOLTAGE_3_0V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -95,88 +90,7 @@ static bool pmic_init(void) {
write_buf[1] = AXP192_CHARGING_CTRL1_ENABLE | write_buf[1] = AXP192_CHARGING_CTRL1_ENABLE |
AXP192_CHARGING_CTRL1_VOLTAGE_4_20V | AXP192_CHARGING_CTRL1_VOLTAGE_4_20V |
AXP192_CHARGING_CTRL1_CURRENT_100mA; AXP192_CHARGING_CTRL1_CURRENT_100mA;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 35h
// Enable RTC battery charge: 3.0V, 200uA
write_buf[0] = AXP192_BACKUP_BATT;
write_buf[1] = AXP192_BACKUP_BATT_CHARGING_ENABLE |
AXP192_BACKUP_BATT_CHARGING_VOLTAGE_3_0V |
AXP192_BACKUP_BATT_CHARGING_CURRENT_200uA;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 36h
// Power on: Short press 128ms
// Power off: Long press 1s
// Power OK delay 64ms
// Power off delay 4s
write_buf[0] = AXP192_PEK;
write_buf[1] = AXP192_PEK_SHORT_PRESS_128mS |
AXP192_PEK_LONG_PRESS_1_0S |
AXP192_PEK_LONG_PRESS_POWER_OFF |
AXP192_PEK_PWROK_DELAY_64mS |
AXP192_PEK_POWER_OFF_TIME_4S;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 3Ah
// APS Low battery warning level 1: 3.695V
write_buf[0] = AXP192_APS_LOW_BATT_LEVEL_1;
write_buf[1] = AXP192_APS_LOW_BATT_VOLTAGE_3_695V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 3Bh
// APS Low battery warning level 2: 3.600V
write_buf[0] = AXP192_APS_LOW_BATT_LEVEL_2;
write_buf[1] = AXP192_APS_LOW_BATT_VOLTAGE_3_600V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 82h
// ADC all on
write_buf[0] = AXP192_ADC_ENABLE_1;
write_buf[1] = AXP192_ADC_ENABLE_1_BATT_VOL |
AXP192_ADC_ENABLE_1_BATT_CUR |
AXP192_ADC_ENABLE_1_ACIN_VOL |
AXP192_ADC_ENABLE_1_ACIN_CUR |
AXP192_ADC_ENABLE_1_VBUS_VOL |
AXP192_ADC_ENABLE_1_VBUS_CUR |
AXP192_ADC_ENABLE_1_APS_VOL |
AXP192_ADC_ENABLE_1_TS_PIN;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 83h
// ADC temperature on
write_buf[0] = AXP192_ADC_ENABLE_2;
write_buf[1] = AXP192_ADC_ENABLE_2_TEMP_MON;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 84h
// ADC 25Hz
write_buf[0] = AXP192_ADC_TS;
write_buf[1] = AXP192_ADC_TS_SAMPLE_25HZ |
AXP192_ADC_TS_OUT_CUR_80uA |
AXP192_ADC_TS_PIN_OUT_SAVE_ENG;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -185,7 +99,7 @@ static bool pmic_init(void) {
// GPIO0(LDOio0) floating // GPIO0(LDOio0) floating
write_buf[0] = AXP192_GPIO0_FUNCTION; write_buf[0] = AXP192_GPIO0_FUNCTION;
write_buf[1] = AXP192_GPIO0_FUNCTION_FLOATING; write_buf[1] = AXP192_GPIO0_FUNCTION_FLOATING;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -194,7 +108,7 @@ static bool pmic_init(void) {
// GPIO0(LDOio0) 2.8V // GPIO0(LDOio0) 2.8V
write_buf[0] = AXP192_GPIO0_LDO_VOLTAGE; write_buf[0] = AXP192_GPIO0_LDO_VOLTAGE;
write_buf[1] = AXP192_GPIO0_LDO_VOLTAGE_2_8V; write_buf[1] = AXP192_GPIO0_LDO_VOLTAGE_2_8V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -205,7 +119,7 @@ static bool pmic_init(void) {
write_buf[0] = AXP192_LDO23_OUT_VOLTAGE; write_buf[0] = AXP192_LDO23_OUT_VOLTAGE;
write_buf[1] = AXP192_LDO23_OUT_VOLTAGE_LDO2_2_8V | write_buf[1] = AXP192_LDO23_OUT_VOLTAGE_LDO2_2_8V |
AXP192_LDO23_OUT_VOLTAGE_LDO3_3_0V; AXP192_LDO23_OUT_VOLTAGE_LDO3_3_0V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -217,7 +131,7 @@ static bool pmic_init(void) {
AXP192_DCDC13_LDO23_CTRL_LDO3 | AXP192_DCDC13_LDO23_CTRL_LDO3 |
AXP192_DCDC13_LDO23_CTRL_LDO2 | AXP192_DCDC13_LDO23_CTRL_LDO2 |
AXP192_DCDC13_LDO23_CTRL_DCDC1; AXP192_DCDC13_LDO23_CTRL_DCDC1;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
@ -226,56 +140,24 @@ static bool pmic_init(void) {
// DCDC1 (ESP32 VDD): 3.350V // DCDC1 (ESP32 VDD): 3.350V
write_buf[0] = AXP192_DCDC1_OUT_VOLTAGE; write_buf[0] = AXP192_DCDC1_OUT_VOLTAGE;
write_buf[1] = AXP192_DCDC1_OUT_VOLTAGE_3_350V; write_buf[1] = AXP192_DCDC1_OUT_VOLTAGE_3_350V;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf)); rc = common_hal_busio_i2c_write(i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) { if (rc != 0) {
return false; return false;
} }
// Reg: 40h if (!pmic_disable_all_irq(i2c)) {
// IRQ enable control register 1
write_buf[0] = AXP192_IRQ_1_ENABLE;
write_buf[1] = AXP192_IRQ_X_DISABLE_ALL;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false; return false;
} }
// Reg: 41h if (!pmic_clear_all_irq(i2c)) {
// IRQ enable control register 2
write_buf[0] = AXP192_IRQ_2_ENABLE;
write_buf[1] = AXP192_IRQ_X_DISABLE_ALL;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false; return false;
} }
// Reg: 42h if (!pmic_enable_power_key_press_irq(i2c)) {
// IRQ enable control register 3
// Enable power on key short and long press interrupt
write_buf[0] = AXP192_IRQ_2_ENABLE;
write_buf[1] = AXP192_IRQ_3_PEK_SHORT_PRESS |
AXP192_IRQ_3_PEK_LONG_PRESS;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false; return false;
} }
// Reg: 43h if (!pmic_enable_low_battery_irq(i2c)) {
// IRQ enable control register 4
// Enable power on key short and long press interrupt
write_buf[0] = AXP192_IRQ_2_ENABLE;
write_buf[1] = AXP192_IRQ_4_LOW_VOLTAGE_WARNING;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false;
}
// Reg: 44h
// IRQ enable control register 5
write_buf[0] = AXP192_IRQ_2_ENABLE;
write_buf[1] = AXP192_IRQ_X_DISABLE_ALL;
rc = common_hal_busio_i2c_write(internal_i2c, AXP192_I2C_ADDRESS, write_buf, sizeof(write_buf));
if (rc != 0) {
return false; return false;
} }
@ -283,11 +165,11 @@ static bool pmic_init(void) {
} }
static bool display_init(void) { static bool display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct(spi, &pin_GPIO13, &pin_GPIO15, NULL, false); common_hal_busio_spi_construct(spi, &pin_GPIO13, &pin_GPIO15, NULL, false);
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -301,7 +183,7 @@ static bool display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(
@ -339,7 +221,9 @@ static bool display_init(void) {
} }
void board_init(void) { void board_init(void) {
if (!pmic_init()) { busio_i2c_obj_t *internal_i2c = common_hal_board_create_i2c(0);
if (!pmic_init(internal_i2c)) {
mp_printf(&mp_plat_print, "could not initialize axp192 pmic\n"); mp_printf(&mp_plat_print, "could not initialize axp192 pmic\n");
return; return;
} }

View File

@ -7,3 +7,5 @@ CIRCUITPY_ESP_FLASH_MODE = qio
CIRCUITPY_ESP_FLASH_FREQ = 80m CIRCUITPY_ESP_FLASH_FREQ = 80m
CIRCUITPY_ESP_FLASH_SIZE = 4MB CIRCUITPY_ESP_FLASH_SIZE = 4MB
CIRCUITPY_ESPCAMERA = 0 CIRCUITPY_ESPCAMERA = 0
SRC_C += pmic/axp192/axp192.c

View File

@ -147,7 +147,8 @@ void board_init(void) {
// Display // Display
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -158,7 +159,6 @@ void board_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -172,7 +172,7 @@ void board_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(
display, display,

View File

@ -64,7 +64,8 @@ uint8_t display_init_sequence[] = {
}; };
static void display_init(void) { static void display_init(void) {
busio_spi_obj_t *spi = &displays[0].fourwire_bus.inline_bus; displayio_fourwire_obj_t *bus = &allocate_display_bus()->fourwire_bus;
busio_spi_obj_t *spi = &bus->inline_bus;
common_hal_busio_spi_construct( common_hal_busio_spi_construct(
spi, spi,
@ -75,7 +76,6 @@ static void display_init(void) {
common_hal_busio_spi_never_reset(spi); common_hal_busio_spi_never_reset(spi);
displayio_fourwire_obj_t *bus = &displays[0].fourwire_bus;
bus->base.type = &displayio_fourwire_type; bus->base.type = &displayio_fourwire_type;
common_hal_displayio_fourwire_construct( common_hal_displayio_fourwire_construct(
@ -89,7 +89,7 @@ static void display_init(void) {
0 // phase 0 // phase
); );
displayio_display_obj_t *display = &displays[0].display; displayio_display_obj_t *display = &allocate_display()->display;
display->base.type = &displayio_display_type; display->base.type = &displayio_display_type;
common_hal_displayio_display_construct( common_hal_displayio_display_construct(

View File

@ -0,0 +1,39 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2023 Bill Sideris, independently providing these changes.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "supervisor/board.h"
#include "mpconfigboard.h"
#include "shared-bindings/microcontroller/Pin.h"
void board_init(void) {
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif
}
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here.

View File

@ -0,0 +1,33 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2023 Bill Sideris, independently providing these changes.
*
* 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.
*/
#define MICROPY_HW_BOARD_NAME "VCC-GND YD-ESP32-S3 (N16R8)"
#define MICROPY_HW_MCU_NAME "ESP32S3"
#define MICROPY_HW_NEOPIXEL (&pin_GPIO48)
#define DEFAULT_UART_BUS_RX (&pin_GPIO44)
#define DEFAULT_UART_BUS_TX (&pin_GPIO43)

View File

@ -0,0 +1,13 @@
USB_VID = 0x303A
USB_PID = 0x8166
USB_PRODUCT = "YD-ESP32-S3"
USB_MANUFACTURER = "VCC-GND"
IDF_TARGET = esp32s3
CIRCUITPY_ESP_FLASH_MODE = dio
CIRCUITPY_ESP_FLASH_FREQ = 80m
CIRCUITPY_ESP_FLASH_SIZE = 16MB
# Include these Python libraries in firmware.
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel

View File

@ -0,0 +1,60 @@
#include "shared-bindings/board/__init__.h"
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS
// Left header, module facing up.
{ MP_ROM_QSTR(MP_QSTR_GPIO4), MP_ROM_PTR(&pin_GPIO4) },
{ MP_ROM_QSTR(MP_QSTR_GPIO5), MP_ROM_PTR(&pin_GPIO5) },
{ MP_ROM_QSTR(MP_QSTR_GPIO6), MP_ROM_PTR(&pin_GPIO6) },
{ MP_ROM_QSTR(MP_QSTR_GPIO7), MP_ROM_PTR(&pin_GPIO7) },
{ MP_ROM_QSTR(MP_QSTR_GPIO15), MP_ROM_PTR(&pin_GPIO15) },
{ MP_ROM_QSTR(MP_QSTR_GPIO16), MP_ROM_PTR(&pin_GPIO16) },
{ MP_ROM_QSTR(MP_QSTR_GPIO17), MP_ROM_PTR(&pin_GPIO17) },
{ MP_ROM_QSTR(MP_QSTR_GPIO18), MP_ROM_PTR(&pin_GPIO18) },
{ MP_ROM_QSTR(MP_QSTR_GPIO8), MP_ROM_PTR(&pin_GPIO8) },
{ MP_ROM_QSTR(MP_QSTR_GPIO3), MP_ROM_PTR(&pin_GPIO3) },
{ MP_ROM_QSTR(MP_QSTR_GPIO46), MP_ROM_PTR(&pin_GPIO46) },
{ MP_ROM_QSTR(MP_QSTR_GPIO9), MP_ROM_PTR(&pin_GPIO9) },
{ MP_ROM_QSTR(MP_QSTR_GPIO10), MP_ROM_PTR(&pin_GPIO10) },
{ MP_ROM_QSTR(MP_QSTR_GPIO11), MP_ROM_PTR(&pin_GPIO11) },
{ MP_ROM_QSTR(MP_QSTR_GPIO12), MP_ROM_PTR(&pin_GPIO12) },
{ MP_ROM_QSTR(MP_QSTR_GPIO13), MP_ROM_PTR(&pin_GPIO13) },
{ MP_ROM_QSTR(MP_QSTR_GPIO14), MP_ROM_PTR(&pin_GPIO14) },
// Right header, module facing up.
{ MP_ROM_QSTR(MP_QSTR_GPIO43), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) },
{ MP_ROM_QSTR(MP_QSTR_GPIO44), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) },
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },
{ MP_ROM_QSTR(MP_QSTR_GPIO1), MP_ROM_PTR(&pin_GPIO1) },
{ MP_ROM_QSTR(MP_QSTR_GPIO2), MP_ROM_PTR(&pin_GPIO2) },
{ MP_ROM_QSTR(MP_QSTR_GPIO14), MP_ROM_PTR(&pin_GPIO14) },
{ MP_ROM_QSTR(MP_QSTR_GPIO42), MP_ROM_PTR(&pin_GPIO42) },
{ MP_ROM_QSTR(MP_QSTR_GPIO41), MP_ROM_PTR(&pin_GPIO41) },
{ MP_ROM_QSTR(MP_QSTR_GPIO40), MP_ROM_PTR(&pin_GPIO40) },
{ MP_ROM_QSTR(MP_QSTR_GPIO39), MP_ROM_PTR(&pin_GPIO39) },
{ MP_ROM_QSTR(MP_QSTR_GPIO38), MP_ROM_PTR(&pin_GPIO38) },
{ MP_ROM_QSTR(MP_QSTR_GPIO37), MP_ROM_PTR(&pin_GPIO37) },
{ MP_ROM_QSTR(MP_QSTR_GPIO36), MP_ROM_PTR(&pin_GPIO36) },
{ MP_ROM_QSTR(MP_QSTR_GPIO35), MP_ROM_PTR(&pin_GPIO35) },
{ MP_ROM_QSTR(MP_QSTR_GPIO0), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_BOOT), MP_ROM_PTR(&pin_GPIO0) },
{ MP_ROM_QSTR(MP_QSTR_GPIO45), MP_ROM_PTR(&pin_GPIO45) },
{ MP_ROM_QSTR(MP_QSTR_GPIO48), MP_ROM_PTR(&pin_GPIO48) },
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO48) },
// For the neopixel to work, please bridge the "RGB" pad
// or use external neopixels.
{ MP_ROM_QSTR(MP_QSTR_GPIO47), MP_ROM_PTR(&pin_GPIO47) },
{ MP_ROM_QSTR(MP_QSTR_GPIO21), MP_ROM_PTR(&pin_GPIO21) }
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -0,0 +1,16 @@
CONFIG_ESP32S3_SPIRAM_SUPPORT=y
CONFIG_SPIRAM_TYPE_ESPPSRAM64=y
CONFIG_SPIRAM_SIZE=8388608
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_SPIRAM_SPEED_80M=y
CONFIG_DEFAULT_PSRAM_CLK_IO=30
CONFIG_DEFAULT_PSRAM_CS_IO=26
CONFIG_SPIRAM=y
CONFIG_SPIRAM_BOOT_INIT=y
CONFIG_SPIRAM_USE_MEMMAP=y
CONFIG_SPIRAM_MEMTEST=y
CONFIG_LWIP_LOCAL_HOSTNAME="espressif-esp32s3"

View File

@ -0,0 +1,39 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2023 Bill Sideris, independently providing these changes.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#include "supervisor/board.h"
#include "mpconfigboard.h"
#include "shared-bindings/microcontroller/Pin.h"
void board_init(void) {
// Debug UART
#ifdef DEBUG
common_hal_never_reset_pin(&pin_GPIO43);
common_hal_never_reset_pin(&pin_GPIO44);
#endif
}
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here.

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