I’ve spent the past few days trying researching communication protocols and I have a few issues. With sewable electronics, you need to work with cables with a fairly high resistance that are constantly moving. That means unreliable and noisy communication. Furthermore relying on multiple data lanes increases the needed number of stitches and the chances of failure.

Adafruit Neopixels use a good system that allows them to only use 1 data pin for a large number of individually controlled addressed devices with a total of 3 connections between each device. Disconnecting the devices while in use doesn’t cause them to crash most of the time, and there’s a lot of expandability. Best of all, the circuit design is incredibly simple because most of the hardware is on board the IC. The problem is that the communication type they use seems to be specifically designed for use on those circuits only, and to my knowledge there is no version of the logic circuit that isn’t coupled with the SMD RGB LED component, and even if there was there’s no way to directly adapt it to other components.

I’ve looked into I2C, SPI, UART, FTDI, USB, CAN-bus, and a bit of DMX and I’m still fairly certain none would work. All I need is to exchange bytes of data between two microcontrollers without them constantly crashing. I’m willing to try the most exotic solutions imaginable.

  • I found this some time ago ... did not test though ... pjon.org/SoftwareBitBang.php – jsotola Nov 26 '20 at 20:25
  • Neopixel strings are like (well, not unlike) a giant shift register; the data for each LED is clocked in serially; not easily implemented for what you want. Two-wire RS-485 is very robust but requires transceivers and a two-wire bus. There is also differential I2C, which should be robust enough for your purposes, but it requires transceivers like the PCA9615 and twisted-pair connections. You'll notice why I didn't put this as an answer 8-). Maybe a slow connection over Maxim 1-Wire? Not sure if that is robust enough. Maybe the EE people could come up with a solution. – ocrdu Nov 26 '20 at 20:57
  • Try this one: en.wikipedia.org/wiki/1-Wire – k.Cyborg Nov 26 '20 at 21:50
  • Ya at this point I think my best solution is to build a new library inherited from the stream class based on 1 Wire. Instead of modulating the VCC supply it could just use a third connection to maintain power consistency, then add capacitors everywhere – Delaney Fitzpatrick Nov 27 '20 at 1:18
  • You will not get reliable communications over intermittent connections. one wire sounds great but in reality it needs a second wire called ground. If you go to error correction and detection the target has to respond to ACK or NACK the message. I think the best solution is to use better wire for the connections, you can probably hide them on the inside of the clothing. You might Try some AWG 28 gauge silicone wire. – Gil Dec 2 '20 at 22:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.