My code runs the first loop fine but when running a second loop it returns an "Some error occured, retrying! - ESP_BUSY in use" error.
Does anyone know why this happens on my pyportal?
Code: Select all
import time
import board
from adafruit_pyportal import PyPortal
textrow = 0
authorrow = 0
def main(textrow, authorrow):
# Set up where we'll be fetching data from
DATA_SOURCE = "http://192.168.1.67/presently-backup.json"
QUOTE_LOCATION = [textrow, 'text']
AUTHOR_LOCATION = [authorrow, 'author']
# the current working directory (where this file is)
cwd = ("/"+__file__).rsplit('/', 1)[0]
pyportal = PyPortal(url=DATA_SOURCE,
json_path=(QUOTE_LOCATION, AUTHOR_LOCATION),
#status_neopixel=board.NEOPIXEL,
default_bg=cwd+"/quote_background.bmp",
text_font=cwd+"/fonts/Arial-ItalicMT-17.bdf",
text_position=((20, 120), # quote location
(5, 210)), # author location
text_color=(0xFFFFFF, # quote text color
0x8080FF), # author text color
text_wrap=(35, # characters to wrap for quote
0), # no wrap for author
text_maxlen=(180, 30), # max text size for quote & author
)
# speed up projects with lots of text by preloading the font!
pyportal.preload_font()
value = pyportal.fetch()
textrow = textrow + 1
authorrow = authorrow + 1
print("Response is", value)
return value
while True:
try:
main(textrow, authorrow)
time.sleep(5)
except (ValueError, RuntimeError) as e:
print("Some error occured, retrying! -", e)
time.sleep(5)