from machine import Pin, SoftI2C, Timer
from ssd1306 import SSD1306_I2C
import time, onewire, ds18x20
i2c = SoftI2C(scl=Pin(12), sda=Pin(14))

from ssd1306 import SSD1306_I2C
oled = SSD1306_I2C(128, 64, i2c, addr = 0x3c)

ow = onewire.Onewire(Pin(4))
ds = ds18x20.DS18X20(ow)
rom = ds.scan()
led_r = Pin(21, Pin.OUT)
led_g = Pin(22, Pin.OUT)
led_b = Pin(23, Pin.OUT)

def temp_get(tim):
    ds.convert_temp()
    temp = ds.read_temp(rom[0])
    oled.fill(0)
    oled.text(str('%,2f'%temp), 50,40)
    oled.show()

if temp > 30:
    led_r.value(1)
    led_g.value(0)
    led_b.value(0)
else:
    led_r.value(1)
    led_g.value(0)
    led_b.value(0)

tim = Timer(1)
tim.init(period = 1000, mode= Timer.PERIODIC, callback = temp_get)