One wire communication
-
Hi all,
Is it possible to control devices like UCS1903 which uses one wire communication with duetwifi?
Thanks in advance.
-
The problem with 1-wire communication protocols is that they require precise timing, which generally means that the processor can't do anything else at the same time - in particular, generate steps for the stepper motor, or respond to input from the UART, USB or network. In some cases it is possible to program an SPI or I2S controller to DMA the data out, but it needs large buffers. In the case of the UCS1903 it might be possible to use SPI but it would need 5 SPI bits for each bit of data.
If you want to drive addressable LEDs then I suggest you use the Adafruit DotStar. It uses regular SPI protocol, so driving it is straightforward. It's already supported in RepRapFirmware, but disabled by default because the current Duet hardware doesn't include the buffers it needs to level-shift the signals to 5V and protect the Duet against mis-wiring. It can be enabled using the SUPPORT_DOTSTAR option, but to use it on a regular Duet it would need to be modified to use the SharedSPI subsystem.
-
@dc42 Thank you.