Rockbox Technical Forums

Installation / Removal => Manual Installation => Apple - Installation/Removal => Topic started by: bidmead on March 13, 2008, 04:44:29 AM

Title: iPod first generation install?
Post by: bidmead on March 13, 2008, 04:44:29 AM
I have an iPod 1G, the real 1G circa 2001, 4.5ish GB hard drive with Firewire, back in the days when in was Mac only.

I want to install RockBox on it.

I understand it needs to be Windows partitioned before I can do this.  But I can't find a Windows partition map in the RockBox collection that will fit this model.

Am I missing something obvious?  Can anybody help?

--
Chris
Title: Re: iPod Classic first generation install?
Post by: linuxstb on March 13, 2008, 04:53:05 AM
Please don't use the term "Classic" - that's what Apple have named their latest full-sized ipod, and Rockbox doesn't work on that.

You'll need to either find someone with a Windows PC with iTunes installed who will let you convert your ipod to FAT32, or find a Linux PC and manually convert it following the instructions on the this page:

http://ipodlinux.org/Restore_Without_Itunes

The disk partitioning tools on a Mac don't (as far as I found) allow you to set up the partitions in the way your ipod expects, hence the reason the manual conversion instructions at ipodlinux require Linux.

Or the last option is to hope that someone reading this has the same ipod as you and donates their MBR to the conversion page.
Title: Re: iPod Classic first generation install?
Post by: bidmead on March 13, 2008, 05:41:34 AM
Thanks, linuxstb, for that very swift reply.  

And sorry to have confused you with "Classic".  It's what we used to call this model before Steve Jobs reinvented the retronym last year.  As a general knee-jerk reaction I'm not inclined to let Steve define my use of the English language, but I take your point in this context.

I have Linux and Windows machines here.  And I have a Window machine running iTunes that happens to have a Firewire connector.  Is it really just a matter then of either using iTunes on the Windows machine to convert the iPod to FAT32.  Or using fdisk on a Linux box to create a couple of partitions? (Actually I don't think I have a Linux machine with Firewire handy.  But won't the Mac OSX/BSD fdisk do the trick?)

--
Chris
Title: Re: iPod first generation install?
Post by: AlexP on March 13, 2008, 05:49:08 AM
The easiest way would seem to be to use itunes on the Windows machine to restore your iPod.

By the way, I have renamed this thread (just removed the Classic) as it was a bit confusing.  I looked at the thread with the intention of telling you Rockbox doesn't work on the Classics :).  I appreciate your sentiments (and I agree it is a slightly annoying name they chose), but in this case we have enough people getting confused about the new Classics (!) as it is.
Title: Re: iPod first generation install?
Post by: bidmead on March 13, 2008, 08:48:45 AM
OK, guys.  Thanks for the help.  I used iTunes on Windows to convert the drive formatting, without any problems.

However, installation of RockBox wasn't a success.

Booting into RockBox hosed the contrast, making the screen all but unreadable.  I might have been able to get into the controls to fix this, but RB decided that my battery was too low, and shut down.  Then booted again.  Then shut down.   And so on.  I did manage to reboot into Apple iPod mode and use Settings for a more readable screen, but the backlighting was weirdly stripey.  The settings were lost when I got back into RB mode, leaving the screen unreadable again.  My guess is that RB hasn't been extensively tested on a 1G iPod.

I've regretfully taken RB off the machine and it's back to normal with no ill effects.  Turns out the battery is fine, and fully charged.  I think I'll return to using Retune, but the venture into RB was easy enough to manage (with the help of you folks here) so I'd be happy to go back to it for further exploration if you have any suggestions about how to fix those contrast and reboot problems.

--
Chris
Title: Re: iPod first generation install?
Post by: GodEater on March 13, 2008, 09:46:48 AM
I'm sorry to hear the install didn't work out - we have a very small pool of users with iPods of the same generation as yours - so testing has naturally been rather limited.

Would you mine donating the MBR from your newly windows'd iPod for people who come along afterwards to use?
Title: Re: iPod first generation install?
Post by: yapper on March 13, 2008, 12:20:23 PM
There is a 'problem' with builds on the early iPod models, which results in some builds being 'bad'.

Check out this thread http://forums.rockbox.org/index.php?topic=14228.0 for details of versions that have been found to work on a 2nd Gen, which should have a good chance of running on your 1st Gen.

About halfway down the thread is a list of recent-ish versions I've tried with success.
Title: Re: iPod first generation install?
Post by: AlexP on March 13, 2008, 12:30:02 PM
There is a 'problem' with builds on the early iPod models, which results in some builds being 'bad'.

Check out this thread http://forums.rockbox.org/index.php?topic=14228.0 for details of versions that have been found to work on a 2nd Gen, which should have a good chance of running on your 1st Gen.

About halfway down the thread is a list of recent-ish versions I've tried with success.

I was under the impression this had been fixed:

http://svn.rockbox.org/viewvc.cgi?view=rev;revision=16547
Title: Re: iPod first generation install?
Post by: bidmead on March 13, 2008, 12:59:08 PM
@Godeater

MBR?  Delighted.  I'm assuming a simple:

