Our team is planning to buy a CTR CANivore. We have considered the advantages of getting it and whether it is worth the $300, and we will most likely get it. How exactly should we connect this device to the robot? We are using one Can Bus. Thanks.
You are now, but once you have a CANivore you will have the option of multiple busses. Anything that isn’t CTRE will have to be on the second bus.
One thing to consider is that the 2027 control system is currently slated to have two CAN (potentially FD) busses built in, as per the RFP. This means a CANivore will only really be useful to you for the next two seasons, so you may want to think about how much you need to have one now.
Also, the legal control system components for 2025 should be releasing soon, and it’s possible that may allow a cheaper CAN adapter from another company.
True but the CTRE ecosystem does really rock…
That’s only true if the new control system is able to support CAN FD, which is critical if you’re using other CTRE ecosystem components (Krakens, CANcoders, etc.). Honestly, the CANivore will probably still be a useful device with the new control system.
You will want to use more than one CAN bus if you have a CANivore, it’s very much to your advantage. We have used ours to control the drive system (all eight motors and four CANcoders) which leaves the regular CAN bus for your other systems. This has the advantage of keeping the drive system working even if something happens to the other CAN bus, which happens sometimes in matches.
Just double checking, is it required to run CAN-FD for Krakens or are they able to work on a traditional CAN bus from the roboRIO the way the CANcoders and Pigeon are?
CAN-FD is not needed for Krakens. They can work on the RIO CAN bus.
I believe supporting FD on at least one of the CAN busses is a requirement for the 2027 control system, and since that’ll be a default option I’m guessing CTRE will support the 2027 FD bus.
I’m very new to wiring and have a question.
With this configuration, do you just not plug anything into the CAN slots in the PDP?
The CANivore can be powered via the USB C connector however it’s always an good idea to power it with the corresponding power input ports just as a backup ( the roborio may not be great at providing consistent power output to the CANivore ). That being said in a single bus interface your start of the bus would be the canivore , then as many devices you want all in series with a 120ohm termination resistor ( either a physical one or a device that supports it like the pdh or pcm). in a 2 bus system you would do the same but have an additional one like you did last year that would start at the rio and end at the pdh/pcm . It is highly recommended that you not put other manufacturer’s devices on the CANivore as it won’t work properly . an example from my team’s robot’s busses was CANivore , pigeon2 , front left drive motor, cancoder , angle motor, front right angle motor, cancoder , drive motor , back right angle motor , cancoder, drive motor, back left angle motor , cancoder, and drive motor, followed with a termination resistor by pololu . These where all kraken motors and in the CTRE family of devices . On our second bus we plugged into the rio to start through 2 shooter motors , 2 intake and 2 climber motors all REV Vortex motors , ending at the PDH. We powered our CANivore off an VRM 12V2A port, but a Mini power module with the right amperage fuse would be fine as well.
So per last years rules even if nothing else was connected to the CAN bus it needed to go from the Rio to the PDP/PDH. If you have all your motors in the CANivore you would still need a set of wires from the RIO built in CAN bus to the PDP.
I suspect this years rules to be different because the new PDP 2.0 does not have any CAN capability.
important to note: the canivore cannot be terminated at the PDB, as it only supports can FD devices. As the PDB is not can FD, even though it provides a terminating resistor, it will throw errors being on an FD bus, and cause the whole bus to go red. We spent more time than I care to admit debugging this one until I read the canivore user manual.
alright thank you