Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use SparkFun VoiceBox Shield: Examples, Pinouts, and Specs

Image of SparkFun VoiceBox Shield
Cirkit Designer LogoDesign with SparkFun VoiceBox Shield in Cirkit Designer

Introduction

The SparkFun VoiceBox Shield (Manufacturer Part ID: DEV-10661) is an Arduino-compatible shield designed to add voice recognition and playback capabilities to your projects. This shield is powered by the SpeakJet IC, a versatile speech synthesis chip capable of generating speech, sound effects, and tones. With this shield, users can create interactive systems that respond to voice commands or provide audio feedback.

Explore Projects Built with SparkFun VoiceBox Shield

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Teensy 4.0 Audio Controller with Adjustable Volume and Power Management
Image of proj2: A project utilizing SparkFun VoiceBox Shield in a practical application
This circuit features a Teensy 4.0 microcontroller interfaced with an audio shield for audio processing, controlled by a potentiometer for volume adjustment. It is powered by an Adafruit PowerBoost 1000C with a toggle switch for power control, and includes a 12-pin FFC converter for additional connectivity options.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi 4B-Based GPS and GSM Tracking System with Audio Feedback
Image of unlimited range: A project utilizing SparkFun VoiceBox Shield in a practical application
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with a GPS NEO-6M V2 module for location tracking and an Adafruit FONA 808 Shield for cellular communication. It includes a PAM8406 5V Digital Audio Amplifier connected to an Adafruit STEMMA Speaker for audio output, and a Condenser Microphone connected to the FONA 808 for audio input. Power management is handled by a 12V battery connected to a voltage regulator that steps down the voltage to 5V and 3V required by the various components.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Voice-Controlled Speaker
Image of Main Design: A project utilizing SparkFun VoiceBox Shield in a practical application
This circuit is a digital voice playback and recording system powered by a 3.7V battery. It features an ESP32 microcontroller for processing, an Adafruit MAX98357A amplifier to drive a loudspeaker for audio output, and an Adafruit MAX9814 microphone amplifier for audio input. A pushbutton provides user interaction, and a 3.3V regulator ensures stable power supply to the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Powered Voice-Controlled LED Lighting System
Image of ALEXA PROTOTYPE: A project utilizing SparkFun VoiceBox Shield in a practical application
This is a voice-activated lighting system powered by a 12V battery, featuring two ESP32 microcontrollers for voice processing and light control. It includes an INMP441 microphone for audio input, a toggle switch for user interaction, and various LEDs for visual feedback. The system is designed to recognize specific voice commands to control the state of the LEDs.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with SparkFun VoiceBox Shield

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of proj2: A project utilizing SparkFun VoiceBox Shield in a practical application
Teensy 4.0 Audio Controller with Adjustable Volume and Power Management
This circuit features a Teensy 4.0 microcontroller interfaced with an audio shield for audio processing, controlled by a potentiometer for volume adjustment. It is powered by an Adafruit PowerBoost 1000C with a toggle switch for power control, and includes a 12-pin FFC converter for additional connectivity options.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of unlimited range: A project utilizing SparkFun VoiceBox Shield in a practical application
Raspberry Pi 4B-Based GPS and GSM Tracking System with Audio Feedback
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with a GPS NEO-6M V2 module for location tracking and an Adafruit FONA 808 Shield for cellular communication. It includes a PAM8406 5V Digital Audio Amplifier connected to an Adafruit STEMMA Speaker for audio output, and a Condenser Microphone connected to the FONA 808 for audio input. Power management is handled by a 12V battery connected to a voltage regulator that steps down the voltage to 5V and 3V required by the various components.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Main Design: A project utilizing SparkFun VoiceBox Shield in a practical application
ESP32-Based Voice-Controlled Speaker
This circuit is a digital voice playback and recording system powered by a 3.7V battery. It features an ESP32 microcontroller for processing, an Adafruit MAX98357A amplifier to drive a loudspeaker for audio output, and an Adafruit MAX9814 microphone amplifier for audio input. A pushbutton provides user interaction, and a 3.3V regulator ensures stable power supply to the components.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ALEXA PROTOTYPE: A project utilizing SparkFun VoiceBox Shield in a practical application
ESP32-Powered Voice-Controlled LED Lighting System
This is a voice-activated lighting system powered by a 12V battery, featuring two ESP32 microcontrollers for voice processing and light control. It includes an INMP441 microphone for audio input, a toggle switch for user interaction, and various LEDs for visual feedback. The system is designed to recognize specific voice commands to control the state of the LEDs.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Voice-controlled robotics
  • Talking devices or interactive displays
  • Audio feedback systems for accessibility
  • Home automation with voice commands
  • Educational projects for learning speech synthesis

Technical Specifications

The following table outlines the key technical details of the SparkFun VoiceBox Shield:

