Building on top of <a href="http://rdimitrov.twistedsanity.net/blog/show.php?entry=Microcontroller%20Class%20D%20Amplifier,%20Rev2">Rouslan Dimitrov's Microcontroller Class D Amplifier</a>, I developed the idea to feed the power amplifier with PCM data directly. Rouslan does some dithering and noise shaping, but I'm convinced that proper interpolation would sound better. The ATtiny is too slow to do even cubic interpolation so I'll move that into the host.
The result should be an ALSA driver, that does <a href="http://en.wikipedia.org/wiki/Upsampling">upsampling</a> of 44.1 or 48 kHz to about 240 kHz (the Class-D <a href="http://en.wikipedia.org/wiki/Pulse-width_modulation">PWM frequency</a>) and sends it over preferably, but not limited to, <a href="http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus">SPI</a> towards the AVR, which will drive the power FETs with its PWM outputs. This can give any (embedded) linux system the right audio "punch" with a fairly short <a href="http://en.wikipedia.org/wiki/Bill_of_materials">BOM</a>.
This project is part of:
Hack Week 10
Activity
Comments
Be the first to comment!
Similar Projects
Authenticated hashes for BTRFS by dsterba
Project Description
Implement a checksum ...
early stage kdump support by mbrugger
[comment]: # (Please use the project descriptio...
Model checking the BPF verifier by shunghsiyu
Project Description
BPF verifier plays a ...
Unrealtone by emiler
Project Description
Device for connecting...
ESP32 Meteostation by emiler
Project Description
The goal is to build ...
Tumbleweed support for Raspberry Pi 4 with Quad SATA HAT by jbaier_cz
[comment]: # (Please use the project descriptio...