@dc42 We are currently communicating with the Odrive by UART through an intermediary Arduino Due. The data rate is slow and inconsistent; we are trying to read incremental encoder data (angle) from the Odrive by sending the string back to the Arduino from the ODrive, and then from the Arduino to the Duet 3.
We also have everything connected and working with a USB hub.
I wasn't aware if a second CAN on the Duet, we were studying the CAN FD to see if it can read data from a standard CAN 2.0.
We have also made significant changes the DWC to allow for 10 axis control, where you can drag a simulated machine axis on the screen and the real machine will move to that position.
I think if we are not able to get the CAN or an I/O to work for step/dir, we may just void the warranty on one of the expansion boards that is connected (which gives A/B/C steppers) and read those stepper signals while turning off the drivers, such that the step/dir signal will control the Odrive servo, but the actual stepper motors connected to A/B/C will not move.
I'll try to get a video or pictures of our system and modified DWC to post here later.