jeep
is an easy-to-use event handling library for your Jeep. It is designed with safety in mind and is currently read-only for the Jeep's IHS network. There is also no C network support, since even connecting to it poses some risk.
Use at your own risk. There is no warranty. Don't do dumb or illegal stuff with this library. This library is currently a WIP and the API is not yet stable. This project is not affiliated with Jeep or Stellantis.
- Rust toolchain.
- For development, the rust-analyzer extension for vscode is recommended.
This library is tested to work in WSL-2 along with Raspberry Pi.
To build the library alone, for development, from this directory, run:
$ cargo build
To install all examples, from this directory, run:
$ cargo install --examples --features examples --path .
To view documentation in a browser offline, run:
cargo doc --all-features --open
The examples
folder contains several examples, such as:
jeep-alarm
that runs a custom command when any doors are opened (such as a silent alarm).jeep-listen
that listens to the can bus and parses events in realtime.jeep-converter
to parse events from acandump -L
style dump into json lines.
- This library is an in alpha state and assuredly has errors.
- See TODO.md for future plans.
serde
- enables serialization of events, frames, and errors.examples
- required features for example binaries.embedded-can
- enables theembedded_can::Frame
trait for ourjeep::Frame
.socketcan
- enables conversion to/fromsocketcan::CANFrame
and thejeep::Listener
.
- Code
- Michael de Gans
- Data
- Josh McCormick and his super useful spreadsheet
- Karl Yamashita (for his contributions to the spreadsheet)
- RedRacer for advice and testing
- Temperance for finding a good source of the TE Connectivity can bus connectors for Jeep Wrangler JL.