Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jkaflik/go-can-playground
Hacking car's CAN bus!
https://github.com/jkaflik/go-can-playground
Last synced: about 1 month ago
JSON representation
Hacking car's CAN bus!
- Host: GitHub
- URL: https://github.com/jkaflik/go-can-playground
- Owner: jkaflik
- Created: 2019-01-05T19:48:15.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-05T19:49:44.000Z (about 6 years ago)
- Last Synced: 2024-10-27T23:47:35.641Z (3 months ago)
- Language: Go
- Homepage:
- Size: 1000 Bytes
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# go-can-playground
[CAN bus](https://en.wikipedia.org/wiki/CAN_bus) is frame based protocol widely used in automotive, allowing to design single point of failure proof systems. There is no host system and all messages are broadcast.
Every single module in your modern car is handling communication in that way. That enables, us - geeks, doing amazing things there.There are many ways and implementations for CAN bus. For hacking purposes, I am using [MCP2515](https://www.microchip.com/wwwproducts/en/en010406) connected trough SPI to ARM based Linux system. Linux kernel comes with can module implementation, [linux-can](https://github.com/linux-can), which binds CAN data wire into Linux's network interface.
Golang because I like simplicity of this language. However, I would prefer the embedded programming, but since Golang does not provide it (there is promising, LLVM based Golang compiler - [tinygo](https://github.com/aykevl/tinygo) rising), I have to run on managed system.
## Table of content
### Command line utility `can-loopback-test`
Receiving the all frames from CAN bus, in the meantime sending debug message every 1s.