Author Topic: DIY TPMS Programmer  (Read 22877 times)

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
DIY TPMS Programmer
« on: September 22, 2015, 06:43:23 PM »
I've been studying the CAN bus on the Connie for a couple of weeks now.  While there is still a LOT that I don't understand, there is quite a bit that I have been able to figure out.  Basic parameters like vehicle speed, engine RPM, water temp, gear, etc., can be readily read from the CAN bus.  Most recently I've been working to decode the TPMS sensor messages.  The pressure reading is very straightforward, and I'm pretty sure I have the tire temperature also figured out. 

Also, for reasons I won't go into here, my rear TPMS sensor was recently replaced but the dealer lost the sensor code and therefore could not program it to the bike.  However, I believe I am able to read the code embedded in the TPMS message that is transmitted on the CAN bus.  I have proven that I can read the tire pressure on the rear sensor even though the rear sensor is not programmed to the bike.

I made a trip to another dealer today and spent a couple of hours in the shop, but they were unable to get their KDS software to work to program the code for me. :-\

So, I'm about ready to try to make a DIY TPMS programmer.  I was thinking about making 2 or 3 of these and making them available to the members of this group as a "loaner" tool.  I'm thinking it could work much like the loaner windshields today: the tools are shipped out to the next person that needs to program a sensor (or maybe even a key fob).  The parts to build one should not be more than about $15.

Now for the catch:  I'm probably going to need to get my hands on a KDS system for a week or two to be sure I get the commands and responses right in order to do the sensor programming.  Is anyone out there who owns a KDS tool willing to work with me to record the commands and responses?

I have already created a CAN datalogger that is logging the CAN messages to memory and I can display those messages on a laptop.  All I need to do now is connect a KDS tool, and record the programming sequence.  Then I should be able to replay that sequence back to program sensors on other bikes.

And lastly, this exercise is purely for educational purposes only.  If I am successful, the DIY programmer will not be for sale.

RedRambler

Offline maxtog

  • Elite Member
  • ******
  • Posts: 8869
  • Country: us
  • 2011 Silver
Re: DIY TPMS Programmer
« Reply #1 on: September 22, 2015, 06:50:56 PM »
This is a kewl thread....  (note how I spelled "cool" to indicate it is even beyond just plain, old, ordinary "cool").  Can't wait to see how it goes!
Shoodaben (was Guhl) Mountain Runner ECU flash, Canyon Cages front/rear, Helibars risers, Phil's wedges, Grip Puppies, Sargent World seat-low & heated & pod, Muzzy lowering links, Soupy's stand, Nautilus air horn, Admore lightbar, Ronnie's highway pegs, front running lights, all LED, helmet locks, RAM Xgrip, Sena SMH10, Throttle Tamer, MRA X-Creen, BearingUp Shifter, PR4-GT, Scorpion EXO-T1200,etc

Offline bbhzx12

  • Full Member
  • ***
  • Posts: 153
  • Country: us
Re: DIY TPMS Programmer
« Reply #2 on: September 23, 2015, 03:22:32 AM »
I was real clise to grabbingine on ebay for 300 last week, it might still be there.  My bike is for sale so i decided to pay the stealer.

Offline Conrad

  • Hero Member
  • *****
  • Posts: 5822
  • Country: us
Re: DIY TPMS Programmer
« Reply #3 on: September 23, 2015, 04:57:34 AM »
Here's a bit of info that you may have seen before, or not.

http://www.zggtr.org/MGalleryItem.php?id=455

Starting on page 3 there's info on KDS, fobs, and TPMS.

FYI, the bike is programed to read the TPMS sensors, not the other way around.
Northern Illinois   Silverdammit '08 C-14 ABS

"Don't bother me with facts, Son. I've already made up my mind." -Foghorn Leghorn

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #4 on: September 23, 2015, 06:08:35 AM »
Yes, you are correct.  The bike is programmed with the ID numbers of the TPMS sensors.  But generally speaking that cannot be done except by a dealer, unless you have access to the expensive KDS system.  My goal is to make that capability more readily available to the members of this forum.

Offline LandRocket

  • Jr. Member
  • **
  • Posts: 35
  • Country: us
Re: DIY TPMS Programmer
« Reply #5 on: September 23, 2015, 11:18:27 AM »
I am intersted in this,

Being a programer myself, let me know what you have found or if need any help digging or parsing data.

Offline speedracersworld

  • Full Member
  • ***
  • Posts: 184
  • Country: us
  • 817-821-0448
    • Speedracersworld
