Pduino on Raspberry Pi

Controlling an Arduino in Pure Data on a Raspberry Pi.

Pure Data (Pd) is a visual programming language developed by Miller Puckette.

Pduino is a way to interface an Arduino in Pure Data. Writen by Georg Holzmann, Gerda Strobl, Roman Haefeli and Olsen Wolf.
The program running on the Arduino is the Firmata by Hans-Christoph Steiner, Paul Stoffregen, Shigeru Kobayashi and Jeff Hoefs.

This is a workaround for installing Pduino on a Raspberry Pi 4 with Raspbian Buster

Arduino and Firmata

Install the Arduino IDE:

 $ sudo apt update
 $ sudo apt install arduino

Open the Arduino IDE:

 $ arduino

Select in → Tools → Board and Port. The port looks something like: /dev/ttyUSB0
Open the Firmata program: → open → Firmata → StandardFirmata
And upload it!

Pure Data and Pduino

Install Pure Data

 $ sudo apt update
 $ sudo apt install puredata

Install the Externals

The comport external should be installed via the terminal:

 $ sudo apt install pd-comport

The other externals can be installed in Pure Data. Open Pure Data and in:
→ Help → Find Externals
Install: zexy, mapping, cyclone and pduino
The Pd external folder should look like that:

Set Path

In Pure Data → File → Preferences → Path set the paths for the zexy, mapping, cyclone and pduino libraries.
It might be /home/pi/Dokuments/Pd/externals/….

Set for Startup

In Pure Data → File → Preferences → Startup set zexy (it will load on launch)
Restart Pure Data.

Run Pduino

In Pure Data/help/Patch Browser/pduino open arduio-help.pd
Click on “devices”. The console should tell you witch number your Arduino has.
Select that number and click on “open $1”.
Now your Pduino should work.

One can test it by clicking on “PinMode 13 output” and then toggel pin 13. The build in LED should turn on and off.



This manual is made by Wolfgang Spahn 2020.
It is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Creative Commons License