1
+ import time
2
+ import board
3
+ import busio
4
+ from digitalio import DigitalInOut
5
+ import neopixel
6
+ from adafruit_esp32spi import adafruit_esp32spi
7
+ from adafruit_esp32spi import adafruit_esp32spi_wifimanager
8
+
9
+ print ("ESP32 SPI webclient test" )
10
+
11
+ # Get wifi details and more from a secrets.py file
12
+ try :
13
+ from secrets import secrets
14
+ except ImportError :
15
+ print ("WiFi secrets are kept in secrets.py, please add them there!" )
16
+ raise
17
+
18
+ # for externally connected ESP32
19
+ esp32_cs = DigitalInOut (board .D9 )
20
+ esp32_ready = DigitalInOut (board .D10 )
21
+ esp32_reset = DigitalInOut (board .D5 )
22
+
23
+ # For PyPortal use
24
+ """
25
+ esp32_cs = DigitalInOut(board.ESP_CS)
26
+ esp32_ready = DigitalInOut(board.ESP_BUSY)
27
+ esp32_reset = DigitalInOut(board.ESP_RESET)
28
+ """
29
+
30
+
31
+ spi = busio .SPI (board .SCK , board .MOSI , board .MISO )
32
+ esp = adafruit_esp32spi .ESP_SPIcontrol (spi , esp32_cs , esp32_ready , esp32_reset )
33
+ """Use below for Most Boards"""
34
+ status_light = neopixel .NeoPixel (board .NEOPIXEL , 1 , brightness = 0.2 ) # Uncomment for Most Boards
35
+ """Uncomment below for ItsyBitsy M4"""
36
+ #status_light = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0.2)
37
+ wifi = adafruit_esp32spi_wifimanager .ESPSPI_WiFiManager (esp , secrets , status_light )
38
+
39
+ counter = 0
40
+
41
+ while True :
42
+ try :
43
+ print ("Posting data..." , end = '' )
44
+ data = counter
45
+ feed = 'test'
46
+ payload = {'value' :data }
47
+ response = wifi .post (
48
+ "https://io.adafruit.com/api/v2/" + secrets ['aio_username' ]+ "/feeds/" + feed + "/data" ,
49
+ json = payload ,
50
+ headers = {"X-AIO-KEY" :secrets ['aio_key' ]})
51
+ print (response .json ())
52
+ response .close ()
53
+ counter = counter + 1
54
+ print ("OK" )
55
+ except (ValueError , RuntimeError ) as e :
56
+ print ("Failed to get data, retrying\n " , e )
57
+ wifi .reset ()
58
+ continue
59
+ response = None
60
+ time .sleep (15 )
0 commit comments