Creating a new reply to add @eddieD troubleshooting solution, and I can’t seem to edit my original solution post anymore.
We have the whole robot of 17 falcons and 4 CANcoders running off the CANivore now. Below are the steps we took.
- Pull all CAN wires from the robot
- verify CANivore firmware is up to date
- add motors to the chain 1 to 2 at a time,
3a. always use a terminating resistor at the end of the chain.
3b. verify good CAN wire connections (e.g. wire is actually stripped if inside a Wago)
- verify firmware and CAN IDs are up to date as each motor / CAN device is added
- only attach devices that support CAN FD to the CANivore (Falcon 500 / TalonFX, CANcoder, Pigeon 2.0)
- wire the bus in series, not using star topology
Each of those steps is important. If you don’t use a terminating ~120Ohm resistor, the bus won’t be happy. If you add too many devices with the same ID (e.g. default ID of 0), the bus won’t be happy. If you swap yellow/green wires on a connection or have a bad connection, the bus won’t be happy.
Additional troubleshooting of CAN wiring that @eddieD received from CTRE:
 Measure resistance between the two Limit Switch Cover screw heads as a baseline. If you are not reading close to 0 Ohms (<10 Ohms), you may need to scratch into the screw head surface a bit to get a valid measurement. You may need to do this periodically to confirm you have a reliable connection to the screw head.
Once you’re reading close to 0 ohms, you can proceed to the next step.
 Measure resistance between one of the Limit Switch Cover screw heads and each of the four Falcon wires.
[2a] Screw head to CANL (green)
[2b] Screw head to CANH (yellow)
[2c] Screw head to V+ (red)
[2d] Screw head to GND (black)