[Ovmsdev] Hacking TPMS
Jaunius Kapkan
jaunius at gmx.com
Mon May 18 21:14:34 HKT 2020
Very nice.
I wonder can this be optimized to support other metrics? Like using GPS coordinates from CAN instead of the GPS module itself for cars that have it available?
Regards,
Jaunius Kapkan [Sent from cellphone]
> On 2020-05-11, at 03:57, 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.
>
> +++Attachments+++
>
> Bench setup, showing (from left to right):
> Tesla Roadster TPMS ECU opened up
> Breakout board (power, k, Lin, and can)
> OVMS for can decode
> Usb logic analyser
> Power supply (12v)
> K-line analysis tool (9010)
> Windows laptop running k-line software
> Mac running logic analyser and terminal to OVMS.
>
> <image0.jpeg>
>
> Hand-soldered prototyping board
>
> <image0.jpeg>
>
> Async comms over k-line.
>
> <image1.jpeg>
>
> _______________________________________________
> 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/20200518/b99a3844/attachment.htm>
More information about the OvmsDev
mailing list