dd if=/dev/diskN of=mbr1gen.bin

... will do the trick?

How do I put it up here?

@yapper  Thanks for the tip.  I can see hours of harmless amusement wading through those releases to find one that might work.  :-)  But are there any diagnostic tools to give us a better fix on what might be going wrong?  I'm very happy to help, but not crazy about thrashing around in the dark.

@BigBambi  That seems to be a fix for a bug that hasn't manifested itself on my machine.  The two problems I'm having seem to be:

1) Contrast and backlighting hosed (perhaps trivial)

2) Constant reboot reportedly due to incorrect diagnosis of low battery.

Any guidance on a useful way to proceed with this would be welcomed, although I appreciate that there may not be much interest in getting RB onto this particular model.

--
Chris


Title: Re: iPod first generation install?
Post by: linuxstb on March 13, 2008, 01:57:19 PM
@Godeater

MBR?  Delighted.  I'm assuming a simple:

dd if=/dev/diskN of=mbr1gen.bin

... will do the trick?

How do I put it up here?

No, that will copy the entire 5GB disk...  You will want to add "count=1" to the end of that line to restrict it to one sector.  

You can attach it to a comment in this thread, although you may have to rename it (e.g. to .txt) - the forum probably doesn't accept files with a .bin extension.  I'll then arrange for it to be moved to the right place.

Title: Re: iPod first generation install?
Post by: linuxstb on March 13, 2008, 04:52:41 PM
1) Contrast and backlighting hosed (perhaps trivial)

2) Constant reboot reportedly due to incorrect diagnosis of low battery.

2) has now been "fixed" (the shutdown on low battery has been disabled for now).  If you download and install a new "current build" of Rockbox, it should no longer reboot constantly (no need to reinstall the bootloader - just unzip the new rockbox.zip over the top of the old one, overwriting all existing files).

Regarding 1), it seems there are slightly different hardware revisions of the 1st gen, meaning that the default contrast is likely to be different.

If you create a text file in the .rockbox directory called "config.cfg" and put the single line "contrast: 40", that will change the contrast.  Valid values are between 5 and 63.  Once you (hopefully) get a value that means you can see the screen, you can fine-tune it in the settings menus in Rockbox itself.

If you can get it working, then please let us know what the default should be for your ipod, and also go into the "System -> Debug -> View HW Info and tell us what the hardware revision is - it should be either 0x00010000, 0x00010001 or 0x00010002
Title: Re: iPod first generation install?
Post by: bidmead on March 13, 2008, 05:15:13 PM
Wow, you guys respond swiftly...  :-)

Here's the mbr.  Hopefully: it's the result of
Code: [Select]
G4:~ bidmead$ dd if=/dev/disk3s2 of=mbr_1G_bin.txt count=1
1+0 records in
1+0 records out
I've named it .txt as advised (although the attachment dialogue says bin is ok)

Will get onto the other stuff ASAP.

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 13, 2008, 05:20:19 PM
I was under the impression this had been fixed:

http://svn.rockbox.org/viewvc.cgi?view=rev;revision=16547

Excellent!  I was getting a bit weary of sifting through builds to find a good one :-)
Title: Re: iPod first generation install?
Post by: linuxstb on March 13, 2008, 05:33:24 PM
bidmead,

The dd instruction should be using the "whole disk" device (/dev/disk3) not the 2nd partition on the disk (/dev/disk3s2).  The MBR is the very first sector on the disk.
Title: Re: iPod first generation install?
Post by: bidmead on March 13, 2008, 06:43:37 PM
Quote
The dd instruction should be using the "whole disk" device (/dev/disk3) not the 2nd partition on the disk (/dev/disk3s2).  The MBR is the very first sector on the disk.
Of course!  I'm supposed to know this stuff.  Will fix this with another upload.

Somewhat mixed news on the new current build (r16657, revised).  RockBox now loads, and appears stable.  The display is too pale, but readable.   However, I can't get to Settings (or anywhere much ) because the scroll wheel doesn't work. There's a response from the four surrounding buttons and the centre button (the backlight switches on when any of these are pressed), but the scroll wheel isn't being read at all.

Any ideas?

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 13, 2008, 06:52:48 PM
If I remember correctly, the 1st Gen has a specific 'scroll-wheel-enable' bit, as the scroll-wheel used lots of power, compared to the touch wheel on the 2nd Gen - it sounds like the enable isn't being turned on (or is being pulsed but too fast for the wheel to actually enable)

I'll have a fumble around the code to see if I can spot anything to concur with my theory.

Edit: Per IPodLinux.org/GPIO, GPIOB bit 0 is the enable for the 1st Gen scroll wheel
Title: Re: iPod first generation install?
Post by: bidmead on March 13, 2008, 07:00:25 PM
Thanks, yapper.  That sounds like a plan.

Meanwhile, here, I hope is the real mbr.  Sorry for being so rusty on this.
Code: [Select]
G4:~ bidmead$ dd if=/dev/disk3 of=mbr_1G.bin count=1
1+0 records in
1+0 records out

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 13, 2008, 07:09:59 PM
There is definitely stuff in button-1g-3g.c related to enabling the scroll wheel periodically, and only keeping it enabled if there is activity.

My grasp of C is insufficient to spot if there are any problems in the code, but someone else may be able to help.
Title: Re: iPod first generation install?
Post by: GodEater on March 14, 2008, 10:25:37 AM
Completely OT here, but, are you the Chris Bidmead that writes for Personal Computer World and PC Plus ?
Title: Re: iPod first generation install?
Post by: bidmead on March 14, 2008, 10:33:21 AM
Wrote a UNIX col in PCW until 2001.  Long term columnist for PC Plus and Microscope.

--
Chris
Title: Re: iPod first generation install?
Post by: GodEater on March 14, 2008, 10:38:13 AM
Neat - I'm a fan of your work :)

Can we expect a Rockbox article soon then ? :D
Title: Re: iPod first generation install?
Post by: bidmead on March 14, 2008, 11:14:15 AM
I'd probably need a few more thoughts on "Ways to Stop Your Scroll Wheel Working" before I had enough for a whole article...  :-)

--
Chris
Title: Re: iPod first generation install?
Post by: GodEater on March 14, 2008, 11:23:52 AM
Hmm, we have some more generic ways to stop your whole iPod working (see http://www.rockbox.org/wiki/GoldenQuotes on the Rockbox recommended way to "brick" your iPod) but I expect we could manage a few interesting ways to stop your scroll wheel working too :D
Title: Re: iPod first generation install?
Post by: Dindojul on March 16, 2008, 11:42:08 AM
Hi folks!

I just install rockbox on my iPod 1G and obtain exactly the same problem as bidmead: the wheel dosen't work!
I tried with older version, so there is another problem: the battery isn't recognised and the iPod reboot indefinitely...
It seems only to be a bit to set or not...
http://ipodlinux.org/GPIO

Can anyone doing that?

Thanx for that great work!
Title: Re: iPod first generation install?
Post by: yapper on March 16, 2008, 12:11:41 PM
Well that seems to confirm that there is a bug in the 1G implementation.

I had submitted a Flyspray task regarding headphone detection on the 2G  http://www.rockbox.org/tracker/task/8519 and when I was investigating it I noticed a few odd things that suggested the 1G and 3G might have problems related to GPIO.

Edit:
I've opened a Flyspray task http://www.rockbox.org/tracker/task/8745 for the 1G scrollwheel issue.

If a 1G user could find an older version where the scrollwheel DOES work, it would making tracking down this issue easier. Bear in mind than anything older than r16547 might exhibit the problem that made builds fail .... 'bad' build would either freeze early in the boot process, or display various error messages.
Title: Re: iPod first generation install?
Post by: Dindojul on March 16, 2008, 12:58:54 PM
Earlier rev of 16659 doesn't work due to the low battery detection/shutdown problem...
So, with rev 16659 and 16673 the wheel doesn't work.
Title: Re: iPod first generation install?
Post by: yapper on March 16, 2008, 02:46:36 PM
It looks like the dynamic scrollwheel enable code for the 1G was added back in August 2007 r14386, so it seems a bit odd that no one has reported issues up to now (although I suspect there may be only a few Rockbox users with 1G iPod). Prior to r14383 it appears the scrollwheel was left permanently enabled.

It *might* be that the scrollwheel behaves slightly differently across the different versions of the 1G iPod??? http://iPodLinux.org/Generations lists three values of gestalt ('IPOD_HW_REVISION' in Rockbox terms) for the 1G: 0x00010000, 0x00010001, or 0x000100002, and the Rockbox code doesn't differentiate between them regarding scrollwheel enable....??
Title: Re: iPod first generation install?
Post by: Dindojul on March 16, 2008, 03:03:01 PM
Is there any way to use an earlier version... is it possible to disable the battery check with an option in the config file by example?
Title: Re: iPod first generation install?
Post by: yapper on March 16, 2008, 04:39:05 PM
@Dindojul:
I have PM'ed you (and bidmead) with details of a test build that may allow the scrollwheel to work. This is NOT an official build, so is not officialy supported, but it may allow Rockbox to boot sufficiently to give some clues about the problem.

Edit:
The test build should have removed the two changes that implemented powersaving for the 1G scrollwheel. Dindojul has reported that this did NOT help.
Title: Re: iPod first generation install?
Post by: bidmead on March 16, 2008, 05:02:56 PM
Alas, no change here either.  The scroll-wheel still isn't being read.

For what it's worth, here's the gen on my 1G iPod (from Mac OSX System Profiler)

  Unit Software Version:   0x10483
  Unit Spec ID:   0x609E
  Firmware Revision:   0xA2700
  Product Revision Level:   1.33


--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 16, 2008, 07:28:27 PM
Based on results obtained from http://www.chipmunk.nl/klantenservice/applemodel.html, both bidmead and Dindojul have the same model:
Name: iPod (First generation)
Model: M8513 iPod 5GB Generation=1
Family name: M8541
Factory: U2 (Taiwan)

If anyone has a 1G iPod that DOES work with current builds, it would be interesting to see their model information.
Title: Re: iPod first generation install?
Post by: bidmead on March 17, 2008, 04:00:20 AM
Meanwhile it seems that we need to remove the headline claim that RB runs on 1G devices.  Or at least qualify it.  Accurate info on this is important to RB's street cred.

--
Chris
Title: Re: iPod first generation install?
Post by: Llorean on March 17, 2008, 12:33:06 PM
Considering Rockbox is unreleased, and this is just a bug, I'm not sure that qualifies it for removal. The Nano had a considerable bug that made it almost unusable for many people for quite some time too, and like that, surely this will be fixed.
Title: Re: iPod first generation install?
Post by: yapper on March 17, 2008, 05:41:25 PM
Or at least qualify it.
Title: Re: iPod first generation install?
Post by: Chronon on March 18, 2008, 03:16:06 AM
There was similar noise when some of the nanos were experiencing a problem.  I can see the merit in doing so.  I do not know the nature of any speculative effects of continuing to describe the nano as supported during that period.
Title: Re: iPod first generation install?
Post by: Llorean on March 18, 2008, 03:24:37 AM
Simply put: All builds are development builds, all "users" are actually "testers." Encouraging people not to use the latest build (or track down the specific build where the problem was introduced) works against the purpose of actually getting the problem fixed.

Basically, the point can be argued both ways. Bugs are business as usual in built-from-SVN software, and hopefully the people actually interested in this build will see fit to investigate / fix the problem soon enough anyway. As always we depend on people with the hardware to work on it, in general.

A player is "supported" if "all the work necessary to make it play music and be generally usable" is done. Buggy builds don't make the build unsupported, they just mean SVN head is buggy. A warning system might be suitable, but people can always just keep their old builds backed up when updating (and should) and if a user doesn't have an old build, they can roll back.

And, *everybody* experiencing this bug should be looking in the tracker anyway (to report it if a bug report doesn't already exist), so when they encounter it, they can add to the information.

I really don't see a specific benefit to qualifying it, but can certainly see why people might have the point of view "users should be told in advance." But we have the tracker for known bugs as it is, anyone interested in existing problems can go there, search for bugs affecting iPod 1st generation (assuming that's added to the list of targets on it) and see every outstanding issue that affects that specific player. Any other form of notification will just as easily be missed by the lay user anyway. I mean look how many people click past the large bold text mentioning forum guidelines will be enforced, or how many didn't even notice the check box next to the field they entered their email address in, offering to hide it. A user is well capable of clicking past anything, but you can't really say the information isn't already available to anyone who actually cares enough to look.
Title: Re: iPod first generation install?
Post by: Chronon on March 18, 2008, 04:23:58 AM
Of course I understand those points.  And I think those who have already been exposed to Rockbox probably will appreciate this.  The demographic that seems to be under consideration seems to be those users who don't know about Rockbox and think that when they download a current build they will be getting  a working product due to it being "supported" as per the front page.  

If someone wanted to provide a note about this issue an appropriate place might be on the TargetStatus wiki page  -- which is linked from the front page.  Does that sound reasonable?
Title: Re: iPod first generation install?
Post by: Llorean on March 18, 2008, 04:30:33 AM
I believe that page would be the *perfect* place to note outstanding bugs that make the player impossible to use. I'd rather as few bugs as possible end up on this page, so restricting it to ones that prevent use of the player entirely and consistently (and hopefully by placing it there you accept responsibility for removing it when it's fixed, the page really needs to stay up to date if this is going to be done).
Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 04:49:09 AM
I didn't mean to start a war here.  :-)  But let me point out a couple of things:

