The icebus can also be used with non-fpga devices. For this we created a USB adapter with a ftdi USB->uart->rs485 mechanism and a rs485->uart adapter:

On the slave side you would either integrate the rs485 chip on your pcb or use an adapter that converts the rs485 signal back to uart:

We have written a ros node that implements the icebus protocol using linux termios to interface with the ftdi chip. In this case it controls an openbionics hand, which runs on a samd21 arduino sketch. Of course you can't run the same speeds as with a fpga. The upper limit for the samd21 seems to be a baudrate of 19200. This gives you around 100Hz communication frequency for controlling the setpoints of the four motors inside the hand.
And here the hand in action:
Here is a logic analyzer capture of the command frames:

Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.