[Ovmsdev] Hacking TPMS

Mark Webb-Johnson mark at webb-johnson.net
Tue May 26 10:24:30 HKT 2020


Just received the prototype production boards from China. Some comments:

S1 is a on/off switch used to wire in a diode+resistor to the K-line. It is needed for ‘k-line master’ in some cars.

SW1 is a four position switch used to select the power for the K-line bus. It can be one of:
0 = No connection (or a manually added voltage from the test point)
1 = USB5V: Useful for desktop testing from USB (with no 12V connected) - 5v from the USB connector
2 = LDO5V: 5v from by regulating vehicle 12v power
3 = 12V: 12v from vehicle power

Board can either go on top of the modem, or underneath it.

We have tried to make this as general purpose as possible. Will test for the next 24 to 48 hours, and then give the go-ahead for production.

Regards, Mark.






> On 17 May 2020, at 5:44 PM, Mark Webb-Johnson <mark at webb-johnson.net> wrote:
> 
> 
> Short story:
> 
>> OVMS# tpms list
>> 
>> Tyre Sets:
>>   canada: 01010fd3,01010fdb,01010f8a,01011c14
>>   testing: a1a2a3a4,b1b2b3b4,c1c2c3c4,d1d2d3d4
>> 
>> OVMS# tpms read
>> TPMS read as a1a2a3a4,b1b2b3b4,c1c2c3c4,d1d2d3d4
>> OVMS# tpms write canada
>> Tyre set 'canada' written to vehicle TPMS successfully
>> OVMS# tpms read
>> TPMS read as 01010fd3,01010fdb,01010f8a,01011c14
> 
> 
> Code is committed, and in edge release now.
> 
> Now to start building production K-line expansion boards (to replace my hand-built breadboard kludge).
> 
> Regards, Mark
> 
>> On 14 May 2020, at 4:36 PM, Mark Webb-Johnson <mark at webb-johnson.net> wrote:
>> 
>> So long as it is a v3.1 or v3.2 module it should be fine. The older ones will need one wire between the DB9 and DA26 connector, which is trivial to add. You will need an OVT1 cable (if you don’t already have one).
>> 
>> I’m hoping to be able to nail this down this coming weekend.
>> 
>> Regards, Mark.
>> 
>>> On 14 May 2020, at 3:23 PM, HONDA S-2000 <s2000 at audiobanshee.com> wrote:
>>> 
>>> Oh! - This is great!
>>> 
>>> I could really use an easy way to switch between summer and winter wheels without traveling to the Tesla dealership to wait in line for one of their techs to use their tool.
>>> 
>>> If you need any help testing, I will buy any boards needed (or make my own prototype, if that makes sense). I have one Tesla Roadster 2.5 and eight wheels that should have working TPMS sensors. We also have PCB fab and assembly shops that are still working here, so I might even be able to make boards locally.
>>> 
>>> I’ll have to check which version of OVMS that I have. I bought a few versions of them, but I may not have the latest version.
>>> 
>>> Brian
>>> 
>>> p.s. I haven’t been following this list for a while. In fact, my email server went down after fourteen years of constant service, so I think I got kicked off the list and had to rejoin. So, I’m very glad to see this feature being worked on. I may need to reconnect, upgrade to the latest firmware releases, and all of that.
>>> 
>>> 
>>> On May 10, 2020, at 5:56 PM, Mark Webb-Johnson <mark at webb-johnson.net> wrote:
>>>> I’ve been spending the last month or so hacking away at TPMS. This has been an ongoing project for the Tesla Roadster that is finally coming to fruition.
>>>> 
>>>> About a year or so ago, we already made changes to:
>>>> 
>>>>    • Modify the Tesla Roadster cable to connect the k-line pin on the diagnostic connector through to the DB9 connector on OVMS. We labelled this cable ‘OVT1’.
>>>>    • Modify the OVMS module to connect that k-line pin to GEP7.
>>>> 
>>>> I’m now working on an optional expansion board that will include a little TJA1027T transceiver and map it to EXP1 and EXP2 (for async comms) and EGPIO8 (for enable/disable) on the ESP32 and MAX. This board will include a jumpered option for K-line master (one diode + one resistor), as well as jumpered powered selection (5v from usb, 5v regulated from car 12v, or direct car 12v) for the K-line bus.
>>>> 
>>>> The hand-soldered prototype, using our breakout boards, works well and the K-line async comms works. The screenshot shows OVMS sending a 19 byte request to the ECU (0x0f 0x04 .... 0xf0) and the ECU responding 19 bytes (0x0f 0x05 ... 0xf0) with the 4 tyre IDs. There is a similar command to re-program the ECU with new IDs.
>>>> 
>>>> On the firmware side, I am implementing a new vehicle independent ’tpms’ subsystem within OVMS (enabled via configureable option). This will allow sets of tyres to be maintained in the config and read/written to the car's TPMS ECU. The following commands will be available:
>>>> 
>>>>    • tpms status - show status of the system
>>>>    • tpms list - list tyre id sets in config
>>>>    • tpms read <set> - read IDs from tpms ecu and store in config tyre set
>>>>    • tpms write <set> - write IDs to toms ecu from config tyre set
>>>>    • tpms set <set> {<id>} - config a set of IDs manually
>>>>    • tpms delete <set> - delete the specified tyre set
>>>> 
>>>> The initial version will support Tesla Roadster, but the functionality is there for other vehicles to use if they need it (in particular for standard K-line implementations).
>>>> 
>>>> Comments/suggestions welcome.
>>>> 
>>>> Regards, Mark.
>>>> 
>>> _______________________________________________
>>> OvmsDev mailing list
>>> OvmsDev at lists.openvehicles.com
>>> http://lists.openvehicles.com/mailman/listinfo/ovmsdev
>> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20200526/29773f03/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PastedGraphic-4.tiff
Type: image/tiff
Size: 616300 bytes
Desc: not available
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20200526/29773f03/attachment-0002.tiff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PastedGraphic-5.tiff
Type: image/tiff
Size: 549160 bytes
Desc: not available
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20200526/29773f03/attachment-0003.tiff>


More information about the OvmsDev mailing list