Talking robot

255 sounds wav pcm FX sound player

Similar projects worth following
simple children toy robot


- max. 44khz, 16bit wav
- supply voltage 3,3V to 5V can be powered with LIR2032 battery, not CR2032!
- mini or micro usb power supply
- dimensions 5 cm x 10 cm
- upgradeable firmware, AVR AtTiny861 based board
- 16bit output created from 2 shifted 8bit PWM channels, good quality
- output for speraker
- can driving small speaker, amplifier is recommended
- 8 control signals on header active in low
- 8 buttons for testing + 2 LED on eyes, 1 LED as heart button (reset) + 8 LED connected to buttons
- micro SD card push-push connector
- lion charger

Firmware is unchanged from Elm Chan

255-Voice PCM Sound Generator

Trigger Mode

Supported sound file format is RIFF/WAVE in LPCM, 8/16bit, mono/stereo and 8kHz-48kHz. Any other sound files, such as ADPCM, MP3 and AAC, must be converted into the PCM. The sound files must be named NNN.wav. The NNN is three digit number in range from 001 to 255. The sound files must be put into the root directory.

The control command is input as binary code by eight contacts (SW1-SW8) and the corresponding sound file will be played. e.g. SW1 corresponds to 001.wav, SW4 corresponds to 008.wav and SW1+SW5 corresponds to 017.wav. There are four operating modes, behavior of the sound generator on control command, can be configured by 000.txt on the root directory. Each mode works as follows:

Mode 0 : Level trigger
Plays a sound file corresponds to the input code in auto-repeat. When the input code is changed, the sound also be changed. When the input goes off(0), the audio output is stopped.
Mode 1 : Level trigger (sustained)
Same as mode 0 but the file is played until end of the file and then stopped when the input goes off.
Mode 2 : Edge trigger
Plays a sound file corresponds to the input code once. Any code change while a sound will be ignored.
Mode 3 : Edge trigger (re-triggerable)
Same as mode 2 but the code change is accepted while the sound. To re-rtigger with the same code, change input to 0 and then input the code again.
Mode 4 : Edge trigger (stop on release)
Same as mode 2 but the sound stops when the input goes off(0).
LED indicator

The LED indicates that a sound file is being played. It also flashes on any error. The number of flashes + a second of blank corresponds to the type of errors as follows:

  • Two fhash - I/O error. (hard error or file system error)
  • Three flash - The sound file is not found.
  • Four flash - Invalid sound file.


Schematic in Eagle format

sch - 870.06 kB - 02/02/2017 at 22:02



Board in Eagle format

brd - 211.95 kB - 02/02/2017 at 22:02



Gerber files for factory

x-zip-compressed - 154.58 kB - 02/02/2017 at 21:47


AVR AtTiny861 source code.

x-zip-compressed - 47.17 kB - 02/02/2017 at 21:46


  • 1 × ATTINY861A-SU Microprocessors, Microcontrollers, DSPs / ARM, RISC-Based Microcontrollers
  • 1 × 74HCT14D Logic ICs / Gates and Inverters
  • 1 × MCP73831 Power Management ICs / Power Supply Support
  • 9 × LED0603

View all 6 components

  • V2

    bobricius02/02/2017 at 22:11 0 comments

    Updated to V2 boards

    - added lion charger

    - fixed programming header

    - mosfet amplifier replaced with hex inverter

View project log

Enjoy this project?



Stefanie Ferry wrote 11/19/2020 at 09:36 point

One will be convincing in getting an honor or grant in the event that he could show that he can't keep up himself monetarily comparatively as he is capable and unprecedented in his field of study. Now you can find assignment writer online to complete your work on time. One necessities to feature his ability for getting grants.

  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