Version 36 (modified by akk, 4 years ago)

Clarify a couple of points I found confusing when following the page; add sample menu.lst entries.

download the needed files from the archos homepage

  • download the SDE firmware, rename the file firmware_archos5.aos to sde_archos5.aos to avoid confusion
  • download the regular 2.0.xx Android firmware from archos

You now have one file named firmware_archos5.aos which is the original android os and one file named sde_archos5.aos which is the SDE containing anstrom.

compile aos tools (instructions for Ubuntu 10.04)

sudo apt-get install libssl-dev   #(if you have not already done it)
sudo apt-get install subversion   #(if you have not already done it)

svn checkout http://aos-tools.googlecode.com/svn/trunk/ aos-tools
cd aos-tools/libaos
make
cd ../tools
make
sudo cp aos-unpack /usr/local/bin/

unpack original firmware

aos-unpack /path/to/firmware_archos5.aos

Of all the files unpacked, the following directories are of interest:

  • ./firmware_archos5/root/cramfs
  • ./firmware_archos5/root/system

we will need them later

Quick Steps For Setup:

First Step:

  • Copy sde_archos5.aos via usb the root of your device, then unmount cleanly.
  • Connect the USB charge/adapter and Open the file using the File Manager
  • Angstrom will boot afterwards, it takes a long time. Be patient. You will have to create an initial user account and set a password.
  • Now Logout/Turn Off Angstrom

Second Step:

  • Boot the device while holding down the [VOL -] button to go into Recovery
  • Select 'Repair Disk' and run it. (If it comes up then ignore the device's request for an update file, just press [Power] and proceed to the next step)
  • Reboot the device again while holding down the [VOL -] button to go into Recovery.
  • Press the [VOL -] button 5 times to reach the “Developer Edition Menu”. Then Press [Power]
  • Press the [VOL -] button 2 times to reach the “Flash Kernel and Initramfs” entry. Then Press [Power] ONCE. Wait 2 seconds.
  • The screen now should say “connect your device…” – Please do so and mount the device on your desktop PC.
  • If u have trouble viewing the archos disk drive in your computer use following tools to view the ext3 drive.
  • Download the following files
    •  https://openaos.org/wp-upload/gen7/2010-11-11/initramfs.cpio.gz
    •  https://openaos.org/wp-upload/gen7/2010-11-11/zImage
    •  https://openaos.org/wp-upload/archdruid/alpha5/openaos-froyo-alpha5a_20110119.img.gz -- if you want to install openAOS Froyo (please note that you will have to add it to menu.lst after next boot)
  • Copy those files to the root of your device (the top of the filesystem you mounted earlier):
    • zImage
    • initramfs.cpio.gz
    • openaos-froyo.... -- again only if you want to boot FroYo? too (unpacking is optional but greatly speeds up first boot).
  • you have to additionally create two directories in root of your device: openaos and then within this directory update
    • "mkdir -p /media/Archos5/openaos/update"
  • then copy the following directories out of the unpacked 2.0.x firmware AOS file: cramfs and system into the just created update directory
  • Unmount the device safely. (Else you might damage the files!)
  • Press the [Power] button – The screen will flash briefly and say “Kernel and initramfs updated”.
  • Press the [Power] button – The device will now reboot.
  • The Boot menu should now appear.

Congratulations you should now have an dual-booting gen7 device! Continue reading if you also installed FroYo?!

Important things to do now:

  1. Boot into the original Archos Android firmware to make sure that it works! (FroYo? needs to extract a few files from it so if something is wrong here, FroYo? won't boot either!)
  2. While in the 1.6 Android firmware, mount it as a hard-drive. (This will only work if you didn't enable USB debugging during boot!)
    1. Open menu.lst in an editor.
    2. Make sure each entry is on its own line.
    3. Adjust the filename for the FroYo? image from /froyo.img to the correct image name, e.g. /openaos-froyo-alpha3-20101029.img (make sure that it ends in .img! The file on the drive can end in .img.gz, it will be unpacked during boot to an .img file. Leave your USB cable connected so it doesn't turn off too early!)
    4. Save the file
    5. Unmount cleanly! (this is important! If you have no idea how to do this, wait 15min before disconnecting the USB cable!)
    6. Boot FroYo?
      • If you left the image compressed the openAOS logo will stay for around a minute or two while it's unpacking.
      • If the openAOS logo stays much longer then something is still wrong. Most likely the filename in menu.lst, check it.
      • If the image is unpacked it should switch after 2-3 seconds to an openAOS logo with an FroYo? drawing. Then to our openAOS Android boot animation.

Sample menu.lst:

Donut|ANDROID||/init
FroYo|/dev/sda1|/openaos-froyo-alpha5a_20110119.img|/init
Angstrom Linux|/dev/sda1|/rootfs.img|/sbin/init

Additional features

  • You can update the archos firmware by putting the cramfs and system directory of an unpacked firmware in the openaos/update directory. Both directories (cramfs and system) should have been deleted after an successful update. (If not you most likely made an mistake or used the wrong initramfs)
  • If you update the Archos firmware for the first time the initramfs will automatically create an menu.lst for you or if it exists check if it already has an archos entry and add it if necessary.
  • You can enable serial debug using the g_serial driver that will create three cdc-acm serial devices via USB. Just connect your Archos by USB to your PC and select yes from the menu that will pop up on boot. (this is now only available in the special version of initramfs as too many users cause them selves problems by activating it in combination with android. See here:  https://openaos.org/wp-upload/gen7/2010-11-11/)
    • The first ACM device will have an root shell bound to it under Android (both Archos and ArchDruid FroYo). Please use ADB. Due to instability this Android feature is now only available on the UART ttyS2.
    • Under other OS' you have to bind an getty to it in the inittab to get an login prompt / shell on the first ACM device.
    • The third ACM device will have the kernel messages on it.