Skip to the content
2 layers44.1 × 43.5 mmAudio teensy, the printed circuit board in 3D

pyControl compatible audio player

Size
44.1 × 43.5 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
41
Pads
145
Tracks, vias
152, 17
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20210925)
Created
18 Nov 2019
Updated
22 Nov 2022

Overview

Audio teensy is an open-source printed circuit board by Karpova-Lab, from the Karpova-Lab/audio_teensy repository on GitHub. It is a 2-layer board of 44.1 × 43.5 mm with 22 parts on 41 nets, routed with 152 tracks and 17 vias.

It is built around the SSM-114-L-SV-BE. Its parts include 7 capacitors, 5 connectors, 3 resistors and 3 ICs. It belongs with the audio and music boards of this library.

Main components

1

README

readme.md

Teensy Audio Board for pyControl

This device connects with a pyControl breakout to play audio tones. A Teensy 3.2 generates an i2s audio signal which is later decompressed and amplified by the SGTL5000 codec IC. A left and right amplified signal is output to two separate mono headphone jacks. The design of this pcb is based on the Teensy Audio Adaptor Board.

Bill Of Materials

QtyReferenceDescriptionValue/MPN
3C2, C3, C70603 Capacitor100nF
1C40603 Capacitor150nF
2C5, C10603 Capacitor1.0µF
1C60603 Capacitor2.2µF
1FB10603 Ferrite Bead600Ω @ 100MHz
1J1RJ45 Jack54602-908LF
2J3, J214pin Female HeaderSSM-114-L-SV-BE
2J4, J5Mono Audio Jack4832.2230
1R10603 Resistor100Ω
2R3, R20603 Resistor2.2KΩ
1U21.8V LDO RegulatorAP7313
1U3Codec ICSGTL5000

View interactive BOM

Example Firmware for Teensy

This following firmware creates 6.5KHz and 14KHz sine waves that are frequency modulated at 6.66 Hz. It responds to commands received over serial UART. 'L' plays the left tone, 'R' plays the right tone, 'S' stops playing both tones, 'V,5' adjust the volume to 5. This firmware is loaded onto the Teensy microcontroller.

Audio System Design Tool

c++
#include <Audio.h>
#include <Wire.h>
#include <SPI.h>
#include <SD.h>
#include <SerialFlash.h>

// GUItool: begin automatically generated code
AudioSynthWaveformSine   modulation;     //xy=323.0056381225586,328.0056438446045
AudioSynthWaveformModulated left_tone;   //xy=530.0056648254395,308.0056457519531
AudioSynthWaveformModulated right_tone;   //xy=533.1874694824219,363.0965919494629
AudioMixer4              mixer;         //xy=719.1874771118164,330.0965805053711
AudioOutputI2S           i2s;            //xy=868.0056648254395,332.0056505203247
AudioConnection          patchCord1(modulation, 0, left_tone, 0);
AudioConnection          patchCord2(modulation, 0, right_tone, 0);
AudioConnection          patchCord3(left_tone, 0, mixer, 0);
AudioConnection          patchCord4(right_tone, 0, mixer, 1);
AudioConnection          patchCord5(mixer, 0, i2s, 0);
AudioConnection          patchCord6(mixer, 0, i2s, 1);
AudioControlSGTL5000     codec;          //xy=607.0056762695312,492.0056781768799
// GUItool: end automatically generated code

int current_waveform=0;
const int LED = 13;

pyControl Device file

python
from machine import UART
from array import array

class Teensy_audio():
    def __init__(self, port):
        assert port.UART is not None, '! Teensy Audio Player needs a port with UART.'
        self.uart = UART(port.UART, 9600)
        self.uart.init(9600, bits=8, parity=None, stop=1, timeout=1)
        self.uart.write('S')

    def play(self, side):
        if side == 'Left':
            self.uart.write('L')
        elif side == 'Right':
            self.uart.write('R')
        return True

    def stop(self):
        self.uart.write('S')
        return False

    def set_volume(self, volume): # Between 1 - 65
        self.uart.write('V,{}'.format(volume))

Latency

The start and stop latencies are both about 6.5 ± 1 ms

Parts

22
QtyValueFootprintReferences
3100nFCapacitor_SMD:C_0603_1608MetricC2, C3, C5
21.0µFCapacitor_SMD:C_0603_1608MetricC1, C6
22.2KΩResistor_SMD:R_0603_1608MetricR1, R2
24832.2230asl_footprints:mono_jack_throughholeJ2, J3
2G***svg2modsvg2mod, svg2mod
2SSM-114-L-SV-BEConnector_PinHeader_2.54mm:PinHeader_1x14_P2.54mm_Vertical_SMD_Pin1LeftJ4, J5
10855025008asl_footprints:RJ45_THP_VerticalJ1
1100ΩResistor_SMD:R_0603_1608MetricR3
1150nFCapacitor_SMD:C_0603_1608MetricC7
12.2µFCapacitor_SMD:C_0603_1608MetricC4
1600Ω @ 100MHzCapacitor_SMD:C_0603_1608MetricFB1
1AP7313Package_TO_SOT_SMD:TSOT-23U1
1DIN Rail Adapterasl_footprints:DIN_ClipDRA1
1SGTL5000Package_DFN_QFN:QFN-32-1EP_5x5mm_P0.5mm_EP3.1x3.1mmU3
1Teensy 3.2asl_footprints:Teensy30_31_32_LC_SMDU2

Similar boards

  • 2 layers158 × 11 mmDaylight Matchstick, the printed circuit board in 3D

    Daylight Matchstick

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    22 parts1.1kGPL-3.0
  • 2 layers57 × 65 mmRgb to hdmi, the printed circuit board in 3D

    Rgb to hdmi

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    22 parts1kGPL-3.0
  • 2 layers81 × 57.2 mmRP2040-Macropad, the printed circuit board in 3D

    RP2040-Macropad

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    22 parts915
  • 2 layers54.6 × 70.9 mmBeagleLogic Cape, the printed circuit board in 3D

    BeagleLogic Cape

    abhishek-kakkar/BeagleLogic

    A Software Suite that implements a logic analyzer with the PRU on the BeagleBone / BeagleBone Black.

    22 parts479GPL-3.0
  • 2 layers66.4 × 24.5 mmConnecting piece, the printed circuit board in 3D

    Connecting piece

    Chrismettal/flipper-zero-backpacks

    Backpack-style addon boards for the Flipper Zero!

    22 parts456
  • 2 layers51 × 70 mmDMG A04-01, the printed circuit board in 3D

    DMG A04-01

    HDR/NintendoPCBs

    Replacement pcb's for Nintendo games.

    22 parts321
  • 2 layers27.8 × 16 mmSpi 1v8 level shifter, the printed circuit board in 3D

    Spi 1v8 level shifter

    CRImier/MyKiCad

    My KiCad boards. Can't be bothered uploading individually anymore, so here you go.

    22 parts253GPL-3.0

Questions

How big is the Audio teensy PCB?

It measures 44.1 × 43.5 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Audio teensy use?

22 parts, built around the SSM-114-L-SV-BE. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Audio teensy KiCad files?

From the Karpova-Lab/audio_teensy repository on GitHub, at the commit this page was made from: the board is pcb/Audio_teensy.kicad_pcb and its schematic pcb/Audio_teensy.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Audio teensy design in my own project?

Its repository states no licence, so its author keeps all rights: ask Karpova-Lab before reusing the design.