![]() Simplifying things is important, but in the case of Arduino things are simplified beyond recognition, the important parts are very well hidden under the hood of something called a library, which you can call like a black box, no knowledge required if you just follow the example. Going to the moon isn’t difficult either, it only takes one person pushing only one button… it’s really easy you should try it (that was sarcasm for those who didn’t notice). But lets also stop pretending that its for “kids” or “education”. I agree though, its a great tool for someone who wants to get something done, without diving too deep. What has the average person who followed the tutorial learned? What is an I2S bus? What toolchain is he using? Can anyone even point towards the datasheets of the parts they are using? Interfacing with an SD card is a complex task, are they using the SPI bus or SD interface? There was no information about this at all. Its sad to see colleges teaching courses using Arduino these days. Connecting a few wires to breadboard may be educational for 8 year olds, but anyone older? I doubt it. There is no education happening whatsoever. The thing is, its a bad tool even for education. Look I get the whole point that its “not-for-professionals” and “only-for-education” tool or whatever. Then they import a random library, and finish their 3 lines of code with DoStuff.begin(). I cringe everytime I see someone on the internet making something, only to discover that they’re using Arduino. Posted in digital audio hacks, Microcontrollers Tagged amplifier, audio, class-d, demo, ESP32, I2S, mp3, pcm Post navigation Intrigued by I2S and want to know more? You’re in luck, because we covered everything you’d want to know about I2S and how it works. ![]() You can see ’s ESP32 player in action in the video embedded below. It’s amazing how much easier audio is to work with when one can take advantage of shuffling audio data around digitally, and the decoder handles multiple formats with an amplifier built in. A few economical components, and only a handful of connections between them. The ESP32 reads audio files from the SD card and uses an I2S audio library to send the I2S data stream to the MAX98357A (or two of them for stereo.) From there it is decoded automatically and audio gets pumped though attached speakers. Besides the ESP32, at the heart of it all is an SD card reader breakout board and the MAX98357A, which can be thought of as a combination I2S decoder and Class D amplifier. ![]() Part of what makes this all work is I2S (Inter-IC Sound), a format for communicating PCM audio data between devices. Nevertheless, making a microcontroller play MP3s (and other formats) from an SD card is considerably simpler today than it was years ago. The demo code for ’s ESP32-based SD card music player is not even 40 lines long, though it will also require a few economical parts before it all works.
0 Comments
Leave a Reply. |