Skip to content

Commit 4e5e25f

Browse files
authored
Merge pull request #52 from jposada202020/adding_displayio_example
Adding displayio example
2 parents d2c79ad + a75c687 commit 4e5e25f

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

docs/examples.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,12 @@ Ensure your device works with this simple test.
66
.. literalinclude:: ../examples/ccs811_simpletest.py
77
:caption: examples/ccs811_simpletest.py
88
:linenos:
9+
10+
DisplayIO Simpletest
11+
---------------------
12+
13+
This is a simple test for boards with built-in display.
14+
15+
.. literalinclude:: ../examples/ccs811_displayio_simpletest.py
16+
:caption: examples/ccs811_displayio_simpletest.py
17+
:linenos:
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# SPDX-FileCopyrightText: 2024 Tim Cocks for Adafruit Industries
2+
# SPDX-FileCopyrightText: 2024 Jose D. Montoya
3+
#
4+
# SPDX-License-Identifier: MIT
5+
6+
import time
7+
import board
8+
from adafruit_display_text.bitmap_label import Label
9+
from terminalio import FONT
10+
from displayio import Group
11+
import adafruit_ccs811
12+
13+
# Simple demo of using the built-in display.
14+
# create a main_group to hold anything we want to show on the display.
15+
main_group = Group()
16+
# Initialize I2C bus and sensor.
17+
i2c = board.I2C() # uses board.SCL and board.SDA
18+
ccs811 = adafruit_ccs811.CCS811(i2c)
19+
20+
# Wait for the sensor to be ready
21+
while not ccs811.data_ready:
22+
pass
23+
24+
# Create Label(s) to show the readings. If you have a very small
25+
# display you may need to change to scale=1.
26+
display_output_label = Label(FONT, text="", scale=2)
27+
28+
# place the label(s) in the middle of the screen with anchored positioning
29+
display_output_label.anchor_point = (0, 0)
30+
display_output_label.anchored_position = (
31+
4,
32+
board.DISPLAY.height // 2 - 60,
33+
)
34+
35+
# add the label(s) to the main_group
36+
main_group.append(display_output_label)
37+
38+
# set the main_group as the root_group of the built-in DISPLAY
39+
board.DISPLAY.root_group = main_group
40+
41+
# begin main loop
42+
while True:
43+
# update the text of the label(s) to show the sensor readings
44+
display_output_label.text = f"CO2: {ccs811.eco2} PPM\nTVOC: {ccs811.tvoc} PPB"
45+
# wait for a bit
46+
time.sleep(0.5)

0 commit comments

Comments
 (0)