logo elektroda
logo elektroda
X
logo elektroda

Internet radio and audio file player on ESP32-S3

MAJSTER XXL 152976 1601
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • #1591 21754427
    dawidkosciesza
    Level 1  
    Hello.
    I would like to build a radio according to the EVO3 project. I would like to mount it in the housing of a Diora AS502 radio, such a gift for my Father-in-law.
    I have a few questions:
    Is there a list available of all the components needed to order and have everything needed to solder into the PCB. I have not found such a list on GitHub.
    I would like to omit the encoder from my project and replace it with regular buttons (right, left, enter). Will this be very cumbersome?
    I wonder if it would also be possible to assign 8 additional buttons as memory for 16 favourite stations (one button remembers two stations, short press/long press).
    I don't have much experience with writing programs unfortunately, but I'm trying to develop ;)
  • ADVERTISEMENT
  • #1592 21754434
    DJCheester
    Level 26  
    Hello, referring to the above message, the evo3 radio is prepared to work without an encoder, but with the possibility of adding and assigning a keypad.

    More about this in a moment, because I myself am preparing a version with a keyboard.

    Greetings....
  • ADVERTISEMENT
  • #1593 21754449
    robgold
    Level 21  
    @dawidkosciesza The Evo has built-in keyboard support based on a resistive ladder and ADC. There are plans to replace the ADC with a PCF-based keyboard chip. At the moment, there is no 'Favourite' station option. Perhaps one day I will add it.

    You are left with the option to add this piece of code yourself or, alternatively, you can program the 16 favourite stations in a specific way, e.g. in Bank 1:

    1 - under 1,
    2 - under 2,
    ...and so on up to 8,
    8 - under 8,
    and then another 8 as:
    11 - 9 station
    22 - 10 station
    ...etc. to
    88 - 16 station,

    simply the buttons 1-8 from such a tuner can be connected to the numeric keypad code.
  • ADVERTISEMENT
  • #1594 21754490
    DJCheester
    Level 26  
    Welcome.

    For some time now I have been creating another "block" for my Schneider tower. The tower is now about 40 years old, I have renovated this equipment, and added a CD player integrating function and interoperability with the whole set, that is, operation of a common remote control, input selector and recording to cassette from cd.
    The equipment has full compatibility.
    Especially from here I would like to thank my colleague @gps79 for developing the software for the CD player, if it wasn't for him it wouldn't be compatible with the rest of the set, it was he who wrote the remote control reception in ITT standard and the input selector support.
    My warmest greetings to him from this place.
    Someday I will describe in detail how we have been struggling with this construction, but I would like to do it right and, as you know, you need time to do it, which is still lacking.

    1980s Schneider Hi-Fi stack with multiple black audio components on a carpet

    As the equipment is modular I intend to add another block consisting of this radio from the Robgold evo3 version of the coll.

    There is already a PCB version without encoders but with keyboard and remote control operation.

    PCB for my version of the radio.

    Two Schneider DCS8070WR PCB boards lying on a patterned carpet Two PCBs with electronic components placed on a beige carpet

    The whole thing will be mounted in the tuner like this.

    Schneider hi-fi module with a custom PCB board mounted on top of the unit Disassembled radio module on top of a Schneider Hi-Fi tower with visible PCB Modular Schneider Hi-Fi tower with open tuner and visible circuit board Radio module on open Schneider Hi-Fi unit with visible custom PCB Mounted PCB inside audio tuner case with visible electronics and connectors

    I still don't want to get on with it yet because what I feel like sitting down to make changes to the code Col. Robgold gives a new update and new features (for which I thank him)

    Someday, however, the project of a mini Hi-Fi tower from the 1980s in Germany will have to be completed

    Greetings ...
  • #1595 21755433
    bolszoy
    Level 10  
    dawidkosciesza wrote:
    Hello.
    I would like to build a radio according to the EVO3 project. I would like to mount it in the housing of a Diora AS502 radio, such a gift for my Father-in-law.
    I have a few questions:
    Is there a list available of all the components needed to order and have everything needed to solder into the PCB. I have not found such a list on GitHub.
    I would like to omit the encoder from my project and replace it with regular buttons (right, left, enter). Will this be very cumbersome?
    I wonder if it would also be possible to assign 8 additional buttons as memory for 16 favourite stations (one button remembers two stations, short press/long press).
    I don't have much experience with writing programs unfortunately, but I'm trying to develop ;)



    Hello, there is no list of components. On the other hand, there are schematics on GitHub and on them it is described what type of display. But you have to read, sometimes several times, because you can actually get lost. Even someone asked about the type of display, if I remember correctly.
  • #1596 21755482
    bolszoy
    Level 10  
    DJCheester- Towje solution helped but now I have another error?


    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z13processIRCodev$part$0+0x80): undefined reference to `displayFolders()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z13processIRCodev$part$0+0x84): undefined reference to `displayFiles()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z13my_audio_infoN5Audio4_msgE+0xe0): undefined reference to `displayPlayer()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z4loopv+0x44): undefined reference to `scrollDownFolders()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z4loopv+0x48): undefined reference to `scrollUpFolders()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z4loopv+0x4c): undefined reference to `playFromSelectedFolder()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z4loopv+0x50): undefined reference to `listDirectories(char const*)'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o:( .literal._Z5setupv+0x94): undefined reference to `loadFileAndFolderIndexes()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.
    C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino:521:( .text._Z13processIRCodev$part$0+0x356): undefined reference to `displayFolders()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../.../..../xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:532:( .text._Z13processIRCodev$part$0+0x393): undefined reference to `displayFiles()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.
    C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:2570:( .text._Z13my_audio_infoN5Audio4_msgE+0xfc): undefined reference to `displayPlayer()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../.../..../xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:2708:( .text._Z13my_audio_infoN5Audio4_msgE+0xcf5): undefined reference to `displayPlayer()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o: in function `loop()':
    C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:3280:( .text._Z4loopv+0x3f4): undefined reference to `scrollDownFolders()'
    C:/Users/Bolszoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:3254:( .text._Z4loopv+0x444): undefined reference to `scrollUpFolders()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../../../../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:3178:( .text._Z4loopv+0x4c1): undefined reference to `playFromSelectedFolder()'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../.../..../xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/extensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe: C:/lib/gcc/xtensa-esp-elf/bin/ld.exe.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:3165:( .text._Z4loopv+0x68d): undefined reference to `listDirectories(char const*)'
    C:/Users/Bolshoy/AppData/Local/Arduino15/packages/esp32/tools/esp-x32/2507/bin/../lib/gcc/xtensa-esp-elf/14.2.0/../.../..../xtensa-esp-elf/bin/ld.exe: C:\Users\Bolszoy\AppData\Local\arduino\sketches\60E76002371B55718EB2E4873B120729\sketch\ESP32_radio_v3_ILI9488_canvas.ino.ino.cpp.o: in function `setup()':
    C:\Users\Bolszoy\Documents\Arduino\ESP32_radio_v3_ILI9488_canvas\ESP32_radio_v3_ILI9488_canvas.ino/ESP32_radio_v3_ILI9488_canvas.ino.ino:3024:( .text._Z5setupv+0x217): undefined reference to `loadFileAndFolderIndexes()'
    collect2.exe: error: ld returned 1 exit status
    exit status 1

    Compilation error: exit status 1


    I understand that the issue is:

    Internet radio and audio file player on ESP32-S3

    As for the attachment above /file.h/, I don't know by what miracle it attached and how to remove it.
  • ADVERTISEMENT
  • #1597 21755484
    DJCheester
    Level 26  
    Well I was also wondering why you attached this file.

    The question is what windows do you have and is it 32 or 64 bit ?

    Greetings ...
  • #1598 21755501
    bolszoy
    Level 10  
    Win 11 64 bit.


    There is an empty /.ino/ on line 3024, and I think this is about the link. I will try again tomorrow.

    Fellow foreman, is the code in the :
    ESP32_radio_v3_ILI9488_canvas.ino
    has not changed? Because the sketch I have seems to be a bit different. Unless I have messed something up....
  • #1599 21755507
    DJCheester
    Level 26  
    If it's blank then nothing is probably about the line above, but the code is good because it compiles at my place.

    Looking through the log I am concerned about esp32-x32 it looks like it wants to run on 32bit.

    And what version of core do you have ?

    Greetings ...
  • #1600 21755513
    bolszoy
    Level 10  
    Kitchen 3 something ... I think the latest one is 5.
    I'm looking for that link, and will install again. I've reinstalled Arduino and may have knocked out....
  • #1601 21755514
    DJCheester
    Level 26  
    I have 3.2.0 installed

    Maybe there is a problem here somewhere, because with me on 3.2.0 it compiles correctly.

    Maybe try an older core install.

    Unless other colleagues have any more insight from the league.

    Regards...
