PECS Communication Board

It's a Picture Exchange Communication System (PECS) for my non verbal Son

Similar projects worth following
The Picture Exchange Communication System, or PECS, allows people with little or no communication abilities to communicate using pictures. People using PECS are taught to approach another person and give them a picture of a desired item in exchange for that item. By doing so, the person is able to initiate communication. A child or adult with autism can use PECS to communicate a request, a thought, or anything that can reasonably be displayed or symbolized on a picture card.
I know you can buy such boards, but they are not cheap or flexible enough. You could also use a tablet, but Scott has already smashed 2 smartphones and my tablet. This one is sturdy, cheap and has a lot of options. So you can also just make several.

Here is a video showing Scott using the Pecs board.

I have loaded sound files onto the board so that he learns how to use the keys. And with music, everything works.

The advantage is that the buttons are assigned to individual mp3's, and you can then easily exchange them. You can also use any language for your PECS. If you don't want to record the words yourself, you can also use text to speech and download them as mp3's.

The PECS board can also be used as a music player, or as a sound board. Here you can see Scott choosing his favorite music to chill to. Hopefully this won't cause a copyright claim on YouTube :)

This is the first prototype. There are still some improvements needed, but as you can see, it works.

Feel free to distribute,copy or modify this project. I´m happy if this build can help someone.

svg+xml - 19.28 kB - 07/16/2021 at 08:42


svg+xml - 148.44 kB - 07/16/2021 at 08:42


AutoCAD DXF - 261.83 kB - 07/16/2021 at 08:42



Template for the Buttons

svg+xml - 110.32 kB - 07/06/2021 at 10:39


  • 1 × Arduino pro Mini 8Mhz 3.3V
  • 1 × DF player Mini
  • 1 × micro SD card
  • 1 × TP4056 Charging Circuit with protection
  • 1 × 1700mAh Battery

View all 19 components

  • A Small Bug

    Alain Mauer10/13/2021 at 11:04 0 comments

    After a few weeks of continuous operation, I noticed a small bug. The power low output is sometimes too late. When the voltage is at the minimum and then the voicemodul starts, it can happen that the BOD of the Atmel switches off the processor. I still have to do some tests to reproduce the error and then I will adjust the software. So stay tuned.

    After recharge, everything works fine again.

  • The Board Misused

    Alain Mauer08/17/2021 at 16:09 0 comments

    Scott is still having some problems using his boards as they are meant to be used. That's why they were turned into a game tablet and a music tablet at short notice. In any case, he can keep himself busy with it.

  • Pecs Board = Old Mc Donald

    Alain Mauer07/27/2021 at 05:24 0 comments

    Scott is still having some problems, understanding, how to use the PECS board. In the meantime, we use it to keep him busy. This time with animal sounds. We have had children's books that made music or sounds, but their survival time with our son was very short. For tonight we have farm sounds and songs.

  • New Features

    Alain Mauer07/22/2021 at 13:26 0 comments

    Hello,This should be the final version for the PECS board on GITHUB.

    Pecs board_V1.4

    • By holding button 1,2,3 or 4 for 2sec, the power LED goes out.That means you have successfully changed the volume, where 1 is the minimum volume and 4 is the maximum volume.
    • Selecting a folder is now possible via software. If you keep key 16 pressed for 5 seconds, the power LED goes out. You are now in programming mode. By pressing a key from 1 to 16, you select the corresponding folder. 

  • New Software

    Alain Mauer07/19/2021 at 07:12 1 comment

    I have just released the new software for the PECS board on GITHUB.

    Pecs board_V1.3

    • Stop a music file by pressing the same button again.
    • Adjust the volume in four steps. Simply press button 1,2,3 or 4 for 2 seconds, until the music file is played as confirmation. 1 stands for silent and 4 for loud.
    • The volume setting is stored in the internal EEPROM.

  • The Function LED

    Alain Mauer07/16/2021 at 12:32 0 comments

    For the moment, the LED only indicates whether the device is switched on or not. But since it is connected to an I/O port, it is also possible to display a programming status, for example.
    The LED was grinded at the front, so that it doesn't protrude, and because it is diffuse now, it doesn't dazzle anymore.
    Then it can simply be glued in.

  • New enclosure

    Alain Mauer07/16/2021 at 12:25 0 comments

    I have made some changes to the case. The current plans can always be found on my GITUHB,

    I think this way it is easier to assemble the whole thing. Check the BUILD INSTRUCTIONS.

  • Drawings or photos?

    Alain Mauer07/09/2021 at 08:58 0 comments

    PECS pictures are usually simple drawings. However, I have found that Scott does not understand them very well. So I started taking photos of objects, and Scott seems to recognise them more.
    So over the course of the week, I'll take pictures of drinks and food and see if Scott can tell me what he wants. 

    Will try to make a video of it

  • Inside the PEGS Board

    Alain Mauer07/06/2021 at 10:29 0 comments

    All the electronics are mounted on the back of the PECS board. The heart of the whole thing is an Arduino Pro Mini that runs at 8MHZ, so it only needs 3.3V. A DF mini player with micro SD card is responsible for the sound. A TP4056 charging module charges and controls the battery.

    The DF mini player has 2 Watt output power, which is quite sufficient. Its TX and RX lines are connected to the Arduino. This allows the microcontroller to retrieve the files directly. 
    I have written a small manual for the DF mini here.

    Its USB+ and - lines are soldered to the USB connector. This way the MP3's can be written directly from the PC to the SD without having to remove it. At the same time, the battery is charged via the USB connector.
    The 8 wires of the matrix are also soldered to the Arduino. A voltage divider on the microcontroller monitors the battery status, and at 3.4V it issues a "Battery Low" warning.

  • The Buttons

    Alain Mauer07/06/2021 at 06:02 0 comments

    For the sixteen buttons, I built a DIY membrane keyboard. Self-adhesive vertical copper strips are glued to the underside. 

    The upper side consists of adhesive copper foil applied horizontally to a plastic sheet from a loose-leaf binder. Cardboard was used to separate the two foils.

    Then the wires could now be soldered to the copper strips, four to the back and four to the membrane.

    The cover sheet with the pictures is simply a printed picture for which a template has been created so that you can make them yourself without any problems. Afterwards, the sheet is simply sealed in laminating foil so that the pictures are protected against abrasion.

View all 13 project logs

  • 1
    The enclosure construction

    Here is the Updated Version

    The enclosure is made of 3mm MDF boards that have been laser-cut. Of course, it should also work with a hobby saw.

    "1" is the lowest part. Part "2" and part "3" are glued on top of it. This then looks like this.

    The six M3 nuts are then used in part 3.

    now glue part "4" and "5". This completes the bottom part

    The front part

    Part "3" is glued to part "4" first.

    The circled things must be removed with the help of a cutter or side cutter.

    On the back of "1", insert two M3 nuts at the bottom and glue on the elongated wooden part so that they no longer fall out.

    Now "1" can be glued on

    Copper tape from 10mm width works. mine is a little wider, but this is not a problem.
    Four pieces cut to size and stick as shown in the photo.

    Glue the bottom part with the top part and the enclosure is completed.

    Before gluing the bottom part, do not forget the last 2 nuts in part "4", because they will hold the front cover.

  • 2
    Electronics And Wiring

    Preparing the keyboard. Individual wires are soldered to the ends of the glued-on copper strips and then fed through the openings to the back of the board.

    Now solder wires to the micro USB breakout board and the micro switch. 

    The battery and the charger board can now be glued in place with servo tape.

    Then a quick test to see if the battery is charging.

    Now the voltage divider, consisting of two resistors, is attached to the Arduino. This is for battery monitoring.

    The PRO MINI and the DF MINI PLAYER are now attached with servo tape at the designated place.

    Here you can also see the switch and the micro-USB board.

    Glue in the LED and speakers, then wire everything according to plan. Now install the software and the board is up and running.

  • 3
    The file structure of the SD card in the DF mini Player

    Connect the Pecs board with an micro USB Cable to a PC

    The file folder 01 is accessed in the root directory, but you can create several, and then switch between the templates by renaming them.

    The MP3 files are then uploaded inside the file folder, where 001.mp3 stands for the first button and 016.mp3 for the last.

    020.mp3 should contain a text that indicates low battery power (e.g. Battery Low).
    030.mp3 and 031.mp3 shall contain texts indicating that the device has not been used for some time but is still switched on (e.g. Hello, have you forgotten me).

View all 3 instructions

Enjoy this project?



Pedro Martin wrote 11/28/2021 at 02:12 point

@Alain Mauer Amazing! Kudos! How did you solve the capacitive cross talk when overlaying the horizontal copper strips over the vertical strips? I tried (and failed) so I had to move to cap touch sensor breakouts (3 breakouts with 12 sensors each) .  Your implementation of sound is great! I ended up using iOS’s text-to-speech.   Here’s my first prototype (Rel 1.0 is ready but being  documented).

  Are you sure? yes | no

Jake wrote 09/10/2021 at 17:44 point


  Are you sure? yes | no

Dusan Petrovic wrote 07/29/2021 at 14:14 point


  Are you sure? yes | no

talofer99 wrote 07/15/2021 at 19:40 point

Great project!

  Are you sure? yes | no

Alain Mauer wrote 07/16/2021 at 06:45 point

Thank you. 

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates