{"id":4729,"date":"2018-08-08T10:57:31","date_gmt":"2018-08-08T14:57:31","guid":{"rendered":"https:\/\/itp.nyu.edu\/physcomp2\/?page_id=4729"},"modified":"2020-07-29T07:06:30","modified_gmt":"2020-07-29T11:06:30","slug":"accessibility-tools-for-physical-computing","status":"publish","type":"page","link":"https:\/\/itp.nyu.edu\/physcomp\/resources\/accessibility-tools-for-physical-computing\/","title":{"rendered":"Accessibility Tools for Physical Computing"},"content":{"rendered":"<p>This page lists tools, techniques, and resources\u00a0that 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.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"General_Resources\"><\/span>General Resources<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Tactile_Schematics\"><\/span>Tactile Schematics<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The Physical Computing schematics redesigned for tactile use and a style guide for how to design them, available for download at <a href=\"https:\/\/tactileschematics.com\/\">tactileschematics.com<\/a>.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Blind_Electronics_Blog\"><\/span>Blind Electronics Blog<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ken Perry&#8217;s <a href=\"http:\/\/www.blindelectronics.com\/\">Blind Electronics blog<\/a>\u00a0 is on all things electronics. His post on <a href=\"http:\/\/www.blindelectronics.com\/2016\/08\/arduino-ide-setup-with-windows-screen_22.html\">Arduino setup With Windows Screen Reader<\/a> is useful for Windows users. He&#8217;s got some useful notes on Snap Circuits too.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"The_Blind_Arduino_Project\"><\/span>The Blind Arduino Project<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>An effort led by Joshua Miele &#8220;to better understand barriers faced by blind people wanting to participate in the vibrant global culture of DIY hardware prototyping.&#8221; Josh&#8217;s blog has a wealth of information, including: a <a href=\"https:\/\/blarbl.blogspot.com\/2016\/03\/getting-to-know-arduino-uno-board.html\">detailed description of the Arduino Uno<\/a>\u00a0, an <a href=\"https:\/\/blarbl.blogspot.com\/2017\/\">introduction to the Grove shield<\/a>\u00a0and notes on <a href=\"https:\/\/blarbl.blogspot.com\/2016\/07\/how-to-compile-and-upload-arduino.html\">compiling and uploading from NotePad++ on Windows<\/a>\u00a0are all useful posts.<\/p>\n<p>APH has a good <a href=\"http:\/\/imagelibrary.aph.org\/aphb\/main.jsp\">image library of SVG<\/a> graphics that&#8217;s useful in a variety of educational subjects. The Mathematics ones are likely most relevant here. <a href=\"https:\/\/tech.aph.org\/\">APH has other useful tools<\/a> as well, like their Braille Blaster Braille conversion editor, and a few good talking calculators as well.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"The_Smith-Kettlewell_Technical_File\"><\/span>The Smith-Kettlewell Technical File<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><a href=\"http:\/\/www.ski.org\/smith-kettlewell-technical-file\">The Smith-Kettlewell technical file<\/a> &#8220;was a publication by and for blind and visually-impaired electronics professionals and enthusiasts&#8221;. Running from 1980-1998, it covers a range of technical topics with practical advice on topics like soldering, using power tools, electronic components, logic tools and testers, and more. It&#8217;s useful for anyone interested in electronics, and formatted in a way that&#8217;s accessible for assistive reading devices like screen readers and Braille readers. Thanks to Ken Perry for the link.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"CodeEditor\"><\/span>Code\/Editor<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Here are some notes on <a href=\"https:\/\/itp.nyu.edu\/physcomp\/resources\/using-a-programming-editor\/\">using a programming editor<\/a>, with specifics on Visual Studio Code.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Visual_Studio_Code\"><\/span>Visual Studio Code<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"https:\/\/code.visualstudio.com\/\">Microsoft Visual Studio Code<\/a> is a decent text editor that is optimized for screen readers. If you have the <a href=\"https:\/\/www.arduino.cc\/en\/Main\/Software\">Arduino IDE<\/a> installed on your machine, the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=vsciot-vscode.vscode-arduino\">Arduino Plugin for VS Code<\/a> makes a good screen reader-friendly editor <em>(thanks Ken, Josh and John Schimmel for the tip)<\/em>. The Arduino Plugin gives you access to most of the tools in the Arduino IDE: boards manager, library manager, examples, compile and upload, and serial monitor. The <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=MS-vsliveshare.vsliveshare\">VS Live Share Plugin<\/a> allows you to share code live with other users over a network in real time as well. The <a href=\"https:\/\/code.visualstudio.com\/docs\/editor\/accessibility\">Accessibility for VS Code<\/a> page is a useful intro to features in the editor.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Arduino-cli_Command_Line_IDE\"><\/span>Arduino-cli Command Line IDE<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>There is now an officially supported <a href=\"https:\/\/github.com\/arduino\/arduino-cli\">command-line interface for the Arduino IDE.<\/a> Here are some tips on <a href=\"https:\/\/itp.nyu.edu\/physcomp\/resources\/using-the-arduino-command-line-interface\/\">how to set up the arduino-cli environment<\/a>. With these instructions, you can use the command line IDE with your favorite text editor.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Command-line_alternative_to_reading_serial_input\"><\/span>Command-line alternative to reading serial input<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>On MacOS and Linux,<a href=\"https:\/\/itp.nyu.edu\/physcomp\/lab-intro-to-serial-communications\/#A_Command_Line_Option_for_Serial_Communication\"> the command line allows you to read input from a serial port<\/a> just as you would from a file, using the <code>cat<\/code> command. <code>cat \/dev\/cu.usbmodemXXXX<\/code> will open an Arduino&#8217;s serial port, if no other application has it open already. <code>control-C<\/code> will close it. If you&#8217;ve got a continually repeating serial output, you may prefer to use the <code>less<\/code> command instead of the <code>cat<\/code> command. <code>less \/dev\/cu.usbmodemXXXX<\/code> will also print out the serial output, but it will stop after each screenful. Type the spacebar to page through multiple screens, or use the arrow keys to read up and down. Type <code>q<\/code> to exit.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Raspberry_Pi_Tools\"><\/span>Raspberry Pi Tools<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><a href=\"http:\/\/www.raspberryvi.org\/stories\/index.html\">Raspberry VI<\/a> is a forum and tools for Pi support visually impaired users. They&#8217;ve been working on, among other things, a <a href=\"https:\/\/www.raspberrypi.org\/blog\/raspberry-vi-accessibility-for-visually-impaired-pi-users\/\">working and stable version of Emacspeak for the Pi<\/a>.<\/p>\n<p>Here&#8217;s a tutorial on <a href=\"https:\/\/itp.nyu.edu\/networks\/tutorials\/setting-up-a-raspberry-pi\/\">Setting up a Raspberry Pi and securing it<\/a> with command line interface only. This tutorial is aimed at the ITP environment specifically.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Debugging_Tools\"><\/span>Debugging Tools<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"Emic2_text-to-speech_module\"><\/span>Emic2 text-to-speech module<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <a href=\"https:\/\/www.parallax.com\/product\/30016\">Emic2 test-to-speech module<\/a>\u00a0 is an alternative to using the Arduino IDE Serial Monitor for debugging.It&#8217;s a piece of hardware that you can plug it into your Arduino&#8217;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 <a href=\"https:\/\/www.parallax.com\/product\/30016\">Parallax<\/a>, <a href=\"https:\/\/www.sparkfun.com\/products\/11711\">SparkFun<\/a> or <a href=\"https:\/\/www.adafruit.com\/product\/924\">Adafruit<\/a>. The <a href=\"https:\/\/www.parallax.com\/sites\/default\/files\/downloads\/30016-Emic-2-Text-To-Speech-Documentation-v1.2.pdf\">Emic2 manual<\/a> is available online. Here is <a href=\"https:\/\/github.com\/tigoe\/ArduinoGeneralExamples\/tree\/master\/EmicAnalogReadSerial\">a barebones code example for the Emic2<\/a>. (<em>Thanks to John Schimmel of DIYAbility for the tip<\/em>)<\/p>\n<h3><span class=\"ez-toc-section\" id=\"General_Tools_TS04_Bluetooth_Connected_Multimeter\"><\/span>General Tools TS04 Bluetooth Connected Multimeter<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The <a href=\"https:\/\/www.generaltools.com\/ts04-digitalmultimeter\">TS04 Multimeter<\/a> is a multimeter that connects to an Android\/iOS app that works through a screen reader. It is possible to <a href=\"https:\/\/github.com\/tigoe\/TS04-Bluetooth-Meter\">write your own HTML interface for the TS04 meter <\/a>as well, using the web-bluetooth JavaScript framework. Here are some <a href=\"https:\/\/www.tigoe.com\/pcomp\/code\/javascript\/1309\/\">details on the TS04 protoco<\/a>l. You can connect to the <a href=\"https:\/\/htmlpreview.github.io\/?https:\/\/raw.githubusercontent.com\/tigoe\/TS04-Bluetooth-Meter\/master\/index.html\">connect to the TS04 meter from this link<\/a> if you have one. This only works on the Chrome browser, as of this writing.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Piezo_Buzzers_and_Speakers\"><\/span>Piezo Buzzers and Speakers<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Because sometimes an LED just won&#8217;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&#8217;ll hear the results. A useful replacement for LEDs when you need auditory instead of visual feedback. <a href=\"https:\/\/www.sparkfun.com\/products\/13940\">Large Piezo Alarm &#8211; 3kHz from SparkFun<\/a> or <a href=\"https:\/\/www.adafruit.com\/product\/1536\">2KHz buzzer from Adafruit<\/a> or <a href=\"https:\/\/www.digikey.com\/product-detail\/en\/soberton-inc\/PB-3020-2\/PB-3020-2-ND\/4507036\">3900kHZ Buzzer from Digikey<\/a> or <a href=\"https:\/\/solarbotics.com\/product\/17855\/\">4kHz Buzzer from Solarbotics<\/a><\/p>\n<p>Similarly, if you want a replacement for a dimming LED, use a speaker and the <code>tone()<\/code> 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 <code>analogWrite(pinNumber, x);<\/code> for <code>tone(pinNumber, x*10);<\/code> in most cases and get an audible result, because <code>analogWrite()<\/code> takes a number from 0 to 255 as the second parameter, and a <code>tone()<\/code> from 200 &#8211; 2550Hz is reasonably audible.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Grove_Components\"><\/span>Grove Components<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SeeedStudio&#8217;s Grove components are useful for building projects without a breadboard. The Blind Arduino Blog has some <a href=\"https:\/\/blarbl.blogspot.com\/2017\/\">notes on using Grove<\/a>. In addition to the Grove Shield and the components, there&#8217;s also a MKR Connector Carrier that&#8217;s compatible with Grove for the MKR series Arduinos. Here are a few useful Grove part numbers from Digikey:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/103030000\/1597-1189-ND\/5488134\">Grove Base Shield v2<\/a> for Uno v3 footprint<\/li>\n<li><a href=\"https:\/\/www.arduino.cc\/en\/Guide\/MKRConnectorCarrier\">MKR Connector Carrier<\/a> (compatible with Grove)<\/li>\n<li><a href=\"https:\/\/www.seeedstudio.com\/document\/pdf\/Introduction%20to%20Grove.pdf\">Introduction to Grove<\/a> PDF manual<\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020003\/1597-1285-ND\/5487963\">pushbutton<\/a><\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/107020000\/1597-1346-ND\/5487964\">buzzer<\/a><\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020054\/1597-1117-ND\/5482595\">3-axis Digital Accelerometer<\/a> (ADXL345)<\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020035\/1597-1291-ND\/5488065\">protoshield<\/a> for making your own custom circuits<\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/110990028\/1597-1081-ND\/5482559\">Female Jumpers<\/a> for connecting to other components<\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020010\/1597-1122-ND\/5482600\">Ultrasonic ranger<\/a><\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/111020001\/1597-1093-ND\/5482571\">Rotary Encoder<\/a><\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020020\/1597-1136-ND\/5482614\">PIR motion sensor<\/a><\/li>\n<li><a href=\"https:\/\/www.digikey.com\/product-detail\/en\/seeed-technology-co-ltd\/101020030\/1597-1121-ND\/5482599\">Digital Light Sensor<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This page lists tools, techniques, and resources\u00a0that 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. General Resources Tactile Schematics The Physical Computing schematics redesigned for tactile use and a &hellip; <a href=\"https:\/\/itp.nyu.edu\/physcomp\/resources\/accessibility-tools-for-physical-computing\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Accessibility Tools for Physical Computing&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":15,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"categories":[27,57],"tags":[35,32,33,34],"class_list":["post-4729","page","type-page","status-publish","hentry","category-multimeter","category-resources","tag-accessibility","tag-command-line","tag-multimeter","tag-tools"],"_links":{"self":[{"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/pages\/4729"}],"collection":[{"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/comments?post=4729"}],"version-history":[{"count":21,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/pages\/4729\/revisions"}],"predecessor-version":[{"id":5853,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/pages\/4729\/revisions\/5853"}],"up":[{"embeddable":true,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/pages\/15"}],"wp:attachment":[{"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/media?parent=4729"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/categories?post=4729"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itp.nyu.edu\/physcomp\/wp-json\/wp\/v2\/tags?post=4729"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}