Rockbox Technical Forums

Rockbox General => Rockbox General Discussion => Topic started by: asti on April 21, 2021, 04:51:33 AM

Title: Self built RockBox player?
Post by: asti on April 21, 2021, 04:51:33 AM
Dear all,

I try to build a mp3-player with internet radio based on a ESP32. https://www.youtube.com/watch?v=Icrcv2s6mMU (https://www.youtube.com/watch?v=Icrcv2s6mMU)
Right now I am not really good in programming, but there is some small progress. Is there a chance to port RockBox to such self built players?

All the best
asti
Title: Re: Self built RockBox player?
Post by: braewoods on April 21, 2021, 10:14:52 AM
Rockbox doesn't have any TCP/IP stack so it cannot access the internet at present on its own. So internet radio won't work without considerable extra effort. Plus Rockbox does require a certain amount of total RAM to be usable as it relies heavily upon software codecs to do its job. The minimum that is known to work is 2MB.

Speachy can probably tell you more though.
Title: Re: Self built RockBox player?
Post by: __builtin on April 21, 2021, 12:38:07 PM
Porting to a custom-built device is very much a plausible endeavor and probably slightly easier than past ports have been since you have both code execution and plenty of documentation.
Title: Re: Self built RockBox player?
Post by: speachy on April 21, 2021, 04:25:31 PM
The main limitation for a rockbox port is RAM.  We're not really set up to run on targets with less than 2MB of RAM, and if you're going to have a TCP/IP stack and advanced crypto (necessary for streaming audio) that's going to have its own non-trivial requirements.  (IIRC the highest-end ESP32 modules have ~4MB of RAM on them, but it's very slow SPI-attached PSRAM, and directly accessing it is going to severely hurt your raw CPU performance)

In all seriousness, you will likely be better served building something using a Raspberry Pi Zero W running Linux.  You can even run rockbox on it, and there's at least one person out where who built a full DAP (ie screen, buttons, 3d printed case, battery) around one:

https://hackaday.com/2018/08/28/pipod-a-raspberry-pi-zero-portable-music-player/