Waveshare 2.9" E-Paper Display
Ultra-low-power e-paper display that holds its image without power.
The Waveshare 2.9" E-Paper Display is a 296×128 pixel, monochrome e-paper panel that retains its last image with zero power draw — only refreshing (which takes ~2-3 seconds and briefly flashes black/white) actually consumes current. This makes it ideal for battery-powered price tags, shelf labels, industrial instruments, and status indicators that update infrequently[reference:0].
The panel uses microcapsule electrophoretic display technology: charged particles suspended in a clear fluid migrate when an electric field is applied, reflecting ambient light to create a paper-like image[reference:1]. No backlight is required, and the display remains clearly visible under natural or lamplight with a viewing angle of nearly 180°[reference:2].
It communicates over SPI and is driven on Arduino-family boards through Jean-Marc Zingg's GxEPD2 library, which abstracts away the panel's refresh sequencing. Waveshare provides their own library for Raspberry Pi and other platforms, with full C/C++ and Python examples available[reference:3][reference:4].
Versions: The module exists in multiple hardware revisions (V1, V2, V2.1). Newer versions (V2.1+) include an onboard level translator, making them compatible with both 3.3V and 5V MCUs[reference:5][reference:6]. The V2 version is the most common and is what this entry targets. Check for a "V2" label on the back of the screen to confirm.
Specifications
| Resolution | 296 × 128 pixels, monochrome (black/white) |
| Grayscale | 4 levels |
| Operating voltage | 3.3V / 5V (V2.1+ with level translator; V1 is 3.3V only) |
| Interface | SPI (3-wire or 4-wire) |
| Full refresh time | ~2-3 seconds, visible black/white flash |
| Refresh power | 26.4 mW (typical) |
| Standby current | < 0.01 µA (image persists with no power) |
| Viewing angle | >170° |
| Display dimensions | 66.89 × 29.05 mm |
| Outline dimensions (driver board) | 89.5 × 38 mm |
| Dot pitch | 0.227 × 0.226 mm |
| Operating temperature | 0 ~ 50 °C |
Pinout
| Pin | Name | Description |
|---|---|---|
| 1 | VCC | Power — 3.3V or 5V depending on board version (V2.1+ supports both) |
| 2 | GND | Ground |
| 3 | DIN | SPI data in (MOSI) |
| 4 | CLK | SPI clock (SCK) |
| 5 | CS | SPI chip select (active low) |
| 6 | DC | Data/command select — low for command, high for data |
| 7 | RST | Reset, active low |
| 8 | BUSY | Goes high during refresh — poll or interrupt before sending new data |
Critical usage notes:
- Refresh interval: It is recommended to wait at least 180 seconds between refreshes, and refresh at least once every 24 hours to prevent image retention damage[reference:7].
- Power down: Always put the display into sleep mode or power it off after updating — leaving it powered on keeps the driver in a high-voltage state and will damage the panel[reference:8].
- FPC cable: The flat flex cable is fragile — do not bend it vertically, do not bend it toward the front of the screen, and avoid repeated excessive bending[reference:9].
- Physical handling: The glass substrate is delicate — avoid dropping, bumping, or pressing hard on the screen[reference:10].
- Version compatibility: V1 boards are 3.3V only; V2.1+ boards include a level translator and support both 3.3V and 5V. Check the version label on the back before wiring[reference:11].
- Border color: The border color can be adjusted via registers 0x3C or 0x50 (refer to the datasheet)[reference:12].
- Image data: If images appear distorted, verify the image width and height settings match the display resolution[reference:13].
Variants
Choose based on your color needs: monochrome (4 grayscale) for text and simple graphics, or the B/C variants for red or yellow accents. The NFC-powered version is ideal for truly wireless, battery-free deployments.
| Variant | Temp range | Hum range | Accuracy | Protocol | Price |
|---|---|---|---|---|---|
| Waveshare 2.9" EPD (monochrome) | ~$15-20 | ||||
| Waveshare 2.9" EPD (B) | ~$18-22 | ||||
| Waveshare 2.9" EPD (C) | ~$18-22 | ||||
| Waveshare 2.9" NFC-Powered EPD | ~$25-30 |