Development Team/Arduino

From Sugar Labs
Jump to: navigation, search

There are different options to connect your arduino board to Sugar (trough sugar-capable activities)


Thanks to the great work found on Gira

We can download an squeak project and install it on our Sugar. This script can help in the process.

echo "Downloading.."
echo ""
curl -o
echo "Executing.."
echo ""
cd Arduino.7/

Note that on an XO laptop you have to tweak some your script in these or similar ways

APP=`dirname $0`
exec "/usr/bin/squeak" \
-plugins "$EXE" \
-encoding latin1 \
-vm-display-X11  \

Installation and use procedure

Having executed our initiation script we have an squeak project with essential particularities in order to run our Arduino. Inside Electronics flaps we can find different tools.

But first we have to connect our arduino board, this is done in the following way,

  • 1) Connect the board to the USB port.
  • 2) If the board doesn't have Firmata we have to upload it form Arduino IDE.


  • 3) To find out the serial port to which the board belongs we can go to Tools->Serial Port of a list we can always find the following:

  • 4) Get an "Arduino board" from the Electronics flap, open its halo by right-clicking it, then open the Viewer by clicking the button that looks like an eye, and then find "arduino - connection" category


  • 5) Select the desired port (i.e. "/dev/ttyUSB0")


  • 6) Execute "Arduino board - connect"


  • 7) Wait more or less two seconds an then the slot "is connected" have to change to true.

  • 8) After searching "arduino - digital pins mode" category and resetting the value of "arduino board - is reading digital pins" (going from false to true). That's how the digital inputs are set.


  • 9) Now we are ready to use it!.


Turtle Blocks (Turtle Art) with Arduino Plugin


There are several efforts to develop Turtle Art support for Arduino. This implementation uses the same firmata protocol that the arduino-squeak connection uses.

The Arduino functionality was corrected from previous versions:

  • Analog and digital reading now works correctly
  • Auto detection of ttyUSBx port for FTDI device (Arduino board uses this for USB)

It requires the Firmata protocol to be uploaded to the Arduino board. Use the latest Firmata version (2.1 as of now) downloaded from the Firmata page ( The Firmata version included with the Arduino IDE has some inconsistencies.

This version has english and spanish translations.



Source Code

You can see all code in: arduino_plugin GIT


The plugin file can be downloaded from File:Arduino.tar.gz.

Spanish Version

Please go to