1. Description and Scope
This document applies to the AF E Ink waveform flash memory file. The waveform flash file is designed for
use with an E Ink approved compatible controller (with advanced Generation II capabilities), an E Ink
approved Power Management Integrated Circuit (PMIC), and an Active Matrix Electronic Paper Display
(AMEPD) panel using E Ink Carta Imaging Film. Verified AMEPDs are listed in Section 5. The AF waveform is
a high performance 4-bit (16-level) grayscale waveform. The AF waveform look-up tables are defined in a
5-bit (32-level) pixel state representation where the 16 graytones are assigned to the even pixel states (0, 2,
4, … 30), where 0 is black and 30 is white.
The waveform flash memory file contains temperature look-up tables (LUTs), waveform sequence data,
algorithm data, voltage data, controller settings, and manufacturing data. Each AF waveform is specifically
adjusted for a particular display module lot. This specification document is for use by E Ink Corporation and
their customers under non-disclosure agreements. E Ink Corporation will be responsible for maintaining
and controlling specification revisions.
2. Waveform Flash File Format
2.1 Introduction
The controller generates display waveforms using an internal or external flash file. The waveform flash file
contains multiple temperatures look-up-tables (LUTs). Each temperature LUT contains the waveform
sequence information to allow the controller to properly construct a waveform used to generate images on
the display. Several update modes are encoded in the AF waveform within each temperature LUT.
2.2 Pixel State Usage
For the AF waveform, the LUTs are defined for a 5-bit (32-level) pixel state representation. Graytones 1-16
are assigned to the even pixel states (0, 2, 4, … 30), respectively. The odd pixels states (1, 3, 5, … 27) are
not used. Odd pixel states 29 and 31 (along with state 30) are used to denote graytone 16; states 29 and 31
are used to invoke special transitions to graytone 16.
2.3 Display Update Modes
DU
INIT
2.3.1
The initialization (INIT) mode is used to completely erase the display and leave it in the white state. It is
useful for situations where the display information in memory is not a faithful representation of the optical
state of the display, for example, after the device receives power after it has been fully powered down. This
waveform switches the display several times and leaves it in the white state.
2.3.2
The direct update (DU) is a very fast, non-flashy update. This mode supports transitions from any graytone
to black or white only. It cannot be used to update to any graytone other than black or white. The fast
update time for this mode makes it useful for response to touch sensor or pen input or menu selection
indictors.
2.3.3 GC16
The grayscale clearing (GC16) mode is used to update the full display and provide a high image quality.
When GC16 is used with Full Display Update the entire display will update as the new image is written. If a
Partial Update command is used the only pixels with changing graytone values will update. The GC16 mode
has 16 unique gray levels.
2.3.4 GL16
The GL16 waveform is primarily used to update sparse content on a white background, such as a page of
anti-aliased text, with reduced flash. The GL16 waveform has 16 unique gray levels.
2.3.5 GLR16
The GLR16 mode is used in conjunction with an image preprocessing algorithm to update sparse content on
a white background with reduced flash and reduced image artifacts. The GLR16 mode supports 16
graytones. If only the even pixel states are used (0, 2, 4, … 30), the mode will behave exactly as a traditional
GL16 waveform mode. If a separately-supplied image preprocessing algorithm is used, the transitions
invoked by the pixel states 29 and 31 are used to improve display quality. For the AF waveform, it is
assured that the GLR16 waveform data will point to the same voltage lists as the GL16 data and does not
need to be stored in a separate memory.
2.3.6 GLD16
The GLD16 mode is used in conjunction with an image preprocessing algorithm to update sparse content
on a white background with reduced flash and reduced image artifacts. It is recommended to be used only
with the full display update. The GLD16 mode supports 16 graytones. If only the even pixel states are used
(0, 2, 4, … 30), the mode will behave exactly as a traditional GL16 waveform mode. If a separately-supplied
image preprocessing algorithm is used, the transitions invoked by the pixel states 29 and 31 are used to
refresh the background with a lighter flash compared to GC16 mode following a predetermined pixel map
as encoded in the waveform file, and reduce image artifacts even more compared to the GLR16 mode. For
the AF waveform, it is assured that the GLD16 waveform data will point to the same voltage lists as the
GL16 data and does not need to be stored in a separate memory.
2.3.7 DU4
The DU4 is a fast update time (similar to DU), non-flashy waveform. This mode supports transitions from
any gray tone to gray tones 1,6,11,16 represented by pixel states [0 10 20 30]. The combination of fast
update time and four gray tones make it useful for anti-aliased text in menus. There is a moderate increase
in ghosting compared with GC16.
2.3.8 A2
The A2 mode is a fast, non-flash update mode designed for fast paging turning or simple black/white
animation. This mode supports transitions from and to black or white only. It cannot be used to update to
any graytone other than black or white. The recommended update sequence to transition into repeated A2
updates is shown in Figure 1. The use of a white image in the transition from 4-bit to 1-bit images will
reduce ghosting and improve image quality for A2 updates.
standard
transition
fast drive
D
A
A
4-bit
white image
1-bit
1-bit
Figure 1 Recommended update sequence for transitioning into A2
It is also recommended to use a white image after a sequence of A2 updates as shown in Figure 2
fast drive
transition
standard drive
A2
GC16
1-bit image
white image
4-bit image
Figure 2 Recommended update sequence for transitioning out of A2
2.4 Mode Version
Table 1 and Table 2 defines the mode and what mode versions available.
Table 4 lists which mode version is available for each AMEPD part number.
Table 1 Waveform Mode Summary
Mode
Supported pixel state transitions
Ghosting
Usage
Typical
update time
at 25 C 85
Hz (ms)
INIT
DU
[0 1 2 3 … 31] 30
N/A
Display initialization
2000
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31] [0 30]
Low
Monochrome menu,
text input, and
touch screen/pen
input
260
GC16
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31] [0 2 4 6 8 10 12 14 16 18 20 22 24 26 28
Very Low High quality images
450
30]
GL16
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31] [0 2 4 6 8 10 12 14 16 18 20 22 24 26 28
Medium
30]
GLR16
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31] [0 2 4 6 8 10 12 14 16 18 20 22 24 26 28
29 30 31]
GLD16
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31] [0 2 4 6 8 10 12 14 16 18 20 22 24 26 28
29 30 31]
Low
Low
A2
DU4
[0 29 30 31] [0 30]
Medium
[0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 29 30
31]
[0 10 20 30]
Medium
Text with white
background
Text with white
background
Text and graphics
with white
background
Fast page flipping at
reduced contrast
Anti-aliased text in
menus / touch and
screen/pen input
450
450
450
120
290
Table 2 Mode Version Description
Offset
0x16
Value
0x00
Offset
0x10
Value
0x19
Mode 0 Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7
INIT
DU
GC16
GL16
GLR16
GLD16
A2
DU4
Controller settings and manufacturing data
3.
The information section describes the information held in the first 24 bytes of the flash file. The bytes are
defined in Table 3.
Table 3 Waveform Header Information
Size
Offset (bytes)
(bytes)
Data
Allowed Values
Comments
0x00
0x04
0x08
0x0C
0x0D
0x0E
0x10
0x11
0x12
0x13
0x14
0x15
0x16
0x17
0x18
0x19
0x1C
0x1F
CHECKSUM
0x00000000– 0xFFFFFFF
CRC32 Checksum calculated on the entire binary data file,
assuming a value of 0x00000000 for the checksum bytes.
FILE LENGTH
0x00000000– 0xFFFFFFF File length in bytes (32-bit little-endian value).
SERIAL #
0x00000000 – 0xFFFFFFF
RUN TYPE
RESERVED
0x11 -0xFF
0x00-0xFF
Unique 32-bit little-endian value assigned to each
released waveform file. 0x00000000 = no serial #
assigned.
8-bit value representing the type of FPL runs.
R = 0x11
RESERVED
FPL LOT
0x0000 – 0xFFFF
FPL lot number, (16-bit value, little-endian).
4
4
4
1
1
2
1 MODE VERSION
See Table 2
See Table 2.
(Mode descriptions can be found in Table 2.)
1
WF VERSION
0x00-0xFF
Waveform version
1 WF SUBVERSION
0x00-0xFF
Waveform subversion
1
1
1
1
1
1
1
3
1
WF TYPE
0x51
Waveform type: 0x51= AF
RESERVED
AMEPD Part
Number
WFM REV
FRAME RATE
0x00-0xFF
RESERVED
See Table 4
0x00
0x85
0x00 = AF WFM Rev00;
0x85 = 85 Hz [Field definition deprecated in 0x02 WBF
Header Revision, Do Not Use field on future designs]
FRAME RATE
0x00-0xFF
Frame rate converted to Hex, i.e. (0x55 = 85Hz)
0x00 =
User should set the Vcom (VCOM(applied)) to VCOM
stored in the module flash plus the VCOM_OFFSET
specified in the Voltage Control Information(VCI).
0x01 value is reserved (for customer compatibility with
the VCOM OFFSET field)
VCOM OFFSET
0x00
XWIA
CS1
0x000000- 0xFFFFFF
Extra Waveform Information (XWI) address. The XWI
contains the waveform filename. (see Section 3.1)
0x00-0xFF
Checksum of bytes 0-30 with bytes 0-7 set to 0x00.
0x27
1
AWV
0x00-0xFF
0x00= No Advance WFM information is included; Gen I
compatible
0x01= Voltage Control format V2
0x02= Algorithm Control only;
0x03= Voltage Control and Algorithm Control;