#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
// OLED size
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
// I2C OLED (no reset pin)
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() {
Serial.begin(115200);
// Initialize I2C (change pins if needed)
Wire.begin(8, 9); // SDA, SCL (ESP32-S3 SuperMini typical)
// Initialize display
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println("OLED not found");
while (true);
}
display.clearDisplay();
// Draw header bar
display.fillRect(0, 0, 128, 20, WHITE);
// Header text
display.setTextSize(1);
display.setTextColor(BLACK);
display.setCursor(40, 5);
display.print("WELCOME");
// Normal text
display.setTextColor(WHITE);
display.setCursor(57, 22);
display.print("to");
display.setCursor(20, 32);
display.print("NEUST Carranglan");
display.setCursor(35, 42);
display.print("OFF-CAMPUS");
display.setCursor(11, 54);
display.print("Pls Scan your card");
display.display();
}
void loop() {
// Nothing here
}