How to upgrade firmware FQA Use Online Emulator to design and learn commands
We added a new command of reset the module, if you need this version of firmware, please contact to us.
NOTE:The firmware downloaded here only can be used with the bootloader on our module, not work if you using hardware programmer to write it to display module.
V5.0 (Apr. 17th 2021)
Display Module(Click on name to search) | No Flash chip Overwrite User Fonts+Welcome Screen |
2~16M on board Flash Chip |
4.3" 800x480 IPS display module | 4IN3_FLASH_V5V.hex 44 |
|
3.5" 480x320 IPS display module | 3IN5_FLASH_V5V.hex 36 |
|
2.6" 320x240 IPS display module | 2IN6_NOFLASH_V5V.hex CF |
2IN6_FLASH_V5V.hex E0 |
2.4" 320x240 IPS display module, PCB V3/V5 | 2IN4_HWV3_NOFLASH_V5V.hex CF |
2IN4_HWV3_FLASH_V5V.hex E0 |
2" 320x240 IPS TFT display module | 2IN_NOFLASH_V5V.hex CD |
2IN_FLASH_V5V.hex CE |
New 1.8" 160x128 Color OLED display | 1IN8_COLED_V5V.hex A0 |
1IN8_COLED_Flash_V5V.hex A1 |
1.8" 160x128 TFT display | 1IN8_TFT_V5V.hex 87 |
1IN8_TFT_Flash_V5V.hex 88 |
0.95" 96x64 Color OLED display | IN95_COLED_V5V.hex 60 |
|
Mono LCD/OLED | ||
3" 240x160 LCD display module | 3IN1_240160_Mono_V5B.hex C8 |
|
2" 160x120 LCD display module | 2IN_MONO_160120_LCD_V5B.hex 57 |
|
Universal 128x64 GLCD Adapter, V2 PCB | Universal12864_V5C.hex 00 |
|
1.8 Inch 128x64 Mono LCD with soldered FPC | 1IN8_12864_Solder_FPC_V5.hex 00 |
|
1.8 Inch 128x64 Mono LCD with Socket FPC | 1IN8_12864_Socket_FPC_V5.hex 00 |
|
2.2 Inch 128x64 Mono LCD | 2IN2_12864_LCD_V5.hex 00 |
|
0.96"/1.3" 128x64 Mono OLED display module | 12864_OLED_V5B.hex 80 |
|
96x96 Mono OLED display module | 9696_OLED_V5B.hex 00 |
Steps:(No programmer needed) last updated: Apr. 18th 2021
1) Download this file;
2) change the first 2 letters(00)into the 2 letters on below table(different displays have different letters).;
3) as the same way to upgrade the firmware, use the on MCU bootloader to install this V5 bootloader(DON"T use XON, due to some UART chip unsupport, USE 10ms line delay on Coolterm, otherwise, the display could hard to restored);
4) You will see the "S" on Coolterm @57600bps when the new bootloader installed;
5) send the V5.x firmware to display(CAN use XON) @57600bps to install both bootloader+firmware upgrading
V4.4 (Feb. 2020)
1) Changed backlight control PWM frequency to 40KHz (was 5KHz which produce audiable noise in special cases)
Display Module | No Flash chip Overwrite User Fonts+Welcome Screen |
2~16M on board Flash Chip |
Color LCD | ||
2.6" 320x240 IPS TFT display module |
2IN6_NOFLASH_V44V.hex |
2IN6_FLASH_V44V.hex |
2.4" 400x240 TFT display module | 2IN4_400240_NOFLASH_V44V.hex |
2IN4_400240_FLASH_V44V.hex |
2.4" 320x240 IPS TFT display module, PCB V3/V5 | 2IN4_HWV3_NOFLASH_V44V.hex |
2IN4_HWV3_FLASH_V44V.hex |
2.2" 220x176 TFT display module | 2IN2_220176_NOFLASH_V44B.hex |
|
2" 320x240 TFT display module | 2IN_320240_NOFLASH_V44V.hex |
2IN_320240_FLASH_V44V.hex |
1.8" 160x128 TFT display module | 1IN8_TFT_NOFLASH_V44V.hex |
1IN8_TFT_FLASH_V44V.hex |
1.44" 128x128 TFT display module | 1IN4_TFT_NOFLASH_V44V.hex |
|
Color OLED | ||
1.8" 160x128 Color OLED display module, Gold plated V2 | 1IN8_COLOR_OLED_HWV2_V43V.hex |
1IN8_COLOR_OLED_HWV2_Flash_V43V.hex |
0.95" 96x64 Color OLED display module | IN95_COLOR_OLED_V44B.hex |
|
Mono LCD | ||
3" 240x160 LCD display module | 3IN1_240160_Mono_NF_V44B.hex |
|
2" 160x120 LCD display module | 2IN_MONO_160120_LCD_V44B.hex |
|
Universal 128x64 GLCD Adapter, V2 PCB | Universal12864_V44C.hex |
|
1.8 Inch 128x64 Mono LCD with soldered FPC | 1IN8_12864_Solder_FPC_V44.hex |
|
1.8 Inch 128x64 Mono LCD with Socket FPC | 1IN8_12864_Socket_FPC_V44.hex |
|
2.2 Inch 128x64 Mono LCD | 2IN2_12864_LCD_V44.hex |
|
Mono OLED | ||
0.96"/1.3" 128x64 Mono OLED display module | IN96_12864_OLED_V44B.hex |
|
96x96 Mono OLED display module | 9696_OLED_V44B.hex |
(24-Apr. 2019)
Firmware version: V4.3, add "AUTO-BAUD-DETECT" mode only than V4.2(use V4.4 instead)
1) Default UART is still 9600bps, none AUTO-BAUD-DETECT, still use "SB"+Baud rate to change it (unsaved). Use "SBA" to Set UART serial to AUTO-BAUD-DETECT mode, reset (or repower) the display, send "U" (0x55) to display to sync the Baud rate first.
2) Fixed a receiving bug exist in last V4.3 (this bug not exist in V4.2 and ealier)
(16-Aug. 2017)
Firmware version: V4.2
1)fixed fonts alignment bugs in font: 51,120 and 123 that existed in all earlier version (new index since V4.1 are: '3','5' and '6')
Display Module | No Flash chip Overwrite User Fonts+Welcome Screen |
2~16M on board Flash Chip |
Color LCD | ||
2.6" 320x240 IPS TFT display module | 2IN6_NOFLASH_V42V.hex |
2IN6_FLASH_V42V.hex |
2.4" 400x240 TFT display module | 2IN4_400240_NOFLASH_V42V.hex |
2IN4_400240_FLASH_V42V.hex |
2.4" 320x240 IPS TFT display module, PCB V3/V5 | 2IN4_HWV3_NOFLASH_V42V.hex |
2IN4_HWV3_FLASH_V42V.hex |
2.2" 220x176 TFT display module | 2IN2_220176_NOFLASH_V42B.hex |
|
2" 320x240 TFT display module | 2IN_320240_NOFLASH_V42V.hex |
2IN_320240_FLASH_V42V.hex |
1.8" 160x128 TFT display module | 1IN8_TFT_NOFLASH_V42V.hex |
1IN8_TFT_FLASH_V42V.hex |
1.44" 128x128 TFT display module | 1IN4_TFT_NOFLASH_V42V.hex |
|
Color OLED | ||
1.8" 160x128 Color OLED display module, Gold plated V2 | 1IN8_COLOR_OLED_HWV2_V42V.hex |
1IN8_COLOR_OLED_HWV2_Flash_V42V.hex |
0.95" 96x64 Color OLED display module | IN95_COLOR_OLED_V42B.hex |
|
Mono LCD | ||
3" 240x160 LCD display module | 3IN1_240160_Mono_NF_V42B.hex |
|
2" 160x120 LCD display module | 2IN_MONO_160120_LCD_V42B.hex |
|
Universal 128x64 GLCD Adapter, V2 PCB | Universal12864_V42C.hex |
|
1.8 Inch 128x64 Mono LCD with soldered FPC | 1IN8_12864_Solder_FPC_V42.hex |
|
1.8 Inch 128x64 Mono LCD with Socket FPC | 1IN8_12864_Socket_FPC_V42.hex |
|
2.2 Inch 128x64 Mono LCD | 2IN2_12864_LCD_V42.hex |
|
Mono OLED | ||
0.96"/1.3" 128x64 Mono OLED display module | IN96_12864_OLED_V42B.hex |
|
96x96 Mono OLED display module | 9696_OLED_V42B.hex |
(Jun 2017)
V4.1:
1) fixed clearScreen() function at rotation 1,2,3, that truncated the screen size(but can be fixed by clear screen first then set rotation in the older firmware)
2) "DNALL" can drop down the power current low to ~0.1mA @UART also now, the older version only work at I2C/SPI.
3) improved the speed of "EDIM" commands by using video box(display 8bit/16bit/18bit color image).
4) added "ALIGN" function to allow the character string aligned left/middle/right at current X position(the older firmware only support left alignment)
5) added internal font indexs with ascii value '0','1','2','3','4','5' and '6', also kept the index value 0,6,10,51,18,120,123 that backward compatible, now "SF\x00"="SF0", "SF\x06"="SF1", and so on...
There is no V4.1 firmware here, Please use V4.2 as it only fixed an font bug than V4.1
(1-May 2017)
V4.0 only for test only, there are some major bugs.
V4.0V for Digole 1.8" Color OLED Serial Module, V4.0C for Universal GLCD adapter-work with ST7920/KS0108/ST7565 now
V4.0C-Support ST7920/KS0108/ST7565, automatic detect ST7920 Parallel, KS0108, ST7565 SPI. use "SLCD3" to config it for ST7565 Parallel.
Display Module | No on board Flash chip | 2M on board Flash Chip |
Mono LCD | ||
Universal 128x64 GLCD Adapter, V2 PCB | Universal12864_V40C.hex |
V4.0V
Display Module | No on board Flash chip | 2~16M on board Flash Chip | "VIDEO" command Note | "VIDEO" Demo |
Color LCD | ||||
1.8" 160x128 Color OLED display module, Gold plated V2 | 1IN8_COLOR_OLED_HWV2_V40V.hex |
1IN8_COLOR_OLED_HWV2_Flash_V40V.hex |
2 bytes 16BIT Color: RRRRRGGG,GGGBBBBB 3 bytes 18BIT Color: 00RRRRRR,00GGGGGG,00BBBBBB |
watch |
(2-Feb. 2017)
V4.0V: this version only available for some IPS/TFT modules, the new command "VIDEO" added, this command let user transfer pixel's data directly to the screen, the color format can be 16BIT or 18BIT (note: the 2.6" IPS module only accept 18BIT format), this function is useful for showing the video on the display, the test result is 15fps on a 150x100 pixels window @SPI 10MHz clock (using random color).
Download Arduino ESP8266 sample code.
Display Module | No on board Flash chip | 2~16M on board Flash Chip | "VIDEO" command Note | "VIDEO" Demo |
Color LCD | ||||
2.6" 320x240 IPS TFT display module | 2IN6_NOFLASH_V40V.hex |
2IN6_FLASH_V40V.hex |
3 bytes 18BIT color only: 0RRRRRR0,0GGGGGG0,0BBBBBB0 |
|
2.4" 400x240 TFT display module | 2IN4_400240_NOFLASH_V40V.hex |
2IN4_400240_FLASH_V40V.hex |
2 bytes 16BIT Color: RRRRRGGG,GGGBBBBB 3 bytes 18BIT Color: RRRRRR00,GGGGGG00,BBBBBB00 |
watch |
2.4" 320x240 IPS TFT display module, PCB V3/V5 | 2IN4_HWV3_NOFLASH_V40V.hex |
2IN4_HWV3_FLASH_V40V.hex |
same as above | watch |
2" 320x240 TFT display module | 2IN_320240_NOFLASH_V40V.hex |
2IN_320240_FLASH_V40V.hex |
same as above | |
1.8" 160x128 TFT display module | 1IN8_TFT_NOFLASH_V40V.hex |
1IN8_TFT_FLASH_V40V.hex |
same as above | watch |
1.44" 128x128 TFT display module | 1IN4_TFT_NOFLASH_V40V.hex |
same as above | watch |
V4.0B: (last updated on 24-Jan 2017)Some user told us: if sent read command (eg: read data from the on board flash, eeprom, read touch panel, read battery voltage...), and also if the controller not read out the accurate byte of data(may be the program wrong on controller or restart/reset the controller by keep power on), the continue reading will lost synchronized(because the display module still waiting to the controller to read data out), in the new version, we will let our module analyze the input of data.
eg. in this version, if you sent a command to read N bytes, but you only read out <N bytes, the module will skip to send out the rest of bytes smartly if new data received.
What we done till now?
1) Read data can be skipped if new command received;
2) Fixed delay command "DLY" halt on I2C/SPI mode;
3) Added boundary check for set draw window command:"DWWIN";
4) Fixed the function of flush write command "FLMWR" which not sending value 17 back (the while(read1()!=17) ; halt), this problem caused by 1) in the test version, not effect in V3.9 and earlier firmware;
5) Added "TRANS" command, if the followed data is 1, the display will not write the pixels which is black in an image, that will cause the image looks like Transparant.