S4A

From OLPC
Revision as of 11:36, 16 December 2010 by 127.0.0.1 (talk) (Creators)
Jump to: navigation, search

Introduction

S4A is a Scratch modification that supports simple programming of the Arduino open source hardware platform. It provides new blocks for managing sensors and actuators connected to Arduino. There is also a sensor report board similar to the PicoBoard.

It has been created to attract people to the programming world. The goal is also to provide a high level interface to Arduino programmers with functionalities such as interacting with a set of boards through user events.

One of our current goals is porting S4A to the XO.

Features

Arduino objects offer blocks for the basic microcontroller functionalities, analog and digital writes and reads, and also for higher level ones. You can find a block to manage Parallax continuous rotation servomotors.

Creating Arduino objects is available in 3 different ways as in the Scratch environment. You can choose between creating a new connection or using an already created one. This feature allows Arduino virtual objects work collaboratively using the same connection (the physical object). The Arduino object will find the usb port where the board is connected.

S4A interacts with Arduino sending actuators state and receiving sensors state every 75 ms, therefore the width pulse has to be greater than this time period. This information exchange is done using the PicoBoard protocol and there has to be a specific program (called firmware) in the board. You´ll find instructions to upload it through the Arduino environment.

It works with Arduino Duemilanove and Diecimila versions, maybe it works with others but we haven´t tested them yet. You can also manage a wireless board if you add a RF module such as Xbee. An important feature is that you can make an interactive project involving as many boards as USB ports you have.

S4A is compatible with Scratch, you can work with Scratch projects and PicoBoard. However, it cannot share projects because doing so goes against the Scratch terms of use.

On the other hand, the input/output configuration feature is being developed, so now the components have to be connected in a determined way. The configuration offers 6 analog inputs (analog pins), 2 digital inputs (digital pins 2 and 3), 3 analog outputs (digital pins 5, 6 and 9), 3 digital outputs (pins 10, 11 and 13) and 4 special outputs to connect Parallax continuous rotation servomotors (digital pins 4, 7, 8 and 12).

More information and some nice demos here.

Creators

S4A has been developed by Marina conde, Victor Casado, Joan Güell, Jose García and Jordi Delgado with the help of the Smalltalk.cat group. Please reports bugs and suggestions to scratch@citilab.eu.

Download S4A.