Search
Search

The Lasted E-Paper Display

E-Paper Studio: A Visual Design Tool

  • Categories:Innovation
  • Author:Zhang Hui
  • Origin:Original
  • Time of issue:2026-04-15 13:54
  • Views:

(Summary description)The what-you-see-is-what-you-get (WYSIWYG) tool launched by the engineers at Good Display, which generates Arduino code with one click, will greatly facilitate users' design and programming processes, and truly make e-ink display development as simple as building blocks.

E-Paper Studio: A Visual Design Tool

(Summary description)The what-you-see-is-what-you-get (WYSIWYG) tool launched by the engineers at Good Display, which generates Arduino code with one click, will greatly facilitate users' design and programming processes, and truly make e-ink display development as simple as building blocks.

  • Categories:Innovation
  • Author:Zhang Hui
  • Origin:Original
  • Time of issue:2026-04-15 13:54
  • Views:
Information
⚡ WYSIWYG · One-click Arduino Code Generation

E-Paper Studio

Visual design tool · Develop e-paper projects as easy as building blocks

E-Paper Studio is an online visual design tool for e-paper projects. Quickly build display layouts via drag-and-drop and generate ready-to-run Arduino code.
Whether you're a beginner or a maker, turn your ideas into real e-ink displays in minutes.

Zero-Code Design

Drag & drop components, no coordinate calculations needed.

One-Click Generation

Full driver + sensor + partial refresh code, ready to use.

WYSIWYG

Live canvas with multi-component support and precise property adjustment.

⚙️

Highly Configurable

Scan mode, bit order, coordinate transforms – compatible with most e-paper displays.

⚡ Quick Start: From Design to Hardware in 3 Steps

1

Design Interface

Choose canvas size, drag text, values, images, sensors. Double-click to edit text or images. Adjust position, color, font in the properties panel.

2

Configure Hardware

Set scan mode, bit order, polarity, origin; choose sensor models (BME280/SCD41); define partial refresh zones to avoid global flashing.

3

Generate & Burn

Click Generate Code, copy or download the complete .ino file. Adjust pins in Arduino IDE and upload.

Advanced Features, Precise Control

Multi-Canvas Management & Boot Sequence

Supports Boot Screen and Main Screen. Generated code automatically includes a full refresh for the boot screen, then enters the main interface, simulating a real device startup process.

Partial Refresh Optimization

After manually drawing partial refresh zones, the system allocates independent buffers for each zone. During partial refresh, only dynamic components (clock, sensor values) update, while static parts are copied from pre-generated bitmaps, greatly reducing refresh cycles and power consumption. Set a full refresh after N partial refreshes to prevent ghosting.

Flexible Font System

Preview Real-time scaling based on selected U8g2 font templates (6x10, logisoso24, etc.).
Code Generation Each text component can specify an independent U8g2 font or use global auto-matching. Three rendering modes supported:

  • native — Native U8g2 font, no scaling.
  • sharp — Nearest-neighbor scaling, sharp edges.
  • smooth — Bayer dithering scaling, smoother for large text.

Sensor Data Integration

After selecting BME280 or SCD41, the generated code automatically includes: corresponding libraries, global variables, init functions, read functions, and formatting functions. The main loop reads sensors every minute and triggers interface updates.

Bitmap Mapping Full Configuration

Compatible with nearly all common e-paper drivers:

Scan Mode

Row scan / Column scan (8-page mode)

Bit Order

MSB first / LSB first

Coordinate Direction

X/Y independent reverse, origin selectable corners

Coordinate Transform

Rotate 90°/180°/Swap XY

Pixel Polarity

1=White/0=Black or 0=White/1=Black

Generated Code Structure

After clicking "Generate Code", you'll get a well-structured Arduino (.ino) file containing the following main parts:

// 1. Headers and configuration
#include <SPI.h>
#include <U8g2_for_Adafruit_GFX.h>
#include "Display_EPD_W21.h"

// 2. Bitmap arrays (auto-generated)
const unsigned char gImage_boot[] = { 0x00, 0xFF, ... };
const unsigned char gImage_main_base[] = { ... };
// Base arrays for each partial refresh zone

// 3. Runtime variables & 1bpp drawing tools
void setPixel1bpp(...);
void fillRect1bpp(...);
void drawTextMonoPx(...);   // U8g2-based text rendering

// 4. Time/sensor handling
void initRuntimeData();
bool updateRuntimeData();
void formatSensorText(...);

// 5. Partial refresh zone composition
void composeDynamicZone1(uint8_t* buf, int w, int h) {
  memcpy(buf, gImage_zoneBase1, ...);
  drawTextMonoPx(...);   // draw dynamic components
}

// 6. setup() boot sequence
void setup() {
  EPD_HW_Init();
  EPD_WhiteScreen_ALL(gImage_boot);  // boot screen
  composeDynamicFull(gMainBuf, ...);
  EPD_SetRAMValue_BaseMap(gMainBuf); // main screen
  EPD_DeepSleep();
}

// 7. loop() updates dynamic data every minute
void loop() {
  if (updateRuntimeData()) refreshDisplay();
  delay(200);
}

Typical Use Cases

  • Desktop Thermometer/Hygrometer (Clock + BME280 + Battery icon)
  • Smart Home Control Panel
  • ️ Creative Badge / Name Tag (import images)
  • ⚙️ Rapid Prototyping
  • ⏱️ Timer / Pomodoro Clock
  • Reminder Whiteboard

✅ Tested Drivers & Panels

SSD1680 (296x128, 128x296), GDEY029T94, and general row/column scan displays. The bitmap mapping configuration adapts to most monochrome e-paper screens.

Default Pins A14 (BUSY), A15 (RES), A16 (DC), A17 (CS) — modify as needed after code generation.


✨ Bring Your E-Paper Display to Life

Open E-Paper Studio online, drag and drop to design your first screen, and see it on hardware in 3 minutes.

E-Paper Studio is driven by the Good Display maker community, continuously adding components and driver compatibility.
Questions or suggestions? Welcome to submit an Issue.

Scan the QR code to read on your phone

logo

Time of issue:2020-04-27 00:00:00

Contact

Time of issue:2020-04-27 00:00:00
Powerby:300.cn DaLian

copyright

Time of issue:2020-04-27 00:00:00

©2007-2025    DALIAN GOOD DISPLAY CO., LTD.   Privacy Policy      All Rights Reserved.      ICP08000578-1

Online customer service
Customer service hotline
+86-15504097661 +86-15504097661
Service time:
8:00 - 24:00
Customer service group:
Service Online