rtd266xflash's Issues
python script doesn't work
In the file rtd266x.py, there is in line 2 :
from rtd266x.smbus import SMBus
But there is no file smbus.py in the directory rtd266x
Unknown firmware on latest KeDei KD0350AV02 3.5" TFT
Thanks for this utility, I have successfully used it to flash one of these in the past but the latest one I bought results in "Error: Unknown Firmware". The PCB looks the same as the previous version but when I run diff on the out.bin I had dumped from the old screen compared to this it reports it is different. I will attach the dump file and picture from my latest screen.
EEPROM ZB25VQ40ATIG
Hi Floppes,
i do not know ho to contact you.
I have a PCB800099 V9 board with RTD2660 and ZB25VQ40ATIG EEPROM
https://datasheet.lcsc.com/lcsc/2003172038_Zbit-Semi-ZB25VQ40ATIG_C495748.pdf
I try to backup the firmware before loading other ones.
I successfully connect to the BOARD through ARDUINO UNO with your sketch and with "RTD266xFlash.exe" :
Connecting...
Connection error: timeout, retrying... (1/5)
Connection error: checksum error, retrying... (2/5)
Connection successful!
Reading status info... done
Manufacturer ID: 0x5E (Unknown)
Device ID: 0x12 (Unknown)
JEDEC Manufacturer ID: 0x5E (Unknown)
JEDEC Memory Type: 0x60
JEDEC Capacity: 0x13 (Unknown)
Status: 0x181C
But I am blocked in the "Read EEPROM" section. Indeed, I do not know what are the parameter of memory to be sure to read all the eeprom through "start adress" and "lenth" values.
Can you help?
Thank a lot.
Brice
I get the error "uknown firmware" when trying to load the software through python
help im not really sure what to do. Did i just happen to get a non-compatible board? </3
RTD2556 + EEprom 25Q80DV
Hi,
I've a display board with ICs I wrote in the title.
I edited the arduino sketch to recognize the Jedec ID of this eeprom (0xEF4014) and then tried your C# application and works!
Only problem is that chip is 1MB and the application stops at 512k, so there is no way to read the entire eeprom... So I'm asking if you can update the application for reading/writing 1MB (8Mbit) chips.
I've set the correct value in the arduino sketch but looks like is not this the problem (I wrote the same values of the already present W25X80 changing only the name)
Question: 7" capability ?
Hi, I've read that's for KeDei 3.5" but I've boght 7" HDMI waveshare display which seems to use the same RTD2660H IC. So I'm wondering if there something I should look after before testing? Or it's explicitly for 3.5" displays?
Update readme because issues
I am working with PCB800099 on RTD 2660 chip and found some undocumented problems.
- Change BAUD_RATE to 9600 in RTD266xArduino and in RTD266xFlash.exe, otherwise Connection Timeout error
- Uncomment string:
{"W25X40" , 0xEF3013, 512, 256, 64},
in rtd266x.cpp in Arduino IDE window, otherwise Unknown JEDEC error
PS. It is useful to debug connection issues using famous "i2c_detect" Arduino sketch. Should spit out something like:
I2C device found at address 0x37 !
I2C device found at address 0x4A !
I2C device found at address 0x4B !
I2C device found at address 0x50 !
Support for MPI7002 7"
Hi!
Please add support for new display
If it possible please make patch for this:
there is backlight adjust button, if short click the button, the brightness is added (+10).
if you hold it for more than 3 seconds, the screen turns off. to turn on the screen, press the button again.
BUT there is an error. If I want to turn off the screen, then the brightness is added first, then the screen turns off.
and it may happen that the next switching on of the screen will be with a brightness equal to 10
another way (for patch) switch on always with 100 bright
Firmware dump for Elecrow RC050 5" display
Good evening! I'm attaching the firmware dump I pulled from this device: https://www.elecrow.com/wiki/index.php?title=RC050_5_inch_HDMI_800_x_480_Capacitive_Touch_LCD_Display_for_Raspberry_Pi/_PC/_SONY_PS4
It's a 800 x 480 display with capacitive touchscreen. Fairly popular for SBC projects.
out.zip
I tried to use the GUI to change the logo image. The tool warned me that it is an unknown firmware, but the autodetect appeared to be successful and it generated an out_modified.bin. However, using the python script to try to flash it back to the display, I got this error:
Resetting device...
Entering ISP mode...
Reading chip data...
JEDEC ID: 0x856013
ID: 0x8512
Status: 0x9c
Clearing lock bits...
Status: 0x9c
Writing sectors from file out_modified.bin which differ from sectors of file out.bin...
155648
Erasing sector at address 0x26000
Writing 256 bytes to address 0x26000
Writing 256 bytes to address 0x26100
CRC validation failed! Expected 0xb7, received 0xad
Resetting device...
Any ideas what I might try?
rtd2660 800x480 unknown firmware
hello, first of all, thank you for the effort and your amazing work
I can modify a kedei 3.5 rpi screen perfectly
but when I try to modify a cheap Aliexpress rtd2660h board controller I can write full firmwares but I can't change the boot logo or the input pop up
direct arduino says: error! cannot identify chip
and with the "firmware image option" says: unknown firmware
here is my actual firmware
firmware-ykr.BIN.zip
thank you for your time
composite input option in kedei 3.5"
Thank you for everything you do and for the ease of being able to write and modify our RTD2660.
I've been exploring the various modifications that people can achieve for a short time, and a question arose that could be an addition to your software.
We know that the RTD266x has AV/VGA/HDMI inputs, but on each board, only some are enabled or only one input is enabled, as is the case with my screen, which is the same as the one in the picture in your readme, a Kedei 3.5" HDMI. My question is:
Could the function be added to your software or in some way independently enabled, for example, the composite AV input, understanding that we would have to solder an additional cable to use the input and assign a simple pull-down as a source change button in the case of having two video sources active? Or even better for some projects, in your program, being able to select between a single input, for example, HDMI/AV, so that a source button is not needed.
I hope I'm not being a bother with my question, but this would help several projects that only have composite video signal.
And again, THANK YOU
I get the error "uknown firmware" when trying to load the software through GUI Tool
Hi i have the KD0350AV02 model but it gives me a problem with the GUI tool = Checking "firmware... Error! Unknown firmware.
i upload the firmware
KD0350AV02.zip
New JEDEC id 0x856014 won't flash
This is related to #4 as it appears this chip (P25Q80H) is more or less identical to that one, just bigger.
I'm using Python to work with HDMI to dump the firmware from my chip, but it's not working so well. I can get it to read off the chip, but the data is volatile when I do - that is, I can read twice and get two slightly different files. I also am completely unable to write at all:
Resetting device...
Entering ISP mode...
Reading chip data...
JEDEC ID: 0x856014
ID: 0x8513
Status: 0xfc
Clearing lock bits...
Status: 0xfc
Writing data from file some_file.bin to offset 0...
Erasing sector at address 0x0
Writing 256 bytes to address 0x0
CRC validation failed! Expected 0x5, received 0xba
Error: cannot program flash!
Resetting device...
Is there an easy way to fix this? I checked some of the relevant code and if I didn't misread, the 0x85 at the front of the flash code should be enough on its own to apply the necessary fixes.
Connection in Flash Programm cannot be established
Hello,
first of all thanks for this good GitHub page an explanation.
Unfortunately I stuck in a problem where I didn't find the answer by my own. I'll try to explain and maybe you have an idea.
Environment:
- I'm currently want to adjust the display to have the Zeroboy Logo on it
- The Display is already power optimized like mentioned on the Zeroboy Homepage:
https://www.zeroboy.eu/wp-content/uploads/2018/06/kedei_energiesparen_mod.jpg - A bridge is created between pin1 and pin2 on the power switch
https://www.zeroboy.eu/wp-content/uploads/2017/03/diagram_power.jpg - The display itself works fine and can be used. Screen of RetroPi is shown up
- The Arduino Sketch was moved to the Arduino Uno and connected at the corresponding Pins to the HDMI Port.
- The Screen is switched on first, then the Arduino is connected, flashlight is active and then the Flash Program is started
Problem:
- I select the correct COM Port and press connect. The only response I get is 'error'
- When I start to debug the code with Visual Studio I've found the point where it stopped (in file RTD266x.cs -> Method public Result ReadErrorCode
The ReadComPort Method is successfully called, the Com Port is not null and open. Looks fine but the _comPort.ReadByte(); will returns results which are not valid
Result result = ReadComPort(7, out response);
if (result != Result.Ok) -> This statement is okay
...
if (response[0] != (byte)RtdCommand.GetError) -> This statement end in error
{
return Result.UnexpectedCommand;
}
The array looks like this
[0] = 111 should be 7
[1] = 118 should be 0
[2] = 101
[3] = 114
[4] = 102
[5] = 108
[6] = 111
When I try it again the numbers will change but never be as expected. What was also strange even if no screen is connected I'm getting a result.
As I'm not that experienced in C# and the Com Ports my knowledge ends. First Google results also didn't help me to solve this. Further I've also no brand new display to check if this is related to the adjustments I've done. Maybe you have an idea how to solve this. As I've also checked in the ZeroBoy Facebook group it seems I'm the only one with this issue as of now.
Already tried:
- I've added comments in the Arduino Sketch after the major points in the code and watched them in the Serial Monitor. From this perspective it looks like the Arduino itself does not have a problem
- I've tried different start/connection methods between Laptop, Arduino and Display
Thanks already in advance for your help :)
Best regards
Chris
self.i2c = SMBus(interface) IOError: [Errno 2] No such file or directory
Hello,
sorry to disturb you but i try your tutorial with a RPI4 and i have this error :
python rtd266x_flash.py -r 524288 out.bin Traceback (most recent call last): File "rtd266x_flash.py", line 41, in <module> rtd = RTD266x(args.interface, 0x4A) File "/home/pi/RTD266xFlash/RTD266xPy/rtd266x/rtd266x.py", line 24, in __init__ self.i2c = SMBus(interface) IOError: [Errno 2] No such file or directory
the first issue is i cant detect anything with sudo i2cdetect -y 2
only sudo i2cdetect -r -y 11
and then i found the 4A I2s module.
so i found with googling : in /boot/config.txt look for the [pi4] section and set this value dtoverlay=vc4-kms-v3d,
delete the "f" of fkms, and then i was able to sudo i2cdetect -r -y 11
and found the 4A I2s of the screen but the above error is when i try to read the flash memory with python rtd266x_flash.py -r 524288 out.bin
.
i understand that i should modify the bus number, because you use the 2 in your Pi3 config, but its slightly different with a Pi4, which is the bus 11 or i2s-11...if i have well understanding...
Any idea please?
Thanks!
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
EDIT : GET IT WORKING ON RPI4 :
for those who use a Rpi4, the way is different than on Pi3 : check at : "https://www.ddcutil.com/raspberry/"
so i have just modify the boot.txt with dtoverlay=vc4-kms-v3d
and installed ddcutil and comment the dtparam=i2c2_iknowwhatimdoing
not needed for Pi4,
the read firmware command is :
python rtd266x_flash.py -i 11 -r 524288 out.bin
where 11 is the bus interface...that why the error is complaining about "interface" value that was not provided in the command line...lol...i have understand what i am doing...
and flash command is :
python rtd266x_flash.py -i 11 -d out.bin out_modified.bin
it works! no more blue background awfull screen and no more pop up messages lol, thanks!
PCB80052 firmware unknown
Hi, firstly thank you so much for your dedication and hard work.
I successfully read the firmware from the above board (which has an RTD2660H) using your python tool.
When I try to open it in the editor I get "unknown firmware"
Is there any way I can work with it. I tried opening it in a hex editor but I'm not really sure what I'm looking for, I did find a sequence of bytes that seem similar when looking to disable the call to the hdmi source dialogue.
PCB80052.zip
Any help would really be appreciated, thank you in advance.
JEDEC ID: 0x856013 Cannot setup chip commands. The flash chip id is unknown.
Hello, first of all, thanks for the awesome job, the following is not quite an issue but much more an information request.
I'm trying to get my 7 inches Kedei flashed (using the RPi method), this screen is also managed by a RTD2660 chip.
When I launch the python script it stops with the following error message :
JEDEC ID: 0x856013
Cannot setup chip commands. The flash chip id is unknown.
The script might not be ready for this device but I'm wondering if by any way I could make it work with my device?
Below are some pictures of the board in the case it brings more information to your knowledge :
Cannot connect to gui tool
I'm facing the same issue a few folks had. Uploaded arduino i2c scan and it's finding a lot of devices:
Scanning...
I2C device found at address 0x37 !
I2C device found at address 0x3A !
I2C device found at address 0x4A !
I2C device found at address 0x4B !
I2C device found at address 0x50 !
In the gui it's retrying 5 times and cannot connect. Tried 115200 also 9600 same effect. Any help? After many months ago I successfully connected them but not now.. I'm using arduino pro micro
Unknown firmware
Hello,
First of all many thanks for the good Github page.
Everything is explained very well.
I have only a small problem.
I have downloaded and run the RTD266xFlash.exe v1.5.0.0. If I Select "Remove" HDMI "pop-up" and click on "Modify Firmware" everything goes through to 100% and then I get the error message "checking firmware. Unknown Firmware ... You can send your firmware to the author, maybe it can be added to the known firmwares. "
I'm really sorry, but unfortunately I'm almost a total beginner. Both with the Arduino and Github. Unfortunately I can not use more than your program. For that I lack the knowledge.
With the attached Dropbox link you get to backup my firmware for the KeDei 3.5 inch display.
https://www.dropbox.com/s/236z1o7zqnhgmch/firmware-2019-02-13-20-39-53.bin?dl=0
Please excuse the circumstances.
I hope you can help me.
Thank you in advance.
Peter
Support for Waveshare 4.3"
Hello,
First of all I want to thank you for your excellent tool and very clear instructions!
Thanks to your project I was able to disable the 'HDMI popup' on a Waveshare 4.3" display.
This display also uses the RTD2660 chip.
I have attached the original.bin read from this display.
I found the 'HDMI popup' function at 0x13FE00. By changing the value from 0xE4 to 0x22 I was able to disable the popup.
I also found the 'HDMI popup text' (0x19 0x14 0x1E 0x1F 0x1A) at 0x1233F. However I did not try to change this as I did not need it. The default text shown in the HDMI popup is "HDMI-WaveShare"
Neither did I try changing the background or the logo...
Feel free to include my findings in your project.
Kind regards,
Thomas
Help with flashing
Hi!
Not really an issue...
I've flashed a wrong firmware on my device, on windows using the RTDTool...
Device is rtd2550
and the flashed firmware is for rtd2556
.
But I've made an backup of the original firmware before flashing!
Now the device won't power up anymore.
Then I found about this project. Set up an rpi3 and used the py script to dump the firmware. Compared it to the file I used to flash and it's not the same.
Then I when I try to flash my backup it gives me crc error and aborts.
My controller board is bricked? :-(
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.