from machine import Pin, I2C, ADC
import ssd1306
# Pin 34: sensor soil moisture
adc = ADC(Pin(34))
adc.atten(ADC.ATTN_11DB) # 0-3.3V
# ESP32 Pin assignment
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)
oled.text('Hello, Wokwi!', 10, 10)
oled.show()
def convert_to_moisture(value):
return round(value/4, 2)
while True:
value = adc.read()
soil = convert_to_moisture(value)
data = {"moisture": soil}
print("Sending:", data)
oled.fill(0)
oled.text('soil moisture:', 10,10)
oled.text(str(soil), 10,30)
oled.show()