Rockbox.org home
Downloads
Release release
Dev builds dev builds
Extras extras
themes themes
Documentation
Manual manual
Wiki wiki
Device Status device status
Support
Forums forums
Mailing lists mailing lists
IRC IRC
Development
Bugs bugs
Patches patches
Dev Guide dev guide
Search



Donate

Rockbox Technical Forums


Login with username, password and session length
Home Help Search Staff List Login Register
News:

Thank You for your continued support and contributions!

+  Rockbox Technical Forums
|-+  Support and General Use
| |-+  Hardware
| | |-+  iRiver ihp120 failed CF install
« previous next »
  • Print
Pages: 1 2 [3] 4

Author Topic: iRiver ihp120 failed CF install  (Read 38855 times)

Offline petur

  • Developer
  • Member
  • *
  • Posts: 769
  • wtb: time
Re: iRiver ihp120 failed CF install
« Reply #30 on: February 14, 2008, 03:37:19 AM »
Quote from: Davide-NYC on February 13, 2008, 11:41:19 PM
Wait. Let me understand this correctly. If you modify ata.c and compile you will not be installing a new bootloader. Instead you will simply be installing a modified version of Rockbox, correct? This is not dangerous and I intend to try it as soon as I can hear confirmation in the IRC channel.

The ata -80 error comes from the bootloader, so any 'fixes' must be done there. Changing rockbox.iriver will not influence that a bit (but that will need the fix too of course)

I will see if I find the time tonight to start experimenting with bootloaders on h300 (gulp)
Logged

Offline Siar

  • Member
  • *
  • Posts: 13
Re: iRiver ihp120 failed CF install
« Reply #31 on: February 14, 2008, 02:35:42 PM »
As I wrote in several places before...

The following worked with slow a-data 8gb and pretty old ultra II 512Mb CF

Prerequisite: You have to have rockbox bootloader before replacing your HDD by smth else. I did not modify it. I do not remember exactly what version is it, but it is for sure in my iriver for more than one year.
You need bootloader before hdd cf swap, because CF DOES NOT WORK WITH ORIGINAL IRIVER FIRMWARE.

So, I repeat, the device was able to run with a "generic" pretty old rockbox bootloader. I HAVE NEVER had -80 error.



Now, using "generic" .rockbox files without ata.c modification:

A. Device can interact with PC (copying/deleting files) via USB ONLY if you use a following sequence:
1. turn iriver off
2. plug it to PC via USB
3. Turn iriver on
It uses some bootloader interface to communicate with PC.

B. The device can freeze from time to time for no observable reason

C. If you plug iriver to PC while it is working,
- iriver tells you that it is connected to pc
- pc tells you that it cannot recognize usb device

While it is not frozen, you are able to play music EVEN USING GENERIC BOOTLOADER AND .rockbox


Problems A,B,C disappeared after I modified ata.c, recompiled and replaced .rockbox directory (though copying .rockbox to A-DATA took ~5-10 minutes :().

I hope, it helps

« Last Edit: February 14, 2008, 02:38:30 PM by Siar »
Logged

Offline Jeff

  • Member
  • *
  • Posts: 33
Re: iRiver ihp120 failed CF install
« Reply #32 on: February 14, 2008, 03:02:30 PM »
So it would seem to me that a modified bootloader with the altered ata.c should be made available for those wishing to perform this mod.  It sounds like the issue is that the modified bootloader may or may not work on all players and would obviously need to be specific to player model, etc.
Logged

Offline Siar

  • Member
  • *
  • Posts: 13
Re: iRiver ihp120 failed CF install
« Reply #33 on: February 14, 2008, 03:46:27 PM »
Quote from: Jeff on February 14, 2008, 03:02:30 PM
So it would seem to me that a modified bootloader with the altered ata.c should be made available for those wishing to perform this mod.  It sounds like the issue is that the modified bootloader may or may not work on all players and would obviously need to be specific to player model, etc.

Not sure. For those who have -80 error, modification of ata.c file will not work. The problem in this case is obviously in the interaction of bootloader and hardware.
And this is a big questions, whether bootloader can be properly modified in this case.

So, for the current state of nature, buy "speedy :D" and the cheapest A-DATA and enjoy the CF mod (and slow copying speed as a bonus :) ).
Logged

