Generic current control

Hey all,
I’m looking at ODrive as a control platform for a robot with a multi-tool interface, where some of the tools may have BLDCs, some may have hobby servos, and some may have non-motor things like lasers for engraving, which require current control but obviously aren’t motors. I was wondering if there was a workaround I could use to force the encoder value on the ODrive such that, if a tool is attached with no motor, but which requires high power and current control, I can use one or two legs of the ODrive output with current control, as though the device is a “motor” which is just fixed in position, keeping the signal phasing constant such that all commanded voltage is passing from one leg, through the tool, into the other leg.

If necessary, I can simply have a Vdc line running into the tool, and power the laser with a (steady-state) relay and a simple digital output from the microcontroller, but it would be nice to utilize a dedicated current controller on some hardware I need to include regardless, since I want to be able to synchronize another motor on the system with the position of the tool, if that tool is a motor.

If this is behavior that is possible, but that must be necessarily programmed in to avoid an error or to keep the phasing from changing unintentionally, that is also fine, if needed I can program the ODrive with a mode that changes the control from the normal mode to a simple current controller between two phases, or one phase and ground, but at this point I’d prefer to do it the hackier way with less coding, to get it to work (properly) and integrate it into the rest of my project, and then leave it as a line item for improving maintainability after a round of testing.

I don’t think this is really supported right now. I guess maybe you could trick it but let me know if you figure it out, this would be quite tricky. I actually think your best bet is to write a “non-motor current output” or something similar that completely bypasses the encoder handling via a switch