wip: compiles

This commit is contained in:
Dan Halbert 2020-08-02 11:36:38 -04:00
commit 0a60aee3e4
866 changed files with 23768 additions and 7312 deletions

4
.gitattributes vendored
View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
# Per default everything gets normalized and gets LF line endings on checkout.
* text eol=lf

View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
name: Build CI
on:
@ -22,7 +26,9 @@ jobs:
fetch-depth: 0
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
- name: CircuitPython version
run: git describe --dirty --tags
run: |
git describe --dirty --tags
echo "::set-env name=CP_VERSION::$(git describe --dirty --tags)"
- name: Set up Python 3.8
uses: actions/setup-python@v1
with:
@ -31,7 +37,7 @@ jobs:
run: |
sudo apt-get install -y eatmydata
sudo eatmydata apt-get install -y gettext librsvg2-bin mingw-w64
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid
pip install requests sh click setuptools cpp-coveralls "Sphinx<4" sphinx-rtd-theme recommonmark sphinx-autoapi sphinxcontrib-svg2pdfconverter polib pyyaml astroid isort black awscli
- name: Versions
run: |
gcc --version
@ -68,7 +74,7 @@ jobs:
name: stubs
path: circuitpython-stubs*
- name: Docs
run: sphinx-build -E -W -b html . _build/html
run: sphinx-build -E -W -b html -D version=${{ env.CP_VERSION }} -D release=${{ env.CP_VERSION }} . _build/html
- uses: actions/upload-artifact@v2
with:
name: docs
@ -80,24 +86,32 @@ jobs:
working-directory: tools
- name: Build mpy-cross.static-raspbian
run: make -C mpy-cross -j2 -f Makefile.static-raspbian
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: mpy-cross.static-raspbian
path: mpy-cross/mpy-cross.static-raspbian
- name: Build mpy-cross.static
run: make -C mpy-cross -j2 -f Makefile.static
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: mpy-cross.static-amd64-linux
path: mpy-cross/mpy-cross.static
- name: Build mpy-cross.static-mingw
run: make -C mpy-cross -j2 -f Makefile.static-mingw
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: mpy-cross.static-x64-windows
path: mpy-cross/mpy-cross.static.exe
- name: Upload mpy-cross builds to S3
run: |
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static-raspbian s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-raspbian-${{ env.CP_VERSION }} --no-progress --region us-east-1
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-amd64-linux-${{ env.CP_VERSION }} --no-progress --region us-east-1
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross.static.exe s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross.static-x64-windows-${{ env.CP_VERSION }}.exe --no-progress --region us-east-1
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
mpy-cross-mac:
runs-on: macos-10.15
@ -106,9 +120,9 @@ jobs:
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "$GITHUB_CONTEXT"
- name: Make gettext programs available
- name: Install dependencies
run: |
brew install gettext
brew install gettext awscli
echo "::set-env name=PATH::/usr/local/opt/gettext/bin:$PATH"
- name: Versions
run: |
@ -121,13 +135,23 @@ jobs:
fetch-depth: 0
- run: git fetch --recurse-submodules=no https://github.com/adafruit/circuitpython refs/tags/*:refs/tags/*
- name: CircuitPython version
run: git describe --dirty --tags
run: |
git describe --dirty --tags
echo "::set-env name=CP_VERSION::$(git describe --dirty --tags)"
- name: Build mpy-cross
run: make -C mpy-cross -j2
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: mpy-cross-macos-catalina
path: mpy-cross/mpy-cross
- name: Upload mpy-cross build to S3
run: |
[ -z "$AWS_ACCESS_KEY_ID" ] || aws s3 cp mpy-cross/mpy-cross s3://adafruit-circuit-python/bin/mpy-cross/mpy-cross-macos-catalina-${{ env.CP_VERSION }} --no-progress --region us-east-1
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
if: github.event_name == 'push' || (github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'rerequested'))
build-arm:
runs-on: ubuntu-18.04
@ -147,6 +171,8 @@ jobs:
- "arduino_zero"
- "bast_pro_mini_m0"
- "bdmicro_vina_m0"
- "bless_dev_board_multi_sensor"
- "blm_badge"
- "capablerobot_usbhub"
- "catwan_usbstick"
- "circuitbrains_basic_m0"
@ -188,6 +214,7 @@ jobs:
- "hallowing_m0_express"
- "hallowing_m4_express"
- "hiibot_bluefi"
- "ikigaisense_vita"
- "imxrt1010_evk"
- "imxrt1020_evk"
- "imxrt1060_evk"
@ -196,6 +223,8 @@ jobs:
- "itsybitsy_nrf52840_express"
- "kicksat-sprite"
- "loc_ber_m4_base_board"
- "makerdiary_m60_keyboard"
- "makerdiary_nrf52840_m2_devkit"
- "makerdiary_nrf52840_mdk"
- "makerdiary_nrf52840_mdk_usb_dongle"
- "meowbit_v121"
@ -207,6 +236,7 @@ jobs:
- "mini_sam_m4"
- "monster_m4sk"
- "ndgarage_ndbit6"
- "ndgarage_ndbit6_v2"
- "nfc_copy_cat"
- "nice_nano"
- "nucleo_f746zg"
@ -236,9 +266,11 @@ jobs:
- "pyportal"
- "pyportal_titano"
- "pyruler"
- "raytac_mdbt50q-db-40"
- "robohatmm1_m4"
- "sam32"
- "same54_xplained"
- "seeeduino_wio_terminal"
- "seeeduino_xiao"
- "serpente"
- "shirtty"
@ -263,6 +295,7 @@ jobs:
- "teensy41"
- "teknikio_bluebird"
- "thunderpack"
- "tinkeringtech_scoutmakes_azul"
- "trellis_m4_express"
- "trinket_m0"
- "trinket_m0_haxpress"
@ -302,7 +335,7 @@ jobs:
working-directory: tools
env:
BOARDS: ${{ matrix.board }}
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: ${{ matrix.board }}
path: bin/${{ matrix.board }}
@ -350,7 +383,7 @@ jobs:
working-directory: tools
env:
BOARDS: ${{ matrix.board }}
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: ${{ matrix.board }}
path: bin/${{ matrix.board }}
@ -369,6 +402,7 @@ jobs:
board:
- "espressif_saola_1_wroom"
- "espressif_saola_1_wrover"
- "unexpectedmaker_feathers2"
steps:
- name: Set up Python 3.8
@ -387,7 +421,7 @@ jobs:
id: idf-cache
with:
path: ${{ github.workspace }}/.idf_tools
key: ${{ runner.os }}-idf-tools-${{ hashFiles('.git/modules/ports/esp32s2/esp-idf/HEAD') }}-20200523
key: ${{ runner.os }}-idf-tools-${{ hashFiles('.git/modules/ports/esp32s2/esp-idf/HEAD') }}-20200801
- name: Install IDF tools
run: |
$IDF_PATH/tools/idf_tools.py --non-interactive install required
@ -429,7 +463,7 @@ jobs:
IDF_PATH: ${{ github.workspace }}/ports/esp32s2/esp-idf
IDF_TOOLS_PATH: ${{ github.workspace }}/.idf_tools
BOARDS: ${{ matrix.board }}
- uses: actions/upload-artifact@v1.0.0
- uses: actions/upload-artifact@v2
with:
name: ${{ matrix.board }}
path: bin/${{ matrix.board }}

View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
name: Update CircuitPython.org
on:

4
.gitignore vendored
View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
# Compiled Sources
###################
*.o

4
.gitmodules vendored
View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
[submodule "lib/axtls"]
path = lib/axtls
url = https://github.com/pfalcon/axtls

112
.mailmap Normal file
View File

@ -0,0 +1,112 @@
# SPDX-FileCopyrightText: 2020 Diego Elio Pettenò
#
# SPDX-License-Identifier: Unlicense
Alexander Steffen <devel.20.webmeister@spamgourmet.com>
Alexander Steffen <devel.20.webmeister@spamgourmet.com> <Alexander.Steffen@infineon.com>
Alexander Steffen <devel.20.webmeister@spamgourmet.com> <webmeister@users.noreply.github.com>
Benjamin Vernoux <bvernoux@gmail.com>
Brent Rubell <robots199@me.com>
Brent Rubell <robots199@me.com> <brent@xn.home>
Brent Rubell <robots199@me.com> <brentru@users.noreply.github.com>
Carlos <carlos.santiago.diaz@gmail.com>
Chris Packham <judge.packham@gmail.com>
Chris Packham <judge.packham@gmail.com> <chris.packham@alliedtelesis.co.nz>
Damiano Mazzella <damianomazzella@gmail.com>
Damien George <damien.p.george@gmail.com>
Dan Halbert <halbert@adafruit.com>
Dan Halbert <halbert@adafruit.com> <halbert@halwitz.org>
Daniel Pollard <daniel@learnweaver.com>
Daniel Pollard <daniel@learnweaver.com> <daniel.pollard@learnweaver.com>
Daniel Tralamazza <daniel@tralamazza.com>
Daniel Tralamazza <daniel@tralamazza.com> <tralamazza@users.noreply.github.com>
David Glaude <david.glaude@gmail.com>
David Glaude <david.glaude@gmail.com> <dglaude@users.noreply.github.com>
George Waters <gwatersdev@gmail.com>
George Waters <gwatersdev@gmail.com> <george@georgeh2os.com>
Ha Thach <thach@tinyusb.org>
Henrik Sölver <henrik.solver@gmail.com>
Ilya Dmitrichenko <errordeveloper@gmail.com>
Ilya Dmitrichenko <errordeveloper@gmail.com> <ilya@xively.com>
Jason Pecor <14111408+jpecor@users.noreply.github.com>
Jeff Epler <jepler@gmail.com>
Jeff Epler <jepler@gmail.com> <jeff@adafruit.com>
Jeff Epler <jepler@gmail.com> <jepler@de11.u>
Jeff Epler <jepler@gmail.com> <jepler@unpythonic.net>
Jerry Needell <jerryneedell@gmail.com>
Joe Bakalor <jmbakalor@gmail.com>
Josh Klar <josh@klar.sh>
Josh Klar <josh@klar.sh> <j@iv597.com>
Juan Biondi <juanernestobiondi@gmail.com>
Juan Biondi <juanernestobiondi@gmail.com> <juanernestobiondi@hotmail.com>
KalbeAbbas <kalbeabbas142@gmail.com>
KalbeAbbas <kalbeabbas142@gmail.com> <kalbeabbas@142@gmail.com>
Kamil Tomaszewski <kamil.tomaszewski@sony.com>
Kamil Tomaszewski <kamil.tomaszewski@sony.com> <46525824+kamtom480@users.noreply.github.com>
Kattni <kattni@adafruit.com> <kattni@kittyfish.org>
Kattni Rembor <kattni@adafruit.com>
Kenny <WarriorOfWire@users.noreply.github.com>
Kenny <WarriorOfWire@users.noreply.github.com> <3454741+WarriorOfWire@users.noreply.github.com>
Kevin Townsend <contact@microbuilder.eu>
Kevin Townsend <contact@microbuilder.eu> <microbuilder@users.noreply.github.com>
Krzysztof Blazewicz <blazewicz.krzysztof@gmail.com>
Krzysztof Blazewicz <blazewicz.krzysztof@gmail.com> <krzysztof.blazewicz@uxeon.com>
Li Weiwei <liweiwei@yeweitech.org>
Li Weiwei <liweiwei@yeweitech.org> <liweiwei@yeweitech.com>
Limor "Ladyada" Fried <limor@ladyada.net>
Limor "Ladyada" Fried <limor@ladyada.net> <ladyada>
Lucian Copeland <hierophect@gmail.com>
Lucian Copeland <hierophect@gmail.com> <hierophect@Lucians-MacBook-Air-2.local>
Mark Olsson <post@markolsson.se>
Mark Olsson <post@markolsson.se> <mark@markolsson.se>
Matt Land <matt-land@users.noreply.github.com>
Matt Land <matt-land@users.noreply.github.com> <mland@sparefoot.com>
Matt Wozniski <godlygeek+git@gmail.com>
Matt Wozniski <godlygeek+git@gmail.com> <mwozniski@bloomberg.net>
Melissa LeBlanc-Williams <melissa@adafruit.com>
Melissa LeBlanc-Williams <melissa@adafruit.com> <melissa@melissagirl.com>
Metallicow <metaliobovinus@gmail.com>
Metallicow <metaliobovinus@gmail.com> <edg62702@yahoo.com>
Peter Hinch <peter@hinch.me.uk>
Peter Hinch <peter@hinch.me.uk> <peterhinch@users.noreply.github.com>
Radomir Dopieralski <openstack@sheep.art.pl>
Radomir Dopieralski <openstack@sheep.art.pl> <deshipu@users.noreply.github.com>
Rafa Gould <rafagoulds@gmail.com>
Rafa Gould <rafagoulds@gmail.com> <50337143+rafa-gould@users.noreply.github.com>
Ryan Shaw <ryan.shaw@wisetechglobal.com>
Ryan Shaw <ryan.shaw@wisetechglobal.com> <ryannathans@hotmail.com>
Sabas <s@electroniccats.com>
Sabas <s@electroniccats.com> <s@theinventorhouse.org>
Sabas <s@electroniccats.com> <sabasjimenez@gmail.com>
Scott Shawcroft <scott@adafruit.com>
Scott Shawcroft <scott@adafruit.com> <devnull@unpythonic.net>
Scott Shawcroft <scott@adafruit.com> <scott.shawcroft@gmail.com>
Scott Shawcroft <scott@adafruit.com> <scott@chickadee.tech>
Scott Shawcroft <scott@adafruit.com> <scott@tannewt.org>
Sebastian Plamauer <oeplse@gmail.com>
Sebastian Plamauer <oeplse@gmail.com> <oepse@gmail.com>
Senuros <Senuros@users.noreply.github.com>
Senuros <Senuros@users.noreply.github.com> <senuros@noreply.github.com>
Stewart Colborne <tscolborne@outlook.com>
Stewart Colborne <tscolborne@outlook.com> <tscolborne@hotmail.com>
TG-Techie <TGTechie01@gmail.com>
TG-Techie <TGTechie01@gmail.com> <39284876+TG-Techie@users.noreply.github.com>
Thea Flowers <me@thea.codes>
Thea Flowers <me@thea.codes> <theaflowers@google.com>
Tobias Badertscher <badi@baerospace.ch>
Tobias Badertscher <badi@baerospace.ch> <python@baerospace.ch>
danicampora <danicampora@gmail.com>
danicampora <danicampora@gmail.com> <daniel@wipy.io>
dherrada <dylan.herrada@gmail.com>
dherrada <dylan.herrada@gmail.com> <33632497+dherrada@users.noreply.github.com>
dherrada <dylan.herrada@gmail.com> <=>
glennrub <glennbakke@gmail.com>
retoc <retoc@users.noreply.github.com>
retoc <retoc@users.noreply.github.com> <Retoc@noreply.github.com>
siddacious <nospam187+github@gmail.com>
siddacious <nospam187+github@gmail.com> <bsiepert@gmail.com>
siddacious <nospam187+github@gmail.com> <bsiepert@lbl.gov>
sommersoft <sommersoft@gmail.com>
sommersoft <sommersoft@gmail.com> <sommersoft@users.noreply.github.com>
stijn <stijn@ignitron.net>
stijn <stijn@ignitron.net> <stinos@zoho.com>

View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
# .readthedocs.yml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
# This configuration file tells Rosie where to find prebuilt .bin files (Travis
# builds them) and where to find the tests.

3
ACKNOWLEDGEMENTS.license Normal file
View File

@ -0,0 +1,3 @@
SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
SPDX-License-Identifier: MIT

View File

@ -1,3 +1,8 @@
<!--
SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
SPDX-License-Identifier: MIT
-->
# Building CircuitPython

View File

@ -1,3 +1,9 @@
<!--
SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
SPDX-License-Identifier: MIT
-->
# Contributing
Please note that this project is released with a
[Contributor Code of Conduct](https://github.com/adafruit/circuitpython/blob/main/CODE_OF_CONDUCT.md).

26
LICENSES/BSD-3-Clause.txt Normal file
View File

@ -0,0 +1,26 @@
Copyright (c) <year> <owner>. All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

324
LICENSES/CC-BY-4.0.txt Normal file
View File

@ -0,0 +1,324 @@
Creative Commons Attribution 4.0 International Creative Commons Corporation
("Creative Commons") is not a law firm and does not provide legal services
or legal advice. Distribution of Creative Commons public licenses does not
create a lawyer-client or other relationship. Creative Commons makes its licenses
and related information available on an "as-is" basis. Creative Commons gives
no warranties regarding its licenses, any material licensed under their terms
and conditions, or any related information. Creative Commons disclaims all
liability for damages resulting from their use to the fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and conditions
that creators and other rights holders may use to share original works of
authorship and other material subject to copyright and certain other rights
specified in the public license below. The following considerations are for
informational purposes only, are not exhaustive, and do not form part of our
licenses.
Considerations for licensors: Our public licenses are intended for use by
those authorized to give the public permission to use material in ways otherwise
restricted by copyright and certain other rights. Our licenses are irrevocable.
Licensors should read and understand the terms and conditions of the license
they choose before applying it. Licensors should also secure all rights necessary
before applying our licenses so that the public can reuse the material as
expected. Licensors should clearly mark any material not subject to the license.
This includes other CC-licensed material, or material used under an exception
or limitation to copyright. More considerations for licensors : wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public licenses, a licensor
grants the public permission to use the licensed material under specified
terms and conditions. If the licensor's permission is not necessary for any
reasonfor example, because of any applicable exception or limitation to copyrightthen
that use is not regulated by the license. Our licenses grant only permissions
under copyright and certain other rights that a licensor has authority to
grant. Use of the licensed material may still be restricted for other reasons,
including because others have copyright or other rights in the material. A
licensor may make special requests, such as asking that all changes be marked
or described. Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations for the public
: wiki.creativecommons.org/Considerations_for_licensees Creative Commons Attribution
4.0 International Public License
By exercising the Licensed Rights (defined below), You accept and agree to
be bound by the terms and conditions of this Creative Commons Attribution
4.0 International Public License ("Public License"). To the extent this Public
License may be interpreted as a contract, You are granted the Licensed Rights
in consideration of Your acceptance of these terms and conditions, and the
Licensor grants You such rights in consideration of benefits the Licensor
receives from making the Licensed Material available under these terms and
conditions.
Section 1 Definitions.
a. Adapted Material means material subject to Copyright and Similar Rights
that is derived from or based upon the Licensed Material and in which the
Licensed Material is translated, altered, arranged, transformed, or otherwise
modified in a manner requiring permission under the Copyright and Similar
Rights held by the Licensor. For purposes of this Public License, where the
Licensed Material is a musical work, performance, or sound recording, Adapted
Material is always produced where the Licensed Material is synched in timed
relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright and Similar
Rights in Your contributions to Adapted Material in accordance with the terms
and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights closely
related to copyright including, without limitation, performance, broadcast,
sound recording, and Sui Generis Database Rights, without regard to how the
rights are labeled or categorized. For purposes of this Public License, the
rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights.
d. Effective Technological Measures means those measures that, in the absence
of proper authority, may not be circumvented under laws fulfilling obligations
under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996,
and/or similar international agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or any other
exception or limitation to Copyright and Similar Rights that applies to Your
use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database, or other
material to which the Licensor applied this Public License.
g. Licensed Rights means the rights granted to You subject to the terms and
conditions of this Public License, which are limited to all Copyright and
Similar Rights that apply to Your use of the Licensed Material and that the
Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights under this
Public License.
i. Share means to provide material to the public by any means or process that
requires permission under the Licensed Rights, such as reproduction, public
display, public performance, distribution, dissemination, communication, or
importation, and to make material available to the public including in ways
that members of the public may access the material from a place and at a time
individually chosen by them.
j. Sui Generis Database Rights means rights other than copyright resulting
from Directive 96/9/EC of the European Parliament and of the Council of 11
March 1996 on the legal protection of databases, as amended and/or succeeded,
as well as other essentially equivalent rights anywhere in the world.
k. You means the individual or entity exercising the Licensed Rights under
this Public License. Your has a corresponding meaning.
Section 2 Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License, the Licensor
hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive,
irrevocable license to exercise the Licensed Rights in the Licensed Material
to:
A. reproduce and Share the Licensed Material, in whole or in part; and
B. produce, reproduce, and Share Adapted Material.
2. Exceptions and Limitations. For the avoidance of doubt, where Exceptions
and Limitations apply to Your use, this Public License does not apply, and
You do not need to comply with its terms and conditions.
3. Term. The term of this Public License is specified in Section 6(a).
4. Media and formats; technical modifications allowed. The Licensor authorizes
You to exercise the Licensed Rights in all media and formats whether now known
or hereafter created, and to make technical modifications necessary to do
so. The Licensor waives and/or agrees not to assert any right or authority
to forbid You from making technical modifications necessary to exercise the
Licensed Rights, including technical modifications necessary to circumvent
Effective Technological Measures. For purposes of this Public License, simply
making modifications authorized by this Section 2(a)(4) never produces Adapted
Material.
5. Downstream recipients.
A. Offer from the Licensor Licensed Material. Every recipient of the Licensed
Material automatically receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this Public License.
B. No downstream restrictions. You may not offer or impose any additional
or different terms or conditions on, or apply any Effective Technological
Measures to, the Licensed Material if doing so restricts exercise of the Licensed
Rights by any recipient of the Licensed Material.
6. No endorsement. Nothing in this Public License constitutes or may be construed
as permission to assert or imply that You are, or that Your use of the Licensed
Material is, connected with, or sponsored, endorsed, or granted official status
by, the Licensor or others designated to receive attribution as provided in
Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not licensed under this
Public License, nor are publicity, privacy, and/or other similar personality
rights; however, to the extent possible, the Licensor waives and/or agrees
not to assert any such rights held by the Licensor to the limited extent necessary
to allow You to exercise the Licensed Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this Public License.
3. To the extent possible, the Licensor waives any right to collect royalties
from You for the exercise of the Licensed Rights, whether directly or through
a collecting society under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly reserves any right
to collect such royalties.
Section 3 License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the following
conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified form), You must:
A. retain the following if it is supplied by the Licensor with the Licensed
Material:
i. identification of the creator(s) of the Licensed Material and any others
designated to receive attribution, in any reasonable manner requested by the
Licensor (including by pseudonym if designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of warranties;
v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable;
B. indicate if You modified the Licensed Material and retain an indication
of any previous modifications; and
C. indicate the Licensed Material is licensed under this Public License, and
include the text of, or the URI or hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any reasonable manner
based on the medium, means, and context in which You Share the Licensed Material.
For example, it may be reasonable to satisfy the conditions by providing a
URI or hyperlink to a resource that includes the required information.
3. If requested by the Licensor, You must remove any of the information required
by Section 3(a)(1)(A) to the extent reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's License You apply
must not prevent recipients of the Adapted Material from complying with this
Public License.
Section 4 Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that apply to
Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract,
reuse, reproduce, and Share all or a substantial portion of the contents of
the database;
b. if You include all or a substantial portion of the database contents in
a database in which You have Sui Generis Database Rights, then the database
in which You have Sui Generis Database Rights (but not its individual contents)
is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share all or
a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not replace
Your obligations under this Public License where the Licensed Rights include
other Copyright and Similar Rights.
Section 5 Disclaimer of Warranties and Limitation of Liability.
a. Unless otherwise separately undertaken by the Licensor, to the extent possible,
the Licensor offers the Licensed Material as-is and as-available, and makes
no representations or warranties of any kind concerning the Licensed Material,
whether express, implied, statutory, or other. This includes, without limitation,
warranties of title, merchantability, fitness for a particular purpose, non-infringement,
absence of latent or other defects, accuracy, or the presence or absence of
errors, whether or not known or discoverable. Where disclaimers of warranties
are not allowed in full or in part, this disclaimer may not apply to You.
b. To the extent possible, in no event will the Licensor be liable to You
on any legal theory (including, without limitation, negligence) or otherwise
for any direct, special, indirect, incidental, consequential, punitive, exemplary,
or other losses, costs, expenses, or damages arising out of this Public License
or use of the Licensed Material, even if the Licensor has been advised of
the possibility of such losses, costs, expenses, or damages. Where a limitation
of liability is not allowed in full or in part, this limitation may not apply
to You.
c. The disclaimer of warranties and limitation of liability provided above
shall be interpreted in a manner that, to the extent possible, most closely
approximates an absolute disclaimer and waiver of all liability.
Section 6 Term and Termination.
a. This Public License applies for the term of the Copyright and Similar Rights
licensed here. However, if You fail to comply with this Public License, then
Your rights under this Public License terminate automatically.
b. Where Your right to use the Licensed Material has terminated under Section
6(a), it reinstates:
1. automatically as of the date the violation is cured, provided it is cured
within 30 days of Your discovery of the violation; or
2. upon express reinstatement by the Licensor.
c. For the avoidance of doubt, this Section 6(b) does not affect any right
the Licensor may have to seek remedies for Your violations of this Public
License.
d. For the avoidance of doubt, the Licensor may also offer the Licensed Material
under separate terms or conditions or stop distributing the Licensed Material
at any time; however, doing so will not terminate this Public License.
e. Sections 1, 5, 6, 7, and 8 survive termination of this Public License.
Section 7 Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different terms or
conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the Licensed
Material not stated herein are separate from and independent of the terms
and conditions of this Public License.
Section 8 Interpretation.
a. For the avoidance of doubt, this Public License does not, and shall not
be interpreted to, reduce, limit, restrict, or impose conditions on any use
of the Licensed Material that could lawfully be made without permission under
this Public License.
b. To the extent possible, if any provision of this Public License is deemed
unenforceable, it shall be automatically reformed to the minimum extent necessary
to make it enforceable. If the provision cannot be reformed, it shall be severed
from this Public License without affecting the enforceability of the remaining
terms and conditions.
c. No term or condition of this Public License will be waived and no failure
to comply consented to unless expressly agreed to by the Licensor.
d. Nothing in this Public License constitutes or may be interpreted as a limitation
upon, or waiver of, any privileges and immunities that apply to the Licensor
or You, including from the legal processes of any jurisdiction or authority.
Creative Commons is not a party to its public licenses. Notwithstanding, Creative
Commons may elect to apply one of its public licenses to material it publishes
and in those instances will be considered the "Licensor." The text of the
Creative Commons public licenses is dedicated to the public domain under the
CC0 Public Domain Dedication. Except for the limited purpose of indicating
that material is shared under a Creative Commons public license or as otherwise
permitted by the Creative Commons policies published at creativecommons.org/policies,
Creative Commons does not authorize the use of the trademark "Creative Commons"
or any other trademark or logo of Creative Commons without its prior written
consent including, without limitation, in connection with any unauthorized
modifications to any of its public licenses or any other arrangements, understandings,
or agreements concerning use of licensed material. For the avoidance of doubt,
this paragraph does not form part of the public licenses.
Creative Commons may be contacted at creativecommons.org.

19
LICENSES/MIT.txt Normal file
View File

@ -0,0 +1,19 @@
MIT License Copyright (c) <year> <copyright holders>
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 (including the next
paragraph) 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.

90
LICENSES/OFL-1.1.txt Normal file
View File

@ -0,0 +1,90 @@
Copyright (c) <dates>, <Copyright Holder> (<URL|email>),
with Reserved Font Name <Reserved Font Name>. This Font Software is licensed
under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
SIL OPEN FONT LICENSE
Version 1.1 - 26 February 2007
PREAMBLE
The goals of the Open Font License (OFL) are to stimulate worldwide development
of collaborative font projects, to support the font creation efforts of academic
and linguistic communities, and to provide a free and open framework in which
fonts may be shared and improved in partnership with others.
The OFL allows the licensed fonts to be used, studied, modified and redistributed
freely as long as they are not sold by themselves. The fonts, including any
derivative works, can be bundled, embedded, redistributed and/or sold with
any software provided that any reserved names are not used by derivative works.
The fonts and derivatives, however, cannot be released under any other type
of license. The requirement for fonts to remain under this license does not
apply to any document created using the fonts or their derivatives.
DEFINITIONS
"Font Software" refers to the set of files released by the Copyright Holder(s)
under this license and clearly marked as such. This may include source files,
build scripts and documentation.
"Reserved Font Name" refers to any names specified as such after the copyright
statement(s).
"Original Version" refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
"Modified Version" refers to any derivative made by adding to, deleting, or
substituting — in part or in whole — any of the components of the Original
Version, by changing formats or by porting the Font Software to a new environment.
"Author" refers to any designer, engineer, programmer, technical writer or
other person who contributed to the Font Software.
PERMISSION & CONDITIONS
Permission is hereby granted, free of charge, to any person obtaining a copy
of the Font Software, to use, study, copy, merge, embed, modify, redistribute,
and sell modified and unmodified copies of the Font Software, subject to the
following conditions:
1) Neither the Font Software nor any of its individual components, in Original
or Modified Versions, may be sold by itself.
2) Original or Modified Versions of the Font Software may be bundled, redistributed
and/or sold with any software, provided that each copy contains the above
copyright notice and this license. These can be included either as stand-alone
text files, human-readable headers or in the appropriate machine-readable
metadata fields within text or binary files as long as those fields can be
easily viewed by the user.
3) No Modified Version of the Font Software may use the Reserved Font Name(s)
unless explicit written permission is granted by the corresponding Copyright
Holder. This restriction only applies to the primary font name as presented
to the users.
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software
shall not be used to promote, endorse or advertise any Modified Version, except
to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s)
or with their explicit written permission.
5) The Font Software, modified or unmodified, in part or in whole, must be
distributed entirely under this license, and must not be distributed under
any other license. The requirement for fonts to remain under this license
does not apply to any document created using the Font Software.
TERMINATION
This license becomes null and void if any of the above conditions are not met.
DISCLAIMER
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT,
TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE
FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL,
INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT
SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.

20
LICENSES/Unlicense.txt Normal file
View File

@ -0,0 +1,20 @@
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or distribute
this software, either in source code form or as a compiled binary, for any
purpose, commercial or non-commercial, and by any means.
In jurisdictions that recognize copyright laws, the author or authors of this
software dedicate any and all copyright interest in the software to the public
domain. We make this dedication for the benefit of the public at large and
to the detriment of our heirs and successors. We intend this dedication to
be an overt act of relinquishment in perpetuity of all present and future
rights to this software under copyright law.
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
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. For more information,
please refer to <https://unlicense.org/>

View File

@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
# Top-level Makefile for documentation builds and miscellaneous tasks.
#
@ -237,9 +241,56 @@ check-translate:
stubs:
@mkdir -p circuitpython-stubs
@$(PYTHON) tools/extract_pyi.py shared-bindings/ $(STUBDIR)
@$(PYTHON) tools/extract_pyi.py extmod/ulab/code/ $(STUBDIR)/ulab
@$(PYTHON) tools/extract_pyi.py ports/atmel-samd/bindings $(STUBDIR)
@$(PYTHON) setup.py -q sdist
update-frozen-libraries:
@echo "Updating all frozen libraries to latest tagged version."
cd frozen; for library in *; do cd $$library; ../../tools/git-checkout-latest-tag.sh; cd ..; done
one-of-each: samd21 samd51 esp32s2 litex mimxrt10xx nrf stm
samd21:
$(MAKE) -C ports/atmel-samd BOARD=trinket_m0
samd51:
$(MAKE) -C ports/atmel-samd BOARD=feather_m4_express
esp32s2:
$(MAKE) -C ports/esp32s2 BOARD=espressif_saola_1_wroom
litex:
$(MAKE) -C ports/litex BOARD=fomu
mimxrt10xx:
$(MAKE) -C ports/mimxrt10xx BOARD=feather_mimxrt1011
nrf:
$(MAKE) -C ports/nrf BOARD=feather_nrf52840_express
stm:
$(MAKE) -C ports/stm BOARD=feather_stm32f405_express
clean-one-of-each: clean-samd21 clean-samd51 clean-esp32s2 clean-litex clean-mimxrt10xx clean-nrf clean-stm
clean-samd21:
$(MAKE) -C ports/atmel-samd BOARD=trinket_m0 clean
clean-samd51:
$(MAKE) -C ports/atmel-samd BOARD=feather_m4_express clean
clean-esp32s2:
$(MAKE) -C ports/esp32s2 BOARD=espressif_saola_1_wroom clean
clean-litex:
$(MAKE) -C ports/litex BOARD=fomu clean
clean-mimxrt10xx:
$(MAKE) -C ports/mimxrt10xx BOARD=feather_mimxrt1011 clean
clean-nrf:
$(MAKE) -C ports/nrf BOARD=feather_nrf52840_express clean
clean-stm:
$(MAKE) -C ports/stm BOARD=feather_stm32f405_express clean

11
conf.py
View File

@ -13,6 +13,10 @@
# All configuration values have a default; values that are commented out
# serve to show the default.
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
import json
import logging
import os
@ -391,12 +395,13 @@ TEMPLATE = """<html>
def generate_redirects(app):
path = os.path.join(app.srcdir, app.config.redirects_file)
if not os.path.exists(path):
app.info("Could not find redirects file at '%s'" % path)
logging.error("Could not find redirects file at '%s'" % path)
return
if not type(app.builder) == builders.StandaloneHTMLBuilder:
if not isinstance(app.builder, builders.StandaloneHTMLBuilder):
logging.warn("The 'sphinxcontib-redirects' plugin is only supported "
"by the 'html' builder. Skipping...")
"by the 'html' builder and subclasses. Skipping...")
logging.warn(f"Builder is {app.builder.name} ({type(app.builder)})")
return
with open(path) as redirects:

View File

@ -243,7 +243,7 @@ void common_hal_bleio_adapter_set_enabled(bleio_adapter_obj_t *self, bool enable
// Indices into the list are handles. Handle 0x0000 designates an invalid handle,
// so store None there to skip it.
self->attributes = mp_obj_new_list(0, NULL);
bleio_adapter_add_attribute(mp_const_none);
bleio_adapter_add_attribute(self, mp_const_none);
self->last_added_service_handle = BLE_GATT_HANDLE_INVALID;
self->last_added_characteristic_handle = BLE_GATT_HANDLE_INVALID;
}

View File

@ -30,13 +30,13 @@
#include "shared-module/_bleio/Attribute.h"
// Types returned by attribute table lookups. These are UUIDs.
enum ble_attribute_type {
typedef enum {
BLE_TYPE_UNKNOWN = 0x0000,
BLE_TYPE_PRIMARY_SERVICE = 0x2800,
BLE_TYPE_SECONDARY_SERVICE = 0x2801,
BLE_TYPE_CHARACTERISTIC = 0x2803,
BLE_TYPE_DESCRIPTOR = 0x2900
};
} ble_attribute_type;
// typedef struct
// {

View File

@ -33,10 +33,16 @@
#include "shared-bindings/_bleio/Service.h"
#include "common-hal/_bleio/Adapter.h"
#include "common-hal/_bleio/att.h"
#define CCCD_NOTIFY 0x1
#define CCCD_INDICATE 0x2
void common_hal_bleio_characteristic_construct(bleio_characteristic_obj_t *self, bleio_service_obj_t *service, uint16_t handle, bleio_uuid_obj_t *uuid, bleio_characteristic_properties_t props, bleio_attribute_security_mode_t read_perm, bleio_attribute_security_mode_t write_perm, mp_int_t max_length, bool fixed_length, mp_buffer_info_t *initial_value_bufinfo) {
self->service = service;
self->uuid = uuid;
self->decl_handle = BLE_GATT_HANDLE_INVALID;
self->handle = BLE_GATT_HANDLE_INVALID;
self->props = props;
self->read_perm = read_perm;
@ -112,14 +118,15 @@ void common_hal_bleio_characteristic_set_value(bleio_characteristic_obj_t *self,
const bool indicate = self->props & CHAR_PROP_INDICATE;
// Read the CCCD value, if there is one.
if ((notify | indicate) && self->cccd_handle != BLE_GATT_HANDLE_INVALID) {
common_hal_bleio_gatts_read(self->cccd_handle, conn_handle, &cccd, sizeof(cccd));
common_hal_bleio_gatts_read(self->cccd_handle, BLE_CONN_HANDLE_INVALID,
(uint8_t *) &cccd, sizeof(cccd));
}
// It's possible that both notify and indicate are set.
if (notify && (cccd & BLE_GATT_HVX_NOTIFICATION)) {
if (notify && (cccd & CCCD_NOTIFY)) {
att_notify(self->handle, bufinfo->buf, MIN(bufinfo->len, self->max_length));
}
if (indicate && (cccd & BLE_GATT_HVX_INDICATION)) {
if (indicate && (cccd & CCCD_INDICATE)) {
att_indicate(self->handle, bufinfo->buf, MIN(bufinfo->len, self->max_length));
}
@ -136,12 +143,12 @@ bleio_characteristic_properties_t common_hal_bleio_characteristic_get_properties
}
void common_hal_bleio_characteristic_add_descriptor(bleio_characteristic_obj_t *self, bleio_descriptor_obj_t *descriptor) {
if (self->handle != common_hal_bleio_adapter_obj->last_added_characteristic_handle) {
if (self->handle != common_hal_bleio_adapter_obj.last_added_characteristic_handle) {
mp_raise_bleio_BluetoothError(
translate("Descriptor can only be added to most recently added characteristic"));
}
descriptor->handle = bleio_adapter_add_attribute(common_hal_bleio_adapter_obj, descriptor);
descriptor->handle = bleio_adapter_add_attribute(&common_hal_bleio_adapter_obj, MP_OBJ_TO_PTR(descriptor));
// Link together all the descriptors for this characteristic.
descriptor->next = self->descriptor_list;
@ -161,8 +168,8 @@ void common_hal_bleio_characteristic_set_cccd(bleio_characteristic_obj_t *self,
common_hal_bleio_check_connected(conn_handle);
uint16_t cccd_value =
(notify ? BLE_GATT_HVX_NOTIFICATION : 0) |
(indicate ? BLE_GATT_HVX_INDICATION : 0);
(notify ? CCCD_NOTIFY : 0) |
(indicate ? CCCD_INDICATE : 0);
(void) cccd_value;
//FIX call att_something to set remote CCCD

View File

@ -42,8 +42,8 @@ typedef struct _bleio_characteristic_obj {
mp_obj_t value;
uint16_t max_length;
bool fixed_length;
uint16_t handle;
uint16_t value_handle; // Should be handle+1.
uint16_t decl_handle;
uint16_t handle; // Should be decl_handle+1.
bleio_characteristic_properties_t props;
bleio_attribute_security_mode_t read_perm;
bleio_attribute_security_mode_t write_perm;

View File

@ -26,7 +26,7 @@
*/
#include "py/runtime.h"
#include "common-hal/_bleio/__init__.h"
#include "shared-bindings/_bleio/__init__.h"
#include "shared-bindings/_bleio/Characteristic.h"
#include "shared-bindings/_bleio/Descriptor.h"
#include "shared-bindings/_bleio/Service.h"
@ -41,8 +41,8 @@ uint32_t _common_hal_bleio_service_construct(bleio_service_obj_t *self, bleio_uu
vm_used_ble = true;
self->handle = bleio_adapter_add_attribute(common_hal_bleio_adapter_obj, self);
if (self->handle = BLE_GATT_HANDLE_INVALID) {
self->handle = bleio_adapter_add_attribute(&common_hal_bleio_adapter_obj, MP_OBJ_TO_PTR(self));
if (self->handle == BLE_GATT_HANDLE_INVALID) {
return 1;
}
return 0;
@ -84,13 +84,15 @@ void common_hal_bleio_service_add_characteristic(bleio_service_obj_t *self,
bleio_characteristic_obj_t *characteristic,
mp_buffer_info_t *initial_value_bufinfo) {
if (self->handle != common_hal_bleio_adapter_obj->last_added_service_handle) {
if (self->handle != common_hal_bleio_adapter_obj.last_added_service_handle) {
mp_raise_bleio_BluetoothError(
translate("Characteristic can only be added to most recently added service"));
}
characteristic->decl_handle = bleio_adapter_add_attribute(common_hal_bleio_adapter_obj, characteristic);
characteristic->decl_handle = bleio_adapter_add_attribute(
&common_hal_bleio_adapter_obj, MP_OBJ_TO_PTR(characteristic));
// This is the value handle
characteristic->value_handle = bleio_adapter_add_attribute(common_hal_bleio_adapter_obj, characteristic);
characteristic->handle = bleio_adapter_add_attribute(
&common_hal_bleio_adapter_obj, MP_OBJ_TO_PTR(characteristic));
if (characteristic->props & (CHAR_PROP_NOTIFY | CHAR_PROP_INDICATE)) {
// We need a CCCD.
@ -99,7 +101,12 @@ void common_hal_bleio_service_add_characteristic(bleio_service_obj_t *self,
cccd->read_perm = SECURITY_MODE_OPEN;
// Make CCCD write permission match characteristic read permission.
cccd->write_perm = characteristic->read_perm;
characteristic->cccd_handle = common_hal_bleio_characteristic_add_descriptor(characteristic, cccd);
const uint16_t cccd_handle = bleio_adapter_add_attribute(
&common_hal_bleio_adapter_obj, MP_OBJ_TO_PTR(cccd));
cccd->handle = cccd_handle;
characteristic->cccd_handle = cccd_handle;
common_hal_bleio_characteristic_add_descriptor(characteristic, cccd);
}
// #if CIRCUITPY_VERBOSE_BLE

View File

@ -270,7 +270,5 @@ void common_hal_bleio_gc_collect(void) {
void bleio_background(void) {
supervisor_bluetooth_background();
bleio_adapter_background(&common_hal_bleio_adapter_obj);
//FIX bonding_background();
}

View File

@ -31,6 +31,8 @@
#include "py/obj.h"
#include "common-hal/_bleio/Adapter.h"
#include "common-hal/_bleio/Attribute.h"
#include "shared-bindings/_bleio/__init__.h"
#include "shared-bindings/_bleio/Characteristic.h"
#include "supervisor/shared/tick.h"
STATIC uint16_t max_mtu = BT_ATT_DEFAULT_LE_MTU; // 23
@ -620,20 +622,20 @@ bool att_notify(uint16_t handle, const uint8_t* value, int length) {
continue;
}
typedef struct notify_t __packed {
typedef struct __packed {
struct bt_att_hdr hdr;
struct bt_att_notify ntf;
};
} notify_t;
size_t allowed_length = MIN((uint16_t)(bleio_connections[i].mtu - sizeof(notify_t)), (uint16_t)length);
uint8_t notify_bytes[sizeof(cmd_s) + allowed_length];
notify_t *notify_p = (notify_t *) notify_bytes;
notify_p->hdr.code = BT_ATT_OP_NOTIFY;;
notify_p->ntf.handle = handle;
memcpy(notify_p->ntf.value, data, allowed_length);
uint8_t notify_bytes[sizeof(notify_t) + allowed_length];
notify_t *notify = (notify_t *) notify_bytes;
notify->hdr.code = BT_ATT_OP_NOTIFY;;
notify->ntf.handle = handle;
memcpy(notify->ntf.value, value, allowed_length);
hci_send_acl_pkt(bleio_connections[i].conn_handle, BT_L2CAP_CID_ATT,
size_of(notify_bytes), notify_bytes);
sizeof(notify_bytes), notify_bytes);
num_notifications++;
}
@ -641,7 +643,7 @@ bool att_notify(uint16_t handle, const uint8_t* value, int length) {
return (num_notifications > 0);
}
bool att_indicate(conn_handle, uint16_t handle, const uint8_t* value, int length) {
bool att_indicate(uint16_t handle, const uint8_t* value, int length) {
int num_indications = 0;
for (size_t i = 0; i < BLEIO_TOTAL_CONNECTION_COUNT; i++) {
@ -649,18 +651,18 @@ bool att_indicate(conn_handle, uint16_t handle, const uint8_t* value, int length
continue;
}
typedef struct indicate_t __packed {
typedef struct __packed {
struct bt_att_hdr hdr;
struct bt_att_indicate ind;
};
} indicate_t;
size_t allowed_length = MIN((uint16_t)(bleio_connections[i].mtu - sizeof(indicate_t)), (uint16_t)length);
uint8_t indicate_bytes[sizeof(cmd_s) + allowed_length];
struct indicate_s *indicate_p = (indicate_s *) indicate_bytes;
indicate_p->hdr.code = BT_ATT_OP_INDICATE;;
indicate_p->ind.handle = handle;
memcpy(indicate->ind.value, data, allowed_length);
uint8_t indicate_bytes[sizeof(indicate_t) + allowed_length];
indicate_t *indicate = (indicate_t *) indicate_bytes;
indicate->hdr.code = BT_ATT_OP_INDICATE;;
indicate->ind.handle = handle;
memcpy(indicate->ind.value, value, allowed_length);
confirm = false;
@ -1319,7 +1321,7 @@ STATIC void process_write_rsp(uint16_t conn_handle, uint8_t dlen, uint8_t data[]
}
STATIC void process_prepare_write_req(uint16_t conn_handle, uint16_t mtu, uint8_t dlen, uint8_t data[]) {
FIX struct bt_att_prepare_write_req *req = (struct bt_att_prepare_write_req *) data;
struct bt_att_prepare_write_req *req = (struct bt_att_prepare_write_req *) data;
if (dlen < sizeof(struct bt_att_prepare_write_req)) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, BLE_GATT_HANDLE_INVALID, BT_ATT_ERR_INVALID_PDU);
@ -1328,32 +1330,33 @@ STATIC void process_prepare_write_req(uint16_t conn_handle, uint16_t mtu, uint8_
uint16_t handle = req->handle;
uint16_t offset = req->offset;
(void) offset;
if (handle > bleio_adapter_max_attribute_handle(common_hal_bleio_adapter_obj)) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTR_NOT_FOUND);
if (handle > bleio_adapter_max_attribute_handle(&common_hal_bleio_adapter_obj)) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTRIBUTE_NOT_FOUND);
return;
}
mp_obj_t *attribute = bleio_adapter_get_attribute(common_hal_bleio_adapter_obj, handle);
mp_obj_t *attribute = bleio_adapter_get_attribute(&common_hal_bleio_adapter_obj, handle);
if (!MP_OBJ_IS_TYPE(attribute, &bleio_characteristic_type)) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTR_NOT_LONG);
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTRIBUTE_NOT_LONG);
return;
}
bleio_characteristic_obj_t* characteristic = MP_OBJ_TO_PTR(attribute);
if (handle != characteristic->value_handle) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTR_NOT_LONG);
if (handle != characteristic->handle) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_ATTRIBUTE_NOT_LONG);
return;
}
if (characteristic->props & CHAR_PROP_WRITE) {
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_WRITE_NOT_PERM);
send_error(conn_handle, BT_ATT_OP_PREPARE_WRITE_REQ, handle, BT_ATT_ERR_WRITE_NOT_PERMITTED);
return;
}
if (long_write_handle == BLE_GATT_HANDLE_INVALID)
//FIX if (long_write_handle == BLE_GATT_HANDLE_INVALID)
// int valueSize = characteristic->valueSize();
// long_write_value = (uint8_t*)realloc(long_write_value, valueSize);
@ -1508,35 +1511,33 @@ int att_read_req(uint16_t conn_handle, uint16_t handle, uint8_t response_buffer[
}
int att_write_req(uint16_t conn_handle, uint16_t handle, const uint8_t* data, uint8_t data_len, uint8_t response_buffer[]) {
typedef struct write_req_t __packed {
struct bt_att_hdr hdr;
struct bt_att_write_req req;
};
typedef struct __packed {
struct bt_att_hdr h;
struct bt_att_write_req r;
} req_t;
uint8_t req_bytes[sizeof(write_req_t) + data_len];
struct write_req_t *write_req_P = (write_req_t *) req_bytes;
req_p->hdr.code = BT_ATT_OP_WRITE_REQ;
req_p->req.handle = handle;
memcpy(req_p->req.value, data, data_len);
uint8_t req_bytes[sizeof(req_t) + data_len];
req_t *req = (req_t *) req_bytes;
req->h.code = BT_ATT_OP_WRITE_REQ;
req->r.handle = handle;
memcpy(req->r.value, data, data_len);
memcpy(req.req.value, data, data_len);
return send_req_wait_for_rsp(conn_handle, sizeof(req_bytes), req, response_buffer);
return send_req_wait_for_rsp(conn_handle, sizeof(req_bytes), req_bytes, response_buffer);
}
void att_write_cmd(uint16_t conn_handle, uint16_t handle, const uint8_t* data, uint8_t data_len) {
struct cmd_s __packed {
typedef struct __packed {
struct bt_att_hdr h;
struct bt_att_write_cmd r;
};
} cmd_t;
uint8_t cmd_bytes[sizeof(cmd_s) + data_len];
struct cmd_s *cmd_p = (cmd_s *) cmd_bytes;
cmd_p->h.code = BT_ATT_OP_WRITE_CMD;
cmd_p->r.handle = handle;
memcpy(cmd_p->r.value, data, data_len);
uint8_t cmd_bytes[sizeof(cmd_t) + data_len];
cmd_t *cmd = (cmd_t *) cmd_bytes;
cmd->h.code = BT_ATT_OP_WRITE_CMD;
cmd->r.handle = handle;
memcpy(cmd->r.value, data, data_len);
return send_cmd(conn_handle, sizeof(cmd_bytes), cmd_bytes);
return send_req(conn_handle, sizeof(cmd_bytes), cmd_bytes);
}
void att_process_data(uint16_t conn_handle, uint8_t dlen, uint8_t data[]) {

View File

@ -40,8 +40,6 @@
#define CTS_TIMEOUT_MSECS (1000)
#define RESPONSE_TIMEOUT_MSECS (1000)
#define adapter (&common_hal_bleio_adapter_obj)
// These are the headers of the full packets that are sent over the serial interface.
// They all have a one-byte type-field at the front, one of the H4_xxx packet types.
@ -370,14 +368,14 @@ hci_result_t hci_poll_for_incoming_pkt(void) {
common_hal_mcu_enable_interrupts();
// Assert RTS low to say we're ready to read data.
common_hal_digitalio_digitalinout_set_value(adapter->rts_digitalinout, false);
common_hal_digitalio_digitalinout_set_value(common_hal_bleio_adapter_obj.rts_digitalinout, false);
int errcode = 0;
bool packet_is_complete = false;
// Read bytes until we run out, or accumulate a complete packet.
while (common_hal_busio_uart_rx_characters_available(adapter->hci_uart)) {
common_hal_busio_uart_read(adapter->hci_uart, rx_buffer + rx_idx, 1, &errcode);
while (common_hal_busio_uart_rx_characters_available(common_hal_bleio_adapter_obj.hci_uart)) {
common_hal_busio_uart_read(common_hal_bleio_adapter_obj.hci_uart, rx_buffer + rx_idx, 1, &errcode);
if (errcode) {
hci_poll_in_progress = false;
return HCI_READ_ERROR;
@ -412,7 +410,7 @@ hci_result_t hci_poll_for_incoming_pkt(void) {
}
// Stop incoming data while processing packet.
common_hal_digitalio_digitalinout_set_value(adapter->rts_digitalinout, true);
common_hal_digitalio_digitalinout_set_value(common_hal_bleio_adapter_obj.rts_digitalinout, true);
size_t pkt_len = rx_idx;
// Reset for next packet.
rx_idx = 0;
@ -441,7 +439,7 @@ hci_result_t hci_poll_for_incoming_pkt(void) {
break;
}
common_hal_digitalio_digitalinout_set_value(adapter->rts_digitalinout, true);
common_hal_digitalio_digitalinout_set_value(common_hal_bleio_adapter_obj.rts_digitalinout, true);
hci_poll_in_progress = false;
return HCI_OK;
@ -452,7 +450,7 @@ STATIC hci_result_t write_pkt(uint8_t *buffer, size_t len) {
// Wait for CTS to go low before writing to HCI adapter.
uint64_t start = supervisor_ticks_ms64();
while (common_hal_digitalio_digitalinout_get_value(adapter->cts_digitalinout)) {
while (common_hal_digitalio_digitalinout_get_value(common_hal_bleio_adapter_obj.cts_digitalinout)) {
RUN_BACKGROUND_TASKS;
if (supervisor_ticks_ms64() - start > CTS_TIMEOUT_MSECS) {
return HCI_WRITE_TIMEOUT;
@ -460,7 +458,7 @@ STATIC hci_result_t write_pkt(uint8_t *buffer, size_t len) {
}
int errcode = 0;
common_hal_busio_uart_write(adapter->hci_uart, buffer, len, &errcode);
common_hal_busio_uart_write(common_hal_bleio_adapter_obj.hci_uart, buffer, len, &errcode);
if (errcode) {
return HCI_WRITE_ERROR;
}
@ -551,7 +549,7 @@ hci_result_t hci_send_acl_pkt(uint16_t handle, uint8_t cid, uint8_t data_len, ui
pending_pkt++;
int errcode = 0;
common_hal_busio_uart_write(adapter->hci_uart, tx_buffer, buf_len, &errcode);
common_hal_busio_uart_write(common_hal_bleio_adapter_obj.hci_uart, tx_buffer, buf_len, &errcode);
if (errcode) {
return HCI_WRITE_ERROR;
}

View File

@ -70,7 +70,7 @@ CircuitPython/MicroPython-specific libraries
Functionality specific to the CircuitPython/MicroPython implementation is available in
the following libraries. These libraries may change signficantly or be removed in future
versions of CircuitPtyon.
versions of CircuitPython.
.. toctree::
:maxdepth: 1

View File

@ -1,15 +1,67 @@
shared-bindings/frequencyio/FrequencyIn.rst shared-bindings/frequencyio/#frequencyio.FrequencyIn
shared-bindings/fontio/BuiltinFont.rst shared-bindings/fontio/#fontio.BuiltinFont
shared-bindings/fontio/Glyph.rst shared-bindings/fontio/#fontio.Glyph
shared-bindings//__init__.rst shared-bindings//
shared-bindings/_bleio/Adapter.rst shared-bindings/_bleio/#_bleio.Adapter
shared-bindings/_bleio/Address.rst shared-bindings/_bleio/#_bleio.Address
shared-bindings/_bleio/Attribute.rst shared-bindings/_bleio/#_bleio.Attribute
shared-bindings/_bleio/BluetoothError.rst shared-bindings/_bleio/#_bleio.BluetoothError
shared-bindings/_bleio/Characteristic.rst shared-bindings/_bleio/#_bleio.Characteristic
shared-bindings/_bleio/CharacteristicBuffer.rst shared-bindings/_bleio/#_bleio.CharacteristicBuffer
shared-bindings/_bleio/Connection.rst shared-bindings/_bleio/#_bleio.Connection
shared-bindings/_bleio/ConnectionError.rst shared-bindings/_bleio/#_bleio.ConnectionError
shared-bindings/_bleio/Descriptor.rst shared-bindings/_bleio/#_bleio.Descriptor
shared-bindings/_bleio/PacketBuffer.rst shared-bindings/_bleio/#_bleio.PacketBuffer
shared-bindings/_bleio/RoleError.rst shared-bindings/_bleio/#_bleio.RoleError
shared-bindings/_bleio/ScanEntry.rst shared-bindings/_bleio/#_bleio.ScanEntry
shared-bindings/_bleio/ScanResults.rst shared-bindings/_bleio/#_bleio.ScanResults
shared-bindings/_bleio/SecurityError.rst shared-bindings/_bleio/#_bleio.SecurityError
shared-bindings/_bleio/Service.rst shared-bindings/_bleio/#_bleio.Service
shared-bindings/_bleio/UUID.rst shared-bindings/_bleio/#_bleio.UUID
shared-bindings/_bleio/__init__.rst shared-bindings/_bleio/
shared-bindings/_eve/__init__.rst shared-bindings/_eve/
shared-bindings/_pew/PewPew.rst shared-bindings/_pew/#_pew.PewPew
shared-bindings/_pew/__init__.rst shared-bindings/_pew/
shared-bindings/_pixelbuf/PixelBuf.rst shared-bindings/_pixelbuf/#_pixelbuf.PixelBuf
shared-bindings/_pixelbuf/__init__.rst shared-bindings/_pixelbuf/
shared-bindings/_stage/Layer.rst shared-bindings/_stage/#_stage.Layer
shared-bindings/_stage/Text.rst shared-bindings/_stage/#_stage.Text
shared-bindings/_stage/__init__.rst shared-bindings/_stage/
shared-bindings/aesio/AES.rst shared-bindings/aesio/#aesio.AES
shared-bindings/supervisor/Runtime.rst shared-bindings/supervisor/#supervisor.Runtime
shared-bindings/terminalio/Terminal.rst shared-bindings/terminalio/#terminalio.Terminal
shared-bindings/aesio/__init__.rst shared-bindings/aesio/
shared-bindings/analogio/AnalogIn.rst shared-bindings/analogio/#analogio.AnalogIn
shared-bindings/analogio/AnalogOut.rst shared-bindings/analogio/#analogio.AnalogOut
shared-bindings/analogio/__init__.rst shared-bindings/analogio/
shared-bindings/audiobusio/I2SOut.rst shared-bindings/audiobusio/#audiobusio.I2SOut
shared-bindings/audiobusio/PDMIn.rst shared-bindings/audiobusio/#audiobusio.PDMIn
shared-bindings/audiobusio/__init__.rst shared-bindings/audiobusio/
shared-bindings/audiocore/RawSample.rst shared-bindings/audiocore/#audiocore.RawSample
shared-bindings/audiocore/WaveFile.rst shared-bindings/audiocore/#audiocore.WaveFile
shared-bindings/audiocore/__init__.rst shared-bindings/audiocore/
shared-bindings/audioio/AudioOut.rst shared-bindings/audioio/#audioio.AudioOut
shared-bindings/audioio/__init__.rst shared-bindings/audioio/
shared-bindings/audiomixer/Mixer.rst shared-bindings/audiomixer/#audiomixer.Mixer
shared-bindings/audiomixer/MixerVoice.rst shared-bindings/audiomixer/#audiomixer.MixerVoice
shared-bindings/audiomixer/__init__.rst shared-bindings/audiomixer/
shared-bindings/audiomp3/MP3.rst shared-bindings/audiomp3/#audiomp3.MP3
shared-bindings/audiomp3/__init__.rst shared-bindings/audiomp3/
shared-bindings/audiopwmio/PWMAudioOut.rst shared-bindings/audiopwmio/#audiopwmio.PWMAudioOut
shared-bindings/gamepadshift/GamePadShift.rst shared-bindings/gamepadshift/#gamepadshift.GamePadShift
shared-bindings/vectorio/Circle.rst shared-bindings/vectorio/#vectorio.Circle
shared-bindings/vectorio/Polygon.rst shared-bindings/vectorio/#vectorio.Polygon
shared-bindings/vectorio/Rectangle.rst shared-bindings/vectorio/#vectorio.Rectangle
shared-bindings/vectorio/VectorShape.rst shared-bindings/vectorio/#vectorio.VectorShape
shared-bindings/audiopwmio/__init__.rst shared-bindings/audiopwmio/
shared-bindings/bitbangio/I2C.rst shared-bindings/bitbangio/#bitbangio.I2C
shared-bindings/bitbangio/OneWire.rst shared-bindings/bitbangio/#bitbangio.OneWire
shared-bindings/bitbangio/SPI.rst shared-bindings/bitbangio/#bitbangio.SPI
shared-bindings/bitbangio/__init__.rst shared-bindings/bitbangio/
shared-bindings/board/__init__.rst shared-bindings/board/
shared-bindings/busio/I2C.rst shared-bindings/busio/#busio.I2C
shared-bindings/busio/OneWire.rst shared-bindings/busio/#busio.OneWire
shared-bindings/busio/Parity.rst shared-bindings/busio/#busio.Parity
shared-bindings/busio/SPI.rst shared-bindings/busio/#busio.SPI
shared-bindings/busio/UART.rst shared-bindings/busio/#busio.UART
shared-bindings/busio/__init__.rst shared-bindings/busio/
shared-bindings/countio/Counter.rst shared-bindings/countio/#countio.Counter
shared-bindings/countio/__init__.rst shared-bindings/countio/
shared-bindings/digitalio/DigitalInOut.rst shared-bindings/digitalio/#digitalio.DigitalInOut
shared-bindings/digitalio/Direction.rst shared-bindings/digitalio/#digitalio.Direction
shared-bindings/digitalio/DriveMode.rst shared-bindings/digitalio/#digitalio.DriveMode
shared-bindings/digitalio/Pull.rst shared-bindings/digitalio/#digitalio.Pull
shared-bindings/digitalio/__init__.rst shared-bindings/digitalio/
shared-bindings/displayio/Bitmap.rst shared-bindings/displayio/#displayio.Bitmap
shared-bindings/displayio/ColorConverter.rst shared-bindings/displayio/#displayio.ColorConverter
shared-bindings/displayio/Display.rst shared-bindings/displayio/#displayio.Display
@ -22,73 +74,88 @@ shared-bindings/displayio/Palette.rst shared-bindings/displayio/#displayio.Palet
shared-bindings/displayio/ParallelBus.rst shared-bindings/displayio/#displayio.ParallelBus
shared-bindings/displayio/Shape.rst shared-bindings/displayio/#displayio.Shape
shared-bindings/displayio/TileGrid.rst shared-bindings/displayio/#displayio.TileGrid
shared-bindings/_pixelbuf/PixelBuf.rst shared-bindings/_pixelbuf/#_pixelbuf.PixelBuf
shared-bindings/displayio/__init__.rst shared-bindings/displayio/
shared-bindings/fontio/BuiltinFont.rst shared-bindings/fontio/#fontio.BuiltinFont
shared-bindings/fontio/Glyph.rst shared-bindings/fontio/#fontio.Glyph
shared-bindings/fontio/__init__.rst shared-bindings/fontio/
shared-bindings/framebufferio/FramebufferDisplay.rst shared-bindings/framebufferio/#framebufferio.FramebufferDisplay
shared-bindings/framebufferio/__init__.rst shared-bindings/framebufferio/
shared-bindings/frequencyio/FrequencyIn.rst shared-bindings/frequencyio/#frequencyio.FrequencyIn
shared-bindings/frequencyio/__init__.rst shared-bindings/frequencyio/
shared-bindings/gamepad/GamePad.rst shared-bindings/gamepad/#gamepad.GamePad
shared-bindings/_pew/PewPew.rst shared-bindings/_pew/#_pew.PewPew
shared-bindings/rotaryio/IncrementalEncoder.rst shared-bindings/rotaryio/#rotaryio.IncrementalEncoder
shared-bindings/audiomixer/Mixer.rst shared-bindings/audiomixer/#audiomixer.Mixer
shared-bindings/audiomixer/MixerVoice.rst shared-bindings/audiomixer/#audiomixer.MixerVoice
shared-bindings/pulseio/PWMOut.rst shared-bindings/pulseio/#pulseio.PWMOut
shared-bindings/pulseio/PulseIn.rst shared-bindings/pulseio/#pulseio.PulseIn
shared-bindings/pulseio/PulseOut.rst shared-bindings/pulseio/#pulseio.PulseOut
shared-bindings/time/struct_time.rst shared-bindings/time/#time.struct_time
shared-bindings/gamepad/__init__.rst shared-bindings/gamepad/
shared-bindings/gamepadshift/GamePadShift.rst shared-bindings/gamepadshift/#gamepadshift.GamePadShift
shared-bindings/gamepadshift/__init__.rst shared-bindings/gamepadshift/
shared-bindings/gnss/__init__.rst shared-bindings/gnss/
shared-bindings/i2cperipheral/__init__.rst shared-bindings/i2cperipheral/
shared-bindings/i2csecondary/__init__.rst shared-bindings/i2csecondary/
shared-bindings/i2cslave/I2CSlave.rst shared-bindings/i2cperipheral/#i2cperipheral.I2CPeripheral
shared-bindings/i2cslave/I2CSlaveRequest.rst shared-bindings/i2cperipheral/#i2cperipheral.I2CPeripheralRequest
shared-bindings/nvm/ByteArray.rst shared-bindings/nvm/#nvm.ByteArray
shared-bindings/busio/I2C.rst shared-bindings/busio/#busio.I2C
shared-bindings/busio/OneWire.rst shared-bindings/busio/#busio.OneWire
shared-bindings/busio/SPI.rst shared-bindings/busio/#busio.SPI
shared-bindings/busio/UART.rst shared-bindings/busio/#busio.UART
shared-bindings/busio/Parity.rst shared-bindings/busio/#busio.Parity
shared-bindings/ulab/array.rst shared-bindings/ulab/#ulab.array
shared-bindings/watchdog/WatchDogMode.rst shared-bindings/watchdog/#watchdog.WatchDogMode
shared-bindings/watchdog/WatchDogTimer.rst shared-bindings/watchdog/#watchdog.WatchDogTimer
shared-bindings/audioio/AudioOut.rst shared-bindings/audioio/#audioio.AudioOut
shared-bindings/ps2io/Ps2.rst shared-bindings/ps2io/#ps2io.Ps2
shared-bindings/touchio/TouchIn.rst shared-bindings/touchio/#touchio.TouchIn
shared-bindings/rgbmatrix/RGBMatrix.rst shared-bindings/rgbmatrix/#rgbmatrix.RGBMatrix
shared-bindings/audiomp3/MP3.rst shared-bindings/audiomp3/#audiomp3.MP3
shared-bindings/usb_midi/PortIn.rst shared-bindings/usb_midi/#usb_midi.PortIn
shared-bindings/usb_midi/PortOut.rst shared-bindings/usb_midi/#usb_midi.PortOut
shared-bindings/usb_hid/Device.rst shared-bindings/usb_hid/#usb_hid.Device
shared-bindings/wiznet/WIZNET5K.rst shared-bindings/wiznet/#wiznet.WIZNET5K
shared-bindings/_bleio/BluetoothError.rst shared-bindings/_bleio/#_bleio.BluetoothError
shared-bindings/_bleio/ConnectionError.rst shared-bindings/_bleio/#_bleio.ConnectionError
shared-bindings/_bleio/RoleError.rst shared-bindings/_bleio/#_bleio.RoleError
shared-bindings/_bleio/SecurityError.rst shared-bindings/_bleio/#_bleio.SecurityError
shared-bindings/_bleio/Adapter.rst shared-bindings/_bleio/#_bleio.Adapter
shared-bindings/_bleio/Address.rst shared-bindings/_bleio/#_bleio.Address
shared-bindings/_bleio/Attribute.rst shared-bindings/_bleio/#_bleio.Attribute
shared-bindings/_bleio/Characteristic.rst shared-bindings/_bleio/#_bleio.Characteristic
shared-bindings/_bleio/CharacteristicBuffer.rst shared-bindings/_bleio/#_bleio.CharacteristicBuffer
shared-bindings/_bleio/Connection.rst shared-bindings/_bleio/#_bleio.Connection
shared-bindings/_bleio/Descriptor.rst shared-bindings/_bleio/#_bleio.Descriptor
shared-bindings/_bleio/PacketBuffer.rst shared-bindings/_bleio/#_bleio.PacketBuffer
shared-bindings/_bleio/ScanEntry.rst shared-bindings/_bleio/#_bleio.ScanEntry
shared-bindings/_bleio/ScanResults.rst shared-bindings/_bleio/#_bleio.ScanResults
shared-bindings/_bleio/Service.rst shared-bindings/_bleio/#_bleio.Service
shared-bindings/_bleio/UUID.rst shared-bindings/_bleio/#_bleio.UUID
shared-bindings/socket/socket.rst shared-bindings/socket/#socket.socket
shared-bindings/math/__init__.rst shared-bindings/math/
shared-bindings/microcontroller/Pin.rst shared-bindings/microcontroller/#microcontroller.Pin
shared-bindings/microcontroller/Processor.rst shared-bindings/microcontroller/#microcontroller.Processor
shared-bindings/microcontroller/RunMode.rst shared-bindings/microcontroller/#microcontroller.RunMode
shared-bindings/audiocore/RawSample.rst shared-bindings/audiocore/#audiocore.RawSample
shared-bindings/audiocore/WaveFile.rst shared-bindings/audiocore/#audiocore.WaveFile
shared-bindings/framebufferio/FramebufferDisplay.rst shared-bindings/framebufferio/#framebufferio.FramebufferDisplay
shared-bindings/audiobusio/I2SOut.rst shared-bindings/audiobusio/#audiobusio.I2SOut
shared-bindings/audiobusio/PDMIn.rst shared-bindings/audiobusio/#audiobusio.PDMIn
shared-bindings/countio/Counter.rst shared-bindings/countio/#countio.Counter
shared-bindings/storage/VfsFat.rst shared-bindings/storage/#storage.VfsFat
shared-bindings/digitalio/DigitalInOut.rst shared-bindings/digitalio/#digitalio.DigitalInOut
shared-bindings/digitalio/Direction.rst shared-bindings/digitalio/#digitalio.Direction
shared-bindings/digitalio/DriveMode.rst shared-bindings/digitalio/#digitalio.DriveMode
shared-bindings/digitalio/Pull.rst shared-bindings/digitalio/#digitalio.Pull
shared-bindings/bitbangio/I2C.rst shared-bindings/bitbangio/#bitbangio.I2C
shared-bindings/bitbangio/OneWire.rst shared-bindings/bitbangio/#bitbangio.OneWire
shared-bindings/bitbangio/SPI.rst shared-bindings/bitbangio/#bitbangio.SPI
shared-bindings/microcontroller/__init__.rst shared-bindings/microcontroller/
shared-bindings/multiterminal/__init__.rst shared-bindings/multiterminal/
shared-bindings/neopixel_write/__init__.rst shared-bindings/neopixel_write/
shared-bindings/network/__init__.rst shared-bindings/network/
shared-bindings/nvm/ByteArray.rst shared-bindings/nvm/#nvm.ByteArray
shared-bindings/nvm/__init__.rst shared-bindings/nvm/
shared-bindings/os/__init__.rst shared-bindings/os/
shared-bindings/protomatter/__init__.rst shared-bindings/protomatter/
shared-bindings/ps2io/Ps2.rst shared-bindings/ps2io/#ps2io.Ps2
shared-bindings/ps2io/__init__.rst shared-bindings/ps2io/
shared-bindings/pulseio/PWMOut.rst shared-bindings/pulseio/#pulseio.PWMOut
shared-bindings/pulseio/PulseIn.rst shared-bindings/pulseio/#pulseio.PulseIn
shared-bindings/pulseio/PulseOut.rst shared-bindings/pulseio/#pulseio.PulseOut
shared-bindings/pulseio/__init__.rst shared-bindings/pulseio/
shared-bindings/random/__init__.rst shared-bindings/random/
shared-bindings/rgbmatrix/RGBMatrix.rst shared-bindings/rgbmatrix/#rgbmatrix.RGBMatrix
shared-bindings/rgbmatrix/__init__.rst shared-bindings/rgbmatrix/
shared-bindings/rotaryio/IncrementalEncoder.rst shared-bindings/rotaryio/#rotaryio.IncrementalEncoder
shared-bindings/rotaryio/__init__.rst shared-bindings/rotaryio/
shared-bindings/rtc/RTC.rst shared-bindings/rtc/#rtc.RTC
shared-bindings/analogio/AnalogIn.rst shared-bindings/analogio/#analogio.AnalogIn
shared-bindings/analogio/AnalogOut.rst shared-bindings/analogio/#analogio.AnalogOut
shared-bindings/_stage/Layer.rst shared-bindings/_stage/#_stage.Layer
shared-bindings/_stage/Text.rst shared-bindings/_stage/#_stage.Text
shared-bindings/rtc/__init__.rst shared-bindings/rtc/
shared-bindings/samd/Clock.rst shared-bindings/samd/#samd.Clock
shared-bindings/samd/__init__.rst shared-bindings/samd/
shared-bindings/socket/__init__.rst shared-bindings/socket/
shared-bindings/socket/socket.rst shared-bindings/socket/#socket.socket
shared-bindings/storage/VfsFat.rst shared-bindings/storage/#storage.VfsFat
shared-bindings/storage/__init__.rst shared-bindings/storage/
shared-bindings/struct/__init__.rst shared-bindings/struct/
shared-bindings/supervisor/Runtime.rst shared-bindings/supervisor/#supervisor.Runtime
shared-bindings/supervisor/__init__.rst shared-bindings/supervisor/
shared-bindings/terminalio/Terminal.rst shared-bindings/terminalio/#terminalio.Terminal
shared-bindings/terminalio/__init__.rst shared-bindings/terminalio/
shared-bindings/time/__init__.rst shared-bindings/time/
shared-bindings/time/struct_time.rst shared-bindings/time/#time.struct_time
shared-bindings/touchio/TouchIn.rst shared-bindings/touchio/#touchio.TouchIn
shared-bindings/touchio/__init__.rst shared-bindings/touchio/
shared-bindings/uheap/__init__.rst shared-bindings/uheap/
shared-bindings/ulab/__init__.rst shared-bindings/ulab/
shared-bindings/ulab/approx/__init__.rst shared-bindings/ulab/approx/
shared-bindings/ulab/array.rst shared-bindings/ulab/#ulab.array
shared-bindings/ulab/compare/__init__.rst shared-bindings/ulab/compare/
shared-bindings/ulab/extras/__init__.rst shared-bindings/ulab/extras/
shared-bindings/ulab/fft/__init__.rst shared-bindings/ulab/fft/
shared-bindings/ulab/filter/__init__.rst shared-bindings/ulab/filter/
shared-bindings/ulab/linalg/__init__.rst shared-bindings/ulab/linalg/
shared-bindings/ulab/numerical/__init__.rst shared-bindings/ulab/numerical/
shared-bindings/ulab/poly/__init__.rst shared-bindings/ulab/poly/
shared-bindings/ulab/vector/__init__.rst shared-bindings/ulab/vector/
shared-bindings/usb_hid/Device.rst shared-bindings/usb_hid/#usb_hid.Device
shared-bindings/usb_hid/__init__.rst shared-bindings/usb_hid/
shared-bindings/usb_midi/PortIn.rst shared-bindings/usb_midi/#usb_midi.PortIn
shared-bindings/usb_midi/PortOut.rst shared-bindings/usb_midi/#usb_midi.PortOut
shared-bindings/usb_midi/__init__.rst shared-bindings/usb_midi/
shared-bindings/ustack/__init__.rst shared-bindings/ustack/
shared-bindings/vectorio/Circle.rst shared-bindings/vectorio/#vectorio.Circle
shared-bindings/vectorio/Polygon.rst shared-bindings/vectorio/#vectorio.Polygon
shared-bindings/vectorio/Rectangle.rst shared-bindings/vectorio/#vectorio.Rectangle
shared-bindings/vectorio/VectorShape.rst shared-bindings/vectorio/#vectorio.VectorShape
shared-bindings/vectorio/__init__.rst shared-bindings/vectorio/
shared-bindings/watchdog/WatchDogMode.rst shared-bindings/watchdog/#watchdog.WatchDogMode
shared-bindings/watchdog/WatchDogTimer.rst shared-bindings/watchdog/#watchdog.WatchDogTimer
shared-bindings/watchdog/__init__.rst shared-bindings/watchdog/
shared-bindings/wiznet/WIZNET5K.rst shared-bindings/wiznet/#wiznet.WIZNET5K
shared-bindings/wiznet/__init__.rst shared-bindings/wiznet/

View File

@ -3,3 +3,5 @@ recommonmark==0.6.0
sphinxcontrib-svg2pdfconverter==0.1.0
astroid
sphinx-autoapi
isort
black

View File

@ -1,6 +1,6 @@
# The MIT License (MIT)
#
# Copyright (c) 2019 Michael Schroeder
# SPDX-FileCopyrightText: Copyright (c) 2019 Michael Schroeder
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@ -23,6 +23,7 @@
import json
import os
import pathlib
import re
import subprocess
import sys
@ -30,17 +31,27 @@ import sys
SUPPORTED_PORTS = ['atmel-samd', 'esp32s2', 'litex', 'mimxrt10xx', 'nrf', 'stm']
def get_circuitpython_root_dir():
""" The path to the root './circuitpython' directory
"""
file_path = pathlib.Path(__file__).resolve()
root_dir = file_path.parent.parent
return root_dir
def get_shared_bindings():
""" Get a list of modules in shared-bindings based on folder names
"""
return [item for item in os.listdir("./shared-bindings")]
shared_bindings_dir = get_circuitpython_root_dir() / "shared-bindings"
return [item.name for item in shared_bindings_dir.iterdir()]
def read_mpconfig():
""" Open 'circuitpy_mpconfig.mk' and return the contents.
"""
configs = []
with open("py/circuitpy_mpconfig.mk") as mpconfig:
cpy_mpcfg = get_circuitpython_root_dir() / "py" / "circuitpy_mpconfig.mk"
with open(cpy_mpcfg) as mpconfig:
configs = mpconfig.read()
return configs
@ -120,7 +131,7 @@ def lookup_setting(settings, key, default=''):
key = value[2:-1]
return value
def support_matrix_by_board():
def support_matrix_by_board(use_branded_name=True):
""" Compiles a list of the available core modules available for each
board.
"""
@ -129,20 +140,22 @@ def support_matrix_by_board():
boards = dict()
for port in SUPPORTED_PORTS:
port_dir = "ports/{}/boards".format(port)
for entry in os.scandir(port_dir):
port_dir = get_circuitpython_root_dir() / "ports" / port
for entry in (port_dir / "boards").iterdir():
if not entry.is_dir():
continue
board_modules = []
board_name = entry.name
settings = get_settings_from_makefile(f'ports/{port}', entry.name)
settings = get_settings_from_makefile(str(port_dir), entry.name)
with open(os.path.join(entry.path, "mpconfigboard.h")) as get_name:
board_contents = get_name.read()
board_name_re = re.search("(?<=MICROPY_HW_BOARD_NAME)\s+(.+)",
board_contents)
if board_name_re:
board_name = board_name_re.group(1).strip('"')
if use_branded_name:
with open(entry / "mpconfigboard.h") as get_name:
board_contents = get_name.read()
board_name_re = re.search(r"(?<=MICROPY_HW_BOARD_NAME)\s+(.+)",
board_contents)
if board_name_re:
board_name = board_name_re.group(1).strip('"')
board_modules = []
for module in base:

View File

@ -9,7 +9,19 @@
margin: 4px;
}
/* custom CSS to sticky the ' viewing outdated version'
warning
*/
.document > .admonition {
position: sticky;
top: 0px;
background-color: salmon;
z-index: 2;
}
body {
overflow-x: unset!important;
}
/* override table width restrictions */
@media screen and (min-width: 767px) {

3
docs/static/favicon.ico.license vendored Normal file
View File

@ -0,0 +1,3 @@
SPDX-FileCopyrightText: 2018 Phillip Torrone for Adafruit Industries
SPDX-License-Identifier: CC-BY-4.0

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2017-2018 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2017-2018 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2017-2018 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2017-2018 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2016-2018 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2016-2018 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2016-2018 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2016-2018 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_STM32_FONT_PETME128_8X8_H
#define MICROPY_INCLUDED_STM32_FONT_PETME128_8X8_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/runtime.h"
#include "extmod/machine_mem.h"

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2015 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2015 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MACHINE_MEM_H
#define MICROPY_INCLUDED_EXTMOD_MACHINE_MEM_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_PY_MACHINE

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MACHINE_PINBASE_H
#define MICROPY_INCLUDED_EXTMOD_MACHINE_PINBASE_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/runtime.h"
#include "py/mperrno.h"

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MACHINE_PULSE_H
#define MICROPY_INCLUDED_EXTMOD_MACHINE_PULSE_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2017 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_PY_MACHINE

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2017 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MACHINE_SIGNAL_H
#define MICROPY_INCLUDED_EXTMOD_MACHINE_SIGNAL_H

View File

@ -1,29 +1,9 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014-2016 Damien P. George
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014-2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MISC_H
#define MICROPY_INCLUDED_EXTMOD_MISC_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <string.h>

View File

@ -1,30 +1,9 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* Copyright (c) 2015 Galen Hazelwood
* Copyright (c) 2015-2017 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2015 Galen Hazelwood
// Copyright (c) 2015-2017 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <string.h>
#include <stdio.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2015-2017 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2015-2017 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <stdint.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <assert.h>

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MODUBINASCII_H
#define MICROPY_INCLUDED_EXTMOD_MODUBINASCII_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <assert.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <assert.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/objlist.h"
#include "py/runtime.h"

View File

@ -1,31 +1,12 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014-2016 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014-2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include "py/binary.h"
#include "py/objarray.h"
#include "py/objlist.h"
#include "py/objstringio.h"
#include "py/parsenum.h"
@ -74,6 +55,8 @@ typedef struct _ujson_stream_t {
mp_obj_t stream_obj;
mp_uint_t (*read)(mp_obj_t obj, void *buf, mp_uint_t size, int *errcode);
int errcode;
mp_obj_t python_readinto[2 + 1];
mp_obj_array_t bytearray_obj;
byte cur;
} ujson_stream_t;
@ -94,9 +77,39 @@ STATIC byte ujson_stream_next(ujson_stream_t *s) {
return s->cur;
}
STATIC mp_uint_t ujson_python_readinto(mp_obj_t obj, void *buf, mp_uint_t size, int *errcode) {
ujson_stream_t* s = obj;
s->bytearray_obj.items = buf;
s->bytearray_obj.len = size;
*errcode = 0;
mp_obj_t ret = mp_call_method_n_kw(1, 0, s->python_readinto);
if (ret == mp_const_none) {
*errcode = MP_EAGAIN;
return MP_STREAM_ERROR;
}
return mp_obj_get_int(ret);
}
STATIC mp_obj_t _mod_ujson_load(mp_obj_t stream_obj, bool return_first_json) {
const mp_stream_p_t *stream_p = mp_get_stream_raise(stream_obj, MP_STREAM_OP_READ);
ujson_stream_t s = {stream_obj, stream_p->read, 0, 0};
const mp_stream_p_t *stream_p = mp_proto_get(MP_QSTR_protocol_stream, stream_obj);
ujson_stream_t s;
if (stream_p == NULL) {
mp_load_method(stream_obj, MP_QSTR_readinto, s.python_readinto);
s.bytearray_obj.base.type = &mp_type_bytearray;
s.bytearray_obj.typecode = BYTEARRAY_TYPECODE;
s.bytearray_obj.free = 0;
// len and items are set at read time
s.python_readinto[2] = MP_OBJ_FROM_PTR(&s.bytearray_obj);
s.stream_obj = &s;
s.read = ujson_python_readinto;
} else {
stream_p = mp_get_stream_raise(stream_obj, MP_STREAM_OP_READ);
s.stream_obj = stream_obj;
s.read = stream_p->read;
s.errcode = 0;
s.cur = 0;
}
JSON_DEBUG("got JSON stream\n");
vstr_t vstr;
vstr_init(&vstr, 8);

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <assert.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <assert.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_PY_USELECT

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2015-2017 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2015-2017 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Linaro Ltd.
*
* 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.
*/
// Copyright (c) 2016 Linaro Ltd.
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_PY_USSL && MICROPY_SSL_MBEDTLS

View File

@ -1,29 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Damien P. George
* Copyright (c) 2016-2017 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016-2017 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014-2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2014-2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <stdint.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <stdint.h>

View File

@ -1,3 +1,7 @@
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_MODWEBSOCKET_H
#define MICROPY_INCLUDED_EXTMOD_MODWEBSOCKET_H

View File

@ -1,29 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
* Copyright (c) 2017 Damien P. George
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2017 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <string.h>
#include "py/mpconfig.h"

View File

@ -1,29 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2016 Damien P. George
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013-2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_PY_UTIME_MP_HAL

View File

@ -1,29 +1,9 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2016 Damien P. George
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013-2016 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_UTIME_MPHAL_H
#define MICROPY_INCLUDED_EXTMOD_UTIME_MPHAL_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2017 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <stdint.h>
#include <string.h>

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2017 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_VFS_H
#define MICROPY_INCLUDED_EXTMOD_VFS_H

View File

@ -1,29 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2014 Damien P. George
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_VFS_FAT

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_VFS_FAT_H
#define MICROPY_INCLUDED_EXTMOD_VFS_FAT_H

View File

@ -1,31 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* Original template for this file comes from:
* Low level disk I/O module skeleton for FatFs, (C)ChaN, 2013
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_VFS && MICROPY_VFS_FAT

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/mpconfig.h"
#if MICROPY_VFS && MICROPY_VFS_FAT

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2017-2018 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2017-2018 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/runtime.h"
#include "py/mperrno.h"

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2018 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2018 Damien P. George
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_VFS_POSIX_H
#define MICROPY_INCLUDED_EXTMOD_VFS_POSIX_H

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2018 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013-2018 Damien P. George
//
// SPDX-License-Identifier: MIT
#include "py/runtime.h"
#include "py/stream.h"

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2017 Damien P. George
*
* 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.
*/
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
// SPDX-FileCopyrightText: Copyright (c) 2013-2017 Damien P. George
//
// SPDX-License-Identifier: MIT
#include <stdio.h>
#include <string.h>

View File

@ -1,28 +1,7 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#include "extmod/virtpin.h"
#include "py/proto.h"

View File

@ -1,28 +1,8 @@
/*
* This file is part of the MicroPython project, http://micropython.org/
*
* The MIT License (MIT)
*
* Copyright (c) 2016 Paul Sokolovsky
*
* 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.
*/
// Copyright (c) 2016 Paul Sokolovsky
// SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
//
// SPDX-License-Identifier: MIT
#ifndef MICROPY_INCLUDED_EXTMOD_VIRTPIN_H
#define MICROPY_INCLUDED_EXTMOD_VIRTPIN_H

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
* Copyright (c) 2015 Daniel Campora
*
* Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
* Copyright (c) 2015 Daniel Campora
*
* Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@ -6,7 +6,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2017 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013-2017 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
* Copyright (c) 2015 Daniel Campora
*
* Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
* Copyright (c) 2015 Daniel Campora
*
* Permission is hereby granted, free of charge, to any person obtaining a copy

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2016 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013-2016 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2016 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013-2016 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013, 2014 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013, 2014 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

View File

@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
* Copyright (c) 2013-2017 Damien P. George
* SPDX-FileCopyrightText: Copyright (c) 2013-2017 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-25 11:44-0500\n"
"POT-Creation-Date: 2020-07-30 07:23-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -58,6 +58,10 @@ msgstr ""
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
msgstr ""
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
msgstr ""
@ -74,10 +78,15 @@ msgstr ""
msgid "%q list must be a list"
msgstr ""
#: shared-bindings/memorymonitor/AllocationAlarm.c
msgid "%q must be >= 0"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#: shared-bindings/_bleio/PacketBuffer.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/Shape.c shared-bindings/vectorio/Circle.c
#: shared-bindings/vectorio/Rectangle.c
#: shared-bindings/displayio/Shape.c
#: shared-bindings/memorymonitor/AllocationAlarm.c
#: shared-bindings/vectorio/Circle.c shared-bindings/vectorio/Rectangle.c
msgid "%q must be >= 1"
msgstr ""
@ -85,6 +94,10 @@ msgstr ""
msgid "%q must be a tuple of length 2"
msgstr ""
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q pin invalid"
msgstr ""
#: shared-bindings/fontio/BuiltinFont.c
msgid "%q should be an int"
msgstr ""
@ -202,11 +215,11 @@ msgid "'align' requires 1 argument"
msgstr ""
#: py/compile.c
msgid "'async for' or 'async with' outside async function"
msgid "'await' outside function"
msgstr ""
#: py/compile.c
msgid "'await' outside function"
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
#: py/compile.c
@ -217,6 +230,10 @@ msgstr ""
msgid "'continue' outside loop"
msgstr ""
#: py/objgenerator.c
msgid "'coroutine' object is not an iterator"
msgstr ""
#: py/compile.c
msgid "'data' requires at least 2 arguments"
msgstr ""
@ -299,7 +316,7 @@ msgstr ""
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
#: shared-bindings/pulseio/PWMOut.c
#: ports/stm/peripherals/timers.c shared-bindings/pulseio/PWMOut.c
msgid "All timers in use"
msgstr ""
@ -307,6 +324,11 @@ msgstr ""
msgid "Already advertising."
msgstr ""
#: shared-module/memorymonitor/AllocationAlarm.c
#: shared-module/memorymonitor/AllocationSize.c
msgid "Already running"
msgstr ""
#: ports/cxd56/common-hal/analogio/AnalogIn.c
msgid "AnalogIn not supported on given pin"
msgstr ""
@ -338,10 +360,15 @@ msgstr ""
msgid "Array values should be single bytes."
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#: shared-bindings/microcontroller/Pin.c
msgid "At most %d %q may be specified (not %d)"
msgstr ""
#: shared-module/memorymonitor/AllocationAlarm.c
#, c-format
msgid "Attempt to allocate %d blocks"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid "Attempted heap allocation when MicroPython VM not running."
msgstr ""
@ -417,6 +444,11 @@ msgstr ""
msgid "Buffer length %d too big. It must be less than %d"
msgstr ""
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -456,7 +488,9 @@ msgstr ""
msgid "Can't set CCCD on local Characteristic"
msgstr ""
#: shared-bindings/displayio/Bitmap.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/Bitmap.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Cannot delete values"
msgstr ""
@ -577,6 +611,10 @@ msgstr ""
msgid "Could not initialize GNSS"
msgstr ""
#: ports/cxd56/common-hal/sdioio/SDCard.c
msgid "Could not initialize SDCard"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
msgid "Could not initialize UART"
msgstr ""
@ -698,7 +736,8 @@ msgstr ""
msgid "Error in regex"
msgstr ""
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
@ -731,7 +770,7 @@ msgstr ""
msgid "Extended advertisements with scan response not supported."
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "FFT is defined for ndarrays only"
msgstr ""
@ -822,6 +861,10 @@ msgstr ""
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -858,6 +901,10 @@ msgstr ""
msgid "Internal error #%d"
msgstr ""
#: shared-bindings/sdioio/SDCard.c
msgid "Invalid %q"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
msgid "Invalid %q pin"
@ -965,7 +1012,8 @@ msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
msgid "Invalid pins"
@ -1069,6 +1117,10 @@ msgstr ""
msgid "Must provide MISO or MOSI pin"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "Must provide SCK pin"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid "Must use a multiple of 6 rgb pins, not %d"
@ -1284,14 +1336,6 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "PulseIn not supported on this chip"
msgstr ""
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1322,6 +1366,7 @@ msgstr ""
msgid "Random number generation error"
msgstr ""
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Read-only"
msgstr ""
@ -1358,6 +1403,10 @@ msgstr ""
msgid "Running in safe mode! Not running saved code.\n"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "SDA or SCL needs a pull up"
@ -1402,7 +1451,9 @@ msgid "Slice and value different lengths."
msgstr ""
#: shared-bindings/displayio/Bitmap.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/TileGrid.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/TileGrid.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Slices not supported"
msgstr ""
@ -1490,6 +1541,11 @@ msgstr ""
msgid "Timeout is too long: Maximum timeout length is %d seconds"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid ""
"Timer was reserved for internal use - declare PWM pins earlier in the program"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
msgid "Too many channels in sample."
msgstr ""
@ -1713,7 +1769,7 @@ msgstr ""
msgid "__new__ arg must be a user-type"
msgstr ""
#: extmod/modubinascii.c extmod/moduhashlib.c
#: extmod/modubinascii.c extmod/moduhashlib.c py/objarray.c
msgid "a bytes-like object is required"
msgstr ""
@ -1734,7 +1790,7 @@ msgstr ""
msgid "addresses is empty"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "arctan2 is implemented for scalars and ndarrays only"
msgstr ""
@ -1742,7 +1798,7 @@ msgstr ""
msgid "arg is an empty sequence"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort argument must be an ndarray"
msgstr ""
@ -1750,6 +1806,10 @@ msgstr ""
msgid "argument has wrong type"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
msgid "argument num/types mismatch"
@ -1759,7 +1819,7 @@ msgstr ""
msgid "argument should be a '%q' not a '%q'"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "arguments must be ndarrays"
msgstr ""
@ -1767,7 +1827,7 @@ msgstr ""
msgid "array/bytes required on right side"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
msgstr ""
@ -1775,15 +1835,15 @@ msgstr ""
msgid "attributes not supported yet"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, None, or 1"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, or 1"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, 0, or 1"
msgstr ""
@ -1979,6 +2039,10 @@ msgstr ""
msgid "can't send non-None value to a just-started generator"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "can't set 512 block size"
msgstr ""
#: py/objnamedtuple.c
msgid "can't set attribute"
msgstr ""
@ -2085,15 +2149,15 @@ msgstr ""
msgid "conversion to object"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be linear arrays"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be ndarrays"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must not be empty"
msgstr ""
@ -2101,19 +2165,23 @@ msgstr ""
msgid "could not broadast input array from shape"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "could not invert Vandermonde matrix"
msgstr ""
#: extmod/ulab/code/approx.c
#: shared-module/sdcardio/SDCard.c
msgid "couldn't determine SD card version"
msgstr ""
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "data must be of equal length"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "ddof must be smaller than length of data set"
msgstr ""
@ -2142,7 +2210,7 @@ msgstr ""
msgid "dict update sequence has wrong length"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "diff argument must be an ndarray"
msgstr ""
@ -2245,11 +2313,11 @@ msgstr ""
msgid "filesystem must provide mount method"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be a callable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "first argument must be a function"
msgstr ""
@ -2257,7 +2325,7 @@ msgstr ""
msgid "first argument must be an iterable"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be an ndarray"
msgstr ""
@ -2269,7 +2337,7 @@ msgstr ""
msgid "flattening order must be either 'C', or 'F'"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "flip argument must be an ndarray"
msgstr ""
@ -2302,11 +2370,11 @@ msgstr ""
msgid "function got multiple values for argument '%q'"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "function has the same sign at the ends of interval"
msgstr ""
#: extmod/ulab/code/compare.c
#: extmod/ulab/code/compare/compare.c
msgid "function is implemented for scalars and ndarrays only"
msgstr ""
@ -2392,7 +2460,7 @@ msgstr ""
msgid "indices must be integers, slices, or Boolean lists"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "initial values must be iterable"
msgstr ""
@ -2400,35 +2468,35 @@ msgstr ""
msgid "inline assembler must be a function"
msgstr ""
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "input array length must be power of 2"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is asymmetric"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is singular"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "input must be tuple, list, range, or ndarray"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input vectors must be of equal length"
msgstr ""
@ -2440,7 +2508,7 @@ msgstr ""
msgid "integer required"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "interp is defined for 1D arrays of equal length"
msgstr ""
@ -2510,7 +2578,7 @@ msgstr ""
msgid "iterables are not of the same length"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "iterations did not converge"
msgstr ""
@ -2574,11 +2642,11 @@ msgstr ""
msgid "math domain error"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix dimensions do not match"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix is not positive definite"
msgstr ""
@ -2605,7 +2673,7 @@ msgstr ""
msgid "module not found"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "more degrees of freedom than data points"
msgstr ""
@ -2629,7 +2697,7 @@ msgstr ""
msgid "must use keyword argument for key function"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "n must be between 0, and 9"
msgstr ""
@ -2662,6 +2730,10 @@ msgstr ""
msgid "negative shift count"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "no SD card"
msgstr ""
#: py/vm.c
msgid "no active exception to reraise"
msgstr ""
@ -2683,6 +2755,10 @@ msgstr ""
msgid "no reset pin available"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "no response from SD card"
msgstr ""
#: py/runtime.c
msgid "no such attribute"
msgstr ""
@ -2719,11 +2795,11 @@ msgstr ""
msgid "not enough arguments for format string"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "number of arguments must be 2, or 3"
msgstr ""
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "number of points must be at least 2"
msgstr ""
@ -2794,12 +2870,12 @@ msgstr ""
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
#: extmod/ulab/code/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/compare/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vector/vectorise.c
msgid "operands could not be broadcast together"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
msgstr ""
@ -2891,7 +2967,7 @@ msgstr ""
msgid "raw f-strings are not implemented"
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "real and imaginary parts must be of equal length"
msgstr ""
@ -2964,7 +3040,7 @@ msgstr ""
msgid "single '}' encountered in format string"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "size is defined for ndarrays only"
msgstr ""
@ -2972,6 +3048,10 @@ msgstr ""
msgid "sleep length must be non-negative"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "slice step can't be zero"
msgstr ""
#: py/objslice.c py/sequence.c
msgid "slice step cannot be zero"
msgstr ""
@ -2984,10 +3064,22 @@ msgstr ""
msgid "soft reboot\n"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "sort argument must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sos array must be of shape (n_section, 6)"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sos[:, 3] should be all ones"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sosfilt requires iterable arguments"
msgstr ""
#: py/objstr.c
msgid "start/end indices"
msgstr ""
@ -3037,7 +3129,7 @@ msgstr ""
msgid "struct: no fields"
msgstr ""
#: py/objstr.c
#: py/objarray.c py/objstr.c
msgid "substring not found"
msgstr ""
@ -3073,6 +3165,14 @@ msgstr ""
msgid "timeout must be >= 0.0"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v1 card"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v2 card"
msgstr ""
#: shared-bindings/time/__init__.c
msgid "timestamp out of range for platform time_t"
msgstr ""
@ -3090,7 +3190,11 @@ msgstr ""
msgid "too many values to unpack (expected %d)"
msgstr ""
#: extmod/ulab/code/linalg.c py/objstr.c
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
msgid "tuple index out of range"
msgstr ""
@ -3218,6 +3322,10 @@ msgstr ""
msgid "value_count must be > 0"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
msgstr ""
@ -3226,7 +3334,7 @@ msgstr ""
msgid "window must be <= interval"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "wrong argument type"
msgstr ""
@ -3234,11 +3342,11 @@ msgstr ""
msgid "wrong index type"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
msgstr ""
#: py/objstr.c
#: extmod/ulab/code/ulab_create.c py/objstr.c
msgid "wrong number of arguments"
msgstr ""
@ -3250,7 +3358,7 @@ msgstr ""
msgid "wrong operand type"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong output type"
msgstr ""
@ -3269,3 +3377,15 @@ msgstr ""
#: py/objrange.c
msgid "zero step"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of float type"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of shape (n_section, 2)"
msgstr ""

View File

@ -1,13 +1,11 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-25 11:44-0500\n"
"POT-Creation-Date: 2020-07-30 07:23-0500\n"
"PO-Revision-Date: 2020-05-24 03:22+0000\n"
"Last-Translator: dronecz <mzuzelka@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -66,6 +64,10 @@ msgstr "%% c vyžaduje int nebo char"
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
msgstr "%d adresní piny a %d rgb piny označují výšku %d, nikoli %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
msgstr "%q se nyní používá"
@ -82,10 +84,15 @@ msgstr "Indexy% q musí být celá čísla, nikoli% s"
msgid "%q list must be a list"
msgstr "Seznam% q musí být seznam"
#: shared-bindings/memorymonitor/AllocationAlarm.c
msgid "%q must be >= 0"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#: shared-bindings/_bleio/PacketBuffer.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/Shape.c shared-bindings/vectorio/Circle.c
#: shared-bindings/vectorio/Rectangle.c
#: shared-bindings/displayio/Shape.c
#: shared-bindings/memorymonitor/AllocationAlarm.c
#: shared-bindings/vectorio/Circle.c shared-bindings/vectorio/Rectangle.c
msgid "%q must be >= 1"
msgstr "% q musí být > = 1"
@ -93,6 +100,10 @@ msgstr "% q musí být > = 1"
msgid "%q must be a tuple of length 2"
msgstr "% q musí být n-tice délky 2"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q pin invalid"
msgstr ""
#: shared-bindings/fontio/BuiltinFont.c
msgid "%q should be an int"
msgstr "% q by měl být int"
@ -210,11 +221,11 @@ msgid "'align' requires 1 argument"
msgstr ""
#: py/compile.c
msgid "'async for' or 'async with' outside async function"
msgid "'await' outside function"
msgstr ""
#: py/compile.c
msgid "'await' outside function"
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
#: py/compile.c
@ -225,6 +236,10 @@ msgstr ""
msgid "'continue' outside loop"
msgstr ""
#: py/objgenerator.c
msgid "'coroutine' object is not an iterator"
msgstr ""
#: py/compile.c
msgid "'data' requires at least 2 arguments"
msgstr ""
@ -307,7 +322,7 @@ msgstr ""
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
#: shared-bindings/pulseio/PWMOut.c
#: ports/stm/peripherals/timers.c shared-bindings/pulseio/PWMOut.c
msgid "All timers in use"
msgstr ""
@ -315,6 +330,11 @@ msgstr ""
msgid "Already advertising."
msgstr ""
#: shared-module/memorymonitor/AllocationAlarm.c
#: shared-module/memorymonitor/AllocationSize.c
msgid "Already running"
msgstr ""
#: ports/cxd56/common-hal/analogio/AnalogIn.c
msgid "AnalogIn not supported on given pin"
msgstr ""
@ -346,10 +366,15 @@ msgstr ""
msgid "Array values should be single bytes."
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#: shared-bindings/microcontroller/Pin.c
msgid "At most %d %q may be specified (not %d)"
msgstr ""
#: shared-module/memorymonitor/AllocationAlarm.c
#, c-format
msgid "Attempt to allocate %d blocks"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid "Attempted heap allocation when MicroPython VM not running."
msgstr ""
@ -425,6 +450,11 @@ msgstr ""
msgid "Buffer length %d too big. It must be less than %d"
msgstr ""
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr ""
@ -464,7 +494,9 @@ msgstr ""
msgid "Can't set CCCD on local Characteristic"
msgstr ""
#: shared-bindings/displayio/Bitmap.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/Bitmap.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Cannot delete values"
msgstr ""
@ -585,6 +617,10 @@ msgstr ""
msgid "Could not initialize GNSS"
msgstr ""
#: ports/cxd56/common-hal/sdioio/SDCard.c
msgid "Could not initialize SDCard"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
msgid "Could not initialize UART"
msgstr ""
@ -706,7 +742,8 @@ msgstr ""
msgid "Error in regex"
msgstr ""
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
@ -739,7 +776,7 @@ msgstr ""
msgid "Extended advertisements with scan response not supported."
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "FFT is defined for ndarrays only"
msgstr ""
@ -830,6 +867,10 @@ msgstr ""
msgid "I2C Init Error"
msgstr ""
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -866,6 +907,10 @@ msgstr ""
msgid "Internal error #%d"
msgstr ""
#: shared-bindings/sdioio/SDCard.c
msgid "Invalid %q"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
msgid "Invalid %q pin"
@ -973,7 +1018,8 @@ msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
msgid "Invalid pins"
@ -1077,6 +1123,10 @@ msgstr ""
msgid "Must provide MISO or MOSI pin"
msgstr ""
#: ports/stm/common-hal/busio/SPI.c
msgid "Must provide SCK pin"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid "Must use a multiple of 6 rgb pins, not %d"
@ -1292,14 +1342,6 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr ""
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "PulseIn not supported on this chip"
msgstr ""
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid "PulseOut not supported on this chip"
msgstr ""
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr ""
@ -1330,6 +1372,7 @@ msgstr ""
msgid "Random number generation error"
msgstr ""
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Read-only"
msgstr ""
@ -1366,6 +1409,10 @@ msgstr ""
msgid "Running in safe mode! Not running saved code.\n"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "SDA or SCL needs a pull up"
@ -1410,7 +1457,9 @@ msgid "Slice and value different lengths."
msgstr ""
#: shared-bindings/displayio/Bitmap.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/TileGrid.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/TileGrid.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Slices not supported"
msgstr ""
@ -1498,6 +1547,11 @@ msgstr ""
msgid "Timeout is too long: Maximum timeout length is %d seconds"
msgstr ""
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid ""
"Timer was reserved for internal use - declare PWM pins earlier in the program"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
msgid "Too many channels in sample."
msgstr ""
@ -1721,7 +1775,7 @@ msgstr ""
msgid "__new__ arg must be a user-type"
msgstr ""
#: extmod/modubinascii.c extmod/moduhashlib.c
#: extmod/modubinascii.c extmod/moduhashlib.c py/objarray.c
msgid "a bytes-like object is required"
msgstr ""
@ -1742,7 +1796,7 @@ msgstr ""
msgid "addresses is empty"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "arctan2 is implemented for scalars and ndarrays only"
msgstr ""
@ -1750,7 +1804,7 @@ msgstr ""
msgid "arg is an empty sequence"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort argument must be an ndarray"
msgstr ""
@ -1758,6 +1812,10 @@ msgstr ""
msgid "argument has wrong type"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
msgid "argument num/types mismatch"
@ -1767,7 +1825,7 @@ msgstr ""
msgid "argument should be a '%q' not a '%q'"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "arguments must be ndarrays"
msgstr ""
@ -1775,7 +1833,7 @@ msgstr ""
msgid "array/bytes required on right side"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
msgstr ""
@ -1783,15 +1841,15 @@ msgstr ""
msgid "attributes not supported yet"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, None, or 1"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, or 1"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, 0, or 1"
msgstr ""
@ -1987,6 +2045,10 @@ msgstr ""
msgid "can't send non-None value to a just-started generator"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "can't set 512 block size"
msgstr ""
#: py/objnamedtuple.c
msgid "can't set attribute"
msgstr ""
@ -2093,15 +2155,15 @@ msgstr ""
msgid "conversion to object"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be linear arrays"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be ndarrays"
msgstr ""
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must not be empty"
msgstr ""
@ -2109,19 +2171,23 @@ msgstr ""
msgid "could not broadast input array from shape"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "could not invert Vandermonde matrix"
msgstr ""
#: extmod/ulab/code/approx.c
#: shared-module/sdcardio/SDCard.c
msgid "couldn't determine SD card version"
msgstr ""
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "data must be of equal length"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "ddof must be smaller than length of data set"
msgstr ""
@ -2150,7 +2216,7 @@ msgstr ""
msgid "dict update sequence has wrong length"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "diff argument must be an ndarray"
msgstr ""
@ -2253,11 +2319,11 @@ msgstr ""
msgid "filesystem must provide mount method"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be a callable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "first argument must be a function"
msgstr ""
@ -2265,7 +2331,7 @@ msgstr ""
msgid "first argument must be an iterable"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be an ndarray"
msgstr ""
@ -2277,7 +2343,7 @@ msgstr ""
msgid "flattening order must be either 'C', or 'F'"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "flip argument must be an ndarray"
msgstr ""
@ -2310,11 +2376,11 @@ msgstr ""
msgid "function got multiple values for argument '%q'"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "function has the same sign at the ends of interval"
msgstr ""
#: extmod/ulab/code/compare.c
#: extmod/ulab/code/compare/compare.c
msgid "function is implemented for scalars and ndarrays only"
msgstr ""
@ -2400,7 +2466,7 @@ msgstr ""
msgid "indices must be integers, slices, or Boolean lists"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "initial values must be iterable"
msgstr ""
@ -2408,35 +2474,35 @@ msgstr ""
msgid "inline assembler must be a function"
msgstr ""
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "input array length must be power of 2"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is asymmetric"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is singular"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "input must be tuple, list, range, or ndarray"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input vectors must be of equal length"
msgstr ""
@ -2448,7 +2514,7 @@ msgstr ""
msgid "integer required"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "interp is defined for 1D arrays of equal length"
msgstr ""
@ -2518,7 +2584,7 @@ msgstr ""
msgid "iterables are not of the same length"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "iterations did not converge"
msgstr ""
@ -2582,11 +2648,11 @@ msgstr ""
msgid "math domain error"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix dimensions do not match"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix is not positive definite"
msgstr ""
@ -2613,7 +2679,7 @@ msgstr ""
msgid "module not found"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "more degrees of freedom than data points"
msgstr ""
@ -2637,7 +2703,7 @@ msgstr ""
msgid "must use keyword argument for key function"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "n must be between 0, and 9"
msgstr ""
@ -2670,6 +2736,10 @@ msgstr ""
msgid "negative shift count"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "no SD card"
msgstr ""
#: py/vm.c
msgid "no active exception to reraise"
msgstr ""
@ -2691,6 +2761,10 @@ msgstr ""
msgid "no reset pin available"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "no response from SD card"
msgstr ""
#: py/runtime.c
msgid "no such attribute"
msgstr ""
@ -2727,11 +2801,11 @@ msgstr ""
msgid "not enough arguments for format string"
msgstr ""
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "number of arguments must be 2, or 3"
msgstr ""
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "number of points must be at least 2"
msgstr ""
@ -2802,12 +2876,12 @@ msgstr ""
msgid "only slices with step=1 (aka None) are supported"
msgstr ""
#: extmod/ulab/code/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/compare/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vector/vectorise.c
msgid "operands could not be broadcast together"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
msgstr ""
@ -2899,7 +2973,7 @@ msgstr ""
msgid "raw f-strings are not implemented"
msgstr ""
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "real and imaginary parts must be of equal length"
msgstr ""
@ -2972,7 +3046,7 @@ msgstr ""
msgid "single '}' encountered in format string"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "size is defined for ndarrays only"
msgstr ""
@ -2980,6 +3054,10 @@ msgstr ""
msgid "sleep length must be non-negative"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "slice step can't be zero"
msgstr ""
#: py/objslice.c py/sequence.c
msgid "slice step cannot be zero"
msgstr ""
@ -2992,10 +3070,22 @@ msgstr ""
msgid "soft reboot\n"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "sort argument must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sos array must be of shape (n_section, 6)"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sos[:, 3] should be all ones"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sosfilt requires iterable arguments"
msgstr ""
#: py/objstr.c
msgid "start/end indices"
msgstr ""
@ -3045,7 +3135,7 @@ msgstr ""
msgid "struct: no fields"
msgstr ""
#: py/objstr.c
#: py/objarray.c py/objstr.c
msgid "substring not found"
msgstr ""
@ -3081,6 +3171,14 @@ msgstr ""
msgid "timeout must be >= 0.0"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v1 card"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v2 card"
msgstr ""
#: shared-bindings/time/__init__.c
msgid "timestamp out of range for platform time_t"
msgstr ""
@ -3098,7 +3196,11 @@ msgstr ""
msgid "too many values to unpack (expected %d)"
msgstr ""
#: extmod/ulab/code/linalg.c py/objstr.c
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
msgid "tuple index out of range"
msgstr ""
@ -3226,6 +3328,10 @@ msgstr ""
msgid "value_count must be > 0"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
msgstr ""
@ -3234,7 +3340,7 @@ msgstr ""
msgid "window must be <= interval"
msgstr ""
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "wrong argument type"
msgstr ""
@ -3242,11 +3348,11 @@ msgstr ""
msgid "wrong index type"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
msgstr ""
#: py/objstr.c
#: extmod/ulab/code/ulab_create.c py/objstr.c
msgid "wrong number of arguments"
msgstr ""
@ -3258,7 +3364,7 @@ msgstr ""
msgid "wrong operand type"
msgstr ""
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong output type"
msgstr ""
@ -3277,3 +3383,15 @@ msgstr ""
#: py/objrange.c
msgid "zero step"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of float type"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of shape (n_section, 2)"
msgstr ""

View File

@ -1,13 +1,11 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# SPDX-FileCopyrightText: 2014 MicroPython & CircuitPython contributors (https://github.com/adafruit/circuitpython/graphs/contributors)
#
# SPDX-License-Identifier: MIT
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-25 11:44-0500\n"
"POT-Creation-Date: 2020-07-30 07:23-0500\n"
"PO-Revision-Date: 2020-06-16 18:24+0000\n"
"Last-Translator: Andreas Buchen <andreas.buchen@gmail.com>\n"
"Language: de_DE\n"
@ -65,6 +63,10 @@ msgstr "%%c erwartet int oder char"
msgid "%d address pins and %d rgb pins indicate a height of %d, not %d"
msgstr "%d Adress-Pins und %d rgb-Pins zeigen eine Höhe von %d, nicht von %d"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q failure: %d"
msgstr ""
#: shared-bindings/microcontroller/Pin.c
msgid "%q in use"
msgstr "%q in Benutzung"
@ -81,10 +83,15 @@ msgstr "%q Indizes müssen Integer sein, nicht %s"
msgid "%q list must be a list"
msgstr "%q Liste muss eine Liste sein"
#: shared-bindings/memorymonitor/AllocationAlarm.c
msgid "%q must be >= 0"
msgstr ""
#: shared-bindings/_bleio/CharacteristicBuffer.c
#: shared-bindings/_bleio/PacketBuffer.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/Shape.c shared-bindings/vectorio/Circle.c
#: shared-bindings/vectorio/Rectangle.c
#: shared-bindings/displayio/Shape.c
#: shared-bindings/memorymonitor/AllocationAlarm.c
#: shared-bindings/vectorio/Circle.c shared-bindings/vectorio/Rectangle.c
msgid "%q must be >= 1"
msgstr "%q muss >= 1 sein"
@ -92,6 +99,10 @@ msgstr "%q muss >= 1 sein"
msgid "%q must be a tuple of length 2"
msgstr "%q muss ein Tupel der Länge 2 sein"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
msgid "%q pin invalid"
msgstr ""
#: shared-bindings/fontio/BuiltinFont.c
msgid "%q should be an int"
msgstr "%q sollte ein integer sein"
@ -208,14 +219,14 @@ msgstr "'S' und 'O' sind keine unterstützten Formattypen"
msgid "'align' requires 1 argument"
msgstr "'align' erfordert genau ein Argument"
#: py/compile.c
msgid "'async for' or 'async with' outside async function"
msgstr "'async for' oder 'async with' außerhalb der asynchronen Funktion"
#: py/compile.c
msgid "'await' outside function"
msgstr "'await' außerhalb einer Funktion"
#: py/compile.c
msgid "'await', 'async for' or 'async with' outside async function"
msgstr ""
#: py/compile.c
msgid "'break' outside loop"
msgstr "'break' außerhalb einer Schleife"
@ -224,6 +235,10 @@ msgstr "'break' außerhalb einer Schleife"
msgid "'continue' outside loop"
msgstr "'continue' außerhalb einer Schleife"
#: py/objgenerator.c
msgid "'coroutine' object is not an iterator"
msgstr ""
#: py/compile.c
msgid "'data' requires at least 2 arguments"
msgstr "'data' erfordert mindestens zwei Argumente"
@ -306,7 +321,7 @@ msgstr "Alle timer für diesen Pin werden bereits benutzt"
#: ports/cxd56/common-hal/pulseio/PulseOut.c
#: ports/nrf/common-hal/audiopwmio/PWMAudioOut.c
#: ports/nrf/common-hal/pulseio/PulseIn.c ports/nrf/peripherals/nrf/timers.c
#: shared-bindings/pulseio/PWMOut.c
#: ports/stm/peripherals/timers.c shared-bindings/pulseio/PWMOut.c
msgid "All timers in use"
msgstr "Alle timer werden benutzt"
@ -314,6 +329,11 @@ msgstr "Alle timer werden benutzt"
msgid "Already advertising."
msgstr "Bereits am anbieten (advertising)."
#: shared-module/memorymonitor/AllocationAlarm.c
#: shared-module/memorymonitor/AllocationSize.c
msgid "Already running"
msgstr ""
#: ports/cxd56/common-hal/analogio/AnalogIn.c
msgid "AnalogIn not supported on given pin"
msgstr "AnalogIn ist an diesem Pin nicht unterstützt"
@ -345,10 +365,15 @@ msgstr "Array muss Halbwörter enthalten (type 'H')"
msgid "Array values should be single bytes."
msgstr "Array-Werte sollten aus Einzelbytes bestehen."
#: shared-bindings/rgbmatrix/RGBMatrix.c
#: shared-bindings/microcontroller/Pin.c
msgid "At most %d %q may be specified (not %d)"
msgstr "Es darf höchstens %d %q spezifiziert werden (nicht %d)"
#: shared-module/memorymonitor/AllocationAlarm.c
#, c-format
msgid "Attempt to allocate %d blocks"
msgstr ""
#: supervisor/shared/safe_mode.c
msgid "Attempted heap allocation when MicroPython VM not running."
msgstr ""
@ -428,6 +453,11 @@ msgstr "Der Puffer ist zu klein"
msgid "Buffer length %d too big. It must be less than %d"
msgstr "Die Pufferlänge %d ist zu groß. Sie muss kleiner als %d sein"
#: ports/atmel-samd/common-hal/sdioio/SDCard.c
#: ports/cxd56/common-hal/sdioio/SDCard.c shared-module/sdcardio/SDCard.c
msgid "Buffer length must be a multiple of 512"
msgstr ""
#: shared-bindings/bitbangio/I2C.c shared-bindings/busio/I2C.c
msgid "Buffer must be at least length 1"
msgstr "Der Puffer muss eine Mindestenslänge von 1 haben"
@ -467,7 +497,9 @@ msgstr "Rufe super().__init__() vor dem Zugriff auf ein natives Objekt auf."
msgid "Can't set CCCD on local Characteristic"
msgstr "CCCD kann nicht auf lokales Merkmal eingestellt werden"
#: shared-bindings/displayio/Bitmap.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/Bitmap.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Cannot delete values"
msgstr "Kann Werte nicht löschen"
@ -595,6 +627,10 @@ msgstr "Beschädigter raw code"
msgid "Could not initialize GNSS"
msgstr ""
#: ports/cxd56/common-hal/sdioio/SDCard.c
msgid "Could not initialize SDCard"
msgstr ""
#: ports/atmel-samd/common-hal/busio/UART.c ports/cxd56/common-hal/busio/UART.c
msgid "Could not initialize UART"
msgstr "Konnte UART nicht initialisieren"
@ -716,7 +752,8 @@ msgstr "EXTINT Kanal ist schon in Benutzung"
msgid "Error in regex"
msgstr "Fehler in regex"
#: shared-bindings/aesio/aes.c shared-bindings/microcontroller/Pin.c
#: shared-bindings/aesio/aes.c shared-bindings/busio/SPI.c
#: shared-bindings/microcontroller/Pin.c
#: shared-bindings/neopixel_write/__init__.c shared-bindings/pulseio/PulseOut.c
#: shared-bindings/terminalio/Terminal.c
msgid "Expected a %q"
@ -750,7 +787,7 @@ msgid "Extended advertisements with scan response not supported."
msgstr ""
"Erweiterte Werbung (advertising) mit Scanantwort wird nicht unterstützt."
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "FFT is defined for ndarrays only"
msgstr "FFT ist nur für ndarrays definiert"
@ -845,6 +882,10 @@ msgstr "Lese/Schreibe-operation an geschlossener Datei"
msgid "I2C Init Error"
msgstr "I2C-Init-Fehler"
#: shared-bindings/audiobusio/I2SOut.c
msgid "I2SOut not available"
msgstr ""
#: shared-bindings/aesio/aes.c
#, c-format
msgid "IV must be %d bytes long"
@ -883,6 +924,10 @@ msgstr "Interner Definitionsfehler"
msgid "Internal error #%d"
msgstr "Interner Fehler #%d"
#: shared-bindings/sdioio/SDCard.c
msgid "Invalid %q"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
#: ports/atmel-samd/common-hal/audiobusio/PDMIn.c
msgid "Invalid %q pin"
@ -990,7 +1035,8 @@ msgstr "Ungültiger Pin für rechten Kanal"
#: ports/atmel-samd/common-hal/busio/UART.c
#: ports/atmel-samd/common-hal/i2cperipheral/I2CPeripheral.c
#: ports/cxd56/common-hal/busio/I2C.c ports/cxd56/common-hal/busio/SPI.c
#: ports/cxd56/common-hal/busio/UART.c ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/cxd56/common-hal/busio/UART.c ports/cxd56/common-hal/sdioio/SDCard.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/SPI.c
#: ports/mimxrt10xx/common-hal/busio/UART.c ports/nrf/common-hal/busio/I2C.c
msgid "Invalid pins"
@ -1096,6 +1142,10 @@ msgstr "Muss eine %q Unterklasse sein."
msgid "Must provide MISO or MOSI pin"
msgstr "Muss MISO- oder MOSI-Pin bereitstellen"
#: ports/stm/common-hal/busio/SPI.c
msgid "Must provide SCK pin"
msgstr ""
#: shared-bindings/rgbmatrix/RGBMatrix.c
#, c-format
msgid "Must use a multiple of 6 rgb pins, not %d"
@ -1322,14 +1372,6 @@ msgstr ""
msgid "Pull not used when direction is output."
msgstr "Pull wird nicht verwendet, wenn die Richtung output ist."
#: ports/stm/common-hal/pulseio/PulseIn.c
msgid "PulseIn not supported on this chip"
msgstr "PulseIn wird auf diesem Chip nicht unterstützt"
#: ports/stm/common-hal/pulseio/PulseOut.c
msgid "PulseOut not supported on this chip"
msgstr "PulseOut wird auf diesem Chip nicht unterstützt"
#: ports/stm/common-hal/os/__init__.c
msgid "RNG DeInit Error"
msgstr "RNG DeInit-Fehler"
@ -1360,6 +1402,7 @@ msgstr "RTS / CTS / RS485 Wird von diesem Gerät noch nicht unterstützt"
msgid "Random number generation error"
msgstr "Fehler bei der Erzeugung von Zufallszahlen"
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Read-only"
msgstr "Nur lesen möglich, da Schreibgeschützt"
@ -1396,6 +1439,10 @@ msgstr "Sicherheitsmodus aktiv! Automatisches Neuladen ist deaktiviert.\n"
msgid "Running in safe mode! Not running saved code.\n"
msgstr "Sicherheitsmodus aktiv! Gespeicherter Code wird nicht ausgeführt\n"
#: shared-module/sdcardio/SDCard.c
msgid "SD card CSD format not supported"
msgstr ""
#: ports/atmel-samd/common-hal/busio/I2C.c
#: ports/mimxrt10xx/common-hal/busio/I2C.c ports/nrf/common-hal/busio/I2C.c
msgid "SDA or SCL needs a pull up"
@ -1440,7 +1487,9 @@ msgid "Slice and value different lengths."
msgstr "Slice und Wert (value) haben unterschiedliche Längen."
#: shared-bindings/displayio/Bitmap.c shared-bindings/displayio/Group.c
#: shared-bindings/displayio/TileGrid.c shared-bindings/pulseio/PulseIn.c
#: shared-bindings/displayio/TileGrid.c
#: shared-bindings/memorymonitor/AllocationSize.c
#: shared-bindings/pulseio/PulseIn.c
msgid "Slices not supported"
msgstr "Slices werden nicht unterstützt"
@ -1540,6 +1589,11 @@ msgid "Timeout is too long: Maximum timeout length is %d seconds"
msgstr ""
"Zeitbeschränkung ist zu groß: Maximale Zeitbeschränkung ist %d Sekunden"
#: ports/stm/common-hal/pulseio/PWMOut.c
msgid ""
"Timer was reserved for internal use - declare PWM pins earlier in the program"
msgstr ""
#: ports/atmel-samd/common-hal/audiobusio/I2SOut.c
msgid "Too many channels in sample."
msgstr "Zu viele Kanäle im sample."
@ -1778,7 +1832,7 @@ msgstr "__init__() sollte None zurückgeben, nicht '%s'"
msgid "__new__ arg must be a user-type"
msgstr "__new__ arg muss user-type sein"
#: extmod/modubinascii.c extmod/moduhashlib.c
#: extmod/modubinascii.c extmod/moduhashlib.c py/objarray.c
msgid "a bytes-like object is required"
msgstr "ein Byte-ähnliches Objekt ist erforderlich"
@ -1799,7 +1853,7 @@ msgstr "Adresse außerhalb der Grenzen"
msgid "addresses is empty"
msgstr "adresses ist leer"
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "arctan2 is implemented for scalars and ndarrays only"
msgstr "arctan2 ist nur für Skalare und ndarrays implementiert"
@ -1807,7 +1861,7 @@ msgstr "arctan2 ist nur für Skalare und ndarrays implementiert"
msgid "arg is an empty sequence"
msgstr "arg ist eine leere Sequenz"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "argsort argument must be an ndarray"
msgstr "Das Argument argsort muss ein ndarray sein"
@ -1815,6 +1869,10 @@ msgstr "Das Argument argsort muss ein ndarray sein"
msgid "argument has wrong type"
msgstr "Argument hat falschen Typ"
#: extmod/ulab/code/linalg/linalg.c
msgid "argument must be ndarray"
msgstr ""
#: py/argcheck.c shared-bindings/_stage/__init__.c
#: shared-bindings/digitalio/DigitalInOut.c shared-bindings/gamepad/GamePad.c
msgid "argument num/types mismatch"
@ -1824,7 +1882,7 @@ msgstr "Anzahl/Type der Argumente passen nicht"
msgid "argument should be a '%q' not a '%q'"
msgstr "Argument sollte '%q' sein, nicht '%q'"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "arguments must be ndarrays"
msgstr "Argumente müssen ndarrays sein"
@ -1832,7 +1890,7 @@ msgstr "Argumente müssen ndarrays sein"
msgid "array/bytes required on right side"
msgstr "Array/Bytes auf der rechten Seite erforderlich"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "attempt to get argmin/argmax of an empty sequence"
msgstr "Sie haben versucht argmin/argmax von einer leeren Sequenz zu bekommen"
@ -1840,15 +1898,15 @@ msgstr "Sie haben versucht argmin/argmax von einer leeren Sequenz zu bekommen"
msgid "attributes not supported yet"
msgstr "Attribute werden noch nicht unterstützt"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, None, or 1"
msgstr "Die Achse muss -1, 0, Keine oder 1 sein"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be -1, 0, or 1"
msgstr "Die Achse muss -1, 0 oder 1 sein"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "axis must be None, 0, or 1"
msgstr "Die Achse muss None, 0 oder 1 sein"
@ -2048,6 +2106,10 @@ msgstr ""
"Nicht \"None\" Werte können nicht an einen gerade gestarteten Generator "
"gesendet werden"
#: shared-module/sdcardio/SDCard.c
msgid "can't set 512 block size"
msgstr ""
#: py/objnamedtuple.c
msgid "can't set attribute"
msgstr "kann Attribut nicht setzen"
@ -2161,15 +2223,15 @@ msgstr "constant muss ein integer sein"
msgid "conversion to object"
msgstr "Umwandlung zu Objekt"
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be linear arrays"
msgstr "Convolve-Argumente müssen lineare Arrays sein"
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must be ndarrays"
msgstr "Convolve-Argumente müssen ndarrays sein"
#: extmod/ulab/code/filter.c
#: extmod/ulab/code/filter/filter.c
msgid "convolve arguments must not be empty"
msgstr "Convolve Argumente dürfen nicht leer sein"
@ -2177,19 +2239,23 @@ msgstr "Convolve Argumente dürfen nicht leer sein"
msgid "could not broadast input array from shape"
msgstr "Eingabearray konnte nicht aus der Form übertragen werden"
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "could not invert Vandermonde matrix"
msgstr "Vandermonde-Matrix konnte nicht invertiert werden"
#: extmod/ulab/code/approx.c
#: shared-module/sdcardio/SDCard.c
msgid "couldn't determine SD card version"
msgstr ""
#: extmod/ulab/code/approx/approx.c
msgid "data must be iterable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "data must be of equal length"
msgstr ""
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "ddof must be smaller than length of data set"
msgstr "ddof muss kleiner als die Länge des Datensatzes sein"
@ -2220,7 +2286,7 @@ msgstr "destination_length muss ein int >= 0 sein"
msgid "dict update sequence has wrong length"
msgstr "Die Wörterbuch-Aktualisierungssequenz hat eine falsche Länge"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "diff argument must be an ndarray"
msgstr "diff Argument muss ein ndarray sein"
@ -2323,11 +2389,11 @@ msgstr "Die Datei muss eine im Byte-Modus geöffnete Datei sein"
msgid "filesystem must provide mount method"
msgstr "Das Dateisystem muss eine Mount-Methode bereitstellen"
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be a callable"
msgstr ""
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "first argument must be a function"
msgstr ""
@ -2335,7 +2401,7 @@ msgstr ""
msgid "first argument must be an iterable"
msgstr "Das erste Argument muss iterierbar sein"
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "first argument must be an ndarray"
msgstr "Das erste Argument muss ein Ndarray sein"
@ -2347,7 +2413,7 @@ msgstr "Das erste Argument für super() muss type sein"
msgid "flattening order must be either 'C', or 'F'"
msgstr "Die Abflachungsreihenfolge muss entweder \"C\" oder \"F\" sein"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "flip argument must be an ndarray"
msgstr "Das Flip-Argument muss ein Ndarray sein"
@ -2380,11 +2446,11 @@ msgstr "Funktion erwartet maximal %d Argumente, aber hat %d erhalten"
msgid "function got multiple values for argument '%q'"
msgstr "Funktion hat mehrere Werte für Argument '%q'"
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "function has the same sign at the ends of interval"
msgstr ""
#: extmod/ulab/code/compare.c
#: extmod/ulab/code/compare/compare.c
msgid "function is implemented for scalars and ndarrays only"
msgstr "Die Funktion ist nur für Skalare und Ndarrays implementiert"
@ -2471,7 +2537,7 @@ msgstr "Indizes müssen Integer sein"
msgid "indices must be integers, slices, or Boolean lists"
msgstr "Indizes müssen Integer, Slices oder Boolesche Listen sein"
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "initial values must be iterable"
msgstr ""
@ -2479,35 +2545,35 @@ msgstr ""
msgid "inline assembler must be a function"
msgstr "inline assembler muss eine function sein"
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "input argument must be an integer or a 2-tuple"
msgstr "Das Eingabeargument muss eine Ganzzahl oder ein 2-Tupel sein"
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "input array length must be power of 2"
msgstr "Die Länge des Eingabearrays muss eine Potenz von 2 sein"
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input data must be an iterable"
msgstr "Eingabedaten müssen iterierbar sein"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is asymmetric"
msgstr "Eingabematrix ist asymmetrisch"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input matrix is singular"
msgstr "Eingabematrix ist singulär"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "input must be square matrix"
msgstr "Die Eingabe muss eine quadratische Matrix sein"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "input must be tuple, list, range, or ndarray"
msgstr "Die Eingabe muss Tupel, Liste, Bereich oder Ndarray sein"
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "input vectors must be of equal length"
msgstr "Eingabevektoren müssen gleich lang sein"
@ -2519,7 +2585,7 @@ msgstr "int() arg 2 muss >= 2 und <= 36 sein"
msgid "integer required"
msgstr "integer erforderlich"
#: extmod/ulab/code/approx.c
#: extmod/ulab/code/approx/approx.c
msgid "interp is defined for 1D arrays of equal length"
msgstr ""
@ -2589,7 +2655,7 @@ msgstr "issubclass() arg 2 muss eine Klasse oder ein Tupel von Klassen sein"
msgid "iterables are not of the same length"
msgstr "iterables sind nicht gleich lang"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "iterations did not converge"
msgstr "Iterationen sind nicht konvergiert (converged)"
@ -2659,11 +2725,11 @@ msgstr "map buffer zu klein"
msgid "math domain error"
msgstr "Mathe-Domain-Fehler"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix dimensions do not match"
msgstr "Matrix Dimensionen stimmen nicht überein"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "matrix is not positive definite"
msgstr "Matrix ist nicht positiv definitiv"
@ -2690,7 +2756,7 @@ msgstr "Speicherzuweisung fehlgeschlagen, der Heap ist gesperrt"
msgid "module not found"
msgstr "Modul nicht gefunden"
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "more degrees of freedom than data points"
msgstr "mehr Freiheitsgrade als Datenpunkte"
@ -2714,7 +2780,7 @@ msgstr "muss ein Objekt verursachen (raise)"
msgid "must use keyword argument for key function"
msgstr "muss Schlüsselwortargument für key function verwenden"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "n must be between 0, and 9"
msgstr "n muss zwischen 0 und 9 liegen"
@ -2747,6 +2813,10 @@ msgstr "negative Potenz ohne Gleitkomma (float) Unterstützung"
msgid "negative shift count"
msgstr "Negative shift Anzahl"
#: shared-module/sdcardio/SDCard.c
msgid "no SD card"
msgstr ""
#: py/vm.c
msgid "no active exception to reraise"
msgstr "Keine aktive Ausnahme zu verusachen (raise)"
@ -2768,6 +2838,10 @@ msgstr "Kein Modul mit dem Namen '%q'"
msgid "no reset pin available"
msgstr "kein Reset Pin verfügbar"
#: shared-module/sdcardio/SDCard.c
msgid "no response from SD card"
msgstr ""
#: py/runtime.c
msgid "no such attribute"
msgstr "kein solches Attribut"
@ -2805,11 +2879,11 @@ msgstr ""
msgid "not enough arguments for format string"
msgstr "Nicht genügend Argumente für den Formatierungs-String"
#: extmod/ulab/code/poly.c
#: extmod/ulab/code/poly/poly.c
msgid "number of arguments must be 2, or 3"
msgstr "Die Anzahl der Argumente muss 2 oder 3 sein"
#: extmod/ulab/code/create.c
#: extmod/ulab/code/ulab_create.c
msgid "number of points must be at least 2"
msgstr "Die Anzahl der Punkte muss mindestens 2 betragen"
@ -2881,12 +2955,12 @@ msgid "only slices with step=1 (aka None) are supported"
msgstr ""
"Es werden nur Slices mit Schritt = 1 (auch bekannt als None) unterstützt"
#: extmod/ulab/code/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/compare/compare.c extmod/ulab/code/ndarray.c
#: extmod/ulab/code/vector/vectorise.c
msgid "operands could not be broadcast together"
msgstr "Operanden konnten nicht zusammen gesendet werden"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "operation is not implemented on ndarrays"
msgstr "Die Operation ist für ndarrays nicht implementiert"
@ -2980,7 +3054,7 @@ msgstr "Warteschlangenüberlauf"
msgid "raw f-strings are not implemented"
msgstr "rohe F-Strings sind nicht implementiert"
#: extmod/ulab/code/fft.c
#: extmod/ulab/code/fft/fft.c
msgid "real and imaginary parts must be of equal length"
msgstr "Real- und Imaginärteile müssen gleich lang sein"
@ -3055,7 +3129,7 @@ msgstr "Vorzeichen mit ganzzahligem Formatbezeichner 'c' nicht erlaubt"
msgid "single '}' encountered in format string"
msgstr "einzelne '}' in Formatierungs-String gefunden"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "size is defined for ndarrays only"
msgstr "Größe ist nur für ndarrays definiert"
@ -3063,6 +3137,10 @@ msgstr "Größe ist nur für ndarrays definiert"
msgid "sleep length must be non-negative"
msgstr "Die Schlafdauer darf nicht negativ sein"
#: extmod/ulab/code/ndarray.c
msgid "slice step can't be zero"
msgstr ""
#: py/objslice.c py/sequence.c
msgid "slice step cannot be zero"
msgstr "Der Slice-Schritt kann nicht Null sein"
@ -3075,10 +3153,22 @@ msgstr "small int Überlauf"
msgid "soft reboot\n"
msgstr "weicher reboot\n"
#: extmod/ulab/code/numerical.c
#: extmod/ulab/code/numerical/numerical.c
msgid "sort argument must be an ndarray"
msgstr "sortierungs Argument muss ein ndarray sein"
#: extmod/ulab/code/filter/filter.c
msgid "sos array must be of shape (n_section, 6)"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sos[:, 3] should be all ones"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "sosfilt requires iterable arguments"
msgstr ""
#: py/objstr.c
msgid "start/end indices"
msgstr "start/end Indizes"
@ -3129,7 +3219,7 @@ msgstr "struct: index außerhalb gültigen Bereichs"
msgid "struct: no fields"
msgstr "struct: keine Felder"
#: py/objstr.c
#: py/objarray.c py/objstr.c
msgid "substring not found"
msgstr "substring nicht gefunden"
@ -3165,6 +3255,14 @@ msgstr "Das Zeitlimit muss 0,0-100,0 Sekunden betragen"
msgid "timeout must be >= 0.0"
msgstr "timeout muss >= 0.0 sein"
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v1 card"
msgstr ""
#: shared-module/sdcardio/SDCard.c
msgid "timeout waiting for v2 card"
msgstr ""
#: shared-bindings/time/__init__.c
msgid "timestamp out of range for platform time_t"
msgstr "Zeitstempel außerhalb des Bereichs für Plattform time_t"
@ -3182,7 +3280,11 @@ msgstr "zu viele Indizes"
msgid "too many values to unpack (expected %d)"
msgstr "zu viele Werte zum Auspacken (erwartet %d)"
#: extmod/ulab/code/linalg.c py/objstr.c
#: extmod/ulab/code/approx/approx.c
msgid "trapz is defined for 1D arrays of equal length"
msgstr ""
#: extmod/ulab/code/linalg/linalg.c py/objstr.c
msgid "tuple index out of range"
msgstr "Tupelindex außerhalb des Bereichs"
@ -3314,6 +3416,10 @@ msgstr "Wert muss in %d Byte(s) passen"
msgid "value_count must be > 0"
msgstr "value_count muss größer als 0 sein"
#: extmod/ulab/code/linalg/linalg.c
msgid "vectors must have same lengths"
msgstr ""
#: shared-bindings/watchdog/WatchDogTimer.c
msgid "watchdog timeout must be greater than 0"
msgstr ""
@ -3322,7 +3428,7 @@ msgstr ""
msgid "window must be <= interval"
msgstr "Fenster muss <= Intervall sein"
#: extmod/ulab/code/linalg.c
#: extmod/ulab/code/linalg/linalg.c
msgid "wrong argument type"
msgstr "falscher Argumenttyp"
@ -3330,11 +3436,11 @@ msgstr "falscher Argumenttyp"
msgid "wrong index type"
msgstr "falscher Indextyp"
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong input type"
msgstr ""
#: py/objstr.c
#: extmod/ulab/code/ulab_create.c py/objstr.c
msgid "wrong number of arguments"
msgstr "falsche Anzahl an Argumenten"
@ -3346,7 +3452,7 @@ msgstr "falsche Anzahl zu entpackender Werte"
msgid "wrong operand type"
msgstr "falscher Operandentyp"
#: extmod/ulab/code/vectorise.c
#: extmod/ulab/code/vector/vectorise.c
msgid "wrong output type"
msgstr ""
@ -3366,6 +3472,27 @@ msgstr "y Wert außerhalb der Grenzen"
msgid "zero step"
msgstr "Nullschritt"
#: extmod/ulab/code/filter/filter.c
msgid "zi must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of float type"
msgstr ""
#: extmod/ulab/code/filter/filter.c
msgid "zi must be of shape (n_section, 2)"
msgstr ""
#~ msgid "'async for' or 'async with' outside async function"
#~ msgstr "'async for' oder 'async with' außerhalb der asynchronen Funktion"
#~ msgid "PulseIn not supported on this chip"
#~ msgstr "PulseIn wird auf diesem Chip nicht unterstützt"
#~ msgid "PulseOut not supported on this chip"
#~ msgstr "PulseOut wird auf diesem Chip nicht unterstützt"
#~ msgid "AP required"
#~ msgstr "AP erforderlich"

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