X-Git-Url: https://git.ayoreis.com/Adafruit_Blinka-hackapet.git/blobdiff_plain/aeb8c0eac6635a886947e73c20ad0a08aaf9da53..refs/heads/micropython-pyi:/README.rst?ds=sidebyside diff --git a/README.rst b/README.rst old mode 100644 new mode 100755 index 7803553..3e21f93 --- a/README.rst +++ b/README.rst @@ -6,52 +6,92 @@ Introduction :alt: Documentation Status .. image:: https://img.shields.io/discord/327254708534116352.svg - :target: https://discord.gg/nBQh6qu + :target: https://adafru.it/discord :alt: Discord -.. image:: https://travis-ci.org/adafruit/Adafruit_Micropython_Blinka.svg?branch=master - :target: https://travis-ci.org/adafruit/Adafruit__Micropython_Blinka +.. image:: https://travis-ci.com/adafruit/Adafruit_Blinka.svg?branch=master + :target: https://travis-ci.com/adafruit/Adafruit_Blinka :alt: Build Status -This repository contains a selection of packages mirroring the CircuitPython API -on hosts running micropython. Working code exists to emulate the CircuitPython packages; +.. image:: https://img.shields.io/badge/code%20style-black-000000.svg + :target: https://github.com/psf/black + :alt: Code Style: Black +This repository contains a selection of packages emulating the CircuitPython API +for devices or hosts running CPython or MicroPython. Working code exists to emulate these CircuitPython packages: + +* **analogio** - analog input/output pins, using pin identities from board+microcontroller packages +* **bitbangio** - software-driven interfaces for I2C, SPI * **board** - breakout-specific pin identities -* **microcontroller** - chip-specific pin identities +* **busio** - hardware-driven interfaces for I2C, SPI, UART * **digitalio** - digital input/output pins, using pin identities from board+microcontroller packages +* **keypad** - support for scanning keys and key matrices +* **microcontroller** - chip-specific pin identities +* **micropython** - MicroPython-specific module +* **neopixel_write** - low-level interface to NeoPixels +* **pulseio** - contains classes that provide access to basic pulse IO (PWM) +* **pwmio** - contains classes that provide access to basic pulse IO (PWM) +* **rainbowio** - provides the colorwheel() function +* **usb_hid** - act as a hid-device using usb_gadget kernel driver +For details, see the `Blinka API reference +`_. Dependencies ============= -The Micropython compatibility layers described above are intended to provide a CircuitPython-like API for devices which -are running Micropython. Since corresponding packages should be built-in to any standard -CircuitPython image, they have no value on a device already running CircuitPython and would likely conflict in unhappy ways. +The emulation described above is intended to provide a +CircuitPython-like API for devices which are running CPython or +Micropython. Since corresponding packages should be built-in to any +standard CircuitPython image, they have no value on a device already +running CircuitPython and would likely conflict in unhappy ways. + +The test suites in the test/src folder under **testing.universal** are by design +intended to run on *either* CircuitPython *or* CPython/Micropython+compatibility layer to prove conformance. + +Installing from PyPI +===================== + +On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from +PyPI `_. To install for current user: + +.. code-block:: shell + + pip3 install Adafruit-Blinka + +To install system-wide (this may be required in some cases): + +.. code-block:: shell + + sudo pip3 install Adafruit-Blinka -The test suites under **testing.implementation.all** are by design -intended to run on *either* CircuitPython *or* Micropython+compatibility layer to prove conformance. +To install in a virtual environment in your current project: -The test suites under **testing.implementation.micropython** will only run -on Micropython and **testing.implementation.circuitpython** will only run on CircuitPython +.. code-block:: shell + mkdir project-name && cd project-name + python3 -m venv .env + source .env/bin/activate + pip3 install Adafruit-Blinka Usage Example ============= -At the time of writing (`git:3b2fc268 `_), -the following sequence runs through some basic testing of the digitalio compatibility layer, which looks like `this `_ . +At the time of writing (`git:7fc1f8ab `_), +the following sequence runs through some basic testing of the digitalio compatibility layer... .. code-block:: python - import testing - testing.main() + from testing import test_module_name + test_module_name("testing.universal.digitalio") +An example log from running the suites is `here `_ . Contributing ============ Contributions are welcome! Please read our `Code of Conduct -`_ +`_ before contributing to help this project stay welcoming. Building locally @@ -67,7 +107,7 @@ install dependencies (feel free to reuse the virtual environment from above): python3 -m venv .env source .env/bin/activate - pip install Sphinx sphinx-rtd-theme + pip install Sphinx sphinx-rtd-theme Adafruit-PlatformDetect Now, once you have the virtual environment activated: