Update code.py
This commit is contained in:
parent
2a688db59d
commit
cbbd75ec25
1 changed files with 17 additions and 23 deletions
|
|
@ -1,4 +1,4 @@
|
|||
# SPDX-FileCopyrightText: 2022 Liz Clark for Adafruit Industries
|
||||
# SPDX-FileCopyrightText: 2023 Liz Clark for Adafruit Industries
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
|
|
@ -16,11 +16,7 @@ from adafruit_display_text import label
|
|||
import adafruit_displayio_ssd1306
|
||||
import adafruit_imageload
|
||||
from digitalio import DigitalInOut, Direction
|
||||
from adafruit_httpserver.server import HTTPServer
|
||||
from adafruit_httpserver.request import HTTPRequest
|
||||
from adafruit_httpserver.response import HTTPResponse
|
||||
from adafruit_httpserver.methods import HTTPMethod
|
||||
from adafruit_httpserver.mime_type import MIMEType
|
||||
from adafruit_httpserver import Server, Request, Response, POST
|
||||
from adafruit_onewire.bus import OneWireBus
|
||||
from adafruit_ds18x20 import DS18X20
|
||||
|
||||
|
|
@ -82,14 +78,14 @@ wifi.radio.connect(os.getenv('CIRCUITPY_WIFI_SSID'), os.getenv('CIRCUITPY_WIFI_P
|
|||
|
||||
print("Connected to WiFi")
|
||||
pool = socketpool.SocketPool(wifi.radio)
|
||||
server = HTTPServer(pool, "/static")
|
||||
server = Server(pool, "/static", debug=True)
|
||||
|
||||
# variables for HTML
|
||||
# comment/uncomment desired temp unit
|
||||
|
||||
# temp_test = str(ds18.temperature)
|
||||
# unit = "C"
|
||||
temp_test = str(c_to_f(ds18.temperature))
|
||||
temp_test = c_to_f(ds18.temperature)
|
||||
unit = "F"
|
||||
# font for HTML
|
||||
font_family = "monospace"
|
||||
|
|
@ -126,7 +122,7 @@ def webpage():
|
|||
<p class="dotted">This is a Pico W running an HTTP server with CircuitPython.</p>
|
||||
<br>
|
||||
<p class="dotted">The current ambient temperature near the Pico W is
|
||||
<span style="color: deeppink;">{temp_test}°{unit}</span></p><br>
|
||||
<span style="color: deeppink;">{temp_test:.2f}°{unit}</span></p><br>
|
||||
<h1>Control the LED on the Pico W with these buttons:</h1><br>
|
||||
<form accept-charset="utf-8" method="POST">
|
||||
<button class="button" name="LED ON" value="ON" type="submit">LED ON</button></a></p></form>
|
||||
|
|
@ -141,15 +137,14 @@ def webpage():
|
|||
|
||||
# route default static IP
|
||||
@server.route("/")
|
||||
def base(request: HTTPRequest): # pylint: disable=unused-argument
|
||||
def base(request: Request): # pylint: disable=unused-argument
|
||||
# serve the HTML f string
|
||||
# with content type text/html
|
||||
with HTTPResponse(request, content_type=MIMEType.TYPE_HTML) as response:
|
||||
response.send(f"{webpage()}")
|
||||
return Response(request, f"{webpage()}", content_type='text/html')
|
||||
|
||||
# if a button is pressed on the site
|
||||
@server.route("/", method=HTTPMethod.POST)
|
||||
def buttonpress(request: HTTPRequest):
|
||||
@server.route("/", POST)
|
||||
def buttonpress(request: Request):
|
||||
# get the raw text
|
||||
raw_text = request.raw_request.decode("utf8")
|
||||
print(raw_text)
|
||||
|
|
@ -166,8 +161,7 @@ def buttonpress(request: HTTPRequest):
|
|||
# toggle the parrot_pin value
|
||||
parrot_pin.value = not parrot_pin.value
|
||||
# reload site
|
||||
with HTTPResponse(request, content_type=MIMEType.TYPE_HTML) as response:
|
||||
response.send(f"{webpage()}")
|
||||
return Response(request, f"{webpage()}", content_type='text/html')
|
||||
|
||||
print("starting server..")
|
||||
# startup the server
|
||||
|
|
@ -184,19 +178,19 @@ ping_address = ipaddress.ip_address("8.8.4.4")
|
|||
# text objects for screen
|
||||
# connected to SSID text
|
||||
connect_text_area.text = "Connected to:"
|
||||
ssid_text = "%s" % os.getenv('WIFI_SSID')
|
||||
ssid_text = f"{os.getenv('CIRCUITPY_WIFI_SSID')}"
|
||||
ssid_text_area = label.Label(
|
||||
terminalio.FONT, text=ssid_text, color=0xFFFFFF, x=0, y=offset_y+15
|
||||
)
|
||||
splash.append(ssid_text_area)
|
||||
# display ip address
|
||||
ip_text = "IP: %s" % wifi.radio.ipv4_address
|
||||
ip_text = f"IP: {wifi.radio.ipv4_address}"
|
||||
ip_text_area = label.Label(
|
||||
terminalio.FONT, text=ip_text, color=0xFFFFFF, x=0, y=offset_y+30
|
||||
)
|
||||
splash.append(ip_text_area)
|
||||
# display temp reading
|
||||
temp_text = "Temperature: %.02f F" % float(temp_test)
|
||||
temp_text = f"Temperature: {temp_test:.2f} F"
|
||||
temp_text_area = label.Label(
|
||||
terminalio.FONT, text=temp_text, color=0xFFFFFF, x=0, y=offset_y+45
|
||||
)
|
||||
|
|
@ -230,13 +224,13 @@ while True:
|
|||
print("lost connection")
|
||||
else:
|
||||
connect_text_area.text = "Connected to:"
|
||||
ssid_text_area.text = "%s" % os.getenv('WIFI_SSID')
|
||||
ssid_text_area.text = f"{os.getenv('CIRCUITPY_WIFI_SSID')}"
|
||||
print("connected")
|
||||
clock = time.monotonic()
|
||||
# comment/uncomment for desired units
|
||||
# temp_test = str(ds18.temperature)
|
||||
temp_test = str(c_to_f(ds18.temperature))
|
||||
temp_text_area.text = "Temperature: %s F" % temp_test
|
||||
# temp_test = ds18.temperature
|
||||
temp_test = c_to_f(ds18.temperature)
|
||||
temp_text_area.text = f"Temperature: {temp_test:.2f} F"
|
||||
|
||||
#if parrot is True:
|
||||
if parrot_pin.value is True:
|
||||
|
|
|
|||
Loading…
Reference in a new issue