Does anyone know of a cheap USB to CAN bus bridge that works with Phoenix? Does anyone know if the SparkMax will do this already??? I know it does the function…
I want to build a test/train box that has a beefy DC supply, breakers, motors, and some way to hook it to a computer. This will get used for kids to study PID tuning and such.
I hate to put a $300 CANivore in it… Of course I’ve already got two SparkMaxes, a NEO, a NEO550, and soon a $200 Kraken in it
Canable (when it’s in stock, i.e. not now) works for connecting to CAN 2.0 over USB. This worked for TalonSRX and previous gen CTRE motor controllers. I found it as a recommendation before the CANivore was released and before CAN FD was the new protocol.
Doesn’t work with Kraken see more posts below and I’m not sure about talking with Neos. From my memory (it’s been a few years, 4 years it looks like in my notes) the only reason I was able to control a CTRE motor controller or talk to a Gadgeteer sensor was their library was also installed and supported the canable/USB CAN. If REV doesn’t have similar support in their library, or a version of their library usable outside of a roborio I’m not sure what it will do.
The most “might already have the parts for it” is gonna be a microcontroller like a Pi Pico paired with a cheap can transceiver board (note that most have a terminator soldered on). You can run the USB->CAN bridge mode of Klipper (a 3d printer firmware). Note that such a setup isn’t fully featured (it basically supports nothing but passing can frames along and receiving them), but it quite literally cost me $2. There are some cheap Canable clones floating around on Aliexpress that you could try too. No idea if they’re reliable or a good idea though, I have zero experience with them.
Also note that Phoenix only supports SocketCAN devices on only Linux so whatever device you do settle on needs to run Linux.
(Also, side note, please make sure you have a good, rapidly accessible, and definite way to disable it, motors spinning in ways they shouldn’t are terrifying when you’re near them)
You may just be out of luck and need a CANivore. Can FD is not as common to find ‘cheap’ out in the wild. Other CAN FD adapters are actually more than the CANivore…
Another contender for CAN 2.0 though (and this one appears to be in stock), so not all bad news. I haven’t used this from Odrive, but I have used their other hardware and trust the quality of hardware and firmware.
I would also vouch for the ODrive CAN adapters – they’re basically Copperforge VulCANs with slightly different connectors and running the gs_usb compatible firmware, and those perform reasonably well. I use them every day and I haven’t ever had issues with them.
ive had a lot of success with this DSD-TECH can adapter (basically a generic CANable)
i currently am using the canable fw for it but will eventually switch to the candlelight since it is a little faster and uses gs_usb instead of slcan. depending on fw, you can use either linux or windows
the rev canbridge thing works with this, take a look at this CD post.
Per CTRE recommendation, CANivore is recommended. However any socket CAN adapter could be used.
Also this thread might give you more information.
For your setup, I am not sure if any of the CTRE device would work with other brands under the same CAN bus. You might need multiple CAN adapter for handling more than one bus for devices from different vendor.
I haven’t tried it, I was just under the impression the Kraken is CAN FD not CAN 2.0 so it’s not meant to work between the two (why a CANivore doesn’t see TalonSRX as well). The CANable in their docs states it’s only 2.0 so I assumed it’s not gonna work. If you have had luck with Krakens on a 2.0 I’ll definitely stand corrected and would love to know what the process was. I have a CANivore in my personal stock, but the team went REV for our swerve so it didn’t get used this last season. I don’t have any CAN FD devices personally otherwise to try it with my CANable.
When I was using CANables daily I was driving TalonSRX with brushed motors and the magnetic encoders with ‘Gadgeteer’ connection to the motor controller. The Falcons had just come out, but they were too few in stock for the project I was working on.
The Kraken (TalonFX) supports and detects CAN 2.0 and FD, otherwise it wouldn’t work on the roboRIO bus. Same for all of our Phoenix 6 supported devices.
The TalonSRX only supports 2.0 hence why it doesn’t work with the CANivore as it’s an CAN FD to USB adapter.
Note that not all CAN adapters are equal and I’ve used some pretty flakey ones.
I’m looking for a cheap item to build into a test bed.
The ideal thing is to have a USB plug that goes into a computer running Phoenix. The other end goes into my test bed and crosses over the USB to the Kraken’s CAN bus so we can train kids on tuning and running Krakens.
It sorta sounds like y’all are saying “yes, a CANable USB to CAN 2.0 bridge will do this”.