No description
Find a file
2019-10-20 13:03:03 -07:00
docs PyPi setup. 2018-08-03 15:52:22 -04:00
examples Reorder import lines in examples for pylint 2018-12-24 17:33:13 -08:00
.gitignore PyPi setup. 2018-08-03 15:52:22 -04:00
.pylintrc ignore the board module imports in .pylintrc 2018-08-25 14:02:58 +00:00
.readthedocs.yml updated .travis & .readthedocs yml 2018-02-24 20:26:40 -06:00
.travis.yml PyPi setup. 2018-08-03 15:52:22 -04:00
adafruit_dotstar.py Revert "try to import bitbangio if busio SPI is not available" 2019-10-20 13:03:03 -07:00
CODE_OF_CONDUCT.md updated CoC 2018-08-01 03:27:57 +00:00
LICENSE Cookiecutter the library and update to match NeoPixel API. (#1) 2017-09-06 14:24:50 -07:00
README.rst change 'travis-ci.org' to 'travis-ci.com' 2018-12-21 13:13:04 -06:00
requirements.txt PyPi setup. 2018-08-03 15:52:22 -04:00
setup.py PyPi setup. 2018-08-03 15:52:22 -04:00

Adafruit CircuitPython DotStar
==============================

.. image:: https://readthedocs.org/projects/adafruit-circuitpython-dotstar/badge/?version=latest
    :target: https://circuitpython.readthedocs.io/projects/dotstar/en/latest/
    :alt: Documentation Status

.. image :: https://img.shields.io/discord/327254708534116352.svg
    :target: https://adafru.it/discord
    :alt: Discord

.. image:: https://travis-ci.com/adafruit/Adafruit_CircuitPython_DotStar.svg?branch=master
    :target: https://travis-ci.com/adafruit/Adafruit_CircuitPython_DotStar
    :alt: Build Status

Higher level DotStar driver that presents the strip as a sequence. It is the
same api as the `NeoPixel library <https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel>`_.

Colors are stored as tuples by default. However, you can also use int hex syntax
to set values similar to colors on the web. For example, ``0x100000`` (``#100000``
on the web) is equivalent to ``(0x10, 0, 0)``.

If you send a tuple with 4 values, you can control the brightness value, which appears in DotStar but not NeoPixels.
It should be a float. For example, (0xFF,0,0, 1.0) is the brightest red possible, (1,0,0,0.01) is the dimmest red possible.

.. note:: The int hex API represents the brightness of the white pixel when
  present by setting the RGB channels to identical values. For example, full
  white is 0xffffff but is actually (0xff, 0xff, 0xff) in the tuple syntax. 

Dependencies
=============
This driver depends on:

* `Adafruit CircuitPython <https://github.com/adafruit/circuitpython>`_

Please ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloading
`the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>`_.

Usage Example
=============

This example demonstrates the library with the single built-in DotStar on the
`Trinket M0 <https://www.adafruit.com/product/3500>`_ and
`Gemma M0 <https://www.adafruit.com/product/3501>`_.

.. code-block:: python

    import board
    import adafruit_dotstar

    pixels = adafruit_dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1)
    pixels[0] = (10, 0, 0)

Contributing
============

Contributions are welcome! Please read our `Code of Conduct
<https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel/blob/master/CODE_OF_CONDUCT.md>`_
before contributing to help this project stay welcoming.

Building locally
================

To build this library locally you'll need to install the
`circuitpython-build-tools <https://github.com/adafruit/circuitpython-build-tools>`_ package.

.. code-block:: shell

    python3 -m venv .env
    source .env/bin/activate
    pip install circuitpython-build-tools

Once installed, make sure you are in the virtual environment:

.. code-block:: shell

    source .env/bin/activate

Then run the build:

.. code-block:: shell

    circuitpython-build-bundles --filename_prefix adafruit-circuitpython-dotstar --library_location .

Sphinx documentation
-----------------------

Sphinx is used to build the documentation based on rST files and comments in the code. First,
install dependencies (feel free to reuse the virtual environment from above):

.. code-block:: shell

    python3 -m venv .env
    source .env/bin/activate
    pip install Sphinx sphinx-rtd-theme

Now, once you have the virtual environment activated:

.. code-block:: shell

    cd docs
    sphinx-build -E -W -b html . _build/html

This will output the documentation to ``docs/_build/html``. Open the index.html in your browser to
view them. It will also (due to -W) error out on any warning like Travis will. This is a good way to
locally verify it will pass.