Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Example using adafruit_connection_manager #31

Merged
merged 9 commits into from
Mar 18, 2024
39 changes: 39 additions & 0 deletions examples/ntp_connection_manager.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# SPDX-FileCopyrightText: 2024 Justin Myers for Adafruit Industries
# SPDX-FileCopyrightText: 2024 anecdata for Adafruit Industries
#
# SPDX-License-Identifier: Unlicense

"""Print out time based on NTP, using connection manager"""

import adafruit_connection_manager
import adafruit_ntp

# determine which radio is available
try:
import wifi
import os

# adjust method to get credentials as necessary...
wifi_ssid = os.getenv("CIRCUITPY_WIFI_SSID")
wifi_password = os.getenv("CIRCUITPY_WIFI_PASSWORD")
radio = wifi.radio
while not radio.connected:
radio.connect(wifi_ssid, wifi_password)
except ImportError:
import board
from digitalio import DigitalInOut
from adafruit_wiznet5k.adafruit_wiznet5k import WIZNET5K

# adjust with busio.SPI() as necessary...
spi = board.SPI()
# adjust pin for the specific board...
eth_cs = DigitalInOut(board.D10)
radio = WIZNET5K(spi, eth_cs)

# get the socket pool from connection manager
socket = adafruit_connection_manager.get_radio_socketpool(radio)

# adjust tz_offset for locale...
ntp = adafruit_ntp.NTP(socket, tz_offset=-5)

print(ntp.datetime)
Loading