Current collected state Current
Observed since 20 Oct, 18:49 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
CircuitPython library for creating Adafruit IO dashboards.
Introduction
============
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-dash_display/badge/?version=latest
:target: https://docs.circuitpython.org/projects/dash_display/en/latest/
:alt: Documentation Status
.. image:: https://raw.githubusercontent.com/adafruit/Adafruit_CircuitPython_Bundle/main/badges/adafruit_discord.svg
:target: https://adafru.it/discord
:alt: Discord
.. image:: https://github.com/adafruit/Adafruit_CircuitPython_Dash_Display/workflows/Build%20CI/badge.svg
:target: https://github.com/adafruit/Adafruit_CircuitPython_Dash_Display/actions
:alt: Build Status
.. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
:target: https://github.com/astral-sh/ruff
:alt: Code Style: Ruff
CircuitPython library for creating Adafruit IO dashboards.
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://circuitpython.org/libraries>`_
or individual libraries can be installed using
`circup <https://github.com/adafruit/circup>`_.
Usage Example
=============
.. code :: python3
import time
import board
from digitalio import DigitalInOut, Direction, Pull
import touchio
import wifi
import adafruit_connection_manager
import adafruit_minimqtt.adafruit_minimqtt as MQTT
from adafruit_io.adafruit_io import IO_MQTT
from adafruit_dash_display import Hub
up = DigitalInOut(board.BUTTON_UP)
up.direction = Direction.INPUT
up.pull = Pull.DOWN
select = DigitalInOut(board.BUTTON_SELECT)
select.direction = Direction.INPUT
select.pull = Pull.DOWN
down = DigitalInOut(board.BUTTON_DOWN)
down.direction = Direction.INPUT
down.pull = Pull.DOWN
back = touchio.TouchIn(board.CAP7)
submit = touchio.TouchIn(board.CAP8)
# Get WiFi details and Adafruit IO keys, ensure these are setup in settings.toml
# (visit io.adafruit.com if you need to create an account, or if you need your Adafruit IO key.)
ssid = getenv("CIRCUITPY_WIFI_SSID")
password = getenv("CIRCUITPY_WIFI_PASSWORD")
aio_username = getenv("ADAFRUIT_AIO_USERNAME")
aio_key = getenv("ADAFRUIT_AIO_KEY")
display = board.DISPLAY
print(f"Connecting to {ssid}")
wifi.radio.connect(ssid, password)
print(f"Connected to {ssid}!")
# Create a socket pool
pool = adafruit_connection_manager.get_radio_socketpool(wifi.radio)
ssl_context = adafruit_connection_manager.get_radio_ssl_context(wifi.radio)
# Initialize a new MQTT Client object
mqtt_client = MQTT.MQTT(
broker="io.adafruit.com",
username=aio_username,
password=aio_key,
socket_pool=pool,
ssl_context=ssl_context,
)
# Initialize an Adafruit IO MQTT Client
io = IO_MQTT(mqtt_client)
def pub_lamp(lamp):
if type(lamp) == str:
lamp = eval(lamp)
iot.publish("lamp", str(not lamp))
# funhouse.set_text(f"Lamp: {not lamp}", 0)
time.sleep(0.3)
iot = Hub(display=display, io=io, nav=(up, select, down, back, submit))
iot.add_device(
feed_key="lamp",
default_text="Lamp: ",
formatted_text="Lamp: {}",
pub_method=pub_lamp,
)
iot.add_device(
feed_key="temperature",
default_text="Temperature: ",
formatted_text="Temperature: {:.1f} C",
)
iot.add_device(
feed_key="humidity", default_text="Humidity: ", formatted_text="Humidity: {:.2f}%"
)
iot.get()
while True:
iot.loop()
time.sleep(0.01)
Documentation
=============
API documentation for this library can be found on `Read the Docs <https://docs.circuitpython.org/projects/dash_display/en/latest/>`_.
For information on building library documentation, please check out `this guide <https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/sharing-our-docs-on-readthedocs#sphinx-5-1>`_.
Contributing
============
Contributions are welcome! Please read our `Code of Conduct
<https://github.com/adafruit/Adafruit_CircuitPython_Dash_Display/blob/HEAD/CODE_OF_CONDUCT.md>`_
before contributing to help this project stay welcoming.
pypistats · 76 observations shown. Missing days are unknown. Source category: overall: without mirrors.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-19 – 2026-10-19 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-18 – 2026-10-18 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-17 – 2026-10-17 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-16 – 2026-10-16 | 42 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-15 – 2026-10-15 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-14 – 2026-10-14 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-13 – 2026-10-13 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-12 – 2026-10-12 | 8 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-11 – 2026-10-11 | 22 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-10 – 2026-10-10 | 6 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-09 – 2026-10-09 | 5 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-08 – 2026-10-08 | 38 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-07 – 2026-10-07 | 15 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-06 – 2026-10-06 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-05 – 2026-10-05 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-04 – 2026-10-04 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-03 – 2026-10-03 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-10-01 – 2026-10-01 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-30 – 2026-09-30 | 5 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-29 – 2026-09-29 | 12 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-28 – 2026-09-28 | 9 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-27 – 2026-09-27 | 10 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-26 – 2026-09-26 | 18 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-25 – 2026-09-25 | 17 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-24 – 2026-09-24 | 38 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-23 – 2026-09-23 | 12 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-22 – 2026-09-22 | 10 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-21 – 2026-09-21 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-20 – 2026-09-20 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-19 – 2026-09-19 | 7 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-17 – 2026-09-17 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-16 – 2026-09-16 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-14 – 2026-09-14 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-12 – 2026-09-12 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-11 – 2026-09-11 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-10 – 2026-09-10 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-09 – 2026-09-09 | 7 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-08 – 2026-09-08 | 8 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-07 – 2026-09-07 | 8 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-05 – 2026-09-05 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-03 – 2026-09-03 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-02 – 2026-09-02 | 6 | 2026-10-20T22:46:32.7187837Z |
| 2026-09-01 – 2026-09-01 | 8 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-31 – 2026-08-31 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-30 – 2026-08-30 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-28 – 2026-08-28 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-27 – 2026-08-27 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-25 – 2026-08-25 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-24 – 2026-08-24 | 41 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-23 – 2026-08-23 | 7 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-22 – 2026-08-22 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-21 – 2026-08-21 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-20 – 2026-08-20 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-17 – 2026-08-17 | 5 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-16 – 2026-08-16 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-14 – 2026-08-14 | 6 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-13 – 2026-08-13 | 7 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-12 – 2026-08-12 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-11 – 2026-08-11 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-09 – 2026-08-09 | 11 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-08 – 2026-08-08 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-07 – 2026-08-07 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-05 – 2026-08-05 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-04 – 2026-08-04 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-03 – 2026-08-03 | 6 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-02 – 2026-08-02 | 2 | 2026-10-20T22:46:32.7187837Z |
| 2026-08-01 – 2026-08-01 | 7 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-30 – 2026-07-30 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-29 – 2026-07-29 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-28 – 2026-07-28 | 4 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-27 – 2026-07-27 | 5 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-26 – 2026-07-26 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-25 – 2026-07-25 | 1 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-24 – 2026-07-24 | 8 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-23 – 2026-07-23 | 3 | 2026-10-20T22:46:32.7187837Z |
| 2026-07-22 – 2026-07-22 | 4 | 2026-10-20T22:46:32.7187837Z |
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 3.0.7 | 23 Apr 2026 | 4 |
This describes our collected data; it is not a security assessment.
Shared repository data · GitHub
Observed since 20 Oct, 18:49 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:25f5b08aab1c833b416aa5d632711729496dcfc26a398cb929a9d55a084d87df