kw1281test: A Free VDS-Pro / VagTacho Alternative

krook

Veteran Member
Joined
Jan 13, 2021
Location
Hungary
TDI
A4 B5 AWX, A4 B5 AFN
I tried and it does work on a 919 cluster. At least reading the EEPROM does, writing it doesn't seem to. SKC getting doesn't seem to work either. Actuator tests do work.


Here's my tinkering.

Code:
C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
00: $00 $00 $13 $01
01: $00 $00 $13 $01 $20
02: $00 $00 $13 $01 $20
03: $00 $00 $13 $01
Sending Custom "Unlock partial EEPROM read" block
Unlock code for software version $00 $00 $13 $01   is  09 06 05 02
Please report this to the program maintainer.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Received "Read ROM/EEPROM Response" block: 09 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Sending ReadEeprom block (Address: $0010, Count: $10)
Received "Read ROM/EEPROM Response" block: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Sending ReadEeprom block (Address: $0020, Count: $10)
Received "Read ROM/EEPROM Response" block: DE 11 06 01 AA FE 01 FF FF FF 42 ED 09 0B 02 05
Sending ReadEeprom block (Address: $0030, Count: $10)
Received "Read ROM/EEPROM Response" block: 00 00 00 00 00 00 10 A8 10 A8 10 A8 10 A8 10 A8
Sending ReadEeprom block (Address: $0040, Count: $10)
Received "Read ROM/EEPROM Response" block: 10 A8 11 A8 11 A8 35 8A 7A 9E F5 CC 14 01 C9 00
Sending ReadEeprom block (Address: $0050, Count: $10)
Received "Read ROM/EEPROM Response" block: 04 00 9C 1E 00 00 04 00 14 64 80 01 06 96 49 02
Sending ReadEeprom block (Address: $0060, Count: $10)
Received "Read ROM/EEPROM Response" block: 92 43 FF FA AF 15 D1 14 89 FF 00 28 44 44 44 38
Sending ReadEeprom block (Address: $0070, Count: $10)
Received "Read ROM/EEPROM Response" block: 38 38 38 32 32 32 32 D5 D9 5D BD 5F E1 80 BA 74
Sending ReadEeprom block (Address: $0080, Count: $10)
Received "Read ROM/EEPROM Response" block: 78 74 7A 00 DC 05 00 00 78 06 71 01 4B 04 07 00
Sending ReadEeprom block (Address: $0090, Count: $10)
Received "Read ROM/EEPROM Response" block: C2 03 E9 0F 23 10 E9 0F 23 10 18 00 31 00 81 05
Sending ReadEeprom block (Address: $00A0, Count: $10)
Received "Read ROM/EEPROM Response" block: 0D 06 4D 07 BB 09 48 0D 32 10 02 00 6B 00 5A 07
Sending ReadEeprom block (Address: $00B0, Count: $10)
Received "Read ROM/EEPROM Response" block: D7 07 D1 08 C7 0A B7 0D 29 10 CC 00 1E 03 9F 0B
Sending ReadEeprom block (Address: $00C0, Count: $10)
Received "Read ROM/EEPROM Response" block: 39 17 00 00 8B 01 32 07 E8 0E A9 00 56 01 C7 01
Sending ReadEeprom block (Address: $00D0, Count: $10)
Received "Read ROM/EEPROM Response" block: 18 02 37 02 3F 02 4B 02 56 02 D0 01 68 01 F0 00
Sending ReadEeprom block (Address: $00E0, Count: $10)
Received "Read ROM/EEPROM Response" block: 74 00 38 00 28 00 10 00 00 00 2D 00 82 00 CE 00
Sending ReadEeprom block (Address: $00F0, Count: $10)
Received "Read ROM/EEPROM Response" block: FF 00 9A 01 F9 02 57 04 C4 05 AE 00 C7 00 28 01
Sending ReadEeprom block (Address: $0100, Count: $10)
Received "Read ROM/EEPROM Response" block: B1 01 3C 02 25 03 10 04 D0 03 20 03 80 02 E0 01
Sending ReadEeprom block (Address: $0110, Count: $10)
Received "Read ROM/EEPROM Response" block: F0 00 19 00 19 00 D9 02 D9 02 BE 04 99 05 FF 03
Sending ReadEeprom block (Address: $0120, Count: $10)
Received "Read ROM/EEPROM Response" block: A0 A4 00 01 56 28 95 52 D3 7B FF F4 FF F9 FF 00
Sending ReadEeprom block (Address: $0130, Count: $10)
Received "Read ROM/EEPROM Response" block: FF 58 80 DC 80 FD 80 FE 80 FF 0F 00 29 80 93 BF
Sending ReadEeprom block (Address: $0140, Count: $10)
Received "Read ROM/EEPROM Response" block: FF FF 1C 00 FF 80 FF BF FF FF FF BF 80 ED 00 EE
Sending ReadEeprom block (Address: $0150, Count: $10)
Received "Read ROM/EEPROM Response" block: 00 80 BF FF 0A 3C 8C DC 00 80 BF FF 0A 3F 9F FF
Sending ReadEeprom block (Address: $0160, Count: $10)
Received "Read ROM/EEPROM Response" block: 00 80 BF FF 0C 1E 8F FF 00 80 BF FF 0A 3F 9F FF
Sending ReadEeprom block (Address: $0170, Count: $10)
Received "Read ROM/EEPROM Response" block: D7 D0 C8 A4 22 13 49 50 50 50 FF FF FF FF 50 33
Sending ReadEeprom block (Address: $0180, Count: $10)
Received "Read ROM/EEPROM Response" block: 00 90 9E C8 38 44 30 38 38 30 4D 20 42 35 44 30
Sending ReadEeprom block (Address: $0190, Count: $10)
Received "Read ROM/EEPROM Response" block: 32 FF 41 55 56 30 32 38 35 33 32 30 01 B2 28 4C
Sending ReadEeprom block (Address: $01A0, Count: $10)
Received "Read ROM/EEPROM Response" block: 01 B3 C1 0C 01 B3 57 EA 01 B2 F3 88 FF FF FF FF
Sending ReadEeprom block (Address: $01B0, Count: $10)
Received "Read ROM/EEPROM Response" block: FF FF FF FF FF FF FF FF FF FF FF FF FE 4D D7 B3
Sending ReadEeprom block (Address: $01C0, Count: $10)
Received "Read ROM/EEPROM Response" block: FE 4C 3E F3 FE 4C A8 15 FE 4D 0C 77 FF FF FF FF
Sending ReadEeprom block (Address: $01D0, Count: $10)
Received "Read ROM/EEPROM Response" block: FF FF FF FF FF FF FF FF FF FF FF FF 44 30 38 38
Sending ReadEeprom block (Address: $01E0, Count: $10)
Received "Read ROM/EEPROM Response" block: 30 4D 20 44 30 38 38 30 4D 20 44 30 38 38 30 4D
Sending ReadEeprom block (Address: $01F0, Count: $10)
Received "Read ROM/EEPROM Response" block: 20 FF 01 00 2D 19 2D 19 00 14 30 07 30 07 30 07
Saved EEPROM dump to IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 GetSKC
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 GetSKC
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Cluster is non-Immo so there is no SKC.
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 LoadEeprom 0 IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 LoadEeprom 0 IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
00: $00 $00 $13 $01
01: $00 $00 $13 $01 $20
02: $00 $00 $13 $01 $20
03: $00 $00 $13 $01
Sending Custom "Unlock partial EEPROM read" block
Unlock code for software version $00 $00 $13 $01   is  09 06 05 02
Please report this to the program maintainer.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Reading IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
Writing to cluster...
Sending WriteEeprom block (Address: $0000, Values: $09 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0010, Values: $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0020, Values: $DE $11 $06 $01 $AA $FE $01 $FF $FF $FF $42 $ED $09 $0B $02 $05
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0030, Values: $00 $00 $00 $00 $00 $00 $10 $A8 $10 $A8 $10 $A8 $10 $A8 $10 $A8
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0040, Values: $10 $A8 $11 $A8 $11 $A8 $35 $8A $7A $9E $F5 $CC $14 $01 $C9 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0050, Values: $04 $00 $9C $1E $00 $00 $04 $00 $14 $64 $80 $01 $06 $96 $49 $02
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0060, Values: $92 $43 $FF $FA $AF $15 $D1 $14 $89 $FF $00 $28 $44 $44 $44 $38
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0070, Values: $38 $38 $38 $32 $32 $32 $32 $D5 $D9 $5D $BD $5F $E1 $80 $BA $74
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0080, Values: $78 $74 $7A $00 $DC $05 $00 $00 $78 $06 $71 $01 $4B $04 $07 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0090, Values: $C2 $03 $E9 $0F $23 $10 $E9 $0F $23 $10 $18 $00 $31 $00 $81 $05
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00A0, Values: $0D $06 $4D $07 $BB $09 $48 $0D $32 $10 $02 $00 $6B $00 $5A $07
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00B0, Values: $D7 $07 $D1 $08 $C7 $0A $B7 $0D $29 $10 $CC $00 $1E $03 $9F $0B
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00C0, Values: $39 $17 $00 $00 $8B $01 $32 $07 $E8 $0E $A9 $00 $56 $01 $C7 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00D0, Values: $18 $02 $37 $02 $3F $02 $4B $02 $56 $02 $D0 $01 $68 $01 $F0 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00E0, Values: $74 $00 $38 $00 $28 $00 $10 $00 $00 $00 $2D $00 $82 $00 $CE $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00F0, Values: $FF $00 $9A $01 $F9 $02 $57 $04 $C4 $05 $AE $00 $C7 $00 $28 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0100, Values: $B1 $01 $3C $02 $25 $03 $10 $04 $D0 $03 $20 $03 $80 $02 $E0 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0110, Values: $F0 $00 $19 $00 $19 $00 $D9 $02 $D9 $02 $BE $04 $99 $05 $FF $03
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0120, Values: $A0 $A4 $00 $01 $56 $28 $95 $52 $D3 $7B $FF $F4 $FF $F9 $FF $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0130, Values: $FF $58 $80 $DC $80 $FD $80 $FE $80 $FF $0F $00 $29 $80 $93 $BF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0140, Values: $FF $FF $1C $00 $FF $80 $FF $BF $FF $FF $FF $BF $80 $ED $00 $EE
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0150, Values: $00 $80 $BF $FF $0A $3C $8C $DC $00 $80 $BF $FF $0A $3F $9F $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0160, Values: $00 $80 $BF $FF $0C $1E $8F $FF $00 $80 $BF $FF $0A $3F $9F $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0170, Values: $D7 $D0 $C8 $A4 $22 $13 $49 $50 $50 $50 $FF $FF $FF $FF $50 $33
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0180, Values: $00 $90 $9E $C8 $38 $44 $30 $38 $38 $30 $4D $20 $42 $35 $44 $30
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0190, Values: $32 $FF $41 $55 $56 $30 $32 $38 $35 $33 $32 $30 $01 $B2 $28 $4C
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01A0, Values: $01 $B3 $C1 $0C $01 $B3 $57 $EA $01 $B2 $F3 $88 $FF $FF $FF $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01B0, Values: $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FE $4D $D7 $B3
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01C0, Values: $FE $4C $3E $F3 $FE $4C $A8 $15 $FE $4D $0C $77 $FF $FF $FF $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01D0, Values: $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $44 $30 $38 $38
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01E0, Values: $30 $4D $20 $44 $30 $38 $38 $30 $4D $20 $44 $30 $38 $38 $30 $4D
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01F0, Values: $20 $FF $01 $00 $2D $19 $2D $19 $00 $14 $30 $07 $30 $07 $30 $07
WriteEeprom returned 0 blocks instead of 1
EEPROM write failed. You should probably try again.
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 LoadEeprom 0 IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 LoadEeprom 0 IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
00: $00 $00 $13 $01
01: $00 $00 $13 $01 $20
02: $00 $00 $13 $01 $20
03: $00 $00 $13 $01
Sending Custom "Unlock partial EEPROM read" block
Unlock code for software version $00 $00 $13 $01   is  09 06 05 02
Please report this to the program maintainer.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Reading IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin
Writing to cluster...
Sending WriteEeprom block (Address: $0000, Values: $09 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0010, Values: $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0020, Values: $DE $11 $06 $01 $AA $FE $01 $FF $FF $FF $42 $ED $09 $0B $02 $05
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0030, Values: $00 $00 $00 $00 $00 $00 $10 $A8 $10 $A8 $10 $A8 $10 $A8 $10 $A8
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0040, Values: $10 $A8 $11 $A8 $11 $A8 $35 $8A $7A $9E $F5 $CC $14 $01 $C9 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0050, Values: $04 $00 $9C $1E $00 $00 $04 $00 $14 $64 $80 $01 $06 $96 $49 $02
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0060, Values: $92 $43 $FF $FA $AF $15 $D1 $14 $89 $FF $00 $28 $44 $44 $44 $38
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0070, Values: $38 $38 $38 $32 $32 $32 $32 $D5 $D9 $5D $BD $5F $E1 $80 $BA $74
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0080, Values: $78 $74 $7A $00 $DC $05 $00 $00 $78 $06 $71 $01 $4B $04 $07 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0090, Values: $C2 $03 $E9 $0F $23 $10 $E9 $0F $23 $10 $18 $00 $31 $00 $81 $05
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00A0, Values: $0D $06 $4D $07 $BB $09 $48 $0D $32 $10 $02 $00 $6B $00 $5A $07
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00B0, Values: $D7 $07 $D1 $08 $C7 $0A $B7 $0D $29 $10 $CC $00 $1E $03 $9F $0B
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00C0, Values: $39 $17 $00 $00 $8B $01 $32 $07 $E8 $0E $A9 $00 $56 $01 $C7 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00D0, Values: $18 $02 $37 $02 $3F $02 $4B $02 $56 $02 $D0 $01 $68 $01 $F0 $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00E0, Values: $74 $00 $38 $00 $28 $00 $10 $00 $00 $00 $2D $00 $82 $00 $CE $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $00F0, Values: $FF $00 $9A $01 $F9 $02 $57 $04 $C4 $05 $AE $00 $C7 $00 $28 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0100, Values: $B1 $01 $3C $02 $25 $03 $10 $04 $D0 $03 $20 $03 $80 $02 $E0 $01
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0110, Values: $F0 $00 $19 $00 $19 $00 $D9 $02 $D9 $02 $BE $04 $99 $05 $FF $03
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0120, Values: $A0 $A4 $00 $01 $56 $28 $95 $52 $D3 $7B $FF $F4 $FF $F9 $FF $00
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0130, Values: $FF $58 $80 $DC $80 $FD $80 $FE $80 $FF $0F $00 $29 $80 $93 $BF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0140, Values: $FF $FF $1C $00 $FF $80 $FF $BF $FF $FF $FF $BF $80 $ED $00 $EE
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0150, Values: $00 $80 $BF $FF $0A $3C $8C $DC $00 $80 $BF $FF $0A $3F $9F $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0160, Values: $00 $80 $BF $FF $0C $1E $8F $FF $00 $80 $BF $FF $0A $3F $9F $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0170, Values: $D7 $D0 $C8 $A4 $22 $13 $49 $50 $50 $50 $FF $FF $FF $FF $50 $33
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0180, Values: $00 $90 $9E $C8 $38 $44 $30 $38 $38 $30 $4D $20 $42 $35 $44 $30
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $0190, Values: $32 $FF $41 $55 $56 $30 $32 $38 $35 $33 $32 $30 $01 $B2 $28 $4C
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01A0, Values: $01 $B3 $C1 $0C $01 $B3 $57 $EA $01 $B2 $F3 $88 $FF $FF $FF $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01B0, Values: $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FE $4D $D7 $B3
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01C0, Values: $FE $4C $3E $F3 $FE $4C $A8 $15 $FE $4D $0C $77 $FF $FF $FF $FF
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01D0, Values: $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $FF $44 $30 $38 $38
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01E0, Values: $30 $4D $20 $44 $30 $38 $38 $30 $4D $20 $44 $30 $38 $38 $30 $4D
WriteEeprom returned 0 blocks instead of 1
Sending WriteEeprom block (Address: $01F0, Values: $20 $FF $01 $00 $2D $19 $2D $19 $00 $14 $30 $07 $30 $07 $30 $07
WriteEeprom returned 0 blocks instead of 1
EEPROM write failed. You should probably try again.
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 ActuatorTest
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 ActuatorTest
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending actuator test 0x00 block
Received "Actuator Test Response" block: 04 7E
Actuator Test: 04 7E
Press 'N' to advance to next test or 'Q' to quit.......................................................................
.Sending actuator test 0x00 block
Received "Actuator Test Response" block: 02 9A
Actuator Test: Gong
Press 'N' to advance to next test or 'Q' to quit.................................................
.Sending actuator test 0x00 block
Received "Actuator Test Response" block: 03 1E
Actuator Test: Segment Test
Press 'N' to advance to next test or 'Q' to quit...................
.Sending actuator test 0x00 block
Received "Actuator Test Response" block: 02 BD
Actuator Test: 02 BD
Press 'N' to advance to next test or 'Q' to quit..........................
.Sending actuator test 0x00 block
ActuatorTest returned 0 blocks instead of 1
End of test.
.Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args:
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
[omitted]
   [omitted]
    BAUD = 10400|9600|etc.
    ADDRESS = The controller address, e.g. 1 (ECU), 17 (cluster), 46 (CCM), 56 (radio)
    COMMAND =
        ActuatorTest
        AdaptationRead CHANNEL [LOGIN]
            CHANNEL = Channel number (0-99)
            LOGIN = Optional login (0-65535)
        AdaptationSave CHANNEL VALUE [LOGIN]
            CHANNEL = Channel number (0-99)
            VALUE = Channel value (0-65535)
            LOGIN = Optional login (0-65535)
        AdaptationTest CHANNEL VALUE [LOGIN]
            CHANNEL = Channel number (0-99)
            VALUE = Channel value (0-65535)
            LOGIN = Optional login (0-65535)
        BasicSetting GROUP
            GROUP = Group number (0-255)
            (Group 0: Raw controller data)
        ClarionVWPremium4SafeCode
        ClearFaultCodes
        DelcoVWPremium5SafeCode
        DumpEdc15Eeprom [FILENAME]
            FILENAME = Optional filename
        DumpEeprom START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 0) or hex (e.g. $0)
            LENGTH = Number of bytes in decimal (e.g. 2048) or hex (e.g. $800)
            FILENAME = Optional filename
        DumpMarelliMem START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 3072) or hex (e.g. $C00)
            LENGTH = Number of bytes in decimal (e.g. 1024) or hex (e.g. $400)
            FILENAME = Optional filename
        DumpMem START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 8192) or hex (e.g. $2000)
            LENGTH = Number of bytes in decimal (e.g. 65536) or hex (e.g. $10000)
            FILENAME = Optional filename
        DumpRB8Eeprom START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 66560) or hex (e.g. $10400)
            LENGTH = Number of bytes in decimal (e.g. 1024) or hex (e.g. $400)
            FILENAME = Optional filename
        FindLogins LOGIN
            LOGIN = Known good login (0-65535)
        GetSKC
        GroupRead GROUP
            GROUP = Group number (0-255)
            (Group 0: Raw controller data)
        LoadEeprom START FILENAME
            START = Start address in decimal (e.g. 0) or hex (e.g. $0)
            FILENAME = Name of file containing binary data to load into EEPROM
        MapEeprom
        ReadFaultCodes
        ReadIdent
        ReadEeprom ADDRESS
            ADDRESS = Address in decimal (e.g. 4361) or hex (e.g. $1109)
        ReadSoftwareVersion
        Reset
        SetSoftwareCoding CODING WORKSHOP
            CODING = Software coding in decimal (e.g. 4361) or hex (e.g. $1109)
            WORKSHOP = Workshop code in decimal (e.g. 4361) or hex (e.g. $1109)
        WriteEeprom ADDRESS VALUE
            ADDRESS = Address in decimal (e.g. 4361) or hex (e.g. $1109)
            VALUE = Value in decimal (e.g. 138) or hex (e.g. $8A)

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 ReadIdent
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 ReadIdent
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending ReadIdent block
Ident: IMMO-IDENTNR: AUZ7Z0V0285320
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 ReadSoftwareVersion
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 ReadSoftwareVersion
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
00: $00 $00 $13 $01 $00
01: $00 $00 $13 $01 $00
02: $00 $00 $13 $01 $00
03: $00 $00 $13 $01 $00
Sending EndCommunication block

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 FindLogins
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 FindLogins
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
[omitted]
   [omitted]
    BAUD = 10400|9600|etc.
    ADDRESS = The controller address, e.g. 1 (ECU), 17 (cluster), 46 (CCM), 56 (radio)
    COMMAND =
        ActuatorTest
        AdaptationRead CHANNEL [LOGIN]
            CHANNEL = Channel number (0-99)
            LOGIN = Optional login (0-65535)
        AdaptationSave CHANNEL VALUE [LOGIN]
            CHANNEL = Channel number (0-99)
            VALUE = Channel value (0-65535)
            LOGIN = Optional login (0-65535)
        AdaptationTest CHANNEL VALUE [LOGIN]
            CHANNEL = Channel number (0-99)
            VALUE = Channel value (0-65535)
            LOGIN = Optional login (0-65535)
        BasicSetting GROUP
            GROUP = Group number (0-255)
            (Group 0: Raw controller data)
        ClarionVWPremium4SafeCode
        ClearFaultCodes
        DelcoVWPremium5SafeCode
        DumpEdc15Eeprom [FILENAME]
            FILENAME = Optional filename
        DumpEeprom START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 0) or hex (e.g. $0)
            LENGTH = Number of bytes in decimal (e.g. 2048) or hex (e.g. $800)
            FILENAME = Optional filename
        DumpMarelliMem START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 3072) or hex (e.g. $C00)
            LENGTH = Number of bytes in decimal (e.g. 1024) or hex (e.g. $400)
            FILENAME = Optional filename
        DumpMem START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 8192) or hex (e.g. $2000)
            LENGTH = Number of bytes in decimal (e.g. 65536) or hex (e.g. $10000)
            FILENAME = Optional filename
        DumpRB8Eeprom START LENGTH [FILENAME]
            START = Start address in decimal (e.g. 66560) or hex (e.g. $10400)
            LENGTH = Number of bytes in decimal (e.g. 1024) or hex (e.g. $400)
            FILENAME = Optional filename
        FindLogins LOGIN
            LOGIN = Known good login (0-65535)
        GetSKC
        GroupRead GROUP
            GROUP = Group number (0-255)
            (Group 0: Raw controller data)
        LoadEeprom START FILENAME
            START = Start address in decimal (e.g. 0) or hex (e.g. $0)
            FILENAME = Name of file containing binary data to load into EEPROM
        MapEeprom
        ReadFaultCodes
        ReadIdent
        ReadEeprom ADDRESS
            ADDRESS = Address in decimal (e.g. 4361) or hex (e.g. $1109)
        ReadSoftwareVersion
        Reset
        SetSoftwareCoding CODING WORKSHOP
            CODING = Software coding in decimal (e.g. 4361) or hex (e.g. $1109)
            WORKSHOP = Workshop code in decimal (e.g. 4361) or hex (e.g. $1109)
        WriteEeprom ADDRESS VALUE
            ADDRESS = Address in decimal (e.g. 4361) or hex (e.g. $1109)
            VALUE = Value in decimal (e.g. 138) or hex (e.g. $8A)