Specification Details
Manufacturer SparkFun Electronics
Part Number DEV-10661
Operating Voltage 5V (powered via Arduino)
Communication UART (TX/RX pins)
Speech Synthesis IC SpeakJet (5-channel synthesizer with 64 phonemes, 43 sound effects, etc.)
Audio Output Mono audio output via 3.5mm jack or speaker pins
Speaker Support 8-ohm speaker (recommended)
Dimensions 2.7" x 2.1" (68.6mm x 53.3mm)

Pin Configuration and Descriptions

The SparkFun VoiceBox Shield connects to an Arduino board and uses the following pins:

Pin Function
D2 (RX) Receives data from the Arduino (used for UART communication with SpeakJet).
D3 (TX) Sends data to the Arduino (used for UART communication with SpeakJet).
D5 Controls the onboard LED (optional for status indication).
Speaker+ Positive terminal for connecting an external speaker.
Speaker- Negative terminal for connecting an external speaker.
Audio Out 3.5mm jack for mono audio output.

Usage Instructions

How to Use the SparkFun VoiceBox Shield in a Circuit

  1. Attach the Shield to an Arduino: Align the pins of the VoiceBox Shield with the headers on your Arduino board and press gently to secure the connection.
  2. Connect an Audio Output:
    • For a speaker: Connect an 8-ohm speaker to the Speaker+ and Speaker- terminals.
    • For headphones or external amplifiers: Use the 3.5mm audio jack.
  3. Power the System: Power the Arduino via USB or an external power source. The shield will draw power from the Arduino.
  4. Upload Code: Write and upload a sketch to the Arduino to send commands to the SpeakJet IC via UART.

Important Considerations and Best Practices

  • Speaker Selection: Use an 8-ohm speaker for optimal performance. Avoid using speakers with lower impedance, as they may overload the circuit.
  • Volume Control: The SpeakJet IC does not have built-in volume control. Use an external amplifier with volume adjustment if needed.
  • UART Configuration: Ensure the Arduino's UART baud rate matches the SpeakJet's default baud rate (9600 bps).
  • Avoid Overloading: Do not send commands to the SpeakJet IC too quickly, as it may not process them correctly. Add delays between commands if necessary.

Example Code for Arduino UNO

Below is an example sketch to send a simple command to the SpeakJet IC to produce a sound:

// Include the SoftwareSerial library for communication with the SpeakJet IC
#include <SoftwareSerial.h>

// Define RX and TX pins for SoftwareSerial
#define RX_PIN 2
#define TX_PIN 3

// Create a SoftwareSerial object
SoftwareSerial speakJetSerial(RX_PIN, TX_PIN);

void setup() {
  // Initialize the SoftwareSerial communication at 9600 baud
  speakJetSerial.begin(9600);
  
  // Send a simple command to the SpeakJet IC to produce a sound
  // The command below plays a "Hello" sound using predefined phonemes
  speakJetSerial.write(0xC1); // Reset SpeakJet
  delay(100); // Wait for reset to complete
  speakJetSerial.write(0xF0); // Start command
  speakJetSerial.write(0x4A); // Phoneme: "H"
  speakJetSerial.write(0x45); // Phoneme: "E"
  speakJetSerial.write(0x4C); // Phoneme: "L"
  speakJetSerial.write(0x4C); // Phoneme: "L"
  speakJetSerial.write(0x4F); // Phoneme: "O"
  speakJetSerial.write(0x20); // End command
}

void loop() {
  // No actions in the loop for this example
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Sound Output:

    • Ensure the speaker is properly connected to the Speaker+ and Speaker- terminals.
    • Verify that the 3.5mm audio jack is not in use simultaneously with the speaker.
    • Check the Arduino sketch for correct UART communication settings (baud rate: 9600 bps).
  2. Distorted or Low-Quality Audio:

    • Use an 8-ohm speaker as recommended.
    • Avoid overdriving the SpeakJet IC by sending commands too quickly.
  3. SpeakJet Not Responding:

    • Confirm that the shield is securely attached to the Arduino.
    • Check the RX and TX pin connections and ensure they match the Arduino sketch.
    • Reset the SpeakJet IC by sending the 0xC1 reset command.
  4. Arduino Upload Fails:

    • Disconnect the shield temporarily while uploading the sketch to the Arduino.
    • Ensure no other devices are using the Arduino's RX/TX pins during upload.

FAQs

Q: Can I use the VoiceBox Shield with an Arduino Mega?
A: Yes, but you may need to modify the sketch to use the Mega's additional UART ports instead of SoftwareSerial.

Q: Can I play pre-recorded audio files with this shield?
A: No, the SpeakJet IC generates speech and sound effects programmatically. It does not support playback of pre-recorded audio files.

Q: How do I adjust the pitch or speed of the speech?
A: The SpeakJet IC allows you to modify pitch, speed, and other parameters using specific commands. Refer to the SpeakJet datasheet for details.

Q: Is the shield compatible with 3.3V Arduino boards?
A: The shield is designed for 5V operation. Using it with 3.3V boards may require level shifting for proper communication.