📢 Listen (AI):

Topic summary

The discussion centers on the development of an internet radio and audio file player based on the ESP32-S3-WROOM-1 module, featuring a custom-designed prototype PCB with OLED display and user controls including rotary encoders and buttons. Key challenges addressed include pin spacing discrepancies in the ESP32-S3 module footprint, integration of Wi-Fi connectivity with dynamic station list updates, and handling of Polish character encoding on the OLED display. The project uses Arduino IDE (version 2.3.2) with ESP-IDF support and requires enabling PSRAM. Audio playback supports MP3, AAC, and FLAC streams, with the ESP32-audioI2S library recommended over the incompatible Audio library. Users reported issues with SPI MISO pin assignment causing bootloader conflicts, resolved by reassigning MISO to pin 35. The project incorporates WiFiManager for network configuration, EEPROM and SD card storage for saving last played station and settings, and includes plans for tone control via an external KA2107 equalizer and a CS8673 amplifier module. Problems with encoder input stability and memory limitations for Bluetooth A2DP on ESP32-S3 were noted. The community suggested alternatives like KaRadio and ESP32-MiniWebRadio projects. Debugging tips include serial terminal logs for HTTP errors and flash memory erasure to resolve boot loops. The project is open-source on GitHub, encouraging forks and modifications. Additional features under development include browser-based updates, directory navigation, and potential audio recording to SD card.
Summary generated by the language model.
ADVERTISEMENT