input.onButtonPressed(Button.A, function () {
if (ESP8266_IoT.wifiState(true)) {
basic.showIcon(IconNames.Yes)
basic.pause(1000)
} else {
basic.showIcon(IconNames.No)
basic.pause(1000)
}
})
input.onButtonPressed(Button.B, function () {
ESP8266_IoT.connectThingSpeak()
ESP8266_IoT.setData(
"API_KEY_PLACEHOLDER",
pins.analogReadPin(AnalogReadWritePin.P1),
Environment.ReadSoilHumidity(AnalogPin.P2)
)
ESP8266_IoT.uploadData()
basic.showIcon(IconNames.Heart)
if (ESP8266_IoT.thingSpeakState(true)) {
basic.showIcon(IconNames.Meh)
}
})
OLED.init(128, 64)
ESP8266_IoT.initWIFI(SerialPin.P8, SerialPin.P12, BaudRate.BaudRate115200)
ESP8266_IoT.connectWifi("your_ssid", "your_pwd")
basic.forever(function () {
OLED.writeStringNewLine("Light: " + pins.analogReadPin(AnalogReadWritePin.P1))
OLED.writeStringNewLine("Soil: " + Environment.ReadSoilHumidity(AnalogPin.P2))
if (pins.analogReadPin(AnalogReadWritePin.P1) < 300) {
pins.digitalWritePin(DigitalPin.P15, 1)
} else {
pins.digitalWritePin(DigitalPin.P15, 0)
}
if (Environment.ReadSoilHumidity(AnalogPin.P2) < 50) {
pins.servoWritePin(AnalogPin.P16, 0)
} else {
pins.servoWritePin(AnalogPin.P16, 180)
}
OLED.writeNumNewLine(Environment.ReadLightIntensity(AnalogPin.P1))
basic.pause(1000)
OLED.writeNumNewLine(Environment.ReadSoilHumidity(AnalogPin.P2))
basic.pause(1000)
})