#include <Arduino.h>
#include <U8g2lib.h>
#include <Wire.h>
// ESP32-C3 Mini I2C pins: SDA=8, SCL=9
U8G2_SH1107_128X128_1_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE, /* clock=*/ 9, /* data=*/ 8);
void setup() {
u8g2.begin();
u8g2.setContrast(255);
}
void loop() {
// Page buffer drawing
u8g2.firstPage();
do {
// 1. Text demo
u8g2.setFont(u8g2_font_8x13B_mn);
u8g2.drawStr(10, 20, "Hello OLED!");
// 2. Lines
u8g2.drawLine(0, 30, 127, 30);
u8g2.drawLine(0, 31, 127, 60);
// 3. Rectangles
u8g2.drawFrame(10, 40, 40, 20); // outline
u8g2.drawBox(60, 40, 40, 20); // filled
// 4. Circles
u8g2.drawCircle(30, 90, 15, U8G2_DRAW_ALL);
u8g2.drawDisc(90, 90, 15); // filled circle
// 5. Triangles
u8g2.drawTriangle(10, 110, 30, 110, 20, 80);
// 6. Different font sizes
u8g2.setFont(u8g2_font_5x8_mf);
u8g2.drawStr(10, 120, "AI Centre Nandurbar");
} while (u8g2.nextPage());
delay(2000); // refresh every 2 seconds
}