C:\Users\[omitted]\Desktop>kw1281test COM3 10400 17 FindLogins 12233
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 10400 17 FindLogins 12233
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM3
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0919880M  B5-KOMBIINSTR. VDO D02
Software Coding 20040, Workshop Code: 00000
Sending Login block
Trying 00000
Sending Login block
00000 succeeded
Sending Login block
Trying 00001
Sending Login block
00001 succeeded
Sending Login block
Trying 00002
Sending Login block
00002 succeeded
Sending Login block
Trying 00003
Sending Login block
00003 succeeded
Sending Login block
Trying 00004
Sending Login block
00004 succeeded
Sending Login block
Trying 00005
Sending Login block
00005 succeeded
Sending Login block
Trying 00006
Sending Login block
00006 succeeded
Sending Login block
Trying 00007
Sending Login block
00007 succeeded
Sending Login block
Trying 00008
Sending Login block
00008 succeeded
Sending Login block
Trying 00009
Sending Login block
00009 succeeded
Sending Login block
Trying 00010
Sending Login block
00010 succeeded
Sending Login block
Trying 00011
Sending Login block
00011 succeeded
Sending Login block
Trying 00012
Sending Login block
00012 succeeded
Sending Login block
Trying 00013
Sending Login block
00013 succeeded
Sending Login block
Trying 00014
Sending Login block
00014 succeeded
Sending Login block
Trying 00015
Sending Login block
00015 succeeded
Sending Login block
Trying 00016
Sending Login block
00016 succeeded
Sending Login block
Trying 00017
Sending Login block
00017 succeeded
Sending Login block
Trying 00018
Sending Login block
00018 succeeded
Sending Login block
Trying 00019
Sending Login block
00019 succeeded
Sending Login block
Trying 00020
Sending Login block
00020 succeeded
Sending Login block
Trying 00021
Sending Login block
00021 succeeded
Sending Login block
Trying 00022
Sending Login block
00022 succeeded
Sending Login block
Trying 00023
Sending Login block
00023 succeeded
Sending Login block
Trying 00024
Sending Login block
00024 succeeded
Sending Login block
Trying 00025
Sending Login block
00025 succeeded
Sending Login block
 

VaderBill

New member
Joined
Jun 26, 2022
Location
Ohio
TDI
Audi TT 8N
Maybe a silly question...but I take it this does not work with the newest Ross Tech cable the Hex-V2? Since it says the cable cannot be used with a virtual com port.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
I tried and it does work on a 919 cluster. At least reading the EEPROM does, writing it doesn't seem to. SKC getting doesn't seem to work either. Actuator tests do work.
Thanks for all the testing! Could you email me the EEPROM dump (IMMO-IDENTNR_AUZ7Z0V0285320________$0000_eeprom.bin)? You can find my email on my GitHub profile page.
 

krook

Veteran Member
Joined
Jan 13, 2021
Location
Hungary
TDI
A4 B5 AWX, A4 B5 AFN
I had the chance to try it out on another car, this time a 2001MY Audi A4 B5 1.9 PDTDI (mine is a 98), this one has the half-board cluster with the part number 8D0 920 900R. It's a Jaeger cluster. On this cluster we weren't able to dump the eeprom, even when it created a file, it was just 0's with the specified length. I'll attach the logs, can you help me figure out why? Since this is a 920 cluster, the goal is to add needle sweep to it.

The strange thing is it wouldn't do anything on 10400 baudrate, however on 9600 it did communicate. Just then it failed to get the software version. I have an EEPROM writer at hand so if all else fails we'll try to add the needle sweep that way, but I'd very much appreciate some pointers.

Code:
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $0A
Protocol is KW 1281 (8N1)
Caught: System.InvalidOperationException Wrote 0x6A to port but echo was 0x01
Unhandled exception: System.InvalidOperationException: Wrote 0x6A to port but echo was 0x01
   at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 200
   at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 108
   at BitFab.KW1281Test.KW1281Dialog.ReadAndAckByte() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 401
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 330
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 308
   at BitFab.KW1281Test.KW1281Dialog.Connect() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 80
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 38
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $D5
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $D5
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
Caught: System.TimeoutException The operation has timed out.
Unhandled exception: System.TimeoutException: The operation has timed out.
   at System.IO.Ports.SerialStream.ReadByte(Int32 )
   at System.IO.Ports.SerialStream.ReadByte()
   at System.IO.Ports.SerialPort.ReadByte()
   at BitFab.KW1281Test.Interface.GenericInterface.ReadByte() in C:\Users\gmeno\src\kw1281test\Interface\GenericInterface.cs:line 34
   at BitFab.KW1281Test.KwpCommon.ReadByte() in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 103
   at BitFab.KW1281Test.KW1281Dialog.ReadAndAckByte() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 398
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 341
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 308
   at BitFab.KW1281Test.KW1281Dialog.Connect() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 80
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 38
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $0A
Protocol is KW 1281 (8N1)
Caught: System.InvalidOperationException Wrote 0xAA to port but echo was 0x01
Unhandled exception: System.InvalidOperationException: Wrote 0xAA to port but echo was 0x01
   at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 200
   at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 108
   at BitFab.KW1281Test.KW1281Dialog.ReadAndAckByte() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 401
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 330
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 308
   at BitFab.KW1281Test.KW1281Dialog.Connect() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 80
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 38
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)
Sending ReadEeprom block (Address: $0100, Count: $10)
Sending ReadEeprom block (Address: $0110, Count: $10)
Sending ReadEeprom block (Address: $0120, Count: $10)
Sending ReadEeprom block (Address: $0130, Count: $10)
Sending ReadEeprom block (Address: $0140, Count: $10)
Sending ReadEeprom block (Address: $0150, Count: $10)
Sending ReadEeprom block (Address: $0160, Count: $10)
Sending ReadEeprom block (Address: $0170, Count: $10)
Sending ReadEeprom block (Address: $0180, Count: $10)
Sending ReadEeprom block (Address: $0190, Count: $10)
Sending ReadEeprom block (Address: $01A0, Count: $10)
Sending ReadEeprom block (Address: $01B0, Count: $10)
Sending ReadEeprom block (Address: $01C0, Count: $10)
Sending ReadEeprom block (Address: $01D0, Count: $10)
Sending ReadEeprom block (Address: $01E0, Count: $10)
Sending ReadEeprom block (Address: $01F0, Count: $10)

**********************************************************************
*** Warning: Some bytes could not be read and were replaced with 0 ***
**********************************************************************

Saved EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending EndCommunication block
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)
Sending ReadEeprom block (Address: $0100, Count: $10)
Sending ReadEeprom block (Address: $0110, Count: $10)
Sending ReadEeprom block (Address: $0120, Count: $10)
Sending ReadEeprom block (Address: $0130, Count: $10)
Sending ReadEeprom block (Address: $0140, Count: $10)
Sending ReadEeprom block (Address: $0150, Count: $10)
Sending ReadEeprom block (Address: $0160, Count: $10)
Sending ReadEeprom block (Address: $0170, Count: $10)
Sending ReadEeprom block (Address: $0180, Count: $10)
Sending ReadEeprom block (Address: $0190, Count: $10)
Sending ReadEeprom block (Address: $01A0, Count: $10)
Sending ReadEeprom block (Address: $01B0, Count: $10)
Sending ReadEeprom block (Address: $01C0, Count: $10)
Sending ReadEeprom block (Address: $01D0, Count: $10)
Sending ReadEeprom block (Address: $01E0, Count: $10)
Sending ReadEeprom block (Address: $01F0, Count: $10)

**********************************************************************
*** Warning: Some bytes could not be read and were replaced with 0 ***
**********************************************************************

Saved EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending EndCommunication block
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 256
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 256
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)

**********************************************************************
*** Warning: Some bytes could not be read and were replaced with 0 ***
**********************************************************************

Saved EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending EndCommunication block
❯ kw1281test.exe COM2 8400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 8400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $AB
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $AB
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2.0000138 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $0A
Protocol is KW 1281 (8N1)
Caught: System.InvalidOperationException Wrote 0x6A to port but echo was 0x01
Unhandled exception: System.InvalidOperationException: Wrote 0x6A to port but echo was 0x01
   at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 200
   at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 108
   at BitFab.KW1281Test.KW1281Dialog.ReadAndAckByte() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 401
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 330
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 308
   at BitFab.KW1281Test.KW1281Dialog.Connect() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 80
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 38
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)
Sending ReadEeprom block (Address: $0100, Count: $10)
Sending ReadEeprom block (Address: $0110, Count: $10)
Sending ReadEeprom block (Address: $0120, Count: $10)
Sending ReadEeprom block (Address: $0130, Count: $10)
Sending ReadEeprom block (Address: $0140, Count: $10)
Sending ReadEeprom block (Address: $0150, Count: $10)
Sending ReadEeprom block (Address: $0160, Count: $10)
Sending ReadEeprom block (Address: $0170, Count: $10)
Sending ReadEeprom block (Address: $0180, Count: $10)
Sending ReadEeprom block (Address: $0190, Count: $10)
Sending ReadEeprom block (Address: $01A0, Count: $10)
Sending ReadEeprom block (Address: $01B0, Count: $10)
Sending ReadEeprom block (Address: $01C0, Count: $10)
Sending ReadEeprom block (Address: $01D0, Count: $10)
Sending ReadEeprom block (Address: $01E0, Count: $10)
Sending ReadEeprom block (Address: $01F0, Count: $10)

**********************************************************************
*** Warning: Some bytes could not be read and were replaced with 0 ***
**********************************************************************

Saved EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending EndCommunication block
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Caught: System.InvalidOperationException Wrote 0xF5 to port but echo was 0x85
Unhandled exception: System.InvalidOperationException: Wrote 0xF5 to port but echo was 0x85
   at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 200
   at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 108
   at BitFab.KW1281Test.KW1281Dialog.ReadAndAckByte() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 401
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlock() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 336
   at BitFab.KW1281Test.KW1281Dialog.ReceiveBlocks() in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 308
   at BitFab.KW1281Test.KW1281Dialog.ReadEeprom(UInt16 address, Byte count) in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 138
   at BitFab.KW1281Test.Cluster.VdoCluster.DumpEeprom(UInt16 startAddr, UInt16 length, Byte maxReadLength, String fileName) in C:\Users\gmeno\src\kw1281test\Cluster\VdoCluster.cs:line 693
   at BitFab.KW1281Test.Cluster.VdoCluster.DumpEeprom(Nullable`1 optionalAddress, Nullable`1 optionalLength, String optionalFileName) in C:\Users\gmeno\src\kw1281test\Cluster\VdoCluster.cs:line 45
   at BitFab.KW1281Test.Tester.DumpClusterEeprom(UInt16 startAddress, UInt16 length, String filename) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 691
   at BitFab.KW1281Test.Tester.DumpEeprom(UInt32 address, UInt32 length, String filename) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 363
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 298
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 10400 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 10400 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Caught: System.InvalidOperationException Unexpected sync byte: Expected $55, Actual $95
Unhandled exception: System.InvalidOperationException: Unexpected sync byte: Expected $55, Actual $95
   at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 75
   at BitFab.KW1281Test.Tester.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 31
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 249
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 512
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)
Sending ReadEeprom block (Address: $0100, Count: $10)
Sending ReadEeprom block (Address: $0110, Count: $10)
Sending ReadEeprom block (Address: $0120, Count: $10)
Sending ReadEeprom block (Address: $0130, Count: $10)
Sending ReadEeprom block (Address: $0140, Count: $10)
Sending ReadEeprom block (Address: $0150, Count: $10)
Sending ReadEeprom block (Address: $0160, Count: $10)
Sending ReadEeprom block (Address: $0170, Count: $10)
Sending ReadEeprom block (Address: $0180, Count: $10)
Sending ReadEeprom block (Address: $0190, Count: $10)
Sending ReadEeprom block (Address: $01A0, Count: $10)
Sending ReadEeprom block (Address: $01B0, Count: $10)
Sending ReadEeprom block (Address: $01C0, Count: $10)
Sending ReadEeprom block (Address: $01D0, Count: $10)
Sending ReadEeprom block (Address: $01E0, Count: $10)
Sending ReadEeprom block (Address: $01F0, Count: $10)

**********************************************************************
*** Warning: Some bytes could not be read and were replaced with 0 ***
**********************************************************************

