Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
The ILI9163C chip is an useful chip, it has a max resolution of 132x162 and 262.000 colors, it has been developed for toys, cellular phones and so on. Has internal frame buffer so your processor doesn't need to use RAM for it. Many chinese vendor sell it with a TFT of 128x128 and internal regulator for very cheap and together it's 2 wire SPI (plus a RS line) it's really useful for small projects!
When I got the first display years ago they selled as PCAxxx compatible but this was true only for pins since ILI chip needs completely different library, at the time someone driving it with ST7735 library but even this is wrong!
I wroted this library by following the datasheet and included any possible command that will help you to create easily interfaces at any rotation with many CPU's!
Since this chip handle has max 132x162 chinese vendors sell it with configurations that are not compatible with the same library, this because the TFT of 128x128 has been mounted with 'offset'.
I have collected the following displays:
- 1.44' RED PCB V1.1 black pin (the oldest one)
- 1.44' RED PCB V1.1 yellow pin (the new one spreading now)
- 1.44' BLACK PCB
- 1.44' BLUE PCB
- 1.44' RED PCB V2.1 (it use ST7735! https://github.com/sumotoy/TFT_ST7735/tree/1.0p1)
- 1.44' RED PCB V1.1 alt (an user repoted a version that uses ST7735! try this library https://github.com/sumotoy/TFT_ST7735/tree/1.0p1)
Caution! Some fakes found
It's crazy but true! I got a couple of supercheap display (around 1 dollar) that are 99% clone of the ILI9163C, this chip it's builded in the flexy-pcb of the display itself so it's almost impossible identify it but it respond correctly to almost all commands (apart some init one that seems ignored). Apart that it looks functional and it simply works but partial mode is not useable
Limitations (caused by Hardware and Bugs of the ILI9163C)
This chip has been designed for battery operation, it has sleep and idle commands, but display backlight has to be controlled externally, when sleep the display backlight will be completely white so you need to turn off the backlight or it will consume a lot.
Type of display's:
Black PCB (common before 2016 but still around)
This is not as common as the other ones but some user has it. Most of the time it should be used the TFT_ILI9163C_BLACK_PCB.h file but it happen that chinese used a black PCB for the model below! I have not this one so I cannot be more precise, best thing is start with the suggested settings and if doesn't work well try the one below. As you can see this is the only display with correct memory mapping and because this is the fast one (at list on fillScreen). The display has 3v3 regulator for supply the ILI chip but logic levels remain at 3V3 so you will need a level translator for connect 5V logic level CPU (as arduino UNO).
Following image shows how the display is mapped...
Uncomment: TFT_ILI9163C_BLACK_PCB.h inside _settings/TFT_ILI9163C_settings.h for use this display
RED PCB with Black Pin (common before 2016 but still around)
This is the first display I put hands on, has a resistor for backlight already mounted so I can supply directly 5V (but please do a fast check, chinese are famous for changes without notice). This display has 3v3 regulator for supply the ILI chip but logic levels remain at 3V3 so you will need a level translator for connect 5V logic level CPU (as arduino UNO).
Following image shows how the display is mapped, for rotation 0 bring it in front of you, pins are at the top (thanks Gimpox for image)
Uncomment: TFT_ILI9163C_RED_PCB_OLD.h inside _settings/TFT_ILI9163C_settings.h for use this display
RED PCB with Yellow Pin (from Gen 2016)
This is pretty similar to the display above but a bit smaller, however has different settings and offset is different. The Backlight led need a bigger resistor and cannot be connected directly at 5V.
This display it's fully supported from version 1.0p6 but not under this version!
Rest of te connections are exact the same of the display above.
Logic Levels are 3V3!
Following image shows how the display is mapped, for rotation 0 bring it in front of you, pins are at the top (thanks Gimpox for the image)
Uncomment: TFT_ILI9163C_RED_PCB_YPIN.h inside _settings/TFT_ILI9163C_settings.h for use this display
Multiple Instances Mode: From version 1.0p7 this library support multiple instances. See here: https://github.com/sumotoy/TFT_ILI9163C/wiki/Two-or-more-display-in-the-same-time