-
Notifications
You must be signed in to change notification settings - Fork 0
rjelbert/ibus-injector
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
BMW I-BUS INJECTOR PROJECT README NOTICE: All information provided in this project is supplied without warranty and by downloading it you agree to use it at your own risk. I am publishing the details of this project as a record of what worked for my purposes. This i-bus injector project reads 4 * 12 volt digital I/O lines and injects their status onto the BMW i-bus. The BMW i-bus is present on certain older models such as the E46 3 series and the E39 5 series. The i-bus is based on the LIN (Local Interconnect Network) specification revision 1.3 dated 2002. The Microchip PIC code checks that the i-bus is quiet and then writes a custom message onto the bus when any of the I/O lines change state. If there is bus contention while the message is written, it will write it out again unit it has been sent without errors. It's worth noting that the code does not impliment the full LIN specification, just enough to work reliably in my car. It can easily be adapted to read something like a retro fitted i-drive controller to control A/V and navigation functions. Other uses are also possible by modifing the code and electronics.The code can also be made to look for certain i-bus messages and react to them, making some sort of custom function module. I have included a (hand drawn) circuit diagram that includes a very basic but functional i-bus interface connected directly to the Microchip PIC processor. The crystal oscillator shown in the diagram is optional, I recommend using the internal oscillator to save cost and complexity. The extra I/O lines might also come in handy. The i-bus message this system creates look something like: "F2 04 F3 00 08 0D" F2 - source module address (F2 is my data injector module address) 04 - length in bytes of the rest of the data packet F3 - destination module address (F3 is a dummy address) 00 - command type, set to zero as default 08 - data for the command - this contains a bit field of the status of the various I/O lines 0D - XOR checksum Currently any i-bus packets with "F2" at the beginning are from the i-bus injector. To use this project to contol other functions of the car simply replace the custom messages with the messages you require. To do any sort of work on the BMW i-bus, I recommend the NavCoder i-bus software ( www.navcoder.com )and the Resler i-bus interface ( www.reslers.de/IBUS/ ). Good luck Richard Jelbert [email protected]
About
BMW ibus code injector
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published