Third Party > Repairing and Upgrading Rockbox Capable Players

iRiver H120 bootloader 6 and hold switch problem

(1/1)

kpapr1:
Hello,

I have come across a very weird problem. I have an H120 with rockbox installed and bootloader 6. Rockbox loads fine until I either use the hold switch once during boot (hold-->on, iriver-->off then iriver-->on) or until I boot to original firmware once. Then the iriver cannot load to rockbox as it senses the hold switch is in the ON position ALWAYS. However, I can always boot to the original firmware and the hold switch works just fine!!! If I reflash the player then I can boot again to rockbox until I do one of the above things again.

It doesn't look like a hardware issue as it works fine with iriver firmware, could it be a bug of the bootloader?

Has anyone come across this situation before?

****** PROBLEM SOLVED ********************

It is unbelievable what the problem was!!!!!
I used third party screws for mounting the PCB to the shell and the middle right hand scew's head was bigger (we' re talking about a tenth of a millimeter or so here) and that caused a short circuit (or maybe something close to that) between ground and the line of the hold switch. As soon as the screw was replaced the problem was solved. It still remains a mystery though why the iriver firmware was working fine.

Thanks

Multiplex:

--- Quote from: kpapr1 on December 15, 2009, 02:56:32 PM --- It still remains a mystery though why the iriver firmware was working fine.
--- End quote ---
It is normal for the buttons to be read using a resistor chain and an analogue input - see details of iRiver remote here  http://www.rockbox.org/wiki/IriverHardwareComponents#The_Buttons, rather than discete switches read by dedicated input pins. So if the hold switch is read as part of the other buttons on the main unit (I can't remember) and maybe the short wasn't a full short but low resistance it makes sense that Rockbox read it one way and the OF the other - they likely have different switching points.

kpapr1:
Yes, but the hold switch has a dedicated pin on the processor, it is not the case of chain resistors.

************ UPDATE *********************

I think I spoke too soon, it's doing it again.

******************   NEW UPDATE   ********************

I finally updated to bootloader 7 pre4 and my problem was solved for good.

Thanks

Multiplex:

--- Quote from: kpapr1 on December 16, 2009, 11:21:59 AM ---Yes, but the hold switch has a dedicated pin on the processor, it is not the case of chain resistors.

--- End quote ---
Oh sorry - I did take a quick look and couldn't see the circuit for the main board. I did remember that some folk had marginal remotes so a fair bit of effort went in to optimising the crossover points.

--- Quote from: kpapr1 on December 16, 2009, 11:21:59 AM ---I finally updated to bootloader 7 pre4 and my problem was solved for good.

--- End quote ---
Good stuff :-)

kpapr1:
I think the 1.8V supply for the processor rises a lot faster than the 3.3V which is needed for the hold switch also, so the hold switch reading wait stage of bootloader 6 was not enough. Maybe components age or extreme components tolerance is to blame. Anyway bootloader 7 pre4 works just fine.

Navigation

[0] Message Index

Go to full version