- Notifications
You must be signed in to change notification settings - Fork19
P1kachu/talking-with-cars
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This was the subject of my presentation of this year's LSEWeek. Slides (english)and the video (french) are respectively availablehere andhere
Update 2017: This was also part of our talk at 34c3.slides andstream now available!
I was curious about learning what makes a car. As time went by, I startedtaking a look at cars internal systems, and finally ended up playing with CAN.This repo is all of what I understood, read, wrote, and experienced with.
The repo is split in different parts:
- can_logs: Different CAN output while testing different things ondifferent vehicles
- canpad: FaaG (Fiat as a Gamepad) - Play video games with your Fiat 500
- docs: PDFs and documentation I used during my analysis
- notes: Written notes and sum ups on different subjects (OBD, CAN, environement setup, ...)
- scripts: python-can scripts to play with the CAN bus
Tools and cars used:
- PiCan2
- VW Polo (6R, 6C) 1.2 (2009-..., 60 CH)
- Fiat 500c 69ch (2010)
- Lancia Voyager (2014)
CANPad allows one to pilot in video games by using real cars via CAN.This repo contains two versions:
- v1: Creates a virtual controller via libuinput to control simple games thatdon't require real controllers (like VDrift). Tested on ArchLinux withVDrift.Demonstration video availablehere
- v2: Allows one to play more interesting games (like Dirt Showdown) on Linuxby hijacking a real XBox like controller. Tested on ArchLinux with DirtShowdown (Steam version) with an official XBox controller.Demonstration video availablehere
Some codes are manufacturer specific (brakes pedal, clutch, steering wheel,handbrake) and thus will only work with Fiat cars (maybe even Fiat 500 only,maybe even Fiat 500c 2010 only, etc, I don't know). Feel free to try this ondifferent cars, and submit via pull requests new versions of CANPad!)
These notes are a sum up of what can be found on the internet or in thevarious documents presents in ../docs.Everything comes from my understanding of what I read and thus must be takenwith care, since mistakes can be (and have been) made during these researches.
For any question, feel free to send me an email atp1kachu@lse.epita.fr
- https://hackaday.io/project/6288/logs
- http://jazdw.net/tp20
- https://hackaday.io/project/6288-volkswagen-can-bus-gaming
- http://illmatics.com/carhacking.html
- http://nefariousmotorsports.com/forum/
- http://nefariousmotorsports.com/forum/index.php?topic=4983
- http://www.ti.com/lit/an/sloa101b/sloa101b.pdf
- See 'notes' for more