# Set up where we'll be fetching data from DATA_SOURCE = "http://api.openweathermap.org/data/2.5/weather?q=" + LOCATION DATA_SOURCE += "&appid=" + secrets['openweather_token'] # You'll need to get a token from openweather.org, looks like 'b6907d289e10d714a6e88b30761fae22' DATA_LOCATION = [] # Initialize the pyportal object and let us know what data to fetch and where # to display it pyportal = PyPortal(url=DATA_SOURCE, json_path=DATA_LOCATION, status_neopixel=board.NEOPIXEL, default_bg=0x000000) gfx = openweather_graphics.OpenWeather_Graphics(pyportal.splash, am_pm=True, celsius=False) localtile_refresh = None weather_refresh = None while True: # only query the online time once per hour (and on first run) if (not localtile_refresh) or (time.monotonic() - localtile_refresh) > 3600: try: print("Getting time from internet!") pyportal.get_local_time() localtile_refresh = time.monotonic() except RuntimeError as e: print("Some error occured, retrying! -", e) continue
# Set up from where we'll be fetching data DATA_SOURCE = ("http://api.openweathermap.org/data/2.5/weather?q=" + LOCATION + "&units=" + UNITS) DATA_SOURCE += "&appid=" + secrets["openweather_token"] # You'll need to get a token from openweather.org, looks like 'b6907d289e10d714a6e88b30761fae22' # it goes in your secrets.py file on a line such as: # 'openweather_token' : 'your_big_humongous_gigantor_token', DATA_LOCATION = [] SCROLL_HOLD_TIME = 0 # set this to hold each line before finishing scroll # --- Display setup --- matrix = Matrix() network = Network(status_neopixel=board.NEOPIXEL, debug=True) if UNITS == "imperial" or UNITS == "metric": gfx = openweather_graphics.OpenWeather_Graphics(matrix.display, am_pm=True, units=UNITS) print("gfx loaded") localtime_refresh = None weather_refresh = None while True: # only query the online time once per hour (and on first run) if (not localtime_refresh) or (time.monotonic() - localtime_refresh) > 3600: try: print("Getting time from internet!") network.get_local_time() localtime_refresh = time.monotonic() except RuntimeError as e: print("Some error occured, retrying! -", e)
# Use cityname, country code where countrycode is ISO3166 format. # E.g. "New York, US" or "London, GB" LOCATION = "Lyon, FR" # Set up where we'll be fetching data from DATA_SOURCE = "http://api.openweathermap.org/data/2.5/weather?q="+LOCATION DATA_SOURCE += "&appid="+secrets['openweather_token'] # You'll need to get a token from openweather.org, looks like 'b6907d289e10d714a6e88b30761fae22' DATA_LOCATION = [] pygamer = PyGamer(url=DATA_SOURCE, json_path=DATA_LOCATION, status_neopixel=board.NEOPIXEL, default_bg=0x000000) gfx = openweather_graphics.OpenWeather_Graphics(pygamer.splash, am_pm=True, celsius=True) localtile_refresh = None weather_refresh = None while True: # only query the online time once per hour (and on first run) if (not localtile_refresh) or (time.monotonic() - localtile_refresh) > 3600: try: print("Getting time from internet!") pygamer.get_local_time() localtile_refresh = time.monotonic() except RuntimeError as e: print("Some error occured, retrying! -", e) continue # only query the weather every 10 minutes (and on first run)
# Set up where we'll be fetching data from WEATHER_DATA_SOURCE = "http://api.openweathermap.org/data/2.5/weather?q=" + LOCATION WEATHER_DATA_SOURCE += "&appid=" + secrets['openweather_token'] # You'll need to get a token from openweather.org, looks like 'b6907d289e10d714a6e88b30761fae22' WEATHER_DATA_LOCATION = [] # Initialize the pyportal object and let us know what data to fetch and where # to display it pyportal = PyPortal(url=WEATHER_DATA_SOURCE, json_path=WEATHER_DATA_LOCATION, status_neopixel=board.NEOPIXEL, default_bg=0x9900FF) gfx = openweather_graphics.OpenWeather_Graphics(pyportal.splash, am_pm=True) # Set up an analog light sensor on the PyPortal adc = AnalogIn(board.LIGHT) localtile_refresh = None weather_refresh = None while True: print(adc.value) # set brightness based on room brightness, min 20% max 80% brightnessPercent = adc.value/65536 if brightnessPercent < .2: brightnessPercent = .2 elif brightnessPercent > .8: brightnessPercent = .8
print("WiFi secrets are kept in secrets.py, please add them there!") raise DATA_SOURCE = "https://api-v3.mbta.com/predictions?page%5Blimit%5D=2&sort=arrival_time&filter%5Bdirection_id%5D=1&filter%5Bstop%5D=2373" DATA_LOCATION = [] # Initialize the pyportal object and let us know what data to fetch and where # to display it pyportal = PyPortal(url=DATA_SOURCE, json_path=DATA_LOCATION, status_neopixel=board.NEOPIXEL, default_bg=0x000000) gfx = openweather_graphics.OpenWeather_Graphics(pyportal.splash) localtile_refresh = None weather_refresh = None while True: # only query the online time once per hour (and on first run) if (not localtile_refresh) or (time.monotonic() - localtile_refresh) > 3600: try: print("Getting time from internet!") pyportal.get_local_time() localtile_refresh = time.monotonic() except RuntimeError as e: print("Some error occured, retrying! -", e) continue try: