ProtoSnap Contributors Guide
This ProtoSnap Contributors Guide connects your XO to the real world of electronics, sensors and activators -- using SparkFun's $29.95 ProtoSnap - Pro Mini. We use the Logo-like TurtleBlocks visual programming environment initially, but later Scratch & Etoys are expected too. Please ask questions on the unleashkids@googlegroups.com mailing list! You can join right here: http://groups.google.com/group/unleashkids
These instructions have been tested on the XO-4 Touch laptop, and should run on XO-1 (George Hunt working on it), XO-1.5, XO-1.75 too. But Ian Daniher will investigate whether "ino" below can be made to run on OLPC Release 11.3.1 (based on Fedora 14) commonly used in Haiti as of 2013.
Loosely speaking, this 5-phase install will proceed as follows:
- install requirements
- setup build environment
- build it
- upload it (to the SparkFun board)
- install the TurtleBlocks plugin
Recipe
- Install 13.2.0 onto your XO laptop
- Connect your XO to Wifi Internet (Neighborhood View = F1 key)
- Open the Terminal Activity (within Sugar's "List View" in the top-right of the Home View = F3 key)
- On an XO-1 the 256 MB of memory is not enough to do the following installs. So you will need to return the GUI (Graphical User Interface) memory to the system before you start the install (issue the command "sudo init 3", and hit return to log in as superuser), or temporarily add Swap,
- Install 3 packages, each of which take a couple minutes to install. Run:
sudo yum install -y ino git make
- Create a default .inorc file to identify the Arduino Pro Mini 5V/16MHz which is included in the ProtoSnap:
echo board-model = pro5v328 >> ~/.inorc
- Run the following 4 commands to create a project directory:
mkdir firmata cd firmata ino init mkdir lib
- Correct a packaging error in "ino", running these 2 commands:
sudo mkdir /usr/share/arduino/hardware/tools sudo cp /etc/avrdude/avrdude.conf /usr/share/arduino/hardware/tools
- copy the StandardFirmata source into the project directory and build it:
cp /usr/share/arduino/libraries/Firmata/examples/StandardFirmata/StandardFirmata.ino ./src/sketch.ino ino build
- Plug in a "USB-A to mini-USB" cable, connecting your XO to the ProtoSnap (Ian can provide these, or 80 cents @ monoprice.com). Then run:
ino upload
- ProtoSnap's bright white light will turn on! Finally, run:
git clone https://github.com/itdaniher/turtleblocks-arduino.git ~/Activities/TurtleBlocks.activity/plugins/arduino
- Or run this script, (to avoid needing to install git as noted above):
wget https://github.com/itdaniher/turtleblocks-arduino/archive/master.zip unzip master.zip mv turtleblocks-arduino-master/ ~/Activities/TurtleBlocks.activity/plugins/arduino/
- Return to Sugar's Activity wheel (Home View) and launch the TurtleBlocks Activity. Load the sample TurtleBlocks project here:
http://wiki.laptop.org/go/File:TurtleBlocks_Activity.ta
- Go hog wild in TurtleBlocks, thanks!! Please submit all priority bug reports to our mailing list: unleashkids@googlegroups.com (join @ http://groups.google.com/group/unleashkids)
Screenshots
FAQ
"Sometimes the proMini gets stuck and needs a manual reset to reprogram. Try programming it again, and hit the RESET button just before the code is downloaded to the board. This often fixes the board. Afterwards, you shouldn't need to do this again. Hopefully." Thanks to the amazing Brian Huang at SparkFun!
See Also
- Arduino
- Ino, a command line toolkit for working with Arduino hardware,
- Ino quick start guide