No description
Find a file
Jeff Epler dc77f3146f serial_bytes_available: don't double-count bytes on usb cdc
In 9.0.x, serial_bytes_available returned a bool and tud_cdc_available was
harmlessly checked twice for any characters.

When the routine was changed to return an int, the double checking led to
over-reporting the number of characters available. In code that would attempt
to read this many bytes from sys.stdin, this made the read call block since
only 1 byte was actually available.

This behavior came up in the discussion of #9393. I don't mark this bug as
closing that one, because that issue seems to be reporting multiple things that
this change would not address, such as delays in `sys.stdout.write()` or
problems seen while using webserial.
2024-07-03 11:36:30 -05:00
.codespell Add header for PLACE_IN_ITCM 2023-09-20 11:19:57 -05:00
.devcontainer another trailing whitespace. Note that trailing whitespace is valid markdown for a line-break 2024-03-21 11:24:44 +01:00
.github Merge remote-tracking branch 'origin/9.0.x' into merge-90x 2024-07-01 12:21:23 -05:00
data merge from 8.2.9 2023-12-06 14:18:01 -05:00
devices/ble_hci Fix other BLE builds 2024-06-12 11:22:00 -07:00
docs move board_summaries.py to tools 2024-05-29 15:59:52 -07:00
examples Initial MicroPython v1.21.0 merge; not compiled yet 2023-10-18 17:49:14 -04:00
extmod Fix move, mkdir and tweak dir listing 2024-01-18 14:22:16 -08:00
frozen Update frozen libraries 2024-07-02 19:07:39 -04:00
lib Add ESP BLE GATT server support 2024-05-17 11:08:07 -07:00
LICENSES updates before header conversion 2024-05-17 14:56:28 -04:00
locale Translated using Weblate (Turkish) 2024-07-02 05:21:46 +02:00
logo Add license to some obvious files. 2020-07-06 19:16:25 +01:00
mpy-cross Merge pull request #8508 from dhalbert/v1.21-merge 2023-10-24 15:36:06 -07:00
ports Update ports/raspberrypi/common-hal/analogbufio/BufferedIn.c 2024-07-02 19:03:47 -04:00
py Enable deep sleep on all ESP chips 2024-06-13 10:26:33 -07:00
shared CircuitPython files: replace STATIC with static 2024-05-20 11:02:17 -04:00
shared-bindings Merge pull request #9350 from dhalbert/fix-espressif-ping 2024-06-25 16:42:45 -04:00
shared-module Merge pull request #9318 from jepler/sslsocket-stream-protocol 2024-06-14 10:02:17 -05:00
supervisor serial_bytes_available: don't double-count bytes on usb cdc 2024-07-03 11:36:30 -05:00
tests tests/circuitpython-manual/pwmio: shrink png images 2024-06-21 14:16:59 -04:00
tools check version first thing 2024-06-23 11:22:44 -05:00
.codespellrc fix typos (partial) detected by codepell 2023-03-18 22:17:02 +07:00
.git-blame-ignore-revs top: Update .git-blame-ignore-revs for latest spelling fix commit. 2023-10-03 12:10:31 +11:00
.gitattributes Merge MicroPython 1.12 into CircuitPython 2021-05-03 14:01:18 -07:00
.gitignore Add Max3421E support for usb host 2024-04-10 10:57:28 -07:00
.gitmodules Apply suggestions from code review 2024-06-24 11:34:04 -03:00
.mailmap Add a .mailmap file to collate together multiple author entries. 2020-07-06 19:15:41 +01:00
.pre-commit-config.yaml update pre-commit 2023-09-20 11:15:13 -05:00
.readthedocs.yml Add specific conf.py for RTD 2024-02-29 10:51:41 -08: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 rename ports/nrf to ports/nordic 2024-03-19 17:36:57 -04:00
CODE_OF_CONDUCT.md restore CODE_OF_CONDUCT.md 2023-10-23 19:34:45 -04:00
conf.py Merge remote-tracking branch 'adafruit/9.0.x' into 9.0.4-update 2024-04-17 15:39:10 -04:00
CONTRIBUTING.md Fix docs build by splitting out support matrix 2023-10-24 16:20:51 -07:00
LICENSE initial merge from v1.20.0; just satisifying conflicts 2023-09-19 11:10:12 -04:00
LICENSE_MicroPython update formatting of LICENSE and clean-up 2022-08-27 14:47:10 +05:30
main.c Improve ESP BLE and turn on BLE workflow 2024-06-11 16:21:40 -07:00
Makefile create init in board_definitions/ 2024-06-23 11:27:52 -05:00
MANIFEST.in-stubs refine stubs-building procedure 2021-06-22 08:59:05 -05:00
README.rst Update README.rst 2024-06-17 11:21:21 -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 only install awscli when required 2023-01-16 17:03:39 +05:30
requirements-dev.txt pull in the setuptools version of distutils for silabs 2024-06-13 13:02:11 -05:00
requirements-doc.txt Updated how stubs are built 2023-05-09 22:01:24 -04:00
runtime.py Conditionalize LTO 2022-05-27 12:59:54 -07:00
setup.py-stubs device specific stubs 2024-02-04 14:08:33 -06: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