Arduino is an open-source physical computing platform for developing interactive devices that are able to sense the environment using sensors (electronic components that convert real-world data into electrical signals), and interact with the world using actuators, electronic components that can convert electric signals into a physical action. Arduino is based on a simple micro-controller board, and a IDE (development environment) for writing software that controls the behavior of the board. Arduino projects can be standalone, or they can communicate with other software running on your computer (e.g. Grasshopper, Processing, Flash, etc). The open-source (and cross-platform) IDE can be downloaded for free at www.arduino.cc.
Sensors are electronic components that measure environmental conditions such as light, temperature or other physical quantities and convert them into electricity. This electrical signal measured by the sensor can be processed by the microcontroller allowing a piece of electronics to interact with the world.
Actuators receive commands from the microcontoller and react accordingly. In our bodies for example, muscles receive electric signals from the brain and convert them into a movement. In electronics, these functions could be performed by a light or an electric motor.
Firefly is use to simplify the prototyping process for interactive objects by coupling the parametric 3D CAD interface of Grasshopper with real-time input and output from sensors, actuators, and microcontrollers (like the Arduino). Using Grasshopper's visual programming interface, Firefly gives you the ability to create interactive programs and devices by manipulating elements graphically rather than by specifying them textually.