Add missing modules to API docs build.
* **digitalio** - digital input/output pins, using pin identities from board+microcontroller packages
* **bitbangio** - software-driven interfaces for I2C, SPI
* **busio** - hardware-driven interfaces for I2C, SPI, UART
-* **time** * - substitute functions monkey-patched to time module
+* **pulseio** - contains classes that provide access to basic pulse IO (PWM)
+For details, see the `Blinka API reference
+<https://circuitpython.readthedocs.io/projects/blinka/en/latest/index.html>`_.
Dependencies
=============
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:
.. automodule:: digitalio
:members:
+
+.. automodule:: analogio
+ :members:
+
+.. automodule:: pulseio
+ :members:
+
+.. automodule:: neopixel_write
+ :members:
+
+
# Uncomment the below if you use native CircuitPython modules such as
# digitalio, micropython and busio. List the modules you use. Without it, the
# autodoc module docs will fail to generate with a warning.
-autodoc_mock_imports = ["machine", "Adafruit_GPIO"]
+autodoc_mock_imports = [
+ "machine",
+ "Adafruit_GPIO",
+ "RPi",
+ "RPi.GPIO",
+ "hid",
+ "sysv_ipc",
+]
intersphinx_mapping = {
"python": ("https://docs.python.org/3.4", None),
"""
`analogio` - Analog input and output control
-=================================================
+============================================
See `CircuitPython:analogio` in CircuitPython for more details.
+Not supported by all boards.
+
* Author(s): Carter Nelson, Melissa LeBlanc-Williams
"""
+import sys
+
from adafruit_blinka.agnostic import detector
# pylint: disable=ungrouped-imports,wrong-import-position,unused-import
from adafruit_blinka.microcontroller.nxp_lpc4330.analogio import AnalogOut
elif detector.chip.RK3308:
from adafruit_blinka.microcontroller.generic_linux.sysfs_analogin import AnalogIn
+elif "sphinx" in sys.modules:
+ pass
else:
raise NotImplementedError("analogio not supported for this board.")
"""
-`digitalio` - Digital input and output control
-=================================================
+`digitalio` - Digital input and output control (GPIO)
+=====================================================
See `CircuitPython:digitalio` in CircuitPython for more details.
"""
`neopixel_write` - NeoPixel precision timed writing support
-=================================================
+===========================================================
See `CircuitPython:neopixel_write` in CircuitPython for more details.
+Currently supported on Raspberry Pi only.
* Author(s): ladyada
"""
"""
-`pulseio` - Pulse Width Modulation Input and Output control
-=================================================
+`pulseio` - Pulse Width Modulation input and output control
+===========================================================
See `CircuitPython:pulseio` in CircuitPython for more details.
+Not supported by all boards.
+
* Author(s): Melissa LeBlanc-Williams
"""
+import sys
+
from adafruit_blinka.agnostic import detector
# pylint: disable=unused-import
if detector.board.any_raspberry_pi:
from adafruit_blinka.microcontroller.bcm283x.pulseio.PulseIn import PulseIn
from adafruit_blinka.microcontroller.bcm283x.pulseio.PWMOut import PWMOut
-if detector.board.any_coral_board:
+elif detector.board.any_coral_board:
from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
-if detector.board.any_giant_board:
+elif detector.board.any_giant_board:
from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
-if detector.board.any_beaglebone:
+elif detector.board.any_beaglebone:
from adafruit_blinka.microcontroller.am335x.sysfs_pwmout import PWMOut
-if detector.board.any_rock_pi_board:
+elif detector.board.any_rock_pi_board:
from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
-if detector.board.binho_nova:
+elif detector.board.binho_nova:
from adafruit_blinka.microcontroller.nova.pwmout import PWMOut
-if detector.board.greatfet_one:
+elif detector.board.greatfet_one:
from adafruit_blinka.microcontroller.nxp_lpc4330.pwmout import PWMOut
+elif "sphinx" in sys.modules:
+ pass
+else:
+ raise NotImplementedError("pulseio not supported for this board.")