Chroma Series SubGhz Tags - OpenEPaperLink/OpenEPaperLink GitHub Wiki
Currently the following tags are supported:
Tag | SN Format | Display Type |
Binary filename |
---|---|---|---|
Chroma29 | "JA0xxxxxxxB" or "JA1xxxxxxxB" |
BWR | chroma29_<type>_<version>.bin |
Chroma29 | "JA1xxxxxxxC" | BWR | chroma29_8151_<type>_<version>.bin |
Chroma42 | "JC0xxxxxxxB" | BWR | chroma42_<type>_<version>.bin |
Chroma42 | "JH1xxxxxxxB" | BWY | chroma42_8176_<type>_<version>.bin |
Chroma74 | "JM1xxxxxxxB" | BWY | chroma74y_<type>_<version>.bin |
Chroma74 | "JL1xxxxxxxB" | BWR | chroma74r_<type>_<version>.bin |
Where <type> is either "full" or "ota" and <version> is the 4 digit firmware version in hex for example "chroma29_8151_full_0012.bin"
Caution
When using a programmer always flash using the _full_ version, the _ota_ version is for OTA updates ONLY.
Binaries are available here: https://github.com/OpenEPaperLink/OpenEPaperLink/tree/master/binaries/Tag .
Refer the table above for the correct filename.
Source code is available here.
Caution
The EPaper display is fragile and can be broken if you are not careful.
NEVER pry between between the display and the bezel to open the tag.
The display's cable is GLUED onto the main PCB and can separate with rough handling.
Try to minimize flexing of the cable while connecting the programmer.
Unlike other tags the test points needed to flash custom firmware are not accessible on most Chroma tags without opening the case.
The test points needed for flashing are labeled by the silk screen and should be easy to locate.
The case is fairly easy to open and if it is opened carefully it is unlikely to be damaged.
Carefully prying the white front away from the gray back starting at a corner is the easiest.
After programming the case can be easily snapped back together.
After the TAG is flashed and reset the OpenEPaperLink splash screen should be displayed.
For example:
Important
If the MAC address ends with 8 zeros then the TAG's SPI EEPROM's is corrupt.
Continue here to reset the serial number that MAC address is derived from.
All of the Chroma series of tags support three colors, either black, white, and red (BWR) or black, white, and yellow (BWY).
It is suspected that the first two letters of the SN indicate if the display is BWR or BWY, details here.
All of the Chroma series of tags support three colors, either black, white, and red (BWR) or black, white, and yellow (BWY).
It is suspected that the first two letters of the SN indicate if the display is BWR or BWY, details here.
Model | Screen size | Resolution | EEPROM size |
Supported |
---|---|---|---|---|
Chroma 16 | 1.08 x 1.08 in | 152 x 152 | 128K | N |
Chroma 21 | 1.9 x 1.00 in | 212 x 104 | 128K | Planned |
Chroma 27 | 2.4 x 1.20 in | 296 x 152 | 128K | N |
Chroma 29 | 2.6 x 1.10 in | 296 x 128 | 128K | Y |
Chroma 37 | 3.2 x 1.85 in | 416 x 240 | ? | N |
Chroma 42 | 3.3 x 2.50 in | 400 x 300 | 1024K | Y |
Chroma 60 | 4.7 x 3.50 in | 600 x 448 | 1024K | maybe |
Chroma 74 | 6.4 x 3.50 in | 640 x 384 | 1024K | Y |
Chroma 74H+ | 6.4 x 3.90 in | 800 x 480 | 1024K | Port in process |
Chroma Aeon 74 | 6.4 x 3.90 in | 800 x 480 | 1024K | Port in process |
Chroma 125 | 10.0 x 7.50 in | 1304 x 984 | N |
The displays with support marked as "N" means that no one (or at least no developer) has any.
The displays with support marked as "maybe" means that there isn't a sufficient supply currently to make it worth the effort.
All of the older Chroma tags used the same basic design based on the TI CC1110 SOC with an 26Mhz 8051 MCU, 32kB of Flash and 4kB of RAM. It is likely that only the EPD driver will need to be changed to support additional models based on the CC1110 SOC.
The newer Chroma tags have replaced the legacy CC1110 SOC with a newer ARM Cortex M3 based CC1310F64 SOC or CC1311R3 SOC. So far these newer version of the Chromas are rare. A porting effort for CC131x based tags is underway.
There are several ways to flash the firmware:
- The TI CC-Debugger or an inexpensive clone.
- ATC1441's ESP_CC_Flasher, video.
- Rpi based flash_cc2531.
- Rpi based cc1110-prog.
- OEPL Tag-Flasher.
There are probably other options, please feel free to add them to the Wiki !
All flashing methods require 4 wires: GND, DC, DD and Reset_n.
Signal | Test point |
---|---|
GND | TP8 or TP18 |
+VBAT | TP4 or TP14 |
DC | TP5 or TP15 |
DD | TP3 or TP13 |
Reset_n | TP2 or TP12 |
Note: Test points TP10 and above are on the top/component side of the PCB the rest are on the other side.
If you go the CC-Debugger route you can use TI Windows based app.
If you run Linux cc-tool works well.
Signal | Test point | CC debugger pin |
---|---|---|
GND | TP8 or TP18 | 1 |
+VBAT | TP4 or TP14 | 2 |
DC | TP5 or TP15 | 3 |
DD | TP3 or TP13 | 4 |
Reset_n | TP2 or TP12 | 7 |
The TI programmer requires the target's +VBAT to be connected for level translators.
NB: The LED on the CC-Debugger should be green if it detects the CC1110.
The CC-debugger only looks for the chip when first connected to USB or when the reset switch is clicked. If the LED is red try clicking the reset button, if that doesn't turn the LED green then check your wiring.
If you like you can jumper pins 2 and 9 on the CC-Debugger to power the tag from the debugger to prevent having to have batteries installed while programming.
A programmer with cJTAG support is needed to program CC131x based tags.
The least expensive option currently known is this TI debugger.
Note: Many TI evaluations boards include a debugger which can also be used. Make sure the embedded debugger is XDS110 compatible.
If you know of other options please ADD them here please and let us know!
flashing requires 4 wires: GND, TSMC, TCKC and Reset_n.
Signal | Test point |
---|---|
GND | TP8 or TP18 |
+VBAT | TP4 or TP14 |
TSMC | TP5 or TP15 |
TCKC | TP3 or TP13 |
Reset_n | TP2 or TP12 |
During initial configuration Chroma tags search for APs on all supported channels in both the 868 MHz band and the 915 Mhz band. Once an AP is detected the AP's channel and band are saved with the tags settings.
On subsequential resets the last channel is checked for an AP and a scan is only performed if the AP is not detected. Scans are then restricted to channels in the configured band.
This behavior minimizes power consumption and out of band operation.
The tag's settings must be cleared to change bands after the tag is configured.
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.
The serial port's baudrate is 115200, 8 data bits and no parity.
A serial interface compatible with 3v logic levels is required, a 5V cable MAY cause problems, RS232 levels WILL probably destroy the tag.
An a FTDI TTL-232R-3V3 is one example, while somewhat expensive it works flawlessly on many operating systems and supports a wide range of baudrates.
Test point | Signal | FTDI |
---|---|---|
J3 | GND | Black |
TP7 or TP17 | Serial out Chroma -> PC | Yellow |
TP9 or TP19 | Serial out PC -> Chroma Optional |
Orange |
The tag's serial number (SN) is printed on the label on the back of the tag and in barcode format on the label and the front or side of the display.
The SN has 11 characters consisting of 2 letters, 8 digits and one letter. For example "JM10339094B".
The first two letters of the SN appear to indicate the model of the display including if the display is BWR or BWY.
First 2 Letters | Model | Notes |
---|---|---|
GA | EPOP900 | Older LCD type, not an EPaper display |
JA | BWR Chroma 29 | |
JB | BWR Chroma 21 | |
JC | BWR Chroma 42 | |
JD | BWR Chroma 60 | |
JF | BWY? Chroma 29 | |
JG | BWY Chroma 21 | |
JH | BWY Chroma 42 | |
JJ | BWR? Chroma 60 | |
JK | BW? Chroma 16 | |
JL | BWR Chroma 74 | |
JM | BWY Chroma 74 | |
JN | BWR Chroma 37 | |
KA | BW Aura 29 | |
KD | BW Aura 42 | |
LD | Chroma 21 | CC1310 SOC |
ME | Chroma 29 | CC1310 SOC |
MJ | Chroma 21 | CC1310 SOC |
MS | Chroma 74H+ | CC1310 SOC |
SR | BWY Chroma Aeon 74 | CC1311 SOC |
The first digit appears it indicate if the TAG includes hardware support for disconnecting power from the EPD when it is not being used.
Digit | EPD power disconnect |
---|---|
0 | No |
1 | Yes |
The next 7 digits are an unique per tag identifier.
The last character seems to indicate the version of the RF protocol spoken by the display.
The SN is programmed into the SPI flash during manufacture with the possible exception of the last character.
Since the OEPL uses the 8 byte extended address specified by IEEE 802.15.4 and the serial number is only 6 bytes the most significant 2 bytes of the extended address are fixed (0x44 0x67).
Model | Resolution | Tag Type (HW_ID) | Base Type |
---|---|---|---|
Chroma 29 | 296 x 128 | 0x82 | 0x01 |
Chroma 42 | 400 x 300 | 0x83 | 0x02 |
Chroma 74 | 640 x 384 | 0x80 | 0x05 |
Chroma Aeon 74 | 800 x 480 | 0x81 | 0x36 |