Rockbox for everyone

Hi, Habrahabr!

I opened you not so long ago, but already managed to read a lot of interesting things (there should have been specifics, but there would have been too many - because it is not here). And finally, he decided to write something himself.

About 8 months ago, developer from Poland Marcin Bukat (wodz) added initial support to the so-called Rockchip RK27XX chip family in the Rockbox project . Then, 8 months ago, all that Rockbox could do on these devices (more precisely, even just on one of these devices) was to start and display text on the player’s screen. How are things now?

What is Rockchip?


Rockchip is a family of so-called SoC , systems on a chip based on the ARM processor core. Why is it so especially and wonderful compared, say, with the same Qualcomm? But with what.

It is no secret that the vast majority of modern technology is made in China - it is economically more profitable. Also, surely everyone saw a huge number of different “chiPhone 8G” on the shelves of online stores (on the market collapse, however, this goodness is no less). But, probably, not everyone knows that China has its own developments. Rockchip is one of them.

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

And, in fact, why all this?


On the one hand, despite the fairly good hardware, these players have very, very unsuccessful firmware. Whoever ever saw it in the original - spit, and who else used it - at times became furious. Here, a special thank you (sincerely) I want to say to Russian companies that buy players in China (the same Texet / Ritmix) and sell them under their own brand - if they did not fix the jambs of firmware and localization, it would be completely impossible to use these gadgets. In addition, this firmware is very limited in capabilities (unless, of course, the player needs something other than 128kbit / s music on the bus).

On the other hand, among the Rockbox-supported players that are truly accessible (many of them are no longer new, and it’s difficult to find used ones) and inexpensive (I personally don’t like the prospect of giving more than $ 200 for an audio player) there are practically no. As someone complained about the Rockbox 3.6 release news, “they aren’t exchanging for very cheap players.” Well, here you are - exchanged =)

Current state of affairs


At one time, I myself really wanted to join porting Rockbox to the RK27XX, however, this was not allowed to happen, although I made contact with wodz and even sorted something out. Now I had a free minute, and I decided to take a look, but what new things appeared in the project since that time.

Two players act as experimental rabbits - RF-8800 and RF-8900 from Ritmix. 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 (however, they are not identical), which is why photos and videos are given for him. In addition, the touchscreen is broken on my RF-8900 (the screen itself is in order), so I could not demonstrate anything but the main Rockbox screen.
In order for at least something to be visible on the screen (the standard theme has a very small font), I got hold of the Rust theme . Unfortunately, I did not find a suitable theme for WPS (While Playing Screen).

Main screen



Playing music





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

Database initialization



Radio




Demos




System Information



Exhausted device on the other hand



Photos were slightly corrected in GIMP'e in order to remove the cat, sofa and trash next to him .

Video demo



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

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 the radio (there is no radio in the wodz instance) and adjusted some plugins (viewing pictures / videos, a couple of demos and toys) to force their work. Anyone interested in the technical details of the changes is the patch .

Brief conclusions


In general, Rockbox works quite stably, I did not notice any glitches / freezes / errors. The most serious problems at the moment - the internal memory of the device is not supported (raw NAND read / write is implemented, but the FTL driver is still needed) and the USB connection does not work (wodz works on this, but the driver is still far from complete - you can use the video notice that with a connected USB player stutters).

Now a memory card is used as a disk. 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 of these tracks, that is, the audio codec needs to be calibrated. The radio sometimes does not catch the signal, but it is most likely my not very straight arms. While sound recording does not work (generally speaking, it works, but it records noise), the video is played without an image, only sound. I also discovered an interesting thing - in the player there is an RTC device (a clock, if in a simple way) that is not used by the original firmware - later I realized why: it works extremely unstable. However, it is a sin to complain - RTC in this model should not be at all.

In general, it seems to me that soon Rockbox-based firmware will take its rightful place on the built-in drive of my (and really hope not only mine) MP3 player.
Oh yes, 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 will also require gcc and binutils for the ARM architecture.

PS: After a while, I still decided to post a video demonstrating the work of 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 service thanks to Rockbox.


Also popular now: