kw1281test: A Free VDS-Pro / VagTacho Alternative

wonneber

Top Post Dawg
Joined
Oct 12, 2011
Location
Monroe, NY, USA
TDI
2014 Jetta Sportwagon,2003 Jetta 261K Sold but not forgotten
I'm also bummed the magazine above has the OS/2 article covered up. I was in high school in the mid-90s, and was an OS/2 zealot then. Not so much anymore, but I still like reading about it. Amazing to think how far we've come along since then (also toyed with Debian 2 around 1996, and that was quite fun as well).
It's been MANY years since I stopped running O/S 2.
I ran a dial in bulletin board on it for years and house lighting control.
Its currently being developed as eComStation.
ecomstation.com

The good old days. :)
 

pkhoury

That guy with the goats
Joined
Nov 30, 2010
Location
Medina, TX
TDI
2013 JSW, 2003 Jetta Ute, 2 x 2002 Golf, 2000 Golf
It's been MANY years since I stopped running O/S 2.
I ran a dial in bulletin board on it for years and house lighting control.
Its currently being developed as eComStation.
ecomstation.com

The good old days. :)
I haven't actually used ecomstation, aside from a demo, though I have installed Warp 4.52 on some vintage ThinkPads I collect. And relating to this thread, I was actually running VDS-Pro on a restored ThinkPad 755 (rebuilt the battery pack, so I was able to take it outside). VDS-Pro's UI sucks. kw1281test makes a lot more sense!
 

lijetta18t

Well-known member
Joined
Jan 2, 2021
Location
LI NY
TDI
2019 GSW 4mo 6MT
Question @gmenounos : Since KW1281Test Isn't really a test anymore, do you plan on changing the name of the software? I don't mind the name but curious if you were planning on a more permanent sounding name change.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Question @gmenounos : Since KW1281Test Isn't really a test anymore, do you plan on changing the name of the software? I don't mind the name but curious if you were planning on a more permanent sounding name change.
I will most likely change the name at some point, especially since it now can also speak a little bit of the KW2089 protocol. It's not currently a priority, but I do understand that "kw1281test" is not the easiest thing to type or remember.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
So, after playing around with kw1281test on the Raspberry Pi, I did some research to see if there were other small devices it could run on that support serial/USB and .NET 5. It's easy to add web server support to a .NET program, so I could add a web interface that you could access from your phone. But the Pi needs a separate power cable, takes time to boot up and should be shut down properly when you're done with it, so it's more of a hassle than just using a laptop.

But then I saw that FTDI has D2XX drivers that run on Android. I have an Android phone (Google Pixel 3a) and it came with a USB-C to USB-A dongle for transferring data from your old phone when you first set it up. It turns out that you can also use that dongle to connect other USB devices to the phone, perhaps an FTDI KKL cable...

But Android apps are written in Java or Kotlin, and kw1281test is written in C#. The languages are similar but I don't want to spend a ton of time maintaining a separate version of the code in a different language. Even in its current state, with only a command line interface, it's still almost 4000 lines of code.

But it turns out that there's a free product, Xamarin, that can build C# apps for Android (and iOS), somehow magically translating the C# code into the equivalent code that runs on the phone. It's include with Visual Studio Community Edition, which I use to develop kw1281test, but I never played around with it. Until now.

After a couple of nights puttering, first just trying to get the FTDI drivers to load properly, and later discovering a few differences between how they behave on the Mac and how they behave on Android, I was finally able to use my phone to connect to a cluster and read some info:

KwpAndroid.png

Just getting the cluster to wake up and respond is a pretty good sign that most of the other functionality could work on Android.
If you think an Android version would be useful, let me know.

However, I know next to nothing about mobile development, so it'll probably be a while before I can produce anything useful. Also, this is highly unlikely to run on iOS, as Apple doesn't allow you to use USB<-->Serial cables with your phone/tablet.
 

caffeine

Veteran Member
Joined
Jan 4, 2021
Location
B.C., Canada
TDI
03 Allroad w/04 BHW/02X conversion, 00 ALH Jetta
I feel like an Android version would be pretty klunky to use without a graphical interface, however I know there are other apps out there that use FTDI-based devices well (like ALDLDroid which is designed mostly with OBDI GM in mind but supports most things that are supported by TunerPro)
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
I feel like an Android version would be pretty klunky to use without a graphical interface, however I know there are other apps out there that use FTDI-based devices well (like ALDLDroid which is designed mostly with OBDI GM in mind but supports most things that are supported by TunerPro)
Oh, I'd definitely make a GUI for it if I develop an Android version.
 

pkhoury

That guy with the goats
Joined
Nov 30, 2010
Location
Medina, TX
TDI
2013 JSW, 2003 Jetta Ute, 2 x 2002 Golf, 2000 Golf
No promises, but I showed @alphaseinor your thread last weekend, and he toyed with the idea of creating a Windows GUI front end between jobs. While Android would be helpful, especially for the hoardes of millenials on the facebook TDI group (that think OBD Eleven makes more sense than VCDS), I think that the target audience for editing and cloning Mk4 clusters would be happier working on a laptop. Just my two cents, anyways.
 

Mozambiquer

Vendor , w/Business number
Joined
Mar 21, 2015
Location
Versailles Missouri
TDI
2004 VW Touareg V10 TDI, 2012 Audi Q7 V6 TDI, 1998 VW Jetta TDI. 1982 VW Rabbit pickup, 2001 VW Jetta TDI, 2005 VW Passat wagon TDI X3, 2001 VW golf TDI, 1980 VW rabbit pickup,
Yesterday I got the hatch ulocked with doors function figured out on my passat wagon. It was addresses 04370-2 changing bit 1 from zero to 1. My original number in decimal was 6 or 1100000 and so i changed it to 1100001 or 97 in decimal. It took me a while, since I am still trying to wrap my head around how binary works... i got thrown for a loop as well when i converted 6 and got 110 (online converter) but i didn't realize that it was some different binary...
Got it figured out and it works! Yay! No more having to go up to the front to pull the switch every time before i open the door!
 

Z@gor

Member
Joined
Feb 2, 2021
Location
Italy
TDI
ex GTD 5
Soon I will try (and let you know) if reading and writing of the ccm are also possible with the original vag can professional. By eye, however, I think so
 

70chips

Active member
Joined
Feb 16, 2021
Location
UK
TDI
2001 C5 Allroad 2.5TD. 2008 C6 Allroad 3.0TDI. Cheeky tt Roadster 2001
Hi guys, Been reading this thread with a great deal of intrest, as I have a vdo cluster in a 2003 TT roadster which I need to extract the SKC from.
gave the kw1281 a whirl on an old KKL lead and came back with this...

KW1281Test 0.48-beta (https://github.com/gmenounos/kw1281test/releases)
Args: com3 9600 17 ReadEeprom 204 6
Opening serial port com3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8N2920980A KOMBI+WEGFAHRS. M73 D14
Software Coding 00444, Workshop Code: 00029
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Received NAK block
Received NAK block
Received NAK block
Received NAK block
Received NAK block
Sending Custom "Unlock partial EEPROM read" block
Unhandled exception: System.Collections.Generic.KeyNotFoundException: The given key '0' was not present in the dictionary.
at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
at BitFab.KW1281Test.Program.UnlockCluster(IKW1281Dialog kwp1281) in C:\Users\gmeno\src\kw1281test\Program.cs:line 860
at BitFab.KW1281Test.Program.UnlockControllerForEepromReadWrite(IKW1281Dialog kwp1281) in C:\Users\gmeno\src\kw1281test\Program.cs:line 797
at BitFab.KW1281Test.Program.ReadEeprom(IKW1281Dialog kwp1281, UInt32 address, Byte value) in C:\Users\gmeno\src\kw1281test\Program.cs:line 663
at BitFab.KW1281Test.Program.Run(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 208
at BitFab.KW1281Test.Program.Main(String[] args) in C:\Users\gmeno\src\kw1281test\Program.cs:line 24

Really frustrated as the program was really quick to establish a connection. Well once i realised the Baud speed was 9600 not 10400.
Thought I'd be on a winner as the cluster is VDO And stamped with vw as well as audi...
This is such a powerful tool. Any ideas?

Alan
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Hi guys, Been reading this thread with a great deal of intrest, as I have a vdo cluster in a 2003 TT roadster which I need to extract the SKC from.
gave the kw1281 a whirl on an old KKL lead and came back with this...

KW1281Test 0.48-beta (https://github.com/gmenounos/kw1281test/releases)
Args: com3 9600 17 ReadEeprom 204 6
Opening serial port com3
Sending wakeup message
Reading sync byte
Keyword Lsb $01
Keyword Msb $8A
Protocol is KW 1281 (8N1)
ECU: 8N2920980A KOMBI+WEGFAHRS. M73 D14
Software Coding 00444, Workshop Code: 00029
Sending Custom "Read Software Version" blocks
Sending Custom "Unlock Additional Commands" block
Received NAK block
Received NAK block
Received NAK block
Received NAK block
Received NAK block
Sending Custom "Unlock partial EEPROM read" block
Unhandled exception: System.Collections.Generic.KeyNotFoundException: The given key '0' was not present in the dictionary.


Really frustrated as the program was really quick to establish a connection. Well once i realised the Baud speed was 9600 not 10400.
Thought I'd be on a winner as the cluster is VDO And stamped with vw as well as audi...
This is such a powerful tool. Any ideas?

Alan
When did I ever say this would work on Audis? :)

But seriously, I don't have access to any Audi clusters, so pretty unlikely that I could get this to work.

However, the "M73 D14" identification sounds like a Magneti Marelli cluster, like on the Beetle clusters I've gotten it to work with. Are you sure it's not a Magneti Marelli cluster?
 

70chips

Active member
Joined
Feb 16, 2021
Location
UK
TDI
2001 C5 Allroad 2.5TD. 2008 C6 Allroad 3.0TDI. Cheeky tt Roadster 2001
Hi, no you never said it would work on Audis😁
I was just so impressed with it, I thought id give it a whirl!!
I didnt think it was, but I'm probably wrong..:unsure:
should I give it a try with those paramiters?
Seriously though, keep up the great work!
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Hi, no you never said it would work on Audis😁
I was just so impressed with it, I thought id give it a whirl!!
I didnt think it was, but I'm probably wrong..:unsure:
should I give it a try with those paramiters?
Seriously though, keep up the great work!
I've just published a new release with experimental support for your cluster: https://github.com/gmenounos/kw1281test/releases/tag/v0.49-beta
Give that a try and see if it works. You'll have to use the DumpBeetleMem command like this:

Code:
.\kw1281test.exe COM3 9600 17 DumpBeetleMem 14336 2048
If it doesn't work and locks up your cluster, you may need to disconnect the battery to reset things. Some Beetle clusters behave that way. Also, know that there is some risk: The way that kw1281test dumps Magneti Marelli clusters is by downloading a small program into the cluster and asking the cluster to run it. I can't guarantee that a program that dumps a Beetle cluster will work the same way on a TT cluster, so if it bricks the cluster, I'm not going to buy you a new one. If you want the SKC that badly, you will need to assume the risk if something goes wrong.

Hopefully if it does work, the SKC will be in the same location in the dump that it is in the Beetle cluster. If not, you may be able to get help by uploading the dump here: http://nefariousmotorsports.com/forum/index.php?topic=10460.0
 

70chips

Active member
Joined
Feb 16, 2021
Location
UK
TDI
2001 C5 Allroad 2.5TD. 2008 C6 Allroad 3.0TDI. Cheeky tt Roadster 2001
Okay, thanks,I'll give it a go in the next couple of days and report back.
 

70chips

Active member
Joined
Feb 16, 2021
Location
UK
TDI
2001 C5 Allroad 2.5TD. 2008 C6 Allroad 3.0TDI. Cheeky tt Roadster 2001
Well... it seems to have worked, got a dump from the tt just looking up the skc location to convert and then verify. will post back results
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
Well... it seems to have worked, got a dump from the tt just looking up the skc location to convert and then verify. will post back results
That's great that it worked on the TT. Looks like I'll have to change the name of the DumpBeetleMem comand to DumpMarelliMem.
 

fatmobile

Veteran Member
Joined
Jul 16, 2019
Location
north iowa
TDI
an ALH M-TDI in a MK2, a 2000 Jetta, 2003 wagon
I got an immo delete for my ecu but now the immo light in the cluster keeps flashing.
Is there a way to use this to shut it off?
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
I got an immo delete for my ecu but now the immo light in the cluster keeps flashing.
Is there a way to use this to shut it off?
Not that I know of. You could either remove/tape-over the immo light or else remove the immo delete and match the cluster to the ECU.
 

gmenounos

Vendor
Joined
Jun 26, 2003
Location
Watertown, MA, USA
TDI
'99.5 Golf GLS, '01 Jetta GLX Wagon (TDI conversion)
For anyone interested, I bumped into this other GitHub project a while ago: https://github.com/fjvva/ecu-tool
and completely forgot about it until yesterday. It's a hardware project to read and flash EDC15 ECUs, sort of like a poor-man's FlashZilla/QLoader. All the source code to talk to the EDC15 is included in the project and it looks like it might not be that hard to merge it into kw1281test. No hardware would be needed other than a KKL cable and a laptop. I'll give it a whirl when I get time.
 

caffeine

Veteran Member
Joined
Jan 4, 2021
Location
B.C., Canada
TDI
03 Allroad w/04 BHW/02X conversion, 00 ALH Jetta
For anyone interested, I bumped into this other GitHub project a while ago: https://github.com/fjvva/ecu-tool
and completely forgot about it until yesterday. It's a hardware project to read and flash EDC15 ECUs, sort of like a poor-man's FlashZilla/QLoader. All the source code to talk to the EDC15 is included in the project and it looks like it might not be that hard to merge it into kw1281test. No hardware would be needed other than a KKL cable and a laptop. I'll give it a whirl when I get time.
Of course you say this right after I order an ECU flashing cable! 😜
 

70chips

Active member
Joined
Feb 16, 2021
Location
UK
TDI
2001 C5 Allroad 2.5TD. 2008 C6 Allroad 3.0TDI. Cheeky tt Roadster 2001
Hi all,

Just a report back that kw1281test does read IMMO 3 Audi TT clusters..
With the help of greg, I have now the two SKCs required for a cluster swap!

Many thanks to gmenounos once again
 
Top