Thank you for making this video. Those DIYers of us without a background in automotive programming need all the tutorials we can get. Since most of your CAN-bridges are probably sold to facilitate battery swaps, could you do a step-by-step video on how to program one of the bridges with everything you need to get the car to recognize the new battery. This video would pair beautifully with your CAN-bridge install video for a complete tutorial. Thanks Dala!
I ship all battery upgrade CAN-bridges with software pre-loaded onto them, so it is just to follow the CAN-bridge install youtube video. The other video for updating the software(Can bridge location & Firmware) is all you need incase you ordered the CAN-bridge without software!
Been working in the computer networking field my entire career and interesting to see how the auto industry does it. I would like to get my hands on some actual hardware and software to be able to check out my 2014 Leaf CAN bus
One apparent way to spoof mprun would be to emit multiple of messages with counter running full cycle, that's of course subject to timing and potential canbus/target time-spamming detection (and even total runtime of message reaction like if reaction to message is opening the trunk).
It's legacy for sure, but more driven by cost/performance constraints than it is by knowledge. Using CRCs is great if you've got something like a powertrain controller and a vehicle dynamics module talking to each other since they'll both have pretty beefy microcontrollers just to handle their main function. But not everything on the bus is a big powerful module, sometimes it's just a switch module whose purpose is to say "someone pushed the button" and it'll have a CPU with the processing power of a 1980s alarm clock. It's really hard to go to management and say "We need to spend an extra $2 per unit on a beefier micro on something we sell 500k of a year because... well we don't like the algorithms we're using anymore and we want a new one. This extra million dollars a year doesn't benefit the customer or the company in any tangible way but it'll be more modern!"
@@chrisd1746 On behalf of 1980s alarm clocks everywhere, I object very strongly to your remark. And for the record, the design of *your* CPU hasn't been significantly updated in hundreds of centuries. So there. :-P
Hi Daniel, nice video! I got to your video by looking for answers regarding a can-bridge in a bmw c-evolution, after a battery swap (twice the capacity). Bmw uses mprun and crc8 in this bike as well. Thanks for documenting it so well. I'm struggling in finding the crc8 formula. Mind giving some advice on what to read? I need some help :)
@@DalasEVRepair I tested some of the frames with RevEng. While selecting 2 separate frames - it finds the polynomial, init & xor. But applicable only to these frames. Feeding more than 2 frames does not yield to a result.
I'm terrible at recommending anything specific to CAN, since I got most of my knowledge via another dayjob. But check out 'Car Hacker's Handbook' by OpenGarages, and maybe just google some CAN introduction video?
So much valuable resources about Nissan Leaf are flooding the UA-cam database these days, love it.
Couldn't agree more!
Thank you for making this video. Those DIYers of us without a background in automotive programming need all the tutorials we can get. Since most of your CAN-bridges are probably sold to facilitate battery swaps, could you do a step-by-step video on how to program one of the bridges with everything you need to get the car to recognize the new battery. This video would pair beautifully with your CAN-bridge install video for a complete tutorial. Thanks Dala!
I ship all battery upgrade CAN-bridges with software pre-loaded onto them, so it is just to follow the CAN-bridge install youtube video. The other video for updating the software(Can bridge location & Firmware) is all you need incase you ordered the CAN-bridge without software!
This was both technobabble AND useful.
You CAN do it! 👏🏼
Been working in the computer networking field my entire career and interesting to see how the auto industry does it. I would like to get my hands on some actual hardware and software to be able to check out my 2014 Leaf CAN bus
Nice, yes please do! The 2014 model has all 3x CAN-busses available right at the OBD2 port!
@@DalasEVRepair Tesla hired their CAN bus intern hacker, there is a video of him at Defcon
One apparent way to spoof mprun would be to emit multiple of messages with counter running full cycle, that's of course subject to timing and potential canbus/target time-spamming detection (and even total runtime of message reaction like if reaction to message is opening the trunk).
Good idea, but on messages running periodically at 10ms update rate this might be hard to achieve!
I bet that crc and csum are both present because of some legacy team that refuses to move on and learn new things.
It's legacy for sure, but more driven by cost/performance constraints than it is by knowledge. Using CRCs is great if you've got something like a powertrain controller and a vehicle dynamics module talking to each other since they'll both have pretty beefy microcontrollers just to handle their main function. But not everything on the bus is a big powerful module, sometimes it's just a switch module whose purpose is to say "someone pushed the button" and it'll have a CPU with the processing power of a 1980s alarm clock.
It's really hard to go to management and say "We need to spend an extra $2 per unit on a beefier micro on something we sell 500k of a year because... well we don't like the algorithms we're using anymore and we want a new one. This extra million dollars a year doesn't benefit the customer or the company in any tangible way but it'll be more modern!"
@@chrisd1746 On behalf of 1980s alarm clocks everywhere, I object very strongly to your remark.
And for the record, the design of *your* CPU hasn't been significantly updated in hundreds of centuries.
So there. :-P
Thanks very interesting
Glad you enjoyed it :)
Oh wow! Good stuff!👍👍👍👏👏👏👏👏👏
Hi Daniel, nice video! I got to your video by looking for answers regarding a can-bridge in a bmw c-evolution, after a battery swap (twice the capacity). Bmw uses mprun and crc8 in this bike as well. Thanks for documenting it so well. I'm struggling in finding the crc8 formula. Mind giving some advice on what to read? I need some help :)
Cool! Maybe write a script that testes all the usual polyminals, and compares ut to an example frame?
@@DalasEVRepair I tested some of the frames with RevEng. While selecting 2 separate frames - it finds the polynomial, init & xor. But applicable only to these frames. Feeding more than 2 frames does not yield to a result.
@@jorakarandas6592 maybe start a forum discussion thread somewhere with your findings, easier for peoole to chime in and help!
Can you recommend any good resources for someone who is looking to learn more about CAN communication?
I'm terrible at recommending anything specific to CAN, since I got most of my knowledge via another dayjob. But check out 'Car Hacker's Handbook' by OpenGarages, and maybe just google some CAN introduction video?
@@DalasEVRepair Defcon has some good ones too
Wall of text? Really Dala? :-P Great explanation, nice one.
Thanks, really enjoy making these 😁
Lol was reading how nissan protects there canabis
Cannabis is weed, man 😀
So if I merge the CRC and CSUM values I will have kittens? I think I understand now!
The car would
@@zenbudhism meow then 🐈
is there a text version so it can be translated by a translator?
Text version here cl1p.net/scriptDala
@@DalasEVRepair Thanks