Wiring:
SDA → D2 (GPIO4)
SCL → D1 (GPIO5)
PlatformIO:
lib_deps =
marcoschwartz/LiquidCrystal_I2C@^1.1.4
#include
#include
#include
// Set the LCD address (usually 0x27 or 0x3F)
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
Serial.begin(115200);
Wire.begin(); // SDA = D2(GPIO4), SCL = D1(GPIO5) on NodeMCU
Serial.println("Initializing LCD...");
// Initialize LCD
lcd.begin(16, 2);
lcd.backlight();
lcd.print("Hello World!");
Serial.println("LCD should be working now");
}
void loop() {
lcd.setCursor(0, 1);
lcd.print("Millis: ");
lcd.print(millis() / 1000);
delay(1000);
}