1) The RB front page claims "It runs on a wide range of players....  Apple 1st through 5.5 generation iPod..."  The experience in this thread suggests that this at least needs qualifying in the case of 1Gen.

2) Users as "testers" is OK by me, except that without scroll-wheel function there's frankly nothing to test.

It seems to me a no-brainer that for the good of RB's rep, and in the interest of not demotivating potential RB users, the place to say "It runs, except that you can't use it" is on the front page (or at least on an easy link from the front page clearly labelled "But check this first...").

Technically this bug may be trivial, but from the POV of the 1G end-user it's a show-stopper.

 --
Chris
Title: Re: iPod first generation install?
Post by: Llorean on March 18, 2008, 05:00:04 AM
What "end-user" exactly? There's no release version for the iPod 1G. And it does run on it, it's just buggy right now. You're downloading a bleeding edge, automatically generated build from source that is being actively developed.

Do you honestly expect someone to read through every bug report, and as ports become more or less usable update the status constantly on the front page? That could nearly be a full time job, on its own. Why not just use the clearly named wiki page?

Edit: Trying to get a general disclaimer added to the current build page to reflect some of this.
Edit2: If the first generation iPod build never worked, it should clearly have never made the "supported" list and should be removed. My point only applies to if this is an introduced bug in a previously working build. Reports suggest that some 1Gs (the one our only developer with one has, for example) work fine, and the target *should* be supported, it's just "supported bug buggy." We provide support for people asking install questions, and we accept bug reports on it and attempt to resolve them.

