11import board
22import busio
3+ import neopixel
34from digitalio import DigitalInOut
45from adafruit_esp32spi import adafruit_esp32spi
6+ from adafruit_esp32spi import adafruit_esp32spi_wifimanager
57import adafruit_esp32spi .adafruit_esp32spi_socket as socket
68
79from adafruit_minimqtt import MQTT
2729
2830spi = busio .SPI (board .SCK , board .MOSI , board .MISO )
2931esp = adafruit_esp32spi .ESP_SPIcontrol (spi , esp32_cs , esp32_ready , esp32_reset )
32+ """Use below for Most Boards"""
33+ status_light = neopixel .NeoPixel (board .NEOPIXEL , 1 , brightness = 0.2 ) # Uncomment for Most Boards
34+ """Uncomment below for ItsyBitsy M4"""
35+ # status_light = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0.2)
36+ # Uncomment below for an externally defined RGB LED
37+ # import adafruit_rgbled
38+ # from adafruit_esp32spi import PWMOut
39+ # RED_LED = PWMOut.PWMOut(esp, 26)
40+ # GREEN_LED = PWMOut.PWMOut(esp, 27)
41+ # BLUE_LED = PWMOut.PWMOut(esp, 25)
42+ # status_light = adafruit_rgbled.RGBLED(RED_LED, BLUE_LED, GREEN_LED)
43+ wifi = adafruit_esp32spi_wifimanager .ESPSPI_WiFiManager (esp , secrets , status_light )
3044
3145### Topic Setup ###
3246
4054
4155### Code ###
4256
43- def connect_wifi ():
44- # Connects the ESP32 to WiFi
45- print ("Connecting to %s..." % secrets ['ssid' ])
46- while not esp .is_connected :
47- try :
48- esp .connect_AP (secrets ['ssid' ], secrets ['password' ])
49- except RuntimeError as e :
50- print ("could not connect to AP, retrying: " ,e )
51- continue
52- print ("Connected to" , str (esp .ssid , 'utf-8' ), "\t RSSI:" , esp .rssi )
53- print ("IP: " , esp .pretty_ip (esp .ip_address ))
54-
5557# Define callback methods which are called when events occur
5658# pylint: disable=unused-argument, redefined-outer-name
5759def connect (client , userdata , flags , rc ):
@@ -78,14 +80,14 @@ def publish(client, userdata, topic, pid):
7880 print ('Published to {0} with PID {1}' .format (topic , pid ))
7981
8082# Connect to WiFi
81- connect_wifi ()
83+ wifi . connect ()
8284
8385# Set up a MiniMQTT Client
84- client = MQTT (socket ,
85- broker = secrets ['broker' ],
86- username = secrets ['user' ],
87- password = secrets ['pass' ],
88- esp = esp )
86+ client = MQTT (socket ,
87+ broker = secrets ['broker' ],
88+ username = secrets ['user' ],
89+ password = secrets ['pass' ],
90+ network_manager = wifi )
8991
9092# Connect callback handlers to client
9193client .on_connect = connect
0 commit comments