86 lines
2.3 KiB
Python
86 lines
2.3 KiB
Python
# from machine import Pin, ADC # type: ignore
|
|
from app.display.neopixel_64x64 import NeoPixel_64x64
|
|
from app.utils.colors import GREEN, ORANGE, RAINBOW, RED, YELLOW, GOLD
|
|
from app.utils.system_load import show_system_load
|
|
|
|
from app.web.wlan import Wlan
|
|
|
|
from app.display.emoji.emoji_8x8 import emoji_8x8
|
|
from app.display.emoji.emoji_16x16 import emoji_16x16
|
|
from app.display.fonts.font_8x8 import font_8x8
|
|
from app.display.fonts.font_16x16 import font_16x16
|
|
# time.sleep(0.1) # Wait for USB to become ready
|
|
|
|
print('Hello, Pi Pico!')
|
|
|
|
|
|
def emoji_test():
|
|
display = NeoPixel_64x64()
|
|
display.clear()
|
|
# display.set_font(font_8x8)
|
|
# display.show_hello()
|
|
# display.rotate_text_left_continuous('FLOATING TEXT', 0, speed=8.0, duration=30)
|
|
|
|
display.set_font(font_16x16)
|
|
display.draw_text('ABCD', 1, 1, color=GOLD)
|
|
|
|
# try emoji
|
|
display.set_font(emoji_8x8)
|
|
display.draw_text('😀', 1, 20, color=GREEN)
|
|
display.draw_text('⭐', 1, 29)
|
|
display.draw_text('✅', 1, 38)
|
|
display.draw_text('😎', 1, 47, color=RED)
|
|
display.draw_text('💙', 10, 47)
|
|
display.draw_text('💚', 19, 47)
|
|
display.draw_text('💛', 28, 47)
|
|
|
|
# try emoji
|
|
# display.set_font(emoji_16x16)
|
|
# display.draw_text('😀', 10, 20, color=ORANGE)
|
|
|
|
display.write()
|
|
|
|
show_system_load()
|
|
|
|
|
|
def weather_check():
|
|
wlan = Wlan('WOKWI-Guest', '12345678')
|
|
|
|
try:
|
|
display = NeoPixel_64x64()
|
|
display.clear()
|
|
display.draw_text('search wlan', 0, 0, color=YELLOW)
|
|
display.write()
|
|
|
|
display.clear_row(0, effect=False)
|
|
|
|
# display.clear()
|
|
display.draw_text('wlan connected', 0, 0, color=RAINBOW[1])
|
|
display.draw_text('querying', 0, 8, color=RAINBOW[1])
|
|
display.draw_text('weather data', 0, 16, color=RAINBOW[1])
|
|
display.write()
|
|
|
|
w_resp = wlan.actual_weather(test_mode=True)
|
|
|
|
display.clear()
|
|
|
|
display.draw_text(f'{str(w_resp.location.name)}', 0, 0, color=RAINBOW[0])
|
|
display.draw_text(f'{str(w_resp.current.temp_c)}°C', 0, 8, color=RAINBOW[1])
|
|
display.draw_text(f'upd: {str(w_resp.current.last_updated)[-5:]}', 0, 16, color=RAINBOW[2])
|
|
display.draw_text(f'cur: {str(w_resp.location.localtime)[-5:]}', 0, 24, color=RAINBOW[3])
|
|
|
|
display.write()
|
|
|
|
# display.clear_row(2)
|
|
|
|
print(w_resp)
|
|
except OSError as e:
|
|
print(f'Error: connection closed - {e}')
|
|
finally:
|
|
print('finally done.')
|
|
|
|
|
|
if __name__ == '__main__':
|
|
# emoji_test()
|
|
weather_check()
|