Re: DIY TPMS Programmer
« Reply #6 on: October 09, 2015, 07:39:00 PM »
There's a guy selling a KDS Module on ebay and has a com cables and the converter which is the newest 57001-1725 for $750. Would it be a worthwhile investment or can you guys hack the system. I was thinking of getting it then do a few reprograms to make up for some of the money I spent. If anyone else is interested, I have the guys contact info or you can find him on ebay.
There's more to Life than the Mainstream Media or "Reality" TV! Question Everything!

2008 Atomic Silver C-14

Offline bbhzx12

  • Full Member
  • ***
  • Posts: 153
  • Country: us
Re: DIY TPMS Programmer
« Reply #7 on: October 10, 2015, 05:09:28 AM »
Same system sold a couple weeks ago for $300

Offline fmwhit

  • Full Member
  • ***
  • Posts: 164
  • Country: us
Re: DIY TPMS Programmer
« Reply #8 on: October 10, 2015, 07:59:05 PM »
Red Rambler where are you located??

Offline speedracersworld

  • Full Member
  • ***
  • Posts: 184
  • Country: us
  • 817-821-0448
    • Speedracersworld
Re: DIY TPMS Programmer
« Reply #9 on: October 11, 2015, 06:25:18 PM »
Red Rambler where are you located??

Thanks for the heads up :)
There's more to Life than the Mainstream Media or "Reality" TV! Question Everything!

2008 Atomic Silver C-14

Offline Pilgrim

  • Full Member
  • ***
  • Posts: 170
  • Country: 00
  • '12 Black
Re: DIY TPMS Programmer
« Reply #10 on: October 12, 2015, 06:18:28 AM »
...  Most recently I've been working to decode the TPMS sensor messages.  The pressure reading is very straightforward, and I'm pretty sure I have the tire temperature also figured out. 


Tire temperature?    How are you going to do that?

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #11 on: October 12, 2015, 11:48:34 AM »
Sorry guys, I've been traveling out of state for the past 10 days.

I'm located in Birmingham, AL.

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #12 on: October 12, 2015, 11:51:36 AM »
Tire temperature is commonly reported by tire pressure sensors along with pressure and battery status. On the Connie, it is not displayed for the user to see.

I'm fairly certain that the tire temp is being reported to the ECU but I have not done enough testing to validate the numbers that I am seeing.

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #13 on: October 12, 2015, 11:56:01 AM »
I've still not been able to get the dealer to program the bike with the rear tire sensor ID. I had an appointment set up to do that but the dealer called and cancelled saying that they could not get their KDS system to communicate with any bikes. So I'm still stuck.

That's just one reason why I want to take on this project.  So forum members would have access to a tool to program these sensors themselves at low cost.

RedRambler

Offline zarticus

  • Arena
  • Full Member
  • ***
  • Posts: 210
  • Country: us
Re: DIY TPMS Programmer
« Reply #14 on: October 12, 2015, 07:47:07 PM »
I've still not been able to get the dealer to program the bike with the rear tire sensor ID. I had an appointment set up to do that but the dealer called and cancelled saying that they could not get their KDS system to communicate with any bikes. So I'm still stuck.

That's just one reason why I want to take on this project.  So forum members would have access to a tool to program these sensors themselves at low cost.

RedRambler
RedRambler,
Where are you located ?. If you are in Florida I have a KDS unit & can program that sensor  :chugbeer:
2012 Kawasaki Concours 14 -  Candy Arabian Red
2014 Kawasaki Vaquero - Candy Burnt Orange
1986 Honda V65 Magna - Black
1984 Honda V65 Magna - Black

Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #15 on: October 13, 2015, 11:26:21 AM »
I'm in Birmingham.  I would like to find someone who would be willing to loan me a working KDS unit or who can meet me somewhere so I can do some testing. What I am really after is to duplicate the programming commands so that I can create a small inexpensive TPMS programmer that can be used as a loaner tool for the user s of this forum.




Offline RedRambler

  • Jr. Member
  • **
  • Posts: 42
Re: DIY TPMS Programmer
« Reply #16 on: November 01, 2015, 09:23:07 PM »
Just to update my progress:

I have built a CAN bus datalogger to work with the Connie's CAN system.  I chose to use a Arduino Nano microprocessor board, modified to be compatible with my Atmel Dragon ISP programmer/debugger.  I also bought a MCP2515 circuit board off Ebay to interface the Nano to the CAN bus.  The combined cost for these two parts was about $10.  In addition, I ordered a high-speed non-volatile memory from Digikey ($4) to provide storage.  Using these three parts, I have been able to log and study the CAN messages going back and forth between the processors.

