Thanks Keith for this video - it helped me get started looking at the e-tube bus to try and work out why my Di2 bike intermittently does bad things (that's a whole other story). There is way more happening on the bus than I expected. There seems to be a "sleep" mode where the voltage drops a few hundred mV and it is idle, and then when it needs to do something, it does some wake up signalling and goes into the active mode. There seems to be two different message lengths - a longer one about 130us, and then a shorter one about 50us, both using the BPSK signalling you describe. The longer ones appear to be the data carrying ones. The short ones can appear just after one of the longer ones, perhaps as an ack message, or they can also appear as an idle/heartbeat message if there has been no activity on the bus for about 1ms. So there is lots happening on the e-tube bus and none of it looks anything like CAN. And there is also all the big voltage dips and noise when the derailleurs actually move!
@ArashFallah
6 ай бұрын
Now go and edit the CAN bus page in Wikipedia! "The CAN bus protocol has been used on the Shimano DI2 electronic gear shift system for road bicycles since 2009, and is also used by the Ansmann and BionX systems in their direct drive motor."
@polluelo1980mark
5 ай бұрын
First generation DI2 was not CAN, that was very rudimentairy signal to get the thing shifting. By memory there was a seperate signal wire to each derailleur and with one 'modulation' it shifted up and with another down.
@zachbrown7272
6 ай бұрын
Keith, another excellent video. As someone who's worked on robots, cars, 3d printers, basically a whole myriad of devices with CAN in them, I've listened to a lot of people explain CAN and you've probably done one of the best jobs yet. With regards to the capacitive coupling of the differential signal, I noticed that you're using ceramic capacitors. Keep in mind that the capacitors value goes down as a DC bias is applied. So depending on the size and dielectric of the cap, you may be working with a capacitor that is 10% of the value you expected it to be.
@kwakeham
6 ай бұрын
Thanks. I'm by no means a CANbus expert but I've been using a lot of this stuff more and more lately. I never thought of that about the DC bias affecting the capacitance since I was using them to AC couple. I tried a few values but mostly derived my starting points from a Paper from TI about coupling differential RS485. I simulated in LTspice as well and got about the same results.... it works sort of, until real life stops it.
@pp.8129
5 ай бұрын
10:21: i am not sure where you get that CAN bus speed has to be 1Mbps. I do CAN bus decoders for motorcycles and they run at 500Kbps. You can have up to 1Mbps but doesn’t mean have to. It's even on the snippet you are showing: "maximum".
@BogdanTheGeek
5 ай бұрын
I get your frustration with RS486 over power line, but it is possible and reliable. I am not sure what transivers you are using, but I have implemented this exact feature for a product and it worked. Granted, you need quite high data rates and you can't supply much current (~10-50mA) but it is possible. Difficult, but possible.
@c0d3z3r01
2 ай бұрын
Well, there seem to be multiple generations of Di2, where one of the earlier ones was BPSK. Later ones seem to use a proprietary protocol based on SW-CAN. You are only talking about regular CAN bus. Did you know about SW-CAN (single wire can)? Maybe Shimano created a proprietary variant that can be AC coupled on a DC power line, like Yamar Electronics did with their DCAN500 transceiver. Oh btw, also check out TI Appnote SLLA336, which can probably applied to CAN as well.
@KimMoth
Ай бұрын
So is jailbreaking Di2 in the realm of possibility? How about probability?
@sabamacx
6 ай бұрын
Aha! So it's CANBUS over 1-wire protocol! You're just looking at the wrong OSI layer!
@zoenagy9458
6 ай бұрын
check shimano patents, and IC that generates PSK, could be standard
@madetheweekend
6 ай бұрын
Finally, somebody is opening the di2 door! 👍 Take my money and take this all the way!
@kwakeham
6 ай бұрын
I've got an LTspice simulation designed of a very very simple comparator based BPSK demodulator that simulates well but it's still way more complex than what Shimano actually uses. With my OOK modem being a decent first step I kind of want to see if I can get some faster speeds by copying the BPSK modulation but I need more thought on how.
@EstelonAgarwaen
5 ай бұрын
Somebody make a derailleur system over BACnet already lol
@Jackisaboss1208
4 ай бұрын
Good old ISO 11898
@poopy_pants_joe1194
5 ай бұрын
The crank is going to blow apart... who cares about canbus?
Пікірлер: 18