Offline Jeff

  • Member
  • *
  • Posts: 33
Re: iRiver ihp120 failed CF install
« Reply #34 on: February 14, 2008, 06:18:21 PM »
Quote from: Davide-NYC on February 13, 2008, 11:41:19 PM
@Jeff: Could you record a 15 minute stereo WAV file (or even 60 minutes) and let me know if the card can keep up with the write requests? Not being able to keep up with stereo WAV would be a deal breaker for me. Slow transfer speeds I can live with.  :)
Initial test with a 10 minute WAV file.  Recorded from FM in WAV 44.1 KHZ

Listened to the entire 10 min file, nothing unusual to report.  During the recording, the hard drive access light came on approx. 1 time per minute of recording.

I will take it further when i get a chance this weekend and do a 1 hour recording and report back.
Logged

Offline petur

  • Developer
  • Member
  • *
  • Posts: 769
  • wtb: time
Re: iRiver ihp120 failed CF install
« Reply #35 on: February 14, 2008, 06:41:26 PM »
I got my A-Data turbo x266 card working reliably :)

For now, my 'hack' disables set_features() and ata_perform_sleep() which seem to cause issues.

in set_features(), it is only the powermanagement feature that fails (feature[0]), I'm missing some specs to see what is wrong...
Logged

Offline heinimuecki

  • Member
  • *
  • Posts: 8
Re: iRiver ihp120 failed CF install
« Reply #36 on: February 15, 2008, 04:28:01 PM »
finally i got my ipod mini2g running rockbox with
a transcend 16gb cf 133x card again  :D

followed these

http://www.rockbox.org/twiki/bin/view/Main/CFModGuide

instructions, downloaded this build: 20080215-080215

and compiled both the bootloader and the firmware under cygwin

and now it works again as far as i can see now.


i love rockbox  ;D
Logged

Offline scharkalvin

  • Member
  • *
  • Posts: 332
Re: iRiver ihp120 failed CF install
« Reply #37 on: February 15, 2008, 07:04:04 PM »
I edited the wiki http://www.rockbox.org/tw.../bin/view/Main/CFModGuide
to add my experience with the Gigabeat F CF conversion.
Logged

Offline Jeff

  • Member
  • *
  • Posts: 33
Re: iRiver ihp120 failed CF install
« Reply #38 on: February 16, 2008, 04:29:19 PM »
I know i'm groveling but is there any way to create modified ROM's or bootloaders to assist those of us who are technically challenged in these areas?  I do not have Linux and even if I did, would not know the first thing about compiling, etc.

I would like my new CF enabled iHP-120 to be recognized by the PC when plugged in while on, etc...  I would also like to try my Transcend 32GB card again with the modifications in place to see if the ATA -80 error pops up again or if the features set and sleep timer hacks solve that issue.
Logged

Offline Llorean

  • Member
  • *
  • Posts: 12931
Re: iRiver ihp120 failed CF install
« Reply #39 on: February 16, 2008, 06:26:49 PM »
While this solution may work in some cases, it is imperfect. I believe a solution suitable for the official version is being investigated. Hopefully it will also allow a wider use of cards.
Logged

Offline petur

  • Developer
  • Member
  • *
  • Posts: 769
  • wtb: time
Re: iRiver ihp120 failed CF install
« Reply #40 on: February 18, 2008, 03:16:47 AM »
Yes, the intention is to make most cards work with normal rockbox, but it has proven not that easy. A quick hack worked, but we're still investigating why. Once we know that, we can have a nice solution.

There is progress, even if a bit slow... Patience ;)
Logged

Offline magmaniac

  • Member
  • *
  • Posts: 6
Re: iRiver ihp120 failed CF install
« Reply #41 on: February 18, 2008, 10:48:48 AM »
(Note: My Wiki name is FrankOtto.)

Quote from: Jeff on February 16, 2008, 04:29:19 PM
I know i'm groveling but is there any way to create modified ROM's or bootloaders to assist those of us who are technically challenged in these areas?
[ ... CF enabled iHP-120 ... ]

