Skip to the content
PCBKitNew board
2 layersAlarmclock, the printed circuit board in 3D

ceng 299 project - an STM32F407 functions as an alarm clock. It plays .mp3s

Copper layers
2
Thickness
1.6 mm
Parts
43
Nets
56
Pads
151
Tracks, vias
412, 115
Routed
Yes
KiCad
KiCad 3
Created
5 Jun 2015
Updated
12 Aug 2015

Overview

Alarmclock is an open-source printed circuit board by trstephen, from the trstephen/alarmclock repository on GitHub. It is a 2-layer board with 43 parts on 56 nets, routed with 412 tracks and 115 vias.

It is built around the LM386 and 74HC14. Its parts include 23 resistors, 5 capacitors, 5 transistors, 4 connectors and 1 IC. It belongs with the lEDs and displays boards and the STM32 boards of this library.

Main components

2

README

README.md

alarmclock

What is CENG 299?

CENG 299 is a second year project course at the University of Victoria. Students execute the full design cycle to create an alarm clock with mp3 audio playback capabilities. A STM32F407VG microcontroller is responsible for handling I/O, decoding the mp3 and generating the audio output. A custom-designed PCB filters and amplifies the audio output from the STM and contains the circuitry for driving the 7-segment display and cleaning up button input.

What's in the repo?

Schematics

Detail the four main components of the circuit design:

  • I/O
  • Audio amplification and filtering
  • External button connections
  • 7-Segment display controller

The files will open natively in KiCad.

Printable schematics, with some helpful notes, are here.

TODO: Include files for the PCB.

Code

A skeleton was provided that handles the USB On-The-Go communication and audio decoding. The bulk of the project code is in:

text
main.c
state_machine.c
buttons.c
clock_display.c

The included .coproj file will open the project in CoIDE but the project should work wherever the GCC-ARM compiler is used.

Known Issues

  • mp3 playback
    • Only works with 128kb/s encoding
    • Stops playback after ~2min and needs to be hard reset before playback can continue

Parts

43
QtyValueFootprintReferences
9300R3R1, R2, R4, R5, R6, R7, R8, R9, R10
5100kR3R14, R15, R16, R17, R18
51kR3R3, R20, R21, R22, R23
52N3906TO92-CBEQ1, Q2, Q3, Q4, Q5
210kR3R11, R12
2CONN_2PINHEAD1-2P4, P6
2P***1pin1PIN, 1PIN
1.047uFC2C3
10.01uFC1C5
110R3R13
1100uFC1V8C2
1220uFC1V5C4
12N7000TO92DGSM1
174HC14DIP-14__300U1
1800pFC1C1
1CONN_02X12pin_array_12x2P3
1CONN_3PINHEAD1-3P5
1LM386DIP-8__300Audio2
1RR3R19
1STM32_F4_DISCOVERYSTM32F4DISCSTM1

Questions

What parts does the Alarmclock use?

43 parts, built around the LM386 and 74HC14. 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 Alarmclock KiCad files?

From the trstephen/alarmclock repository on GitHub, at the commit this page was made from: the board is kicad/alarm_clock.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Alarmclock design in my own project?

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

Similar boards

  • 4 layers92.7 × 63.1 mm555 doom kicad, the printed circuit board in 3D

    555 doom kicad

    nickbild/555_doom_pcb

    The circuit plays the opening riff from "At Doom's Gate" without a microcontroller, computer, or any software.

    89 parts1MIT
  • 2 layers100 × 100 mmCmos rungler, the printed circuit board in 3D

    Cmos rungler

    masonandrewmann/modular-synth-pcbs

    these are some pcbs :~)

    69 parts1
  • 2 layers152 × 88 mmRFBitBangSMT, the printed circuit board in 3D

    RFBitBangSMT

    profdc9/RFBitBanger

    A QRP digital transceiver created from readily available parts for off-the-grid maintenance

    271 parts222
  • 2 layers90 × 140 mmDrumkid, the printed circuit board in 3D

    Drumkid

    mattybrad/drumkid

    Version 4 was the first successful working design, with full code, schematics, Gerbers, etc available on GitHub.

    70 parts137
  • 2 layersLM80C R6, the printed circuit board in 3D

    LM80C R6

    leomil72/LM80C

    A Z80-based homebrew computer withTMS9918, AY-3-8910, Z80 CTC, Z80 PIO, and Z80 SIO

    153 parts123GPL-3.0
  • 2 layers145.3 × 44.5 mmScout, the printed circuit board in 3D

    Scout

    oskitone/scout

    3D-printed, Arduino-compatible, 17-key mono synth. Squeeeee!

    48 parts114
  • 2 layers184 × 114.8 mmPoly555, the printed circuit board in 3D

    Poly555

    oskitone/poly555

    The POLY555 is a polyphonic, analog, square wave synth based on the 555 timer chip.

    262 parts93
  • 4 layers223.3 × 120.1 mmISA FPGA v2, the printed circuit board in 3D

    ISA FPGA v2

    robfinch/Cores

    Cores ===== RTF's Cores Use at your own risk. Welcome to my galaxy of cores. Contained in the directories are IP cores, source code for digital circuits.

    132 parts78