GDEW0154Z04
"Although the information we release has been verified and shown to work to the best our knowledge, we cant be held accountable for bricked devices or roots gone wrong."
GDEW0154Z04 is the controller for the Waveshare 1.54inch ePaper display module. This display module can be found for ~$30 online and is ideal for projects that require very little power consumption and infrequent updates. It features a black layer and a red layer.
Command Set
This controller accepts commands over SPI. While the basics are documented by the manufacturer, several commands and parameters are poorly or not documented.
Command | Parameter bytes | Description | Notes |
---|---|---|---|
00 | 1 | Panel Setting | Parameter bits:
|
01 | 4 | Power Setting | First parameter bits:
Second parameter: unknown; documentation says it should always be zero. Third parameter: Positive voltage for red LUT. Range 2.4 to 8.0V, step 0.2V. High 3 bits unused. Fourth parameter: Negative voltage for red LUT. Range -2.4 to -8.0V, step 0.2V. High 3 bits unused. |
02 | 0 | Power Off | Turn off logic. BUSY line will go low. Image remains on screen. |
03 | 1 | Gate Voltage | |
04 | 0 | Power On | Turn on logic. |
06 | 3 | Booster Soft Start | Unknown use; possibly not supported by this controller.
Each parameter byte is a drive strength. The manual states that all should be zero, but in its example code uses values 0x07, 0x06, 0x05, and states that bits 3 and 4 are used as well. |
0C | 3 | Soft Start | Possibly same as 0x06 for a different controller. |
10 | varies | Start Transmission (Black) | Issue this command, then send data for black pixels. |
11 | ? | RAM Data Entry Mode | Possibly not supported by this controller. |
12 | 0 | Refresh | Refreshes the display. Takes ~8 seconds (or 4 if red layer is disabled). |
13 | varies | Start Transmission (Red) | Issue this command, then send data for red pixels. |
20 | 15 | Upload Waveform (Black layer VCOM) | Parameters are the waveform LUT data. |
21 | 15 | Upload Waveform (White) | |
22 | 15 | Upload Waveform (Black) | |
23 | 15 | Upload Waveform (G1) | Unknown what G1 refers to. Doesn't seem to do anything. |
24 | 15 | Upload Waveform (G2) | Unknown what G2 refers to. |
25 | 15 | Upload Waveform (Red layer VCOM) | |
26 | 15 | Upload Waveform (Red layer white) | |
27 | 15 | Upload Waveform (Red) | |
2C | 1 | VCOMVol | Unknown. Possibly meant for another controller. |
30 | 1 | PLL Control | Parameter bits 0-2 are N, 3-5 are M.
Manual suggests value 0x39 for temperatures >= 30, 0x2A otherwise. (But doesn't specify Celsius or Fahrenheit, and there's no way to read out the temperature with this module.) Changing these values can make the display refresh very slowly. I haven't found any value that makes it faster. |
3A | 1 | Dummy Line | Apparently sets the number of extra lines transferred but not shown. May be for another controller. |
3B | 1 | Gate Time | Unknown, maybe for another controller. |
3C | 1 | Border | Unknown, maybe for another controller. |
40 | 0 | Temperature Sensor Command (TSC) | Returns 2-byte temperature over DOUT. However, this module does not expose DOUT, so this is not useful. |
41 | 1 | Temperature Sensor Setting | Parameter: 0x80=use external sensor, 0x00=internal. (No way to connect external sensor to this module.) |
42 | 3 | TSW (Temperature Sensor Write?) | |
43 | 2 | TSR (Temperature Sensor Read?) | |
44 | 2 | Set RAM Area X | Unknown, maybe for another controller. |
45 | 4 | Set RAM Area Y | |
4E | 1 | Set RAM Pointer X | |
4F | 2 | Set RAM Pointer Y | |
50 | 1 | VCOMM & Data Interval Setting | Parameter bits:
|
60 | 1 | Unknown | Undocumented; affects update region. Parameter:
|
61 | 3 | Resolution Setting | Tells the controller the resolution of the display.
This can be changed after drawing, allowing to refresh only some rows. |
71 | 0 | Get Status | Useless, since no DOUT line. |
80 | 1 | Unknown | Undocumented. If parameter bit 0x01 is set, the module shuts down immediately. (Will not respond to commands until powered on again.) |
82 | 1 | VCM_DC Setting | Parameter: VCOM value (0 to -3.0V, step 0.1V). Anything beyond -3.0 is clamped to -3.0. |
F0 | 1 | Booster Source Voltage | Unknown, maybe for different controller. |