📱 Phone-Pi OLED Screen Designer (128×32 @ 4x scale)

Layout Info (luma.oled + PIL):
Screen 1: Clock
1
45C
BAL
21:45
85.3%
// Screen indicator: (0, 0) // Temperature: (100, 0) // Profile badge: (108, 10) inverted // Time: centered, y=2 // Battery bar: (0, 25) width=70 // Percentage: (74, 24)
Screen 1: Clock (WALL charging)
1
45C
BAL
21:45
WALL
85.3%
// WALL indicator: (0, 24) // bar_start = 26 when WALL/CHRG showing
Screen 2: Power Profile
2 POWER
BALANCED
1800 MHz
45C
// Header: (0, 0) // Mode: (0, 10) // Freq: (0, 18) // Temp: (0, 26) // Icon: (116, 10) 10x10px
Screen 3: Network
3 NETWORK
gammarays
10.0.0.71
CONNECTED
// Header: (0, 0) // SSID: (0, 10) - truncated to 12 chars // IP: (0, 18) // Status: (0, 26)
Screen 4: System
4 SYSTEM
RAM:512/3840M
LOAD:0.5 45C
UP: 2d5h
// Header: (0, 0) // RAM: (0, 10) // Load: (0, 18) // Uptime: (0, 26)
Power Mode Overlay (inverted)
BALANCED
MODE
// White background (inverted) // Icon: centered, (56, 2) 16x16 // Text: centered horizontally

Python Code Reference (luma.oled)

# Device setup
device = ssd1306(serial, width=128, height=32, rotate=2)

# Font sizes
font_large = ImageFont.truetype(FONT_PATH, 14)  # Clock time
font_small = ImageFont.truetype(FONT_PATH, 8)   # Everything else

# Drawing
image = Image.new('1', (128, 32), 0)  # Black background
draw = ImageDraw.Draw(image)
draw.text((x, y), "text", font=font_small, fill=1)  # White text

# Inverted badge
draw.rectangle([(x-1, y-1), (x+w+1, y+h+1)], fill=1)  # White box
draw.text((x, y), "BAL", font=font_small, fill=0)     # Black text

# Battery bar
draw.rectangle([(x, y), (x+width, y+6)], outline=1)   # Outline
draw.rectangle([(x+1, y+1), (x+fill, y+5)], fill=1)   # Fill

device.display(image)
        

Coordinate Quick Reference

Element Real (x, y) Notes
Screen indicator(0, 0)"1", "2", etc.
Temperature(100, 0)Screen 1 only
Profile badge(108, 10)Inverted, Screen 1
Clock time(centered, 2)font_large
WALL/CHRG(0, 24)If charging
Battery bar(0 or 26, 25)width=70 or 44
Percentage(74, 24)"85.3%"
Content rows(0, 10/18/26)Screens 2-4
Right icon(116, 10)Screen 2, 10x10