Saved EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending EndCommunication block
❯ kw1281test.exe COM2 9600 17 DumpEeprom 0 1024
KW1281Test: Yesterday's diagnostics...Today.

Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 1024
OSVersion: Microsoft Windows NT 10.0.22000.0
.NET Version: 6.0.2
Culture: en-US
Opening serial port COM2
Sending wakeup message
Wakeup duration: 2 seconds
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
Software Coding 00140, Workshop Code: 00470
Sending ReadIdent block
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Cluster did not return software version.
Unknown cluster software version. EEPROM access will likely fail.
Sending Custom "Need Seed/Key?" block
Sending Custom "Seed request" block
Sending Custom "Need Seed/Key?" block
Failed to unlock cluster.
Saving EEPROM dump to XXXXXXXXXXXXXXXXX_____AUZ5Z0C2138080_$0000_eeprom.bin
Sending ReadEeprom block (Address: $0000, Count: $10)
Sending ReadEeprom block (Address: $0010, Count: $10)
Sending ReadEeprom block (Address: $0020, Count: $10)
Sending ReadEeprom block (Address: $0030, Count: $10)
Sending ReadEeprom block (Address: $0040, Count: $10)
Sending ReadEeprom block (Address: $0050, Count: $10)
Sending ReadEeprom block (Address: $0060, Count: $10)
Sending ReadEeprom block (Address: $0070, Count: $10)
Sending ReadEeprom block (Address: $0080, Count: $10)
Sending ReadEeprom block (Address: $0090, Count: $10)
Sending ReadEeprom block (Address: $00A0, Count: $10)
Sending ReadEeprom block (Address: $00B0, Count: $10)
Sending ReadEeprom block (Address: $00C0, Count: $10)
Sending ReadEeprom block (Address: $00D0, Count: $10)
Sending ReadEeprom block (Address: $00E0, Count: $10)
Sending ReadEeprom block (Address: $00F0, Count: $10)
Sending ReadEeprom block (Address: $0100, Count: $10)
Sending ReadEeprom block (Address: $0110, Count: $10)
Sending ReadEeprom block (Address: $0120, Count: $10)
Sending ReadEeprom block (Address: $0130, Count: $10)
Sending ReadEeprom block (Address: $0140, Count: $10)
Sending ReadEeprom block (Address: $0150, Count: $10)
Sending ReadEeprom block (Address: $0160, Count: $10)
Sending ReadEeprom block (Address: $0170, Count: $10)
Sending ReadEeprom block (Address: $0180, Count: $10)
Sending ReadEeprom block (Address: $0190, Count: $10)
Sending ReadEeprom block (Address: $01A0, Count: $10)
Sending ReadEeprom block (Address: $01B0, Count: $10)
Sending ReadEeprom block (Address: $01C0, Count: $10)
Sending ReadEeprom block (Address: $01D0, Count: $10)
Sending ReadEeprom block (Address: $01E0, Count: $10)
Sending ReadEeprom block (Address: $01F0, Count: $10)
Sending ReadEeprom block (Address: $0200, Count: $10)
Sending ReadEeprom block (Address: $0210, Count: $10)
Sending ReadEeprom block (Address: $0220, Count: $10)
Sending ReadEeprom block (Address: $0230, Count: $10)
Sending ReadEeprom block (Address: $0240, Count: $10)
Sending ReadEeprom block (Address: $0250, Count: $10)
Sending ReadEeprom block (Address: $0260, Count: $10)
Sending ReadEeprom block (Address: $0270, Count: $10)
Sending ReadEeprom block (Address: $0280, Count: $10)
Sending ReadEeprom block (Address: $0290, Count: $10)
Sending ReadEeprom block (Address: $02A0, Count: $10)
Caught: System.TimeoutException The operation has timed out.
Unhandled exception: System.TimeoutException: The operation has timed out.
   at System.IO.Ports.SerialStream.ReadByte(Int32 )
   at System.IO.Ports.SerialPort.ReadByte()
   at BitFab.KW1281Test.Interface.GenericInterface.ReadByte() in C:\Users\gmeno\src\kw1281test\Interface\GenericInterface.cs:line 34
   at BitFab.KW1281Test.KwpCommon.ReadComplement(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 114
   at BitFab.KW1281Test.KW1281Dialog.WriteByteAndReadAck(Byte b) in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 323
   at BitFab.KW1281Test.KW1281Dialog.SendBlock(List`1 blockBytes) in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 295
   at BitFab.KW1281Test.KW1281Dialog.ReadEeprom(UInt16 address, Byte count) in C:\Users\gmeno\src\kw1281test\KW1281Dialog.cs:line 131
   at BitFab.KW1281Test.Cluster.VdoCluster.DumpEeprom(UInt16 startAddr, UInt16 length, Byte maxReadLength, String fileName) in C:\Users\gmeno\src\kw1281test\Cluster\VdoCluster.cs:line 693
   at BitFab.KW1281Test.Cluster.VdoCluster.DumpEeprom(Nullable`1 optionalAddress, Nullable`1 optionalLength, String optionalFileName) in C:\Users\gmeno\src\kw1281test\Cluster\VdoCluster.cs:line 45
   at BitFab.KW1281Test.Tester.DumpClusterEeprom(UInt16 startAddress, UInt16 length, String filename) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 691
   at BitFab.KW1281Test.Tester.DumpEeprom(UInt32 address, UInt32 length, String filename) in C:\Users\gmeno\src\kw1281test\Tester.cs:line 363
   at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 298
   at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 26
/mnt/c/Users/antamoln/Documents/vcom main ?2 ❯
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
I had the chance to try it out on another car, this time a 2001MY Audi A4 B5 1.9 PDTDI (mine is a 98), this one has the half-board cluster with the part number 8D0 920 900R. It's a Jaeger cluster. On this cluster we weren't able to dump the eeprom, even when it created a file, it was just 0's with the specified length. I'll attach the logs, can you help me figure out why? Since this is a 920 cluster, the goal is to add needle sweep to it.

The strange thing is it wouldn't do anything on 10400 baudrate, however on 9600 it did communicate. Just then it failed to get the software version. I have an EEPROM writer at hand so if all else fails we'll try to add the needle sweep that way, but I'd very much appreciate some pointers.

Code:
Version 0.74-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM2 9600 17 DumpEeprom 0 512

ECU: 8D0920900R  KOMBI+WEGFAHRS. M73 D55
"M73" indicates that this is a Magneti Marelli cluster, so you need to use 9600 baud and the DumpMarelliMem command.

However, you'll need to downgrade to version 0.71 for now as there are bugs in newer versions that prevent DumpMarelliMem from working properly.

Depending on whether it's an Immo2 or Immo3 cluster, you'll need to do either "DumpMarelliMem 3072 1024" or "DumpMarelliMem 14336 2048".

Also, kw1281test can't (yet) write to Marelli EEPROMs and I wasn't aware that the needle sweep patch worked on anything other than a VDO MFA or FIS cluster.
 

krook

Veteran Member
Joined
Jan 13, 2021
Location
Hungary
TDI
A4 B5 AWX, A4 B5 AFN
Thanks! The owner pulled the cluster today and it seems like it's not even a Marelli but a Jaeger cluster. As far as I know, Immo3 is used since the ECU is EDC15 (engine is one of the earliest PD engines, AJM). We'll try the Marelli command anyways.



> Also, kw1281test can't (yet) write to Marelli EEPROMs and I wasn't aware that the needle sweep patch worked on anything other than a VDO MFA or FIS cluster.

We're not sure it does either, and you probably know better. We just wanted to try and give it a shot since it's a 920 cluster, but I haven't found anyone saying they made needle sweep happen it this car.
 

Ascenity

Member
Joined
Apr 21, 2017
Location
Hampshire, England
TDI
MKIV 1.8T
Just popped in to say thanks for your on-going work on this project.

I just purchased an Audi TT (1.8T 225, 2001) with a Magneti Marelli cluster (8N2 920 930 C / M73 D56) & had a read through this thread to find the command I needed (kw1281Test.exe COM3 9600 17 DumpMarelliMem 14336 2048), then ran the command on 0.71, which allowed me to calculate the SKC from the dump & login to the cluster - thank you! 🙌
 

Geomeo123

Member
Joined
Mar 11, 2022
Location
Houston TX
TDI
beetle
I have M73 D05 Audi TT cluster The part # is 8N1920980A. I'm trying to get the SKC from. Doesn't work. Can't do a DumpMarelliMem either. I've got the source code installed in visual studio 2022, but I'm unsure exactly what I'm looking for while debugging or what's expected waiting for ack. I have a little bit of C# knowledge. Maybe someone can give me some pointers what to look for? Version 0.71 seems to work better than 0.74. I'm also wondering if there's a way to update my cluster to D14 without losing the SKC coz the SKC is really all I'm looking for right now.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Did you try both "DumpMarelliMem 3072 1024" and "DumpMarelliMem 14336 2048"? Did you try both 9600 and 10400 baud? I don't even know for sure if kw1281test would work with your cluster because I don't own any Marelli TT clusters and it's difficult to add support for a cluster unless I have one to test with.
 

Geomeo123

Member
Joined
Mar 11, 2022
Location
Houston TX
TDI
beetle
10400 baud rate doesn't get past the first bit. It looks like it's waiting for ack after it tries to write the 0x6C from cluster and stops there. I tried adding 10 seconds to the thread sleep under writeline("sending block 0x6C), still times out though. The problem you might come across is nobody wants to give up the Audi TT clusters, because there was a pixelation problem with them and Audi/VW didn't exactly do a great job of fixing that. Even after a class action lawsuit. And well to cut a long story short. You won't find these clusters cheaply as others. They are rare if you can get one in good working condition. So spare ones are limited. I can port forward my laptop IP if you want to take a look on Remote Desktop? :=D Or Maybe team viewer? I suspect if you find the problem with mine you'll probably figure out the issue all the other D0x versions.
 

Ascenity

Member
Joined
Apr 21, 2017
Location
Hampshire, England
TDI
MKIV 1.8T
I have M73 D05 Audi TT cluster The part # is 8N1920980A. I'm trying to get the SKC from. Doesn't work. Can't do a DumpMarelliMem either. I've got the source code installed in visual studio 2022, but I'm unsure exactly what I'm looking for while debugging or what's expected waiting for ack. I have a little bit of C# knowledge. Maybe someone can give me some pointers what to look for? Version 0.71 seems to work better than 0.74. I'm also wondering if there's a way to update my cluster to D14 without losing the SKC coz the SKC is really all I'm looking for right now.
Looks like that's IMMO2, so I'm assuming that you're using "DumpMarelliMem 3072 1024"? (as above).

I initially had issues connecting as my cluster was locked out. You should be able to check if you're locked out with VCDS by going to:
[17 - Instruments]
[Meas. Blocks - 08]
Select Block 024.
[Go!]


If all 3 fields displayed show 0 then you'e not locked out, but if they show anything else then you're probably locked out & should leave your ignition turned to ACC (engine off, electrics on) until the fields show 0.

If all else fails, you might be able to use the ME7 eeprom tool to pull the SKC from the ECU - I was able to confirm that this method also works, after first finding my SKC with kw1281test, then runnning "me7eeprom -p 1 -b 10400 --OBD --screen --SKC" (p 1 being your COM port), which provided the same SKC as I pulled with kw1281test (not 100% if I am allowed to share here, so just google "s4wiki me7-eeprom-1.40.zip" and you'll find it).
 

Sapis

Member
Joined
Aug 15, 2022
Location
Budapest, Hungary
TDI
1.9 PDTDI ASZ
Hello All.

First of all, sorry for my english.
I brought a special case, i have an 2004 VW Sharan with 7M3 962 258 AG CCU (similiar to golf4, etc.). It has to learn the comfort windows via keyfob with vds-pro, but i dont have it, so i tried my luck with kw1281test 0.74 beta win10. Cause this module comm. via channel 09 (not 46). i communicated with it with readident, and it's work, but when i try to read the 61003 value it gets readeeprom failed. Sorry i dont have logs cause i dont know how to make. I have to write the 61003 from 17 to 19.

version 0.74-beta
args: com 10400 09 readeeprom 61003
osversion win NT 6.1.7600.0
culture hu-hu
opening serial port com 2
sendind wakeup message
wakeup dur. 1,999 sec
reading sync byte
keyword Lsb $01
keyword Msb $8A
protocol KW1281 (8N1)
ecu: 7M3 962 258 AG multifunkt.einh 0002
soft code 16401, workshop code 00020
sending readeeprom block (adress: $EE4B, count: $01
EEPROM read failed
endcom

Thanks for anything,
Cheers
 

Geomeo123

Member
Joined
Mar 11, 2022
Location
Houston TX
TDI
beetle
Looks like that's IMMO2, so I'm assuming that you're using "DumpMarelliMem 3072 1024"? (as above).

I initially had issues connecting as my cluster was locked out. You should be able to check if you're locked out with VCDS by going to:
[17 - Instruments]
[Meas. Blocks - 08]
Select Block 024.
[Go!]


If all 3 fields displayed show 0 then you'e not locked out, but if they show anything else then you're probably locked out & should leave your ignition turned to ACC (engine off, electrics on) until the fields show 0.

If all else fails, you might be able to use the ME7 eeprom tool to pull the SKC from the ECU - I was able to confirm that this method also works, after first finding my SKC with kw1281test, then runnning "me7eeprom -p 1 -b 10400 --OBD --screen --SKC" (p 1 being your COM port), which provided the same SKC as I pulled with kw1281test (not 100% if I am allowed to share here, so just google "s4wiki me7-eeprom-1.40.zip" and you'll find it).
I think I might have to ground a pin internally in the ECU to use ME7EEprom, which I was trying to avoid given that I would have to open it up. I have the cluster on the bench. Going by others this isn't the first time this problem has occured. There is one thing that the cluster does after it trips up on the waiting ack. In about 20 to 30 seconds it acts like it reboots. Starts doing the whole beeping phase again. It seems more that the 0x6C might be something else in the earlier versions.
 

Ascenity

Member
Joined
Apr 21, 2017
Location
Hampshire, England
TDI
MKIV 1.8T
I think I might have to ground a pin internally in the ECU to use ME7EEprom, which I was trying to avoid given that I would have to open it up. I have the cluster on the bench. Going by others this isn't the first time this problem has occured. There is one thing that the cluster does after it trips up on the waiting ack. In about 20 to 30 seconds it acts like it reboots. Starts doing the whole beeping phase again. It seems more that the 0x6C might be something else in the earlier versions.
I used it directly through a cheap KKL cable (same one I use with kw1281) without grounding any pins & seemed to work fine - I think you only need to ground a pin if you're trying to write to the ECU.

The cluster usually resets after a successful dump, but I've haven't seen mine reset if the dump fails - have you tried running the commands with the cluster connected to the car? I have zero experience using a bench, so doubt I'll be able to help you much there.
 

krook

Veteran Member
Joined
Jan 13, 2021
Location
Hungary
TDI
A4 B5 AWX, A4 B5 AFN
Hello All.

First of all, sorry for my english.
I brought a special case, i have an 2004 VW Sharan with 7M3 962 258 AG CCU (similiar to golf4, etc.). It has to learn the comfort windows via keyfob with vds-pro, but i dont have it, so i tried my luck with kw1281test 0.74 beta win10. Cause this module comm. via channel 09 (not 46). i communicated with it with readident, and it's work, but when i try to read the 61003 value it gets readeeprom failed. Sorry i dont have logs cause i dont know how to make. I have to write the 61003 from 17 to 19.

version 0.74-beta
args: com 10400 09 readeeprom 61003
osversion win NT 6.1.7600.0
culture hu-hu
opening serial port com 2
sendind wakeup message
wakeup dur. 1,999 sec
reading sync byte
keyword Lsb $01
keyword Msb $8A
protocol KW1281 (8N1)
ecu: 7M3 962 258 AG multifunkt.einh 0002
soft code 16401, workshop code 00020
sending readeeprom block (adress: $EE4B, count: $01
EEPROM read failed
endcom

Thanks for anything,
Cheers
Have you tried other baudrates as well? 9600 maybe?
 

Sapis

Member
Joined
Aug 15, 2022
Location
Budapest, Hungary
TDI
1.9 PDTDI ASZ
yes, 9600 and 14400 and nothing happens, only when 10400.

i have 2 cluster works the program well, i can read eeprom there. one in the car and the another on my table with a PSU.
 
Last edited:

krook

Veteran Member
Joined
Jan 13, 2021
Location
Hungary
TDI
A4 B5 AWX, A4 B5 AFN
I think the command to use should be "dumpccmrom", however the program thinks CCM can only live on channels 35 and 46. I'm still not sure how you would write it back. Maybe gmenounos can help us with this.
 

Sapis

Member
Joined
Aug 15, 2022
Location
Budapest, Hungary
TDI
1.9 PDTDI ASZ
I think the command to use should be "dumpccmrom", however the program thinks CCM can only live on channels 35 and 46. I'm still not sure how you would write it back. Maybe gmenounos can help us with this.
so comX 10400 09 dumpccmrom?

tried out, only works with cluster and ccm
 
Last edited:

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Hello All.

First of all, sorry for my english.
I brought a special case, i have an 2004 VW Sharan with 7M3 962 258 AG CCU (similiar to golf4, etc.). It has to learn the comfort windows via keyfob with vds-pro, but i dont have it, so i tried my luck with kw1281test 0.74 beta win10. Cause this module comm. via channel 09 (not 46). i communicated with it with readident, and it's work, but when i try to read the 61003 value it gets readeeprom failed. Sorry i dont have logs cause i dont know how to make. I have to write the 61003 from 17 to 19.

version 0.74-beta
args: com 10400 09 readeeprom 61003
osversion win NT 6.1.7600.0
culture hu-hu
opening serial port com 2
sendind wakeup message
wakeup dur. 1,999 sec
reading sync byte
keyword Lsb $01
keyword Msb $8A
protocol KW1281 (8N1)
ecu: 7M3 962 258 AG multifunkt.einh 0002
soft code 16401, workshop code 00020
sending readeeprom block (adress: $EE4B, count: $01
EEPROM read failed
endcom

Thanks for anything,
Cheers
It sounds like you're trying to do something like this: https://www.sgaf.de/t/vds-anleitung-und-codes/13546
I'll need to make some enhancements to kw1281test to support this. Maybe this weekend I'll have time. I'll let you know.
 

weezel66613

Member
Joined
Aug 20, 2022
Location
USA
TDI
Beetle
This is exactly what I needed at the right time. Working on a 2000 NB. I have read every post but still cannot get it to work. I keep getting multiple different errors. I can get it to ReadIdent once then everything starts to error. I don't know what I am doing wrong. Using the KKL cable from Amazon listed as compatible. Thanks in advance for any help.
---------------------------------------------------------------------------------------------------
C:\kw1281test_0.71-beta_Win10>.\kw1281test.exe COM3 9600 17 ReadIdent
KW1281Test: Yesterday's diagnostics...Today.

Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 ReadIdent
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920901 KOMBI+WEGFAHRS. M73 V02
Software Coding 00000, Workshop Code: 09455
Sending ReadIdent block
Ident: Ident.-Nr. Wegfahrs.:VWZ5Z0X7196115
Sending EndCommunication block
-------------------------------------------------------------------------------------------------
C:\kw1281test_0.71-beta_Win10>.\kw1281test.exe COM3 9600 17 GetSKC
KW1281Test: Yesterday's diagnostics...Today.

Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 GetSKC
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920901 KOMBI+WEGFAHRS. M73 V02
Software Coding 00000, Workshop Code: 09455
Sending block 0x6C
Writing data to cluster microcontroller
Receiving ACK
Writing memory dump program to cluster microcontroller
Receiving ACK
Receiving memory dump
Caught: System.TimeoutException The operation has timed out.
Unhandled exception: System.TimeoutException: The operation has timed out.
at System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
at System.IO.Ports.SerialPort.ReadByte()
at BitFab.KW1281Test.Interface.GenericInterface.ReadByte() in C:\Users\gmeno\src\kw1281test\Interface\GenericInterface.cs:line 33
at BitFab.KW1281Test.KwpCommon.ReadByte() in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 99
at BitFab.KW1281Test.Cluster.MarelliCluster.DumpMem(IKW1281Dialog kwp1281, String ecuInfo, String filename, Nullable`1 address, Nullable`1 count) in C:\Users\gmeno\src\kw1281test\Cluster\MarelliCluster.cs:line 147
at BitFab.KW1281Test.Program.GetSkc() in C:\Users\gmeno\src\kw1281test\Program.cs:line 804
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 296
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
------------------------------------------------------------------------------------------------------------
C:\kw1281test_0.71-beta_Win10>.\kw1281test.exe COM3 9600 17 GetSKC
KW1281Test: Yesterday's diagnostics...Today.

Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 GetSKC
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Caught: System.InvalidOperationException Wrote 0x75 to port but echo was 0x55
Unhandled exception: System.InvalidOperationException: Wrote 0x75 to port but echo was 0x55
at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 182
at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 104
at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 84
at BitFab.KW1281Test.Program.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Program.cs:line 364
at BitFab.KW1281Test.Program.GetSkc() in C:\Users\gmeno\src\kw1281test\Program.cs:line 749
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 296
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
 

weezel66613

Member
Joined
Aug 20, 2022
Location
USA
TDI
Beetle
Instead of GetSKC, try these 2 commands:
  1. DumpMarelliMem 3072 1024
  2. DumpMarelliMem 14336 2048
I'm thinking the first one will most likely work for a 2000 NB cluster.
Running the first one gives me an invalid operation. Receivingthe wrong echo?
--------------------------------------------------------------------------
C:\kw1281test_0.71-beta_Win10>.\kw1281test.exe COM3 9600 17 DumpMarelliMem 3072 1024
KW1281Test: Yesterday's diagnostics...Today.

Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 DumpMarelliMem 3072 1024
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Caught: System.InvalidOperationException Wrote 0x75 to port but echo was 0x55
Unhandled exception: System.InvalidOperationException: Wrote 0x75 to port but echo was 0x55
at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 182
at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 104
at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 84
at BitFab.KW1281Test.Program.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Program.cs:line 364
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 282
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Running the first one gives me an invalid operation. Receiving the wrong echo?
Keep trying. Maybe take the key out of the ignition for a few minutes before trying again. Could be noise on the K-line or some other module is trying to broadcast on the K-line unexpectedly.
 

weezel66613

Member
Joined
Aug 20, 2022
Location
USA
TDI
Beetle
I will try again tomorrow. Not sure why it will run ReadIdent successfully then next time fails. ReadIdent is the only thing that has successfully completed. Should I still be running on version 71 for the NB? I will report back with results.
 

weezel66613

Member
Joined
Aug 20, 2022
Location
USA
TDI
Beetle
Instead of GetSKC, try these 2 commands:
  1. DumpMarelliMem 3072 1024
  2. DumpMarelliMem 14336 2048
  3. I'm thinking the first one will most likely work for a 2000 NB cluster.
Still a no go. Getting timeouts and wrong echo. I have tried everything I thought was relevant.
----------------------------------------------
Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 DumpMarelliMem 14336 2048
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920901 KOMBI+WEGFAHRS. M73 V02
Software Coding 00001, Workshop Code: 09455
Sending block 0x6C
Writing data to cluster microcontroller
Receiving ACK
Writing memory dump program to cluster microcontroller
Receiving ACK
Receiving memory dump
Caught: System.TimeoutException The operation has timed out.
Unhandled exception: System.TimeoutException: The operation has timed out.
at System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
at System.IO.Ports.SerialPort.ReadByte()
at BitFab.KW1281Test.Interface.GenericInterface.ReadByte() in C:\Users\gmeno\src\kw1281test\Interface\GenericInterface.cs:line 33
at BitFab.KW1281Test.KwpCommon.ReadByte() in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 99
at BitFab.KW1281Test.Cluster.MarelliCluster.DumpMem(IKW1281Dialog kwp1281, String ecuInfo, String filename, Nullable`1 address, Nullable`1 count) in C:\Users\gmeno\src\kw1281test\Cluster\MarelliCluster.cs:line 147
at BitFab.KW1281Test.Program.DumpMarelliMem(IKW1281Dialog& kwp1281, UInt32 address, UInt32 length, ControllerInfo ecuInfo) in C:\Users\gmeno\src\kw1281test\Program.cs:line 708
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 283
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
----------------------------------------------------------------------
Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 DumpMarelliMem 14336 2048
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920901 KOMBI+WEGFAHRS. M73 V02
Software Coding 00001, Workshop Code: 09455
Sending block 0x6C
Writing data to cluster microcontroller
Receiving ACK
Writing memory dump program to cluster microcontroller
Receiving ACK
Receiving memory dump
Caught: System.TimeoutException The operation has timed out.
Unhandled exception: System.TimeoutException: The operation has timed out.
at System.IO.Ports.SerialStream.ReadByte(Int32 timeout)
at System.IO.Ports.SerialPort.ReadByte()
at BitFab.KW1281Test.Interface.GenericInterface.ReadByte() in C:\Users\gmeno\src\kw1281test\Interface\GenericInterface.cs:line 33
at BitFab.KW1281Test.KwpCommon.ReadByte() in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 99
at BitFab.KW1281Test.Cluster.MarelliCluster.DumpMem(IKW1281Dialog kwp1281, String ecuInfo, String filename, Nullable`1 address, Nullable`1 count) in C:\Users\gmeno\src\kw1281test\Cluster\MarelliCluster.cs:line 147
at BitFab.KW1281Test.Program.DumpMarelliMem(IKW1281Dialog& kwp1281, UInt32 address, UInt32 length, ControllerInfo ecuInfo) in C:\Users\gmeno\src\kw1281test\Program.cs:line 708
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 283
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
-----------------------------------------
Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 DumpMarelliMem 3072 1024
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Caught: System.InvalidOperationException Wrote 0x75 to port but echo was 0x55
Unhandled exception: System.InvalidOperationException: Wrote 0x75 to port but echo was 0x55
at BitFab.KW1281Test.KwpCommon.WriteByteAndDiscardEcho(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 182
at BitFab.KW1281Test.KwpCommon.WriteByte(Byte b) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 104
at BitFab.KW1281Test.KwpCommon.WakeUp(Byte controllerAddress, Boolean evenParity) in C:\Users\gmeno\src\kw1281test\KwpCommon.cs:line 84
at BitFab.KW1281Test.Program.Kwp1281Wakeup(Boolean evenParityWakeup) in C:\Users\gmeno\src\kw1281test\Program.cs:line 364
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 282
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 30
 

Geomeo123

Member
Joined
Mar 11, 2022
Location
Houston TX
TDI
beetle
Looks like that's IMMO2, so I'm assuming that you're using "DumpMarelliMem 3072 1024"? (as above).

I initially had issues connecting as my cluster was locked out. You should be able to check if you're locked out with VCDS by going to:
[17 - Instruments]
[Meas. Blocks - 08]
Select Block 024.
[Go!]


If all 3 fields displayed show 0 then you'e not locked out, but if they show anything else then you're probably locked out & should leave your ignition turned to ACC (engine off, electrics on) until the fields show 0.

If all else fails, you might be able to use the ME7 eeprom tool to pull the SKC from the ECU - I was able to confirm that this method also works, after first finding my SKC with kw1281test, then runnning "me7eeprom -p 1 -b 10400 --OBD --screen --SKC" (p 1 being your COM port), which provided the same SKC as I pulled with kw1281test (not 100% if I am allowed to share here, so just google "s4wiki me7-eeprom-1.40.zip" and you'll find it).
I got the ME7eeprom exe. The ECU read works no issue. I have an older version of this program that only reads the eprom(no SKC command) and last time I tried it it only worked when I put it in boot mode. Also the latest version of this program 1.40 doesn't like my windows 11 laptop. No comms etc. But I have an old xp laptop no issues. So all good. Thank you very much for the info!!
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Still a no go. Getting timeouts and wrong echo. I have tried everything I thought was relevant.
----------------------------------------------
Version 0.71-beta (https://github.com/gmenounos/kw1281test/releases)
Args: COM3 9600 17 DumpMarelliMem 14336 2048
OSVersion: Microsoft Windows NT 10.0.19044.0
.NET Version: 6.0.0
Culture: en-US
Opening serial port COM3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 1C0920901 KOMBI+WEGFAHRS. M73 V02
Software Coding 00001, Workshop Code: 09455
Sending block 0x6C
Writing data to cluster microcontroller
Receiving ACK
Writing memory dump program to cluster microcontroller
Receiving ACK
Receiving memory dump
Caught: System.TimeoutException The operation has timed out.
It sounds like kw1281test isn't compatible with 1C0920901 clusters (or at least the M73 V02 version). I have a 1C0920901CX cluster that it works fine with but I don't know what's different between your cluster and that.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Top