This page lists tools, techniques, and resources that may be helpful to students with differing abilities who want to build the projects described on this site. It is a constant work-in-progress, so if you have suggestions for additions, please let us know.
The Blind Arduino Project
An effort led by Dr. Joshua Miele “to better understand barriers faced by blind people wanting to participate in the vibrant global culture of DIY hardware prototyping.” Josh’s blog has a wealth of information, including: a detailed description of the Arduino Uno , an introduction to the Grove shield and notes on compiling and uploading from NotePad++ on Windows.
This electronic module can speak text that you send to it via an asynchronous serial interface. It’s an alternative to using the Arduino IDE Serial Monitor for debugging. You can plug it into your Arduino’s serial transmit (TX) or softwareSerial transmit pin, and it will speak whatever you send out the serial pin via Serial.print(), Serial.println(), or Serial.write(). You can get it from Parallax, SparkFun or Adafruit. The Emic2 manual is available online. Here is a barebones code example for the Emic2. (Thanks to John Schimmel of DIYAbility for the tip)
General Tools TS04 Bluetooth Connected Multimeter
On MacOS and Linux, the command line allows you to read input from a serial port just as you would from a file, using the
cat /dev/cu.usbmodemXXXX will open an Arduino’s serial port, if no other application has it open already.
control-C will close it.
Piezo Buzzers and Speakers
Because sometimes an LED just won’t do. These buzzers vibrate in the audible range when you apply 3-5V across their pins. You can drop them into the Blink sketch with no change in code and you’ll hear the results. A useful replacement for LEDs when you need auditory instead of visual feedback. Large Piezo Alarm – 3kHz from SparkFun or 2KHz buzzer from Adafruit or 3900kHZ Buzzer from Digikey or 4kHz Buzzer from Solarbotics
Similarly, if you want a replacement for a dimming LED, use a speaker and the
tone() function. An 8-ohm speaker will work pretty well with a 220-ohm resistor in series with it, so you can swap an LED for a speaker and swap
analogWrite(pinNumber, x); for
tone(pinNumber, x*10); in most cases and get an audible result, because
analogWrite() takes a number from 0 to 255 as the second parameter, and a
tone() from 200 – 2550Hz is reasonably audible.