What happens when a Pi meets an Arduino?

A simple example would be, when building a mobile robot, we use the Raspberry Pi to extend its vision and get a nice tiny monitor. Meanwhile, Arduino handle nicely with the motor driving part and delivers fast responses like obstacle avoidance. Because, without the OS, the response time of rapid changes on the Arduino is much shorter. Also the high performance Pi can deals much easily with wireless communications, imaging and running complex algorithm.

Therefore, with the Arduino and Pi together, you get a powerful "brain" and "cerebellum" for your project, at one time.



Raspberry Pi Meet Arduino Shield Pinout

Fig1: Pi Meet Arduino Pinout

Feature Introduction Diagram

Fig2: Feature Introduction

Get Started with Pi Meet Arduino

First of all, let's control a sensor by Raspberry Pi directly with Meet Arduino Shield. '''Note: '''For this tutorial, we assume that you've known the basic knowledge about the Raspberry pi. And more details will be focused on how to extend and use more hardware modules and sensors for your Raspberry pi projects. In this part, we will control the Relay module with Python via Pi's GPIO.

Tools Required

  1. Raspberry Pi with Ethernet or WIFI connected
  2. Raspberry Pi Meet Arduino shield
  3. Relay module (or and LED module)

Software Required

  1. Python 2 Installed.
  2. Setup SSH on Raspberry Pi.

If you didn't install python. Please enter the following commands below into LX Terminal via SSH.

root@raspberrypi:/home/pi# sudo apt-get update
root@raspberrypi:/home/pi# sudo apt-get install python-rpi.gpio

Hardware Connection

Fig3: Relay CD

Step by Step tutorial

1.Plug the Pi Meet Arduino shield to the Raspberry Pi, Which connected with the power and Ethernet. 2.Connect the Relay module(or LED module) to your Pi as the hardware connection shown. 3.Login in your Pi by Putty. Fig4: Login SSH 4.Create a Python example code using nano.

root@raspberrypi:/home/pi# nano blink.py

import RPi.GPIO as GPIO
import time


while True:

5.Run the python sample by the command below.And Check the effect. PS: The module is connected to the GPIO 4 matching the software configuration.

root@raspberrypi:/home/pi# python blink.py

Fig4: SwitchRelay

6.+ to stop running the python demo. =. = The switching of the relay module create the noise...

Program the Arduino shield using Pi

In this part, we will share how to program your Arduino using Pi. The steps is quite simple what you need is just installing the Arduino on your Pi and run the remote desktop to test it.

Software Required

  1. TightVNC Viewer on your PC
  2. TightVNC on your Pi
  3. Arduino IDE on your Pi

To install the TightVNC on your Pi, please check the commands below.

root@raspberrypi:/home/pi# sudo apt-get update
root@raspberrypi:/home/pi# sudo apt-get install tightvncserver

And to install the Arduino IDE on your Pi.

root@raspberrypi:/home/pi# sudo apt-get install arduino


1.Connect the micro usb from Meet Arduino shield to the USB host on the Pi. 2.Launch your VNC server on the Raspberry Pi.

root@raspberrypi:/home/pi# sudo vncserver

3.Log in the remote desktop to Pi using TightVNC Viewer. 4.Launch your Arduino IDE. Open the blink sample sketch. Choose the leonardo as the board connected and open the right port as the picture shown. Fig2: Arduino IDE and program the shield 5.Click "Upload" to program it.


For any questions, advice or cool ideas to share, please visit the DFRobot Forum.