📜 ⬆️ ⬇️

Rockbox for everyone

Hi, Habrahabr!

I discovered you not so long ago, but I already had time to read a lot of interesting things (there should have been specifics here, but there would be too many of them - because it isn’t here). And finally, he decided to write something himself.

About 8 months ago, Marcin Bukat (wodz), a developer from Poland, added initial support to the Rockbox project for the so-called Rockchip RK27XX chip family. Then, 8 months ago, all that Rockbox could do on these devices (or even just on one of these devices) is to launch and display the text on the player’s screen. And how are things going now?

What is Rockchip?


Rockchip is a family of so-called SoC , on- chip systems based on the ARM processor core. What is so special and remarkable compared to, say, the same Qualcomm? And here is what.
')
It is no secret that the vast majority of modern technology produced in China - so economically more profitable. Also, for sure everyone has seen a huge variety of “chiPhone 8G” on the shelves of online stores (on market ruins, however, this good is nothing less). But probably not everyone knows that China has its own development. Rockchip is one of them.

So, this is a family of SoCs that are focused on use in mass (and therefore cheap) multimedia devices. These devices are not only manufactured, but also developed in China (and therefore doubly cheap). Based on the RK28XX and RK29XX series, multimedia tablets running Android are already being released. As for the series RK27XX ... Go to any store that sells electronics. Do you see that player with touchscreen, accelerometer, memory card support and 8 Gb internal memory (most likely it will be some Texet / Ritmix / Explay / Qumo) with a tenth price tag of iPod touch? Yes, you are absolutely right - inside this small but proud device, it is the RK27XX chip that beats. Recently, not only MP3 / MP4 players, but also GPS navigators began to appear on these chips. The only thing I have not seen is the phones based on the RK27XX (it is not adapted for this), however, on the RK29XX it seems to be already there.

And, actually, why all this?


On the one hand, despite the fairly good hardware, these players have a very, very unsuccessful firmware. Someone who has ever seen it in the original - was spitting, and who also used it - sometimes it got into a rage. I would like to say a special thank you (sincerely) to Russian companies purchasing players in China (the same Texet / Ritmix) and selling them under their own brand - if they didn’t fix firmware and localization shoals, it would be absolutely impossible to use these gadgets. In addition, this firmware is very limited in features (unless, of course, you need something other than 128kbit / s music on the bus from the player).

On the other hand, among the Rockbox-supported players, there are practically no affordable ones (many of them can’t be bought with new ones, and even used ones are hard to find) and inexpensive (I’m not personally attracted by the prospect of giving more than $ 200 for an audio player). As someone complained in the news about the release of Rockbox 3.6, "they are not exchanged for very cheap players." Well, here you are - exchanged =)

Current state of affairs


At one time, I myself really wanted to join the porting of the Rockbox to the RK27XX, however, the will of the case did not allow it, although I made contact with wodz and even made out something. Now I had a free minute, and I decided to look, and what was new in the project since that time.

Two guitars, RF-8800 and RF-8900 from Ritmix, act as guinea pigs. Luckily, the RF-8800 is the twin brother of the player that wodz has - both of them are based on the Chinese player Ramos RM970 (though not identical), which is why the photos and videos are given for him. In addition, the touchscreen is broken on my RF-8900 (the screen itself is fine), so I could not demonstrate anything except the main screen of the Rockbox.
In order for at least something to be seen on the screen (there is a very small font in the standard theme), I got hold of the Rust theme. Unfortunately, I did not find a suitable topic for WPS (While Playing Screen).

Main screen



Playing music





Strange characters instead of Russian letters due to the lack of Russian font

Database Initialization



Radio




Demos




System Information



Tormented device on the other hand



The photos were slightly corrected in GIMP in order to remove the cat, the sofa and the garbage next to it .

Video demonstration



I really apologize for the quality of the video, but there was nothing on hand except for the cellular one, and I shot the video for the second time in my life. From the fifth take at least something.

What was done by me


Personally, my work here is not so much. I made some corrections to the audio codec, added support for the Ritmix keyboard (Ramos has a slightly different one), started a radio (there is no radio in the wodz instance) and corrected some plugins (viewing pictures / video, a couple of demos and toys) to make work them. Who is interested in the technical details of the changes - here is the patch .

Brief conclusions


In general, Rockbox is quite stable, I did not notice any glitches / hangs / errors. The most serious problems at the moment - the device’s internal memory is not supported (raw read / write NAND is implemented, but the FTL driver is also needed) and the USB connection does not work (wodz is working on it, but the driver is far from complete - you can note that when the USB is connected the player stutters).

Now as a disk the memory card is used. The sound is good, at least not worse than on the original firmware. However, on some stereo tracks with variable bitrate, there is an “echo” effect, I counted two such tracks on my own, that is, the audio codec needs to be calibrated. The radio sometimes does not catch the signal, but these are most likely my not very straight arms. While sound recording does not work (generally speaking, it works, but records noise), the video is played without an image, only the sound. I also discovered an interesting thing - the player has an RTC device (clock, if simple), which is not used by the original firmware - later I understood why: it works extremely unstable. However, there is no reason to complain about the RTC in this model.

In general, it seems to me that in the near future the firmware based on the Rockbox will take up a worthy place on the built-in storage device of my (and I really hope that not only my) MP3 player.
Oh yeah, I almost forgot =)



For those interested


For those who want to try it on their own - here are the binaries and sources suitable for the Ritmix RF-8800. Naturally, Linux only, gcc and binutils for ARM are also required.

PS: After a while, I decided to post a video showing the work of the Rockbox on the Ritmix RF-8900. Unfortunately, since the touchscreen is broken, it was not possible to record a lot, but as a music player, he is now back in the line - thanks to Rockbox.

Source: https://habr.com/ru/post/135559/


All Articles