logo elektroda
logo elektroda
X
logo elektroda

Internet radio and audio file player on ESP32-S3

MAJSTER XXL 221949 2371
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • #2311 21840570
    DJCheester
    Level 27  
    >>21840472

    I have a hotspot from my phone and every time someone calls it breaks the network, after the call is over when the wifi is already there just press OK on the remote and it works again. I don't find it very inconvenient. And how does the code in the loop work by itself to restore the stream ? And how often does it do this? And doesn't something else crash while doing it ?

    Greetings ...
  • ADVERTISEMENT
  • #2312 21840578
    robgold
    Level 23  
    >>21840555 Is there any reason that you are losing WiFi ? It may be worth adding such a re-connect but I will do it a little differently.
  • #2313 21840581
    krzychokup
    Level 11  
    At the limit of range . As a "garage" radio it sometimes breaks off and I have to move the remote control.

    Added after 4 [minutes]:

    Applies to Radio_Evo3.19.70b.
  • #2314 21841320
    JohnNagy
    Level 4  
    >>21840150 I found the errors in the program. I overwrote it, now it's fine, only the analyzer settings are reset on reboot. I haven't found the reason yet, but I don't care anymore.
  • #2315 21842477
    dawidkosciesza
    Level 9  
    Hello again :)

    I have built myself a circuit based on the Major's radio.

    I got this problem with the display. There are like reversed colours.
    Is it a matter of a bad display or some mistake on my part?

    Any ideas how to change this?

    LCD module on a red PCB showing “WITAJ SŁUCHACZU!” in blue on a light background, on a wooden table.
  • #2316 21842483
    krzychokup
    Level 11  
    Change the display and you'll be fine.
  • ADVERTISEMENT
  • #2317 21842511
    efi222
    Level 21  
    dawidkosciesza wrote:
    Any idea how to change it?

    Specify the exact model of this display. It is likely to be an IPS display. They require colour inversion in the driver.
  • #2318 21842516
    dawidkosciesza
    Level 9  
    >>21842511
    That's right, it is an IPS ILI9488 display.

    Can anyone suggest how and where to look for this setting?
  • #2319 21842521
    DJCheester
    Level 27  
    Nothing needs to be changed in the settings to work with both IPS and TN

    Hand holding a small LCD module with a blue screen on a desk with electronics in the background

    Hand holds a small color TFT display at an angle, connected to an electronic board on a desk

    The difference is in the angle of view

    Greetings....

    Added after 55 [seconds]:

    And show the back of the display ?
  • #2320 21842527
    efi222
    Level 21  
    I am not familiar with the Adafruit gfx library.
    For a quick read: Try the function:
    display.invertDisplay(true);
    Or
    display.invertDisplay(false);
  • #2321 21842530
    dawidkosciesza
    Level 9  
    >>21842521
    Back of the display.
    Back of a red display PCB with an FFC ribbon connector and multicolor wires on a wooden surface
  • ADVERTISEMENT
  • #2322 21842546
    DJCheester
    Level 27  
    This is mine just the same. It works without reversing the colours.

    IPS
    Red PCB on carpet with microSD slot, FFC ribbon connector, and yellow pin header on the right

    AND TN
    Red 3.5 TFT SPI 480×320 module PCB with microSD slot and labeled pin header.

    Maybe something with the screen is ....
  • #2323 21842551
    dawidkosciesza
    Level 9  
    >>21842546
    I think not. Additionally, there was such a sticker.
    I don't know what the point is that it worked for you and this one didn't....

    Sticker note about using IPS code instead of TN, on plastic film on a wooden surface
  • #2324 21842552
    DJCheester
    Level 27  
    Question, I see you have a card reader connected from the display?

    Does it work for you without any modifications?

    Because you used to have to remove resistors in these first versions?

    I haven't tested the SD connection on the LCD, in these my PCBs I use with a microSD module plugged in under ESP32.

    Prototype board with an ESP32 module, wiring, and a large LCD screen on a red PCB.

    Regards...

    Added after 1 [minute]:

    As for the sticker, I didn't have one, but I have one new display with one, I'm going to check. I'll let you know right away
  • #2325 21842556
    dawidkosciesza
    Level 9  
    Works fine. The card reads and writes.
    Do you think it could be messing with the display?
  • #2326 21842559
    DJCheester
    Level 27  
    Rather, it should have no effect on the colour scheme because the card's pins are routed out only it is on the card's common ground and power supply.

    Added after 15 [minutes]:

    You actually this IPS what had the sticker displays inverted the image is 180 degrees and in negative.

    There is probably a ruler in the library to reverse the image and colours

    I didn't even know, one IPS I bought and that one displays correctly like a TN and the other one I had new bought about half a year later with that sticker is just like yours.

    I'm immediately looking for the code ChatGPT hints at


    Screenshot with tip “Most common case” and code snippet `tft.invertDisplay(false);` Polish screenshot explaining display color inversion with C++ snippets using tft.invertDisplay(true/false) Screenshot showing “Rotate screen” tip with C++ code tft.setRotation(n) and values 0–3


    Greetings....
  • #2327 21842593
    krzychokup
    Level 11  
    This display has a different way of illuminating the pin-> led(BL) and you are unlikely to reverse this way. If anyone has more knowledge please share.
  • #2328 21842599
    DJCheester
    Level 27  
    You have the illumination after all, so here it works I am no longer in the workshop but I would add a line and check.
    Where did you get this information about BL ? Can you give a source.

    Because as far as I am concerned the pinology is identical in the two LCDs.

    Greetings....
  • #2329 21842610
    efi222
    Level 21  
    BL has nothing to do with this. If the display lights up then it is ok.
    If this is the master soft v3 look for the line
    GFXcanvas16 canvas(TFT_WIDTH, TFT_HEIGHT); // Buffer to draw the whole screen in RAM before sending to TFT
    And after it, type:

    canvas.invertDisplay(false);

    or

    canvas.invertDisplay(true);

    I don't know if it will work properly on "true" or "false"

    Similarly with screen rotation:

    canvas.setRotation(1); and here the value 1, 2, or 3
  • #2330 21842613
    DJCheester
    Level 27  
    Exactly yes EFI222. Especially since the LCD at the Master's is connected to the 3v3 directly not via a transistor and controlled by PWam. So maximum brightness is obtained. Write as advised.

    Greetings ...
  • ADVERTISEMENT
  • #2331 21842638
    krzychokup
    Level 11  
    canvas.invertDisplay(true); or canvas.invertDisplay(false); does not work . The display "positive " when voltage is applied to led(BL) the screen is white and when "negative" voltage is applied it is dark. How to change this ? Probably it is not possible.
  • #2332 21842653
    efi222
    Level 21  
    krzychokup wrote:
    canvas.invertDisplay(true); or canvas.invertDisplay(false); does not work .

    Well this is interesting. But it compiles correctly?
    Try still clearing the system temp directory before compiling. Maybe some pre-compilations are there.
    I use the Tft_espi library and I have to clear the temp before changing the display, otherwise it compiles for me with old precompilations.
    BL is just an LED, it has no effect on the colours of the display. It either illuminates the matrix as lit, or not if it is off.
    IPS displays run with a dark screen. If you look closely you can see a slight glow of backlighting. If the screen is white at start-up, this is a sign that the colours are inverted (incorrect) and BL will not change this.

    Added after 7 [minutes]:

    krzychokup wrote:
    Display "positive " when voltage is applied to led(BL) the screen glows white and when "negative" voltage is applied it is dark.

    And this is what I don't understand...
  • #2333 21842660
    krzychokup
    Level 11  
    There is no Tft_espi library in the ino we are discussing. Unless I have missed something.
  • #2334 21842662
    efi222
    Level 21  
    Of course not. It was just an example that clearing the system temp can often help.
  • #2335 21842664
    dawidkosciesza
    Level 9  
    Found. An entry should be added:

    tft_command(0x21);

    Jeset is a colour inversion, I added in line 869 after:

    // Image direction and orientation (MADCTL)
    tft_command(0x36);
    tft_data(0xE8); // screen orientation (rotation, reflection)

    Here it is probably possible to rotate the screen by this 180, but it doesn't make a problem for me, I simply mount it the other way around.

    Thanks for your help :D

    Small TFT display on a board with wires, showing “Radio Italo 4 You” and time 22:03:37.
  • #2336 21842677
    efi222
    Level 21  
    Congratulations :)
    The only puzzling thing is why the commands do not work:
    InvertDisplay(true); or invertDisplay(false)
    They are in the library description and the developer gives them in the examples....
  • #2337 21842682
    dawidkosciesza
    Level 9  
    This is already too difficult a question for me :D I'm not a programmer :P

    I first tried various commands with InvertDisplay but the same errors when compiling.

    It was only with the help of chatGPT that I slowly came to this command ;)
  • #2338 21842695
    efi222
    Level 21  
    >>21842610
    The library instance at Majster's is canvas and these examples I gave should work without error. Unless I made some typo. Well, but I won't digress any further. Have fun listening to the radio :)
  • #2339 21842811
    DJCheester
    Level 27  
    >>21842664

    Super that it worked out, see I had this display with the card as a backup and didn't connect it.

    Interestingly the other one worked the same as the TN from the start.

    Congratulations, now you know what to change.

    Greetings....
  • #2340 21842859
    efi222
    Level 21  
    DJCheester wrote:
    Interestingly the second one worked the same as TN from the start.

    Maybe it is the TN.
    And take a look at how it starts. TNs start with a white screen. IPS with black.
📢 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