Basically "supported" means "we expect you to be able to play music on it, and want you to tell us if something interferes with that." Basically, supported does mean *you* should have a reasonable expectation of being able to get music to work. In this case, music doesn't work, but it really is "just a bug" in an in-development software. These things crop up often, and it's somewhat unreasonable to say the front page should contain the constant status of how usable any given target is. For example, recently some (or all, I'm not sure) of the PP5002 builds all had a <50% chance of working, depending on somewhat random factors, but we had no way of knowing consistently which ones users could use without someone testing every build to verify. It's just too large of a task, and something much better suited for the wiki.

Edit, the final: Just to attempt to clarify my point. There are something like 36+ variants of hardware and/or unique install processes. To attempt to keep an up to date usability status documenting any significant bugs would be significantly difficult. This becomes more difficult because sometimes these bugs last a matter of hours, sometimes weeks, and only a few people can modify the front page. These people don't have all the players, and may not even be aware of the problems some players experience. As well, some reported problems that seem very significant only affect specific hardware variants, or even are the result of hardware faults tolerated by the OF but not accounted for by Rockbox yet. So the persons posting this have to have enough reports to verify. Then they have to remove the warnings in a very timely manner when the problems gone, so that further misinformation isn't spread. Wouldn't a better solution be more clarity for the user as to what to expect (ie: It should work, but don't *expect* it to work)? This way people will never assume "there's no warning for my build, it's surely working", nor will they mistakenly see an old warning and think it's still applicable because the person in charge of the page isn't aware it needs removal.

Note: all of this reflects personal opinion, and not project policy, just to clarify.
Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 05:34:17 AM
What "end-user" exactly?
Projects like RB work, IME, because they attract two kinds of people.  Hackers who like to get stuck in up to the elbows, and end-users who are just happy to appreciate the functionality, and show their appreciation by reporting back on bugs, and perhaps features they'd like to see.  Both types are essential to a healthy project.

--
Chris
Title: Re: iPod first generation install?
Post by: Llorean on March 18, 2008, 05:37:32 AM
So, we should educate the end users as to what to expect in general. In this unique case, it turns out the port isn't actually complete (due to unknown hardware), and it will likely be removed. But it's somewhat unreasonable to expect the front page to be updated every time a showstopper bug shows up. As I tried to say, these bugs happen often as there's no release version, and often a showstopper will exist, last for a day or two, then be stamped out, without knowledge of it even coming up among those with access to the front page.
Title: Re: iPod first generation install?
Post by: dunno on March 18, 2008, 11:17:46 AM
The word on the street is "use rockbox, its cool, uses file tree browsing, and you can play games, etc... "joe soap" is not interested in bug hunting he wants plug and play, this is where RB current development philosophy is at odds with "joe soaps" expectations, as there is no release for any post Archos target and no warning of a broken build, not having some means of flagging or notifying users that current SVN is broken for a player is frustrating for "joe soap" and bad for RB credibility.
Because developers assume that the most a build will broken for is a day or two, for the 1G the builds have been broken for a long time due to stated bug, with no developer noticing the bug, where does that leave "joe soap", is he/she supposed to read the logs and mailing list just to determine what the status of SVN is, so that he can load a working build to his/her player ?.  I would suggest you put a big disclaimer somewhere appropriate stating that "unreleased" Rockbox is for folks that are interested in helping developers find bugs, casual users are to expect bugs, and if a current build is "broken/buggy" then wait a day or two before trying a newer current build, (although in the case of the 1G a day or two's grace wouldn't have fixed the bug).
Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 11:34:24 AM
@dunno: I'd be inclined to discount Joe Soap (by your definition) in this current context.  If he's not interested in bug hunting, he doesn't contribute to the effort, and so is not part of the health of the project as I've described it.  That's not to dismiss him altogether -- if he can pick up something he finds useful, good luck to him.   But I don't think developers should spend too much time worrying about him.

I do think they should spare a lot of thought, though, for the end-user who is prepared to give good feedback.  What matters is the code, and the code needs those end-users -- eyeballs, with mouths attached for feedback.  Anything that misleads, confuses or paralyses those end-users needs attention from the developers every bit as much, if not more, than the code itself.

--
Chris
Title: Re: iPod first generation install?
Post by: linuxstb on March 18, 2008, 12:37:16 PM
Going back to the problem, it would be useful if 1G owners could do the following:

1) Hold the PLAY button whilst booting (this will cause the Rockbox bootloader to try and load an ipodlinux kernel, which should fail).

2) You should see some info messages on the screen - the third line should be something like:

IPOD version: 0x00010001

(with the last digit being 0, 1 or 2).

