Gerrit is operational

Hi folks,
thanks to Bjorn, Gerrit is now fully operational again:
- OAuth and OpenID login are back, if you have several accounts you can merge them using the UI
- anonymous browing
- checkout/cherry-pick commands are in the Download menu of the patchset
Happy hacking !


Gerrit / git-review

Hi again,
as you may be aware, with the recent version of Gerrit and following the OpenStack trend, git gained a new plugin called git-review which is used to manage patchset and can be used with gerrit. It is included in most distribution (apt-get install git-review) and is very easy ot use.
However, it requires a little configuration named .gitreview which should be committed at the root of the repository with the following content:


One committed, you can setup git-review on your local repository using:
git review -s
It will check everything is all-right and create a gerrit branch. You only need to do it once.
Once setup is done you only need to remember a couple instruction:

To fetch a review numbered 1024:
git review -d 1024
And if you want a specific patchset, say 7, then it becomes:
git review -d 1024,7

You can then work on it as usual, make sure to amend the commit as usual:
git commit --amend

Finally push the change to gerrit:
gerrit review -R

If you want to create a completely new change, simple run:
git review

I am not entirely sure how useful this tool is but some of you might find it easier to work with.



Gerrit is working again

Hi fellows developpers,
thanks to Björn and others, we now have Gerrit working again properly which means that:
* you can authenticate with OpenID
* you can recover your old google account thanks to the automatic OpenID > OAuth migration
To make this work, simply reach at http://gerrit.rockbox.org/r/login/ and select "Google OAuth2". It should lead you to a google page where you have to grant gerrit access again and you now have your old account working !

Note: in case you create a new account using OpenID, it should be possible to link your two accounts by reaching http://gerrit.rockbox.org/r/#/settings/web-identities and press "Link to another identifty". However, I am unsure how you can login to your OpenID identity using the new sign-in page


POC Fuze+ scrollstrip support

Dear rockboxers,

here you go, Fuze+ with up/down sliding support!
To be honest I wrote this patch to promote my scrollstrip patch (g#786) 
and give it - or rather it's extension - a larger tester base.

The challenge of this code is: while the original patch works quite well 
with up/down movements, the Fuze+ also uses the centre as Select button 
(and other scrollstrip targets as well, like Philips HDD1630). So it's 
mandatory to implement long-button-presses, at least for the centre 
button, to not completely break rockbox' user interface philosophy.

For this reasen this patch allows different strip-button-modes, 
accessible via:
Settings > General Settings > System > Scrollstrip handling
* "Doubleclick mode": a short tap directly followed by a tap-and-hold 
will send a long button press (like your laptop's touchpad).
   Disadvantage: you get a latency on single taps.
* "Long press mode": just stay long enough on the same spot, and you'll 
get repeated button events.
   Disadvantage: you get a big delay for long button presses, and you 
get inadvertent button activity if you accidentally stay too long on the 
same place.
* Both of the above can be set to only work on the centre button.
* "Off": The usual behaviour; Sometimes the best setting. Try playing 
Doom with scrollstrip mode :)

If you like to play with the timing constants: I was too lazy to make 
them configurable via menu, so look out for BUTTON_DOUBLECLICK_TIME and 
BUTTON_LONG_PRESS_TIME. You find them in 

You may also like to play with the Settings > General Settings > System 
 > Scrollstrip speed and afterscroll settings.

I'd appreciate any comments (via mailing list, gerrit or via IRC - I 
read the logs), especialy to these questions:

* I don't think we need all of the above settings. So which setting do 
you like best, and which can be discarded?
* Any Opinions about the doubleclick/long-press timing setting? Should 
it be configurable?

Have fun,



Google pulled the plug from openid 2.0. This means no gerrit access for many who used google account to authenticate. Are there any plans to remedy this situation? I guess upgrading gerrit should bring new, supported by bigG authentication methods.


Sleep (After Backlight Off) option

Is Settings - General Settings - Display - LCD Settings - Sleep (After Backlight Off) option used by anyone?
It keeps touchscreen work after backlight is off. Why does it have default setting to 10s instead of Always?
It looks like a very annoying bug for users who don’t suppose there’s such an option.

Ishi Kahon via rockbox-dev | 21 May 00:12 2015

Why can't I power off my Sansa Clip Plus when charging?

My  Sansa Clip Plus doesn't power off when plugged to power source. I've held the power button on for a long time, but it just won't turn off.  Why not? And how can I power off my Sansa Clip+ when charging?
Ishi Kahon via rockbox-dev | 21 May 00:10 2015

How do I "disable hardware components" for power savings?

The Rockbox manual for my Sansa Clip Plus  has the following section:

Optimising battery runtime

Rockbox offers a lot of settings that have high impact on the battery runtime of your
player. The largest power savings can be achieved through disabling unneeded hardware
components ­ for some of those there are settings available. Another area of savings is
avoiding or reducing CPU boosting through disabling computing intense features (e.g.
sound processing) or using effective audio codecs. The following provides a short
overview of the most relevant settings and rules of thumb.

I'd like to save power by "disabling unneeded hardware components". How do I do this?
Ishi Kahon via rockbox-dev | 20 May 23:59 2015

Have different Playback settings based on folder

My audio consumption could be divided into two groups: spoken-word and music.

Is there a way to customize Rockbox so that when I'm listening to any file contained in the /spokenword/ folder, the playback buttons function differently than when I'm listening to a file contained in the /music/ folder? I know I could do this manually, but I'd rather Rockbox be able to automatically switch back and forth between 2 configurations.

