import machine
from machine import Pin, SoftI2C
from lcd_api import LcdApi
from i2c_lcd import I2cLcd
from time import sleep
import network
import time
import urequests
I2C_ADDR = 0x27
totalRows = 2
totalColumns = 16
i2c = SoftI2C(scl=Pin(22), sda=Pin(21), freq=10000) #initializing the I2C method for ESP32
#i2c = I2C(scl=Pin(5), sda=Pin(4), freq=10000) #initializing the I2C method for ESP8266
lcd = I2cLcd(i2c, I2C_ADDR, totalRows, totalColumns)
print("Connecting to WiFi", end="")
sta_if = network.WLAN(network.STA_IF)
sta_if.active(True)
sta_if.connect('Wokwi-GUEST', '')
while not sta_if.isconnected():
print(".", end="")
time.sleep(0.1)
print(" Connected!")
response = urequests.get('https://api.open-meteo.com/v1/forecast?latitude=50.814781&longitude=8.769190¤t_weather=true')
parsed = response.json()
print(parsed['elevation'])
print(parsed['current_weather']['temperature'])
print(parsed['current_weather']['windspeed'])
while True:
lcd.putstr("I2C LCD Tutorial")
sleep(2)
lcd.clear()
lcd.putstr("Lets Count 0-10!")
sleep(2)
lcd.clear()
for i in range(11):
lcd.putstr(str(i))
sleep(1)
lcd.clear()