#include int setTemp = 220; long lastPosition = -999; void setup() { auto cfg = M5.config(); M5Dial.begin(cfg, true, false); Serial.begin(115200); Serial1.begin(115200, SERIAL_8N1, 13, 15); // RX, TX M5Dial.Encoder.write(setTemp); M5Dial.Display.setTextColor(GREEN); M5Dial.Display.setTextDatum(middle_center); M5Dial.Display.setTextSize(3); M5Dial.Display.fillScreen(BLACK); Serial.println("M5Dial ASFALT temperature sender ready"); } void loop() { M5Dial.update(); long position = M5Dial.Encoder.read(); if (position != lastPosition) { lastPosition = position; setTemp = constrain(position, 50, 350); String msg = "TEMP:" + String(setTemp); Serial.println(msg); // USB debug Serial1.println(msg); // UART to Barduino M5Dial.Display.fillScreen(BLACK); M5Dial.Display.drawString( String(setTemp) + " C", M5Dial.Display.width() / 2, M5Dial.Display.height() / 2 ); } if (M5Dial.BtnA.wasPressed()) { M5Dial.Encoder.write(220); } }