Can bus in parallel or series?

Hello to you all, our team (team sycamore 5614) tried to transfer to parallel can bus connection.
Unfortunately our can usage got to 100%:face_with_open_eyes_and_hand_over_mouth: when we only powered the chassi.

Is any team have transfer already to parallel can connection and can help us? Or even has some information obout this topic?

Hello! What do you mean by “parallel can bus”? (the CAN circuit is already a parallel electrical circuit).
did you mean “daisy chain fashion” like CTRE recommended?
image
page 45 in Falcon 500 ctre’s manual

I think you might find more information about CAN topologies in this thread

3 Likes

Trying to guess what went wrong the OP needs to understand the drawing is not precisely how the wiring usually looks on the robot. Typical CAN devices have two pairs and not one pair as depicted. If the device is disconnected, the circuit is broken. RevRobotics sells a CAN device jumper kit that helps prevent that problem. Possibly OP tried to duplicate that wiring but didn’t get it quite right.

I believe wiring CAN should be parallel as it’s safer and easier to debug, more on that here.

But, having high CAN usage is a whole different thing (though is affected by parallel, I believe).
To fix that problem, you can do two things:

  1. Limit you CAN frames to be slower, compromising with performance for low CAN usage.
  2. Move to a CAN FD system using a CANivore. This is the better option imo, but it requires using only CAN FD compatible devices, and costs 300 dollars.
5 Likes

I know the drawing is not precisely how the CAN is connected IRL, but CAN as a whole is a parallel electrical circuit, so I wanted to understand what they mean by “parallel”. did they mean daisy chaining, star topology, or different topology.

2 Likes

Your drawing is exactly right but I was trying to point out the device boundaries with the 2 pairs to a device weren’t obvious. Here’s a crude rendition maybe more like IRL. The badly drawn purple box is the typical device and better shows how the RevRobotics jumper can help.
image

2 Likes

image
thank you all, when I refer to a serice can I mean like in this pic

I am not on the electrical subteam,
but from what I know on software, can usage can also mean that there are a lot using the can bus (obviously), from my experience, some of it can be reduced by a lot in programming.
This year we (5554), used Wagos for our can wiring and had no problems with it at all.

If you pry apart a CAN device, you discover that it really is one pair. Yes, there are four total wires coming of of, say, an FRC motor controller. But, inside the motor controller itself, the two yellow wires are connected directly to each other, and the two greens are connected directly to each other. The “T” part just happens to be inside the motor controller and not outside of it. But, that’s just a peculiarity of FRC.

Having 4 wires makes it look like you’re creating a daisy-chain where a CAN device picks up date from one pair of wires and retransmits it on the next. But, that’s absolutely NOT what’s happening. It’s a bus architecture – you put data on the wires and (ignoring propagation delays), every device on the bus sees your data at the same time.

The SparkMax CANBus connector (link below) is the most obvious place you see this – they added the two loops because the motor controller internally connected the two yellows together and the two greens together. But, if that connector ever popped out, you’d have a break in your CAN.

4 Likes

When wire can in parallel I have an extra pair of wires green and yellow, do I have to connect to them a 120 ahom or i can leave it open?

You only need one 120 ahom per CAN loop.

You can leave one lead unconnected on a branch. Hope this diagram helps clarify. Make sure to insulate the unconnected leads. If using krakens with bolted connections you can make cables with only one lead.

You need to terminate both ends, but the rio does one end. The PDH / PDP can do the other one with a jumper / switch, or you can add a separate resistor.

6 Likes