I in the planning/information gather stage.

I want to replace the guts of a robo dog with a raspberry pi 3. It seems to have 8 serial interfaces with 8 pins(not necessary all in use).

I am trying to figure out the minimal amount of additional circuitry necessary to communicate with each of the 8 parts.

My first though was to divvy the 20 GPIO pins. What is the fastest speed I could achieve? How bad would this be for CPU utilization?

  • It seems to have 8 serial interfaces ...that does not make complete sense ..... which robo dog is it? – jsotola May 15 '18 at 1:50
  • @jsotola The Sony Aibo (210 I think). Each leg,arm, head, and etc have individual control ports. – cybernard May 15 '18 at 3:52
  • I'm pretty sure these aren't RS232 control ports, but I²C or SPI. – Janka May 15 '18 at 13:27
  • he said serial, not RS232...... I2C and SPI are both serial as well. – Chad G May 15 '18 at 16:37

Rpi has only one serial UART channel. So for 8 channels, you need to use software to config GPIO pins as UART. However, software UART on rpi/linux is not that reliable, even at low speed (9600baud).

Or you can use 8 SC16IS750 modules for hobbyists (less than US$10 from eBay).

SC16IC750 I2C UART module

SC16IS750 is a slave I2C-bus/SPI interface to a single-channel UART.

  • offers data rates up to 5 Mbit/s and low operating and sleeping current.

  • enables protocol conversion from I2C-bus or SPI to and RS-232 and are fully bidirectional.

SC16IS750 Datasheet


| improve this answer | |
  • Does one chip give me 8 ports or 1? Do I need to make room for 8 of these chips? – cybernard May 15 '18 at 11:39
  • Only one UART channel on one board. So you need 8 boards for 8 UART channels. Each board is about 2.5cm x 3cm. – tlfong01 May 15 '18 at 12:55

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.