3) Post that number on the Flyspray task for this bug (or here, if you're not registered on Flyspray, but Flyspray would be better), along with a statement saying if your scrollwheel works or not:

http://www.rockbox.org/tracker/task/8745

Thanks.
Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 02:39:51 PM
The screen is very faint indeed, and the characters are tiny.  Examining them using a loupe I can just about make out the iPod version number as 0xFFFFFFFF (which probably means "unknown", doesn't it?).

--
Chris
Title: Re: iPod first generation install?
Post by: amiconn on March 18, 2008, 03:18:39 PM
OK, so we know what happens. The hardware revision should always be present (so we thought), but in this case, it isn't. That fact makes the button code not enable the wheel (cause it checks for 1st Gen, and  doesn't find one), and therefore it cannot work of course.

So the question is why this ipod doesn't report a version number. I could provide a special test build that dumps the ROM right after boot. That file would be interesting....
Title: Re: iPod first generation install?
Post by: Dindojul on March 18, 2008, 03:20:20 PM
As bidmead I find an iPod version 0xFFFFFFFF
Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 03:33:12 PM
[OT?]

(I'd place this elsewhere, but there doesn't seem to be an appropriate forum, and it's closely related to what we've been discussing here.)

It's clear from this thread that the TWiki>Main>iPodPort>RockBox Status report on 1G is over-optimistic.  "RockBox works nicely but more work is needed" doesn't accurately reflect the reality that, at least on some 1Gs, RB is actually unusable.

I take the point made earlier that developers may not have the interest or time to update the docs (although IMHO docs should be as important to them as code).  The value of a Wiki is that end-users can pitch in and do the job.   So I've signed up for the Wiki.

The TWiki page on TWikiAccessControl suggests "Open, freeform editing is the essence of WikiCulture - what makes TWiki different and often more effective than other collaboration tools. For that reason, it is strongly recommended that decisions to restrict read or write access to a web or a topic are made with great care - the more restrictions, the less Wiki in the mix. Experience shows that unrestricted write access works very well.."  I agree.

But apparently da management doesn't.  Edit access to the RockBox Status report I mention above is restricted.  Although signed up, I can't reach in to edit it. And unlike Wikipedia, for instance, there doesn't seem to be a discussion page behind the main Wiki page, where at least I could lodge a proposal to change the page.

Correct me if I'm wrong -- please -- but it looks as if the developers are too busy to update the docs themselves, but leary of letting end-users do it.  IMHO this is no way to run a code shop.

--
Chris
Title: Re: iPod first generation install?
Post by: linuxstb on March 18, 2008, 03:36:48 PM
@Chris,

You simply need to ask in IRC for write access to the wiki - this should be mentioned on the TWiki Registration page.  This is an anti-spam security measure (we've suffered badly in the past), and any person with write access to the wiki can give another user write access - it's not limited to developers.

Title: Re: iPod first generation install?
Post by: bidmead on March 18, 2008, 04:31:27 PM
Ah, OK.  Ignore my rant, then.

--
Chris
Title: Re: iPod first generation install?
Post by: amiconn on March 18, 2008, 06:29:32 PM
So, here's the promised test build: http://www.jens-arnold.net/Rockbox/rockbox-1g-rom-dump.zip

Brief instructions:  
Then post that file somewhere (it's 1MB, so the forum won't work).

Jens
Title: Re: iPod first generation install?
Post by: soap on March 18, 2008, 06:46:14 PM
Even I wouldn't be so bold as to speak for my brother, Joe Soap.
 ;D
Title: Re: iPod first generation install?
Post by: Dindojul on March 18, 2008, 07:11:49 PM
Here is my file http://jul.yus.free.fr/rockbox/internal_rom_000000-0FFFFF.bin
if it doesn't work, I also put a zipped version here http://jul.yus.free.fr/rockbox/internal_rom_000000-0FFFFF.zip
Thank you for your attention!
Title: Re: iPod first generation install?
Post by: linuxstb on March 19, 2008, 09:23:47 AM
Dindojul,

Thanks for that file - the extract worked fine.

Just to update people, the issue now is to find an alternative way to distinguish 1st and 2nd generation ipods - the method currently used obviously doesn't work on all 1st gen ipods...

Title: Re: iPod first generation install?
Post by: Dindojul on March 19, 2008, 01:25:17 PM
An easy way can add a disk capacity test:
If rockbox find an iPod 1/2G...
just check the harddisk...
with a 5Gb disk, it can only be an iPod 1G... Isn't it?
Title: Re: iPod first generation install?
Post by: Llorean on March 19, 2008, 02:18:45 PM
People can change their disks.
Title: Re: iPod first generation install?
Post by: bidmead on March 19, 2008, 03:49:24 PM
Enable the mechanical scroll wheel by default, unless the firmware reports a version number?

Or is that too simplistic?

--
Chris
Title: Re: iPod first generation install?
Post by: Llorean on March 19, 2008, 04:42:23 PM
I imagine that's a fallback option, but there might be other reasons to explicitly identify the iPod version in the future too, and there's still things to look into for that.
Title: Re: iPod first generation install?
Post by: yapper on March 19, 2008, 10:58:55 PM
Why not invert the logic (look for the 0x0002000X identifier to see if it's a 2nd gen, and if thats NOT found, assume a 1st Gen)?
Title: Re: iPod first generation install?
Post by: Llorean on March 19, 2008, 11:37:00 PM
You just offered a what is, in essence, nearly functionally identical solution to what bidmead suggested.
Title: Re: iPod first generation install?
Post by: bidmead on March 20, 2008, 03:33:20 AM
Either way, it seems to me (at a safe distance from the code) that this would be trivial to implement, at least as an experimental branch.  That way those of us with these 1Gen iPods can get into some real functional testing of the rest of the code, which would hopefully be valuable to the project as a whole.

Or we could continue to debate the philosophical value of various ways of detecting the hardware version, or not.  This will sharpen our metaphysical skills and provide hours of harmless amusement, which surely is what projects like this are really all about... :-)

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 20, 2008, 03:44:32 AM
You just offered a what is, in essence, nearly functionally identical solution to what bidmead suggested.
Take my suggestion as agreement wuth bidmead, then.  ;)

I'm not sure if it's relevant, but what version of Apple firmware is on these 'problem' 1Gs?

Also, what is the content of the \iPod_Control\Device\SysInfo file? My 2G has a line in the file which seems to be the 'HW version':
boardHwSwInterfaceRev: 0x00020000 (0.0.2 0)

Either way, it seems to me (at a safe distance from the code) that this would be trivial to implement, at least as an experimental branch.  That way those of us with these 1Gen iPods can get into some real functional testing of the rest of the code, which would hopefully be valuable to the project as a whole.
Again I agree.
Title: Re: iPod first generation install?
Post by: Llorean on March 20, 2008, 03:47:34 AM
Feel free to knock together a patch and share it then.
Title: Re: iPod first generation install?
Post by: bidmead on March 20, 2008, 03:57:32 AM
@yapper

Is this info of any use:

http://forums.rockbox.org/index.php?topic=15929.msg119288#msg119288

>For what it's worth, here's the gen on my 1G iPod (from Mac OSX System Profiler)
>
>  Unit Software Version:   0x10483
>  Unit Spec ID:   0x609E
>  Firmware Revision:   0xA2700
>  Product Revision Level:   1.33

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 20, 2008, 07:33:01 AM
@bidmead:

If you boot into the Apple firmware (reboot Rockbox by holding PLAY, and then turning Hold ON while it's shutting down), then go to Settings>About, it should list a 'Version', which on an up-to-date 2G is 1.5.

I'm wondering if your iPod is a VERY early 1G, which pre-dates the use of the 'revision' field. Also wondering if you've ever updated the Apple firmware ... if not maybe you could try that?

(You could wait a few hours to see if anyone provides feedback here that my suggestions are pointless   ;) )
Title: Re: iPod first generation install?
Post by: linuxstb on March 20, 2008, 08:31:19 AM
@bidmead: It would be better to not update your Apple firmware - so we fix the bugs that prevent Rockbox working on the version currently installed... (if you have the patience to wait).
Title: Re: iPod first generation install?
Post by: bidmead on March 20, 2008, 10:16:23 AM
@yapper@linuxstb: AFAIK the firmware on my iPod is as up to date as Apple allows 1Gs to be.     And, yes, it is probably a very early 1G, direct from the US shortly after the launch.

In no particular hurry about this personally, but keen to get stuck into testing asap on behalf of the RB project.

--
Chris
Title: Re: iPod first generation install?
Post by: crzyboyster on March 21, 2008, 01:32:28 PM
Sorry I didn't read through all of the posts in this thread, but it seems that the iPod 1st Gen needs its VID and PID #'s at this page > http://www.rockbox.org/twiki/bin/view/Main/DeviceDetection

So whoever owns the 1st gen iPod (or any other device there, for that matter) should post the info there.

Title: Re: iPod first generation install?
Post by: bidmead on March 21, 2008, 01:39:44 PM
Here's some excellent news:

Yapper here has PM'd me a .rockbox that sets scrollwheel enable based on the version number NOT returning 2, rather than the time-honoured method of expecting that function to return 1 (which, as we've discovered here, it doesn't necessarily do).  

The good news is that this version WORKS.  I now have RB running on my 1G and should now be able to comment usefully on the code in general, rather than getting bogged down in installation issues.

Yapper says the amendment doesn't affect operation on his 2G.  I'm wondering, of course, what happens on >2G machines -- do they try to switch on the scrollwheel with this version, or is there with these later generations a more sophisticated way of identifying the hardware.  If so, then it would seem we're close to a version that could become an official release.

--
Chris
Title: Re: iPod first generation install?
Post by: bidmead on March 21, 2008, 01:52:31 PM
@crzyboyster

Gosh, I'm out of practice!  In response to your suggestion I was running the usbids util for at least a couple of minutes, wondering why the 1G didn't show up when I plugged it in.

Yup, you're there ahead of me.

It ISN'T A USB DEVICE!

1G machines are Firewire only.

:-)

--
Chris
Title: Re: iPod first generation install?
Post by: yapper on March 21, 2008, 01:54:23 PM
I'm wondering, of course, what happens on >2G machines
The build is the 1G2G specific version, and the code is within a #ifdef IPOD_1G2G anyway, so that shouldn't be an issue.

I'll post the patch on Flyspray, although I think greater minds are looking at a more reliable way to determine the HW version as the 'real solution. Edit: Patch is here: http://www.rockbox.org/tracker/task/8778

@bidmead - bear in mind that you are now running an 'unofficial build', which is therefore not officially supported.
Title: Re: iPod first generation install?
Post by: bidmead on March 21, 2008, 04:16:35 PM
@bidmead - bear in mind that you are now running an 'unofficial build', which is therefore not officially supported.
Sure.  But I'm assuming that if this version check is the only diff from the official build, any bug reports that I may make will be valid.
Quote
the code is within a #ifdef IPOD_1G2G anyway, so that shouldn't be an issue.
I guessed it must be something like that.  RB coders seem to know where their towels are...  :-)

(currently listening to FLAC for the first time on this iPod!)
--
Chris
Title: Re: iPod first generation install?
Post by: AlexP on March 21, 2008, 04:19:42 PM
Normally bug supports in unsupported builds are just rejected (without checking in an official build), but in this case I think, yes it is fine, as it isn't really an unofficial build in the intent of the word :)
Title: Re: iPod first generation install?
Post by: bidmead on March 21, 2008, 04:24:19 PM
Just make this build official, why not?.  

