# arduino-epd **Repository Path**: virens/arduino-epd ## Basic Information - **Project Name**: arduino-epd - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-04-05 - **Last Updated**: 2025-12-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Introduction * This library code implements the driving code of [Aurora(V231) or Spectra EPDs with iTC driver](https://www.pervasivedisplays.com/products/epd-product-selection/) made by [Pervasive Displays Inc (PDi)](https://www.pervasivedisplays.com/). This is compatible with either [EPD Extension Kit Gen 2 (EXT2)](https://www.pervasivedisplays.com/product/epd-extension-kit-gen-2-ext2/) and [EPD Extension Kit Gen 3 (EXT3)](https://www.pervasivedisplays.com/product/epd-extension-kit-gen-3-ext3/). * It implements the global update mode (GU). However, the same code for fast and partial update are shared upon request. Contact [PDi](https://www.pervasivedisplays.com/technical-support/) for further details. * The library supports the following EPD sizes: 1.54", 2.13", 2.66", 2.71", 2.87", 3.70", 4.20", 4.37" * This library was tested with Launchpad (Tiva-C) with TM4C123, MSP432P401R, Arduino M0 Pro, Raspberry Pi Pico, and ESP32DevKitC. # Installation Download the ZIP file of this library and install as instructed in [Arduino](https://www.arduino.cc/en/guide/libraries) or Energia. ```shell arduino-cli lib install --git-url https://gitee.com/virens/arduino-epd.git ``` # Hardware Setup * If using Launchpad (Tiva-C) with TM4C123 or MSP432P401R, the SPI pins are by default: ``` c++ // Using EXT3 SCK = 7 // BROWN BUSY = 11 // RED D/C = 12 // ORANGE RST = 13 // YELLOW MOSI = 15 // BLUE ECSM = 19 // GRAY // Using EXT2 SCK = 7 BUSY = 8 D/C = 9 RST = 10 MOSI = 15 ECSM = 19 PNLON = 11 BS = 17 ``` * If using Arduino M0 Pro, ``` SCK = 13 BUSY = 4 D/C = 5 RST = 6 MOSI = 12 ECSM = 8 PNLON = 11 only for EXT2 BS = 9 only for EXT2 ``` * If using Raspberry Pi Pico, ``` SCK = 18 BUSY = 13 D/C = 12 RST = 11 MOSI = 19 ECSM = 17 PNLON = 8 only for EXT2 BS = 7 only for EXT2 ``` * If using ESP32DevKitC, ``` SCK = 18 BUSY = 27 D/C = 26 RST = 25 MOSI = 23 ECSM = 32 PNLON = 16 only for EXT2 BS = 17 only for EXT2 ``` For further wiring guidance, check out the User Manuals of [EXT2](https://www.pervasivedisplays.com/wp-content/uploads/2019/06/EPD-Extension-Kit-Gen2-EXT2_User-Guide_Rev08_20191111.pdf) and [EXT3](https://www.pervasivedisplays.com/wp-content/uploads/2021/01/User-Manual-of-EXT3_Rev01_Jan-2021-1.pdf). # EPD_Driver Demo * The sample code implements a global update functionality for a [2.71" Spectra R2.0 EPD (CE2271JS094)](https://www.pervasivedisplays.com/product/2-71-e-ink-display-spectra-r2-0/). First, a BW(black and white) image is flashed.

