Clone
2.9″ Chroma 29
Skip Hansen edited this page 2026-01-11 07:42:58 -08:00

Specs

  • TI CC1110 - 26Mhz 8051 32kB Flash / 4kB RAM
  • 2.6 x 1.10 in ePaper display (BWR or BWY) 296x128px
  • 128Kbyte SPI flash
  • 2 x CR2450 button cell
  • SubGhz (868 Mhz / 915 Mhz) Radio
  • FCC ID: VC7120-0112

Status

chroma29_splash

The firmware images are available here,

For Chroma 29s with serial numbers ending in "B" try the chroma29_full_xxxx image, for tags with serial numbers ending in "C" try the chroma29_8151_full_xxxx image.

It is possible that the firmware will work with versions not listed in the chart below, if you test the beta on another board issue please report your finding if it works or not.

Other versions of the Chroma29 MAY be supported in the future.

Programming

See Flashing CC1110 Based Chroma tags for information on how to flash custom firmware onto the Chroma29.

Chroma29 Programming Jigs

Discord user mindstormer7 designed a handy programming jig for the Chroma29 rev 'B' which is particularly helpful if you have more than one that you want to flash.


The 'C' version of this tag has test points accessible from the battery compartment w/o disassembling the tag!

Discord user T0b! designed a programming jig for the Chroma29 rev 'C'

History

The were several versions of the Chroma29 which are/were manufactured, unfortunately they are not all compatible.

If you have version of the Chroma29 not listed before we PLEASE add details you can provide in the following table.

Supported SN Format Board Rev Controller EPD Panel Notes
Y JA000xxxxxB edk286 Issue 8
220-0067-08
2014
similar to UC8154 WF0290T1PBZ01 Display is always enabled (nEnable is ignored)
Y JA001xxxxxB
or
JA003xxxxxB
or
JA004xxxxxB
or
JA1xxxxxxxB
edk286 Issue 9
220-0067-09
2015
similar to UC8154 WF0290T1PBZ01 1. EPD pin 4&5 (VGL,VGH) are n/c
2. Q2 & Q3 added for nEnable
N JFxxxxxxxxB edk286 Issue 12
220-0067-12
2015
? WF0290T1DBZ010E42
cable
Note: Some Issue 9 tags also start with JF
these may be BWY rather than BWR models.
Y JA1xxxxxxxC edk296 Issue 1
220-0094-01
2018
similar to UC8151C WFD0290BF33 Rev supported by Dmitry's original firmware
Not yet,
a port has
been started
MExxxxxxxxC edk505 Issue4
220-0095-004
2019
? DEPG0290RWU51011HPB1E Processor is a CC1310
FCC ID: VC7120-0200

Battery Current

The expected battery current while the tag is sleeping between updates is about 1.2 microamps for a JA1xxxxxxxB tag and about 1.7 microamps for a JA000xxxxxB tag.

Later versions of the tag include a FET that disconnects the power to the EPD while it isn't being accessed. The JA000xxxxxB version does not have this FET which is why the sleep current is a little higher.

General Chroma 29 Info

Known EPD controllers are either similar to the UC8151 or the UC8154 depending on version.

The SPI flash chip is the 128k byte MX25V1006E.

The flash is organized as 32 4k sectors or 2 65k blocks. Sectors, blocks, or the entire chip can be erased at a time.

CC Debugger Connections

Test point Signal CC debugger pin
TP8 J3, GND 1
TP5 DC 3
TP4 J2, +VBAT 2
(and 9 to power
board from debugger)
TP3 DD 4
TP2 Reset_n 7

Debug Serial port Connections

Connecting a serial port to the Chroma is very handy for development but it is not needed if you just want to flash custom firmware.

Test point Signal FTDI
J3 GND Black
TP7 Serial out Yellow
TP9 Serial in Orange

Chroma 29 Test Points

Test point Signal
TP2 Reset_n
TP3 DD
TP4 J2, +VBAT
TP5 DC
TP6 P0_1
TP7 P1.6 (Serial out)
TP8 J3, GND
TP9 P1_7 (Serial in)
TP10 J1.23 PREVGL ?
TP11 J1.21 PREVGH ?

UC8154 LUTs

The following tables were captured from the EPD SPI bus while sending an image using atc1441's Custom PriceTag Access Point to a tag running stock firmware.

Table Values
Vcom1 LUT
(Cmd 0x20)
0x01 0x01 0x01 0x03 0x04 0x09 0x06 0x06
0x0A 0x04 0x04 0x19 0x03 0x04 0x09
White LUT
(Cmd 0x21)
0x01 0x01 0x01 0x03 0x84 0x09 0x86 0x46
0x0A 0x84 0x44 0x19 0x03 0x44 0x09
Black LUT
(Cmd 0x22)
0x01 0x01 0x01 0x43 0x04 0x09 0x86 0x46
0x0A 0x84 0x44 0x19 0x83 0x04 0x09
Gray1 LUT
(Cmd 0x23)
Gray2 LUT
(Cmd 0x24)
Vcom2 LUT
(Cmd 0x25)
0x0A 0x0A 0x01 0x02 0x14 0x0D 0x14 0x14
0x01 0x00 0x00 0x00 0x00 0x00 0x00
Red0 LUT
(Cmd 0x26)
0x4A 0x4A 0x01 0x82 0x54 0x0D 0x54 0x54
0x01 0x00 0x00 0x00 0x00 0x00 0x00
Red1 LUT
(Cmd 0x27)
0x0A 0x0A 0x01 0x02 0x14 0x0D 0x14 0x14
0x01 0x00 0x00 0x00 0x00 0x00 0x00

3D Printable Stand

Discord user MaZZly has created a 3d printable stand for the Chroma 29

The STL file can be downloaded from here.

3D Printable Holder

Discord user MaZZly also created a 3d printable holder for the Chroma 29

  • Stand works fine without supports, but could be enabled
  • Holder should be printed standing, might need brim if you don't have good plate adhesion

chroma29_holder chroma29_holder1

The STL file can be downloaded from here.