The new logic is simple, it checks out, and even if there is a philosophically more fascinating way of ascertaining whether to switch in the scrollwheel handling or not, I can't see that it'll make any functional improvement.

--
Chris
Title: Re: iPod first generation install?
Post by: AlexP on March 21, 2008, 04:28:03 PM
I assume the reason there was a check there in the first place is that there is a downside to applying it indiscriminately, and therefore we want a reliable way of checking between first and second gen iPods.  
Title: Re: iPod first generation install?
Post by: Llorean on March 21, 2008, 04:28:21 PM
Just as we previously hadn't known there were 1Gs that didn't report their version the way we expected, what is the effect this will have if their are 2Gs with a similar problem or quirk?

So, "why not" is "we might be fixing the bug by simply shoving it off on other users we don't know about yet."

As for the "unsupported" nature of this build, we've truthfully had bug reports filed where the patch "should not" have affected the area the report was on, but did. It would be best if you tried to give it a week or two for an official fix for this problem, then verify any bugs you find in it, because the build environment can really cause some interesting quirks in builds, and patches (especially on portalplayer) can have some very interesting side effects at times, but if you come across something you feel absolutely confident is something we wrote, rather than something misbehaving unexpectedly, speaking up now may be best.
Title: Re: iPod first generation install?
Post by: bidmead on March 21, 2008, 04:41:29 PM
@BigBambi But this check (as described) isn't indiscriminate.  It's not a kluge.  AIUI it specifically doesn't apply the scrollwheel handling to 2G.   If there are 2Gs reporting as 1G I can see there would be a problem.  Similarly if there are 1Gs that need the scrollwheel handling but report as 2G.  Or even if there's a logic bug in the RB generation reporting.  This patch will expose those anomalies, and so be A Good Thing(tm).

@Llorean  I take your point about knock-on effects, and certainly won't be jumping the gun with a shower of bug reports, for that and other reasons.  

--
Chris
Title: Re: iPod first generation install?
Post by: AlexP on March 21, 2008, 04:47:04 PM
@BigBambi But this check (as described) isn't indiscriminate.  It's not a kluge.  AIUI it specifically doesn't apply the scrollwheel handling to 2G.   If there are 2Gs reporting as 1G I can see there would be a problem.  Similarly if there are 1Gs that need the scrollwheel handling but report as 2G.  Or even if there's a logic bug in the RB generation reporting.  This patch will expose those anomalies, and so be A Good Thing(tm).
--
Chris


Right, but the point is that it is now applied to everything that doesn't report as a 2G (within a 1G2G ifdef) rather than everything that reports as a 1G, so if there are 2Gs that don't report as such (not just reporting as a 1G), or if we want to extend the code in the future to other similar players it could cause a problem.  I agree that it isn't a completely horrendous hack (i.e. just enabling for everything), but a way of properly detecting 1Gs would be preferred, and that is what I believe the devs are searching for.
Title: Re: iPod first generation install?
Post by: yapper on March 21, 2008, 04:49:25 PM
Just as we previously hadn't known there were 1Gs that didn't report their version the way we expected, what is the effect this will have if their are 2Gs with a similar problem or quirk?

I actually did some testing on a 2G, with a version of the patch that was set to trigger scroll wheel enable on anything that didn't return a version of '7', and there are no noticeable side effects. I believe one of amiconn's early versions of powersaving for the 1G2G also sent the powersave regardless of 1G or 2G (and he noted it was 'safe' as the GPIO output port used as the enable on the 1G is used as an input on the 2G for headphone detection).
Title: Re: iPod first generation install?
Post by: AlexP on March 21, 2008, 04:57:40 PM
I'm not saying this is a bad way of doing it (I don't have enough knowledge for that), I'm just explaining why the devs may be searching for a more specific check.
Title: Re: iPod first generation install?
Post by: yapper on March 21, 2008, 05:20:47 PM
Oh, I agree :-)  I was just providing some additional info. I'm happy to wait for a properly engineered solution.
Title: Re: iPod first generation install?
Post by: Dindojul on March 22, 2008, 07:19:02 PM
The scrollwheel now works pretty fine :-)
With the AABold theme I don't see any album art... I tried with big color picture as well as with 64x64 4 colors picture.
Thanx a lot for this version!
Title: Re: iPod first generation install?
Post by: yapper on March 23, 2008, 04:09:04 PM
album art needs to be bmp not jpg .... see the wiki for details:
http://www.rockbox.org/twiki/bin/view/Main/AlbumArt

or search this forum area:
http://forums.rockbox.org/index.php?board=24.0