This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
bmw-motorrad-can-bus:start [2023/01/20 21:28] – created vdesmedt | bmw-motorrad-can-bus:start [2023/01/21 07:39] (current) – vdesmedt | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Playing with BMW Motorrad CAN Bus system ====== | ====== Playing with BMW Motorrad CAN Bus system ====== | ||
+ | |||
+ | === Introduction === | ||
+ | There is initially two goals to this starting investigation : one is to extract data from the system just because I can, and the other, much more concrete is that, after my bike fall the very first day I had it, the button to turn the 4 blink light stop working. It’s not a button that you need a lot but when you need it, you really do, and so I thought if I could reproduce what this button do programmatically, | ||
+ | |||
+ | So far, my understanding is that ODB2 is a standard way (a protocole) to establish dialog with various MCU’s and devices within a vehicule. It defines how to « talk » with the different MCU in the vehicule and define standard way to report problems depending on it source, nature and criticality. It also include the definition of a connector, defining its shape and to what are all its pin connected | ||
+ | |||
+ | CAN is a low level communication protocol that defines low level details as how many wires do you need, what are the different voltages used on those wires, how is a bit transported on this wires, how those bits finally make a byte or more, how are collision detected and resolved (when two devices want to talk at the same time), … | ||
+ | |||
+ | ODB2 protocole can be « transported » in different ways, CAN Bus being one of them. | ||
+ | |||
+ | Let’s dig a little… | ||
+ | |||
+ | === Starting point === | ||
+ | - Learn about CAN-BUS, ODB2 | ||
+ | - See how I can connect to the CAN Bus of my motorbike (BMW R 1250 GS/A) | ||
+ | - Figure out how to signal a press on the button so that the central unit respond by turning the lights on. | ||
+ | - Defien what’s next :) | ||