I wired up this system to the wiring harness of the bike and stored it in the tool storage compartment where it would be out of the way.  Last week, I was able to get the bike over to a dealer who successfully programmed the rear sensor ID into the bike's computers.  Fortunately, all the commands to do this were logged and saved by the datalogger.

After studying the logged data, it is very apparent that the KDS system first "logs in" with the bike when connected.  There is a two part command-response sequence that establishes the initial connection to the bike.  Once this is completed, the KDS system then retrieves the part numbers for the three major ECU units on the bike: FI ECU, Steering Lock ECU, and KIPASS ECU.  The part numbers are returned by the bike as ASCII encoded strings, and they are readily identified in the data.

That seems to be all that happens until the user issues a command in KDS.  In my case, the tech navigated to the menu for TPMS, and the ID numbers for the tire pressure sensors were then retrieved.  The command to retrieve the sensor IDs is very straightforward, and I have been able to duplicate this command using my CAN bus interface.  The command syntax is as follows:

(front) Arbitration ID = 0x754, DLC = 3, Data0 = 0x02, Data1 = 0x21, Data2 = 0x14.
(rear) Arbitration ID = 0x754, DLC = 3, Data0 = 0x02, Data1 = 0x21, Data2 = 0x15.

The bike will respond with:
Arbitration ID = 0x745, DLC = 8, Data4 - Data7 = 32 bit sensor ID number.

As I said, I have been able to retrieve the sensor IDs from the sensors on my bike using these two commands.  I have also been able to retrieve my ECU IDs using similar commands.

Next up is to actually reprogram the rear sensor.  The command for that is:

Arbitration ID = 0x754, DLC = 8, Data0 = 0x07, Data1 = 0x31, Data2 = 0x86, Data3 = 0x02, Data4 - Data7 = ID number.

Once I can confirm that I can program the rear sensor reliably, the next step would be to try it on other years to make sure the commands are the same.  I feel sure it would be the same on 2011-2014 (the ECU part numbers are the same), but not sure for 2008-2009 models.

I would also like to add the capability to program additional fobs as well.  Hopefully, I will be able to find someone with a KDS system that would allow me to record more of the programming sequences.  Then we could make a very useful DIY tool, I think.

Sometime soon I plan to post quite a bit more of the technical details of the Kawasaki CAN system, since there is so little publicly available information out on the web.

Incidentally, the sensor ID and sensor readings for all 'unknown' sensors is broadcast on the bus as well using message ID 0x695.  Knowing this, one can read the sensor ID from an unknown sensor directly from the bus.  This is how I came to figure out the sensor ID for my rear tire sensor (the installer had lost the sticker with the ID number).  I gave the dealer the number I had read from the bus, and he programmed it in for me.  Now my rear sensor is working like a charm! 

RedRambler



Offline maxtog

  • Elite Member
  • ******
  • Posts: 8869
  • Country: us
  • 2011 Silver
Re: DIY TPMS Programmer
« Reply #17 on: November 02, 2015, 01:41:15 AM »
Neat!
Shoodaben (was Guhl) Mountain Runner ECU flash, Canyon Cages front/rear, Helibars risers, Phil's wedges, Grip Puppies, Sargent World seat-low & heated & pod, Muzzy lowering links, Soupy's stand, Nautilus air horn, Admore lightbar, Ronnie's highway pegs, front running lights, all LED, helmet locks, RAM Xgrip, Sena SMH10, Throttle Tamer, MRA X-Creen, BearingUp Shifter, PR4-GT, Scorpion EXO-T1200,etc

Offline VirginiaJim

  • Administrator
  • Elite Member
  • *****
  • Posts: 11333
  • Country: england
  • I've forgotten more than I'll ever know...
    • Kawasaki 1400GTR
Re: DIY TPMS Programmer
« Reply #18 on: November 02, 2015, 03:49:44 AM »
OMG!
"LOCTITE®"  The original thread locker...  #11  2020 Indian Roadmaster, ABS, Cruise control, heated grips and seats/w/AC 46 Monitoring with cutting edge technology U.N.I.T is Back! Member in good standing with the Knights of MEH.

Offline Conrad

  • Hero Member
  • *****
  • Posts: 5822
  • Country: us
Re: DIY TPMS Programmer
« Reply #19 on: November 02, 2015, 04:39:46 AM »
Well done Red!

So there IS a way to retrieve the code numbers from a TPS without taking the tire off?
Northern Illinois   Silverdammit '08 C-14 ABS

"Don't bother me with facts, Son. I've already made up my mind." -Foghorn Leghorn