Let's Make Robots!

A custom Pi shield or an Arduino?

As more and more people get a Pi they are asking how to interface it to their robot. I do not own a Pi but I looked at the GPIO pins available for interfacing. Apart from general digital I/O pins you have I2C, SPI and Serial interfacing available. I assume there is a library or something that allows these pins to be easily access from within the Linux operating system.

So the question becomes do you just use another MCU such as an Arduino to provide the necessary I/O functionality or do you use a custom shield?

Because the Pi has Serial, ISP and I2C available it is very easy to have it control an Arduino controller which then provides the ADC, PWM, Servo and digital pins. The disadvantage is the Arduino will probably cost as much as the Pi and wont stack neatly.

Some distributors such as Adafruit are already working on a number of interface boards (Pi plates) and accessories.

So I want to know, Should I be designing a robot sheild or are there enough options already?


Update:

At this point I will get a Pi and explore the issue further. I have lots of ideas but I need to see what will work.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

I do not see the need of a full arduino on the shield. 

An ATMega8 with ISP connector and a serial,SPI or I2C  based control firmware would be more than sufficient in my opinion. 

I'm toying with the idea of my own design and I would also consider adding a way to power the Pi from the shield.

 

 

An ATmega8 is an Arduino. The original Arduino used ATmega8. My point is, An ATmega MCU has a number of useful I/O pins including built in ADC and timers for PWM and interrupts. 

A sheild could be made just using I2C interface IC's. This would not require any programming but would probably end up costing as much.

An Arduino is an ATMega8,168,368 etc etc  with a serial bootloader :)

What I meant was to have a bare one without the serial converter that is costly.

Perhaps this board would do?

This is the Mini Driver used in our Doodle Bot. it is very cheap and uses an ATmega8A runing at 16MHz, 5V. The regulator could also power the Pi. Features:

  • 2x FET motor drivers rated for 2.5A stall current each.
  • 8x Servo outputs can be powered directly from the battery.
  • LDO 5V regulator (1A max).
  • Battery monitor on A7.
  • Reverse polarity protection.
  • 6 analog inputs
  • 3 PWM outputs (2 normally used by motor driver).
  • 2 external interrupt pins (D2,D3).

Something like that would be great :)

Have you seen the Gertboard? http://www.raspberrypi.org/archives/tag/gertboard

With so many RPi sold there must be a market for a "shield" that has some unique features.