-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
To test the library with different hardware #1
Comments
The library was tested with two different ESP8266 based boards. Below the hardware details:
Wiring details:
The interesting part is that I also tried to connect 5V of LC Technology VS1053 board to 3V of LoLin NodeMCU V3 and it worked fine. So according to the table above, 5V ==> 3V also works. This is probably because the LC Technology board has some additional components which makes it possible, even it's not clearly documented.
Wiring details:
|
Below test results for ESP32 based board.
A test mp3 from SimpleMp3Player example sketch was successfully played with the following
Wiring details:
Consts of
When look on pinout of Wemos LoLin32, settings above should work for this board too. I assume it works, but I don't have Womos one to test it. (In EDIT: The library has been tested with Lolin32. Please see here. |
Noticed that every one is driving the board at 5V. Is the logic output 3.3V ? I've just got the lib up and running with a NANO32 and a Geetech VS1053 MP3 breakout board clone |
@Aggebitter I'm glad you managed to run the lib. If you like it please do not forget to star the project :) Yes, I successfully run those mp3 boards driving with 5V. When you have the final version of your circuit up and running it would be appreciated if you share some photos or any other detailed description. |
The VS1053b is a 3.3V logic chip but when driving the Geetech board at 3.3V the dropout voltage (1.1-1.3V) over the SDCard is to high (SD cards are very tricky on the voltage). I think that the logic output is at 3.3V when driving the board at 5V but I have not confirmed that. One benefit to drive the board direkt from 3.3V is that a single LiPo pack and charger can be used. I'm experimenting with Ogg recording so this was just a basic test to assure the Mp3 card is working |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
The library has been successfully tested with Lolin32 v1.0.0 (ESP-WROOM-32 based board). |
The webradio example works nice with the "New ESP8266 Programmer Socket Adapter For ESPRESSIF". Pinout is the same as for "LoLin NodeMCU V3" - just use the correct I/O ports (I used this as a mapping reference: https://www.theengineeringprojects.com/wp-content/uploads/2018/10/Introduction-to-NodeMCU-V3.png). Nice project - nice work. Lucas |
@LucasMaciuga Thank you for sharing your set-up. I'm happy to see it works well. |
@baldram for the setup in the picture I used an ESP-12F. |
@LucasMaciuga That's interesting. I wonder how long such battery can drive ESP with VS1053, e.g. for WebRadio? WiFi needs a lot of energy. |
@LucasMaciuga My question above could be overlooked. Did you have a chance to observe or measure how long such a battery can drive the ESP? |
I am using your library and examples, using Adafruit Feathers and Wings. I have the Huzzah32 ESP32 Feather (PID = 3619) with the Music Maker Wing (PID 3357). I have both the WebRadio and MP3PlayerDemo working. The problem I have is the audio quality on the WebRadio is very poor. It sounds very good most of the time, but then there is occasional popping, clicking, and chirping on the audio. The problem is with all of the stations I have been listening to. For example: If I use one of the Adafruit examples to play music files, they sound fine. Actually, they sound quite good. I can play MP3s, WMAs, and WAVs. I wonder if you have any suggestions about what might be the cause of all of the noise on the audio. In the for what it is worth, everything in my system is running at 3V. |
@ewbarnes53 can test with HTTP1.0 instead of HTTP1.1 and share the result ? |
@philippedc @ewbarnes53 This is a good idea.
Thank you @ewbarnes53 for using the library and sharing results.
Please note that the attached example is a very simple code. Kind of "hello world" for web radio simple program. So the problems are related to implementation. With such a simple implementation like one from WebRadioDemo it's hard to expect a lot.
As @philippedc already mentioned, there is the other thread where this problem is discussed.
Would you please share your thoughts directly on related issues?
What do you mean Adafruit examples? Which ones? Are they also for WebRadio? Or they just play sound files like mp3 from the board memory or SD card? |
Thank you for the responses. I will look at the other threads. I am new to Github, so I am still trying to learn my way around.
I did modify my code to use HTTP1.0. I did not hear any change. I am not having problems with not being able to connect, or being disconnected. I have been connected to the station I mentioned all afternoon, and it is still playing. I did run the MP3PlayerDemo. It works, but is such a short tone, that I couldn't tell much. I listened to the tone you recorded, and they sounded the same (to my very old ears). Adafruit has also created a VS1053 library. They have a Fileplayer class, that plays files directly from the SD card. Their demo sketch also has some problems, but the problems relate to not handling interrupts correctly when the ESP32 is used, which seems to be an issue they know about. I will try to find and figure out the chunked demo, and then let you know what I have found. And again, I will say that I am new to GitHub, and am more of a Hacker than an experienced programmer. I want to thank you guys for releasing your libraries and the sample code. I have not had much luck with figuring out how to use libraries, unless sample code using the library is included. |
Hi, |
Hi @Givy thank you for using the library.
I believe it would. 😏 But it's not in the scope of this audio driver library 😄
Not sure I understand your question. The display handling will be simply a part of your arduino project. Good luck! Please do not forget to click "star". |
Ok, now I understand EPROM related question. So for "Station Name/Country/etc" I would use the network. The ESP board has easy WiFi access, so why not benefit from this? The cloud storage sounds so up to date, but you can use some local LAN server (local cloud? 😅). Your use case ("internet radio") is about connecting the network anyway, so everything would be network oriented. Sounds good to me. Good luck. |
Hard to tell what the board is exactly. I think it is a ESP32 30 pin dev board. Above you show a 36 pin board. On the back of the board is says ESP32s and omits the words dev board so I'm not sure I got what I ordered. The pinout is different as per below. Compiling gives this information I had some runtime code errors but once fixed it has been working for 24 hours. Wiring: |----vs1053 board-----------ESP32-30pin ------ | -------------- | |5v | 5v | VIN VIN | |dgnd | miso| GND D19 | |mosi | sck | == D23 D18 | |dreq | xrst| D35 EN | |xcs | xdcs| D32 D33 | -------------- | Jack | X | X |------------------X------------ I ordered Geekcreit® ESP32 WiFi+bluetooth Development Board which on banggood's website shows ESP32 DEVKITV1 and mine shows ESP32s on the back. Main page for order More product details |
The above based on the code from the examples will not play any BBC station although the link I think that is generated plays in my browser. The client.connect() returns success but client.connected is false. This station produces a return code of zero on connection but has been known to play occasionally. I think below means that the VS1053 plays AAC files. Playing AAC also means that player.switchToMp3Mode() is actually switch to auto-decode mode as it plays AAC. Or perhaps it is switchOutOfMidiMode(); I'm wondering if the BBC stations are streaming an unrecognized file format (or I got a broken VS1053) Sometimes turning off the speakers causes no sound when the speakers are turned back on requiring a reboot to correct. I think this is either a speaker or VS1053 problem. I would love a link on how to identify the URLs to use from Linux when I connect to a local radio station on my browser. |
Hi, I just tested both BBC stations (with a modified code using ringbuffer), both work fine, no redirection or anything. As a hint, in the header the icy- description says "BBC radio will stop working on this device soon", but this could be an issue of me defining an user agent. Concerning the AAC format, as far as I remember, the blue LC Technology boards contain a VS1003 chip which, unlike the VS1053 on the green boards, does not play AAC streams (not sure anyway). |
Hi all, I just wanted to share my current progress with you.. |
Building on PR #90 the lib is compatible with a Raspberry PI Pico (RP2040) as well. This has been tested using the arduino-pico core by earlephilhower via platformio and the VS1053B breakout board made by Adafruit. |
Here's the follow up link to the final setup where I'm using this lib (with PRs #98 and #99 merged): https://github.com/episource/picopdio |
@episource Fantastic project with lots of resources! Awesome PR changes. It looks like they are both for quick merging. |
Thanks for making this project! To use this library with Adafruit's VS1053B breakout, be sure to reset the breakout as in this example: Tested with an ESP32-S3 & the Adafruit VS1053 Codec + MicroSD Breakout (https://www.adafruit.com/product/1381) |
The issue was created to test the library with different boards and collect the result.
It will be published in the documentation here: Tested and compatible boards.
I ask you for help to test the ESP_VS1053_Library and share the results.
A pull request to update this file is also very welcome!
Known working hardware - tested so far:
The text was updated successfully, but these errors were encountered: