Skip to content

Latest commit

 

History

360 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Audio Driver Library

Arduino Library Zephyr Library IDF Component License: GPL v3

This project replaces the obsolete AudioKit project, which was a quick and dirty adaptation of the Espressif IDF Drivers for Arduino.

I finally managed to implement some clean and simple C++ classes. This reduced the complexity considerably and increased the flexibility tremendously!

The goal of this project is to provide an easy, header-only C++ API to configure different audio codec chips. After setting up the codec, you can use the I2S functionality provided by your microcontroller.

While you can use this library stand alone, I recommend to use it together with my AudioTools project which provides a nice integration with it's I2SCodecStream class. Further information can be found in the Wiki.

Logging

The functionality has a built in logger. The default log level has been set to Warning. You can change it like this:

  AudioDriverLogger.begin(Serial,AudioDriverLogLevel::Info); 

Valid values are: Debug, Info, Warning, Error

You can deactivate the logging completly and if you are using an ESP32, you can configure the use of the built in ESP32 IDF logger in ConfigAudioDriver.h

Documentation

Support

I spent a lot of time to provide a comprehensive and complete documentation. So please read the documentation first and check the issues and discussions before posting any new ones on Github.

Open issues only for bugs and if it is not a bug, use a discussion: Provide enough information about

  • the selected scenario/sketch
  • what exactly you are trying to do
  • your hardware
  • your software versions
  • what exactly your problem is

to enable others to understand and reproduce your issue.

Finally, don't send me any e-mails or post questions on my personal website!

Installation in Arduino

You can download the library as zip and call include Library -> zip library. Or you can git clone this project into the Arduino libraries folder e.g. with

cd  ~/Documents/Arduino/libraries
git clone https://github.com/pschatzmann/arduino-audio-driver.git

I recommend to use git because you can easily update to the latest version just by executing the git pull command in the project folder.

Please consult the Wiki on how to use this library in IDF, Zephyr or PlatformIO

Sponsor Me

This software is totally free, but you can make me happy by rewarding me with a treat

About

Flexible driver library for audio boards and codec chips e.g AC101 ES8388 ES8311 CS43l22 ES7243 etc

Topics

Resources

Stars

182 stars

Watchers

9 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages