video thumbnail 12:15
Tesla CAN bus data logging

2017-02-20

[public] 165K views, 6.42K likes, 75.0 dislikes audio only

I show how to collect detailed CAN bus data from a Tesla Model S, and display it in the car's own web browser!

Complete Raspberry Pi with CAN bus shield and 12V buck converter: http://copperhilltech.com/raspberry-pi-3-system-with-can-bus-interface/

Diagnostic connector pinout (scroll through the images):

http://store.evtv.me/proddetail.php?prod=TeslaCANKit

Tesla diagnostic connector: https://www.panjo.com/buy/tesla-diagnostic-cable-for-ms-mx-sept-2015-and-up-bare-wire-version-308125

RPi CAN bus tutorial: http://www.cowfishstudios.com/blog/canned-pi-part1

Get node.js installed on the RPi: http://thisdavej.com/beginners-guide-to-installing-node-js-on-a-raspberry-pi/

I used socket.io, which is a module that installs into node.js: https://www.npmjs.com/package/socket.io

Basic sequence to setup the server on the Pi:

sudo ip link set can0 type can bitrate 500000 listen-only on

sudo ip link set can0 up

candump -cae can0,0:0,#FFFFFFFF

candump -cae can0,0:0,#FFFFFFFF | grep 106 | awk -Winteractive '{ print $10}' | node app.js

Tesla CAN bus reverse engineering: https://skie.net/skynet/downloads

I will post the node.js code on my blog:

http://benkrasnow.blogspot.com/2017/02/show-how-to-collect-detailed-can-bus.html

Support Applied Science on Patreon:

https://www.patreon.com/AppliedScience