Posts: 1
Joined: Mon Jul 03, 2017 11:31 pm

Assistance for Non-Verbal Child

Thu Aug 17, 2017 12:15 am

Hi, I am working on a project for my own child who is completely blind, learning delayed and Non-verbal.

The long and short of it is that she is attempting to communicate at times by different sounds or actions. What i am looking at doing is to create a Pi based "Box" that has a series of buttons on the top of it for her to press for simple things such as Playing her music, Calling out for Mum or Dad, Asking for Food or Drink etc.

I was hoping to have initially about 10 buttons which will have various textures or shapes on the top of the buttons (3d printer already pumping those out).

My request is that i need some help with the programming of the Pi, I will be putting a small screen on the top for us to view debug etc if needed. I have a small set of computer speakers in it to make the sounds. What i would like to be able to do is trigger the various functions such as playing music from a USB stick after doing a text to speach of "PLAY MUSIC". If the button is pressed again it would stop the music then trigger text to speak "STOP MUSIC" . If she presses the one for Food it should trigger text to speak - "FOOD PLEASE" etc etc etc.

I would prefer that this is written in Python. I will be attaching the buttons to the GPIO pins directly via pull down resistors etc. If we can also Log the various button presses that would be good...

Any help with this project would be greatly appreciated - i don't have enough Python programming skills to do it myself but i am more than happy to document and provide Kudos to those who help out.

User avatar
Posts: 2293
Joined: Sun Dec 28, 2014 3:02 pm
Location: East Yorkshire

Re: Assistance for Non-Verbal Child

Thu Aug 17, 2017 4:11 am

Just pop to the main site, learning/education section and look at the getting started parts.
You'll have the basic code there.
Speach may be harder, unless it's prerecorded voices.

Posts: 1
Joined: Tue Feb 13, 2018 5:47 pm

Re: Assistance for Non-Verbal Child

Tue Feb 13, 2018 5:51 pm

I also have a child that is nonverbal/delayed and was looking to create a communication board also. You said that you have already printed out the buttons on your 3d printer. Do you have the specs for those? Or do you have a place where you are posting your progress? Would love to be able to see how someone else is creating theirs! :)

Thanks again and good luck!

Posts: 40
Joined: Mon May 27, 2013 1:13 am
Location: Tonight it's -28C
Contact: Website

Re: Assistance for Non-Verbal Child

Sat Mar 10, 2018 5:14 pm

Sounds and Speech: There is a train set described on with an early video of it running. This is controlled from an old telephone dial and as the engines move there are sensors under the track to locate their position. These and user commands trigger both sounds and speech out of four speakers. I use a relay to select one of two audio amplifiers and the audio channel to select which speaker.

Engine sounds are produced by system calls to "aplay". In c-code this is system("aplay DDL.wav -q"). In this case DDL.wav is just a short audio file producing sounds for Diesel Departing Left (channel) speaker. It could just as easily be a recording saying "Jam on toast please". If you have aplay loaded and a wav file available you can test this from the command line.

For train arrival announcements I use system calls to espeak with a text string I built up using sprintf(). i.e. system("espeak txt") where txt was a string. Here is my c-code to say "Ambulance, Fire or Police" in English (northern uk accent) or French. Note how the file from espeak is passed to aplay. This is likely much easier in Python but it's not a language I use and ditto re the command line.

if (fEnglish) sprintf(sEmerg, "espeak -ven-uk-north -a50 -p10 -s150 --stdout"
" \" Am bulance, Fire, or, Police \" 2>/dev/null | aplay -q");
else sprintf(sEmerg, "espeak -vfr -a50 -p10 -s150 --stdout \" Ambulance, "
"pompiers, ou, la, police \" 2>/dev/null | aplay -q");

Also notice how the word Ambulance is broken up, and the additional commas, to make the output easier to understand. I don't know French so I had a neighbour come over with the translation and then to listen to the output. There is a switch on the control panel to select English/French.

For the station announcements I use the string "the train arriving on platform on is the 12 27 from Arnprior, stopping at ..." To get real time in there I added an i2c DS1337 real time clock which is used to set the system clock which I could then read and build up the text e.g. "12 27"

You are welcome to both code and circuits if they are any use to you. I had meant to put them up on the web site but I don't see them there so it was just another job on my to-do list!

User avatar
Posts: 2611
Joined: Thu Jan 12, 2012 12:46 pm
Location: UK
Contact: Website

Re: Assistance for Non-Verbal Child

Sat Mar 10, 2018 9:13 pm

This is much easier in python now with gpiozero: ... omputing/7 - using buttons
.. and see "making a switch" further down.
Android app - Raspi Card Imager - download and image SD cards - No PC required !

Return to “Assistive technology and accessibility”

Who is online

Users browsing this forum: No registered users and 1 guest