gmenounos / kw1281test

VW KW1281 Protocol Test Tool
MIT License
133 stars 16 forks source link

WriteEeprom issue #12

Open fktbnd opened 2 years ago

fktbnd commented 2 years ago

Hello, Thanks for your work, its fantastic! I got this error while programming my Central Lock Module (1C0962258N) on Win7 32bit with kkl vag com usb cable: Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases) Args: com2 9600 35 WriteEeprom 4352 07 OSVersion: Microsoft Windows NT 6.1.7601 Service Pack 1 .NET Version: 6.0.2 Culture: hu-HU Opening serial port com2 Sending wakeup message Reading sync byte Keyword Lsb $01 Keyword Msb $8A Protocol is KW 1281 (8N1) ECU: 1C0962258N 0A Zentr.Verriegel. 0001 Software Coding 00257, Workshop Code: 00066 Sending Login block Sending WriteEeprom block (Address: $1100, Values: $07 WriteEeprom failed Sending EndCommunication block

I have tried with another module (1C0962258J), and with another serial converter in the cable (ftdi and ch340G) the same error. ReadingEeprom, DumpEeprom works well with every module and cable.

gmenounos commented 2 years ago

Were you able to read address 4352 with kw1281test?

fktbnd commented 2 years ago

Thanks for your reply, Here are the log of the read, write attempts. Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases) Args: com2 9600 35 ReadEeprom 4352 OSVersion: Microsoft Windows NT 6.1.7601 Service Pack 1 .NET Version: 6.0.2 Culture: hu-HU Opening serial port com2 Sending wakeup message Reading sync byte Keyword Lsb $01 Keyword Msb $8A Protocol is KW 1281 (8N1) ECU: 1C0962258N 0A Zentr.Verriegel. 0001 Software Coding 00257, Workshop Code: 00066 Sending Login block Sending ReadEeprom block (Address: $1100, Count: $01) Received "Read EEPROM Response" block: 00 Address 4352 ($1100): Value 0 ($00) Sending EndCommunication block Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases) Args: com2 9600 35 DumpEeprom 4352 10 OSVersion: Microsoft Windows NT 6.1.7601 Service Pack 1 .NET Version: 6.0.2 Culture: hu-HU Opening serial port com2 Sending wakeup message Reading sync byte Keyword Lsb $01 Keyword Msb $8A Protocol is KW 1281 (8N1) ECU: 1C0962258N 0A Zentr.Verriegel. 0001 Software Coding 00257, Workshop Code: 00066 Sending Login block Saving EEPROM dump to ccmeeprom$1100.bin Sending ReadEeprom block (Address: $1100, Count: $0A) Received "Read EEPROM Response" block: 00 5E 11 0A 5D 0E 00 66 0B 0A Saved EEPROM dump to ccmeeprom$1100.bin Sending EndCommunication block Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases) Args: com2 9600 35 WriteEeprom 4353 6 OSVersion: Microsoft Windows NT 6.1.7601 Service Pack 1 .NET Version: 6.0.2 Culture: hu-HU Opening serial port com2 Sending wakeup message Reading sync byte Keyword Lsb $01 Keyword Msb $8A Protocol is KW 1281 (8N1) ECU: 1C0962258N 0A Zentr.Verriegel. 0001 Software Coding 00257, Workshop Code: 00066 Sending Login block Sending WriteEeprom block (Address: $1101, Values: $06 WriteEeprom failed Sending EndCommunication block Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases) Args: com2 9600 35 ReadEeprom 4353 OSVersion: Microsoft Windows NT 6.1.7601 Service Pack 1 .NET Version: 6.0.2 Culture: hu-HU Opening serial port com2 Sending wakeup message Reading sync byte Keyword Lsb $01 Keyword Msb $8A Protocol is KW 1281 (8N1) ECU: 1C0962258N 0A Zentr.Verriegel. 0001 Software Coding 00257, Workshop Code: 00066 Sending Login block Sending ReadEeprom block (Address: $1101, Count: $01) Received "Read EEPROM Response" block: 5E Address 4353 ($1101): Value 94 ($5E) Sending EndCommunication block

gmenounos commented 2 years ago

Interesting. I wonder if the central locking module (address 35) needs a different login code to write to the EEPROM. kw1281test uses 19283 to login for reading and writing the CCM (address 46). Unfortunately, I don't have access to a central locking module in order to do any research. The MKIV cars here in the US seem to all use a CCM.

fktbnd commented 2 years ago

Can I somehow try other login codes?

gmenounos commented 2 years ago

There are 65536 login codes so it would take days to try them all. I wonder if the region you're trying to write to is ROM instead of EEPROM. I have a 1C0959799C CCM here and it has a 512 byte region of RAM at address $1000 and a 4096 byte region at address $9000 that does not seem to be writable.

Could you try running the MapEEPROM command? It tries to read every possible address and builds a map of what regions are readable. It might take a while to run though.

fktbnd commented 2 years ago

Thank you for your reply! This is the map of 1C0962258N. Somehow the .bin from "kw1281test map" is full with F. I made another one from the log file. 1c0962258n_v2.txt I have another one 1co962258J i will read it too.

gmenounos commented 2 years ago

That's a very different map than one from a 1C0 CCM. Do you know for certain that the address you're trying to write is EEPROM and should be writable? Or are you experimenting?

fktbnd commented 2 years ago

I'am only experimenting. I would like to modify the values for selective boot unlocking, for pop up boot.

fktbnd commented 2 years ago

This is the map of 1c0962258J. The program generated .bin full with FF again. 1c0962258J.txt