Here are some of the differences I want:

For all files in music folder or all its subfolders
Device sleeps if no key-press in 30 minutes, with 30-minute time resetting after every keypress. This is to save on power in case I accidentally forget to shutdown/power-off.

For all files in spoken-word folder or any subfolder:

Playback speed set to 1.6X
Pressing Forward or Backward buttons do not skip to the next or previous track.
To skip to tracks, double-tapping Forward or Backward is needed. Or holding Home, and then tapping Backward or Forward button.
Pressing Backward goes back 10 seconds, while pressing Forward  advances 10 seconds.

I would like to get this on my Sansa Clip Plus (running Rockbox 3.13).
Lorenzo Miori | 10 May 16:49 2015

Re-purpose of forgotten gadgets: palm tungsten e2

Ladies and gents,

I'm proud to announce another new target, a vintage gadget from the 2005 palmOne tungsten e2, whose test bench has been setup in a couple of hours thanks to the union of a kernel and a solid audio software :)

I invite you to have a look here

The steps have been the following:

1) testing of existing stuff; bootloading a Linux kernel
2) compilation of the newest kernel (yes, 4.x, yes hardware support out of the box)
3) creation of a fresh toolchain plus a shiny little rootfs (buildroot)
4) quick & dirty hack of ypr0 target to make it runnable on this platform (the canonical logo show-off)

Everything but framebuffer isn't working; in the next days I will setup a new target and writing some drivers for it.

Specs: CPU Intel xscale pxa 255; 16mb ram; 200mhz. Sdcard storage (dunno what is the max size perhaps around 2 gigs? Maybe Linux does a better job). Audio out is kind of powerful but the quality made me wondering ... I'm quite sure the problem is not in the DAC/analog section but rather in the crappy r**l player palm os edition !

New possibilities:
- generic touchpad support (Linux)
- generic gpio keypad (Linux)
- ac97 audio (alsa should be fine; volume etc to implement)
- this time HW specific features at a minimum, since everything should be Linux API in theory. Study is needed.

Alongside in the series will be a crappybook based on a Wolfson SOC which also supports Linux well enough for Rockbox! The big screen opens up possibilities for video playback. USB are present etc!

Hybrid RaaA isn't that bad, is it? Perhaps we should invent another specific term as well....

Cheers & Have a nice day!


Boris Gjenero | 25 Apr 15:11 2015

File creation can take a long time

Occasionally I use text_editor to take notes on my 5G 30GB iPod. This 
has always worked well in the past with the stock MK3008GAL hard drive. 
(BTW I recommend opti2.kbd 
http://www.rockbox.org/wiki/LoadableKeyboardLayouts ) Recently I 
upgraded to a HS12YHA, which is 120GB with 4k sectors.

I was playing WMA. When I saved in text_editor, creating a new file, it 
seemed to hang. The wait was long enough that I reset the iPod, leaving 
a 0 length file. Then I tried again, also playing WMA and waiting longer 
and it worked. This made me think that Rockbox took a long time to look 
through the FAT because the drive was mostly full and free space was 
toward the end.

Specific conditions are needed to reproduce this. FAT32 has an fsinfo 
sector with a hint value telling where the first free cluster should be 
located. Rockbox makes use of this, allowing fast cluster allocation. 
After mounting the iPod in Windows, the free space hint was 0x1da2. Then 
I played that same WMA album, and reproduced the problem. The free space 
hint was now 0x321da2, showing that Rockbox must have scanned though 
many clusters in the FAT. Here is sudo dd if=/dev/sdb2 bs=512 count=1 
skip=1 | hexdump -C
00000000  52 52 61 41 00 00 00 00  00 00 00 00 00 00 00 00 
00000010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 
000001e0  00 00 00 00 72 72 41 61  0a a2 05 00 a2 1d 32 00 
000001f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 55 aa 

This gave me the idea to cache the FAT in dircache. If the drive isn't 
terribly fragmented, the FAT information would take less space than the 
file names. Assuming you store start cluster and chain length for each 
contiguous chunk and 32 bit values are used, an unfragmented file would 
need 8 bytes. Free space could be stored as another file. Space that's 
marked bad or otherwise reserved would not need to be stored. With this, 
buffering would only have to read file data. I didn't try to implement 
this yet; I'm just wondering what others think about this idea.

When I tried to reproduce without playback being active, I could see 
file creation taking longer but it wasn't ridiculous. I guess this is 
because Rockbox will boost if necessary for proper playback without 
breaks, but other stuff might not get much CPU time. I've never had a 
problem with this before though.

I'm also wondering about why the free space hint was set to 0x1da2 in 
Windows and 0x321da2 in Rockbox. Does something have a bug causing it to 
write only 16 bits of the hint value, or do I have a crazy coincidence 
of free space locations?

Finally, I'd like to apologize for disappearing the way I did in the 
past. I got myself hung up on details worrying about what others would 
think of various possible solutions. It became unpleasant and killed my 
motivation to continue. This is my problem; I'm not blaming anyone else 
for causing this.

I have posted my TCC780 RCA RC3000A port at 
https://github.com/dreamlayers/rockbox/tree/rc3000a . I have no plans to 
work toward committing that, because nobody else seems interested in it, 
so I don't see how it would benefit Rockbox. In other words, I don't 
want to commit a port that only I am going to run.

Best regards,