Go to file
Jeff Epler adca341d3b
Save code space by packing rgbw values into C union
It's more efficient passing one register-sized structure than 4
arguments or 4 pointers; working on intermediate values of 'int' size
is also more efficient in code size!

On raspberry pi pico w, this increased free flash space by +104 bytes.
It also increased the speed of my testing animation very slightly, from
187fps to 189fps when run 'unthrottled'
2022-11-14 09:29:45 -06:00
.github Pin python version 3.10 for builds 2022-11-02 19:23:52 -05:00
data Update nvm.toml to add support for Puya P25Q32H 2022-06-22 17:06:27 -06:00
devices/ble_hci ringbuf cleanup 2022-09-21 10:03:05 -04:00
docs we removed MpyError 2022-10-22 11:28:23 -05:00
examples Fix all natmod tests to run on x64 2022-02-13 11:18:38 -06:00
extmod update ulab to 6.0.1 2022-11-11 14:44:13 -06:00
frozen Update frozen modules 2022-11-11 08:57:06 -06:00
lib update protomatter to latest commit 2022-11-10 08:31:27 +05:30
LICENSES Add an explicit SPDX license file for ter-u12n. 2020-07-06 19:15:41 +01:00
locale Translated using Weblate (Swedish) 2022-11-11 19:49:47 +01:00
logo Add license to some obvious files. 2020-07-06 19:16:25 +01:00
mpy-cross Implement scan, connect, ping 2022-09-28 10:06:33 -05:00
ports Merge pull request #7179 from jepler/picow-voltage-monitor 2022-11-13 22:40:54 -05:00
py Simplify argument checking to reduce translated strings 2022-11-07 12:37:11 -06:00
shared Merge pull request #6397 from jepler/extra-memset 2022-10-13 12:34:59 -04:00
shared-bindings Save code space by packing rgbw values into C union 2022-11-14 09:29:45 -06:00
shared-module Save code space by packing rgbw values into C union 2022-11-14 09:29:45 -06:00
supervisor Implements PDMIn for STM32L4 using the SAI peripheral and decimation/filtering in software. 2022-11-04 17:27:08 -07:00
tests Don't crash when assigning attributes of the GeneratorExit const singleton 2022-10-22 11:37:34 -05:00
tools We refer to port multiple times, make it convenient 2022-10-14 11:33:04 -05:00
.git-blame-ignore-revs top: Update .git-blame-ignore-revs for latest formatting commit. 2021-04-27 23:46:46 +10:00
.gitattributes Merge MicroPython 1.12 into CircuitPython 2021-05-03 14:01:18 -07:00
.gitignore refine stubs-building procedure 2021-06-22 08:59:05 -05:00
.gitmodules Adding frozen modules 2022-11-10 21:14:01 +00:00
.mailmap Add a .mailmap file to collate together multiple author entries. 2020-07-06 19:15:41 +01:00
.pre-commit-config.yaml add mbedtls matching micropython @ v1.19.1-451-gbdbc44474 2022-10-05 10:03:44 -05:00
.readthedocs.yml Fetch the submodules in readthedocs with ci_fetch_deps.py 2022-05-14 23:17:49 +02:00
.rosie.yml Add license to some obvious files. 2020-07-06 19:16:25 +01:00
ACKNOWLEDGEMENTS Merge MicroPython 1.12 into CircuitPython 2021-05-03 14:01:18 -07:00
ACKNOWLEDGEMENTS.license Add license to some obvious files. 2020-07-06 19:16:25 +01:00
BUILDING.md Add note about rust to BUILDING.md 2022-10-31 20:46:18 -04:00
CODE_OF_CONDUCT.md Update CODE_OF_CONDUCT.md from source-of-truth repository. 2020-06-03 10:43:36 +01:00
conf.py exclude files from doc build 2022-09-29 21:37:23 -05:00
CONTRIBUTING.md Fix error 2020-10-26 23:36:54 +01:00
LICENSE update formatting of LICENSE and clean-up 2022-08-27 14:47:10 +05:30
LICENSE_MicroPython update formatting of LICENSE and clean-up 2022-08-27 14:47:10 +05:30
main.c store wake_alarm in a static object 2022-10-29 16:26:36 -04:00
Makefile Add fetch-modules to make help for main makefile 2022-05-11 23:45:37 -04:00
MANIFEST.in-stubs refine stubs-building procedure 2021-06-22 08:59:05 -05:00
README.rst Fixed nested unordered list rendering 2022-10-07 11:13:45 -04:00
README.rst-stubs Actually reduce the README text for the stubs package 2021-06-24 13:41:01 -05:00
requirements-ci.txt build docs dynamically 2021-09-16 00:05:42 +05:30
requirements-dev.txt allow gen_crt_bundle to generate a .S file directly 2022-10-05 14:56:25 -05:00
requirements-doc.txt avoid problematic sphinx version number for rtd theme 2022-09-25 16:10:11 +02:00
runtime.py Conditionalize LTO 2022-05-27 12:59:54 -07:00
setup.py-stubs use --long for describe in setup.py-stubs 2022-02-18 21:22:02 -05:00
WEBUSB_README.md Rename esp32s2 port to espressif 2021-09-13 16:44:55 -07:00

CircuitPython
=============

.. image:: https://s3.amazonaws.com/adafruit-circuit-python/CircuitPython_Repo_header_logo.png

|Build Status| |Doc Status| |License| |Discord| |Weblate|

`circuitpython.org <https://circuitpython.org>`__ \| `Get CircuitPython <#get-circuitpython>`__ \|
`Documentation <#documentation>`__ \| `Contributing <#contributing>`__ \|
`Branding <#branding>`__ \| `Differences from Micropython <#differences-from-micropython>`__ \|
`Project Structure <#project-structure>`__

**CircuitPython** is a *beginner friendly*, open source version of Python for tiny, inexpensive
computers called microcontrollers.

This package contains the "stubs", or type definitions for CircuitPython.  With some advanced
editors and other tools, this information can be identify TypeErrors, AttributeErrors, and other
problems before you deploy your code to a device and can even help autocomplete your code.

.. |Build Status| image:: https://github.com/adafruit/circuitpython/workflows/Build%20CI/badge.svg
   :target: https://github.com/adafruit/circuitpython/actions?query=branch%3Amain
.. |Doc Status| image:: https://readthedocs.org/projects/circuitpython/badge/?version=latest
   :target: http://circuitpython.readthedocs.io/
.. |Discord| image:: https://img.shields.io/discord/327254708534116352.svg
   :target: https://adafru.it/discord
.. |License| image:: https://img.shields.io/badge/License-MIT-brightgreen.svg
   :target: https://choosealicense.com/licenses/mit/
.. |Weblate| image:: https://hosted.weblate.org/widgets/circuitpython/-/svg-badge.svg
   :target: https://hosted.weblate.org/engage/circuitpython/?utm_source=widget