Jeff, if you are willing to try, I can send you a build for the H120. But at the very least you need to install the V7pre4 bootloader, as the workaround currently only works when Rockbox is loaded from ROM (which doesn't work with V6 bootloader). This also means that you will lose the original iriver firmware. (Installation of the bootloader is detailed on the Wiki page IriverFlashing.)

To be completely clear: My build does not modify the bootloader, but you still need the prerelease version of the current bootloader. Whether you want to take this risk is up to you.

My build contains three patches to vanilla Rockbox (SVN r16316), all to firmware/drivers/ata.c :

1) In set_features(), the ATA command which sets the advanced powermanagement feature is skipped. For some CF cards this is necessary, as this command would fail and result in the ATA -80 error.

2) In ata_perform_sleep(), the sending of the ATA SLEEP command is skipped. For a hard disk, this command tells the drive to park the head and stop spinning. For a CF card, there's nothing to park or spin, so skipping this command should be safe, especially since the CF spec states that the CF card will enter sleep mode anyway after 5 msec. If we do send the sleep command, we often experience freezes of the player, although the command itself returns success.

@petur: I think I was too hasty in stating (in the Wiki and on IRC) that I don't need to modify ata_perform_sleep(). In my first tests, I still had a logf call in there, which changes the timing of course, and I think this prevented my player from freezing. I since tried a new build without logf, and this one freezes quite often, unless I again disable the ATA SLEEP.

EDIT: while at first a build with this patch ran stable, it later caused lots of freezing. So this patch doesn't fix the freezing. See petur's post below.

3) In ata_thread(), the call to ide_power_enable(false) is skipped. This call would power off the IDE bus. For me, this results in the disk acess LED being on constantly. Very odd. (So far I seem to be the only one who has encountered this behaviour.)

All in all, the patches disable a lot of the power management related to the disk part. So the question is whether the player will now use more power than necessary. In order to answer this question, I'm currently running a battery benchmark. (Preliminary results suggest that the player at least will run as long as with HD, but of course with CF it should run quite a bit longer.) This benchmark with continuous playback should also serve as a measure of stability, i.e. to see whether there are still freezes. (So far: 7 hours of continuous playback without problems.)
« Last Edit: February 19, 2008, 06:09:57 AM by magmaniac »
Logged

Offline petur

  • Developer
  • Member
  • *
  • Posts: 769
  • wtb: time
Re: iRiver ihp120 failed CF install
« Reply #42 on: February 18, 2008, 11:12:08 AM »
Frank: to get rid of the freeze, just comment out the sleeping = true;

I hope to find the cause of the freezing tonight, the next thing to attack is set_features. I searched quite a bit this weekend but couldn't find a reason for its failure.
Logged

Offline Davide-NYC

  • Member
  • *
  • Posts: 429
Re: iRiver ihp120 failed CF install
« Reply #43 on: February 18, 2008, 12:02:39 PM »
I ran battery_bench on a CF'ed H120 after applying FrankOtto's patch as well as on a standard (HD) H120. Both have the stock battery.

The CF-H120 lasted 16:18:05.
The HD-H120 lasted 14:05:52.

Note that this was not done on the same battery, just the same type of battery.
Logged
Currently: iRiver H132-RTC-CFMod

Offline magmaniac

  • Member
  • *
  • Posts: 6
Re: iRiver ihp120 failed CF install
« Reply #44 on: February 18, 2008, 12:49:07 PM »
Quote from: petur on February 18, 2008, 11:12:08 AM
Frank: to get rid of the freeze, just comment out the sleeping = true;

petur, won't that bring back the shutdown problem? (hanging on shutdown, until forced shutdown occurs with noise on speakers)

Also, without sleeping=true, some code path in ata_thread() never gets hit, and I suspect that it might be a timing problem with what happens after the SLEEP command is sent. The SLEEP command itself succeeds, but then sleeping=true gets set, and this hits certain code paths which do other ATA stuff which then freeze the player because we didn't wait long enough after issueing SLEEP... (yes, this is all rather hypothetical)
Logged

  • Print
Pages: 1 2 [3] 4
« previous next »
+  Rockbox Technical Forums
|-+  Support and General Use
| |-+  Hardware
| | |-+  iRiver ihp120 failed CF install
 

  • SMF 2.0.18 | SMF © 2021, Simple Machines
  • Rockbox Privacy Policy
  • XHTML
  • RSS
  • WAP2

Page created in 0.103 seconds with 16 queries.