This is a wiki page and is being constantly improved, please link to the page, not a revision of it!
Please make sure you don't link to old versions of this page. If you came here via a link check if there is a revision number in the address bar. If so, go to the current version of this page

Devices

  • A5S - thin with SSD/flash up to 64GB
  • A5H - thick with hard-disk inside
  • A48 - thick with hard-disk inside, marketed as A48IT

Attention Windows users:
• You will run into problems
• This is experimental software, not an upgrade. If you are looking for one, ask Archos, not us!
• You need to obtain a ZIP file that contains 'system' and 'cramfs' directories extracted from a recent original Archos Firmware
(or you'll have to setup a Cygwin environment and build aos-unpack yourself)
• When told to 'remove safely' you MUST ALWAYS disable the drive letter from the ext3 driver window, else it will NOT work.
(missing zImage, initramfs and 'Archos' menu entry may occur else)
• No Windows-related problems will be handled on the chat, ask on Archos forum sites.

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 Angstrom.

Compile aos tools (Ubuntu instructions)

(To bring up a terminal under Ubuntu, type ctrl-alt-T or see  Using the Terminal.)

sudo apt-get install libssl-dev 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

The following warning message

WARNING: androidroot.cramfs.secure: Signature is invalid.

can be safely ignored, as the signature handling code of aos-unpack often disagrees when checking signature validity.

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 to your PC and copy a zImage and an initramfs.cpio.gz” – Please do so and mount the device on your desktop PC.
  • If you have trouble viewing the Archos disk drive in your computer use following tools to view the ext3 drive.
  • Download the following files
  • Copy those files to the root of your device (the top of the filesystem you mounted earlier):
    • zImage
    • initramfs.cpio.gz
    • Delete or rename old menu.lst for kernel release 09-04-2012 and later, if you have custom lines in there add them later after you first booted in the new menu.lst that is created.
    • openaos-gingerbread.... -- again only if you want to boot openAOS Android too Rename the image file to openaos-gingerbread.img.gz (unpacking is optional but greatly speeds up first boot, if unpacked the image name should be openaos-gingerbread.img).
  • you have to additionally create two directories in root of your device: openaos and then within this directory update
    • cd into the directory that the Archos device mounts to ("/media/Archos5" on some systems such as Ubuntu)
    • "mkdir -p 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
  • If you want root with rw access on stock then also copy the "rooted" folder to the openaos folder so you will see an update folder an a rooted folder in openaos. ("rooted" folder is in the kernel archive next to zImage and initramfs.cpio)
  • Unmount the device safely. Under Windows you MUST disable it in the ext2/3 driver (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! IMPORTANT: Continue reading if you also installed FroYo or Gingerbread!

Important things to do now:

  1. Boot into the original Archos Android firmware to make sure that it works! (openAOS Android needs to extract a few files from it so if something is wrong here, openAOS Android won't boot or at least won't work properly either!)
    1. Boot openAOS Android
      • 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 from the image file see above you renamed it correctly. If that's not the problem, try uncompressing the .img.gz file -- sometimes automatic unpacking doesn't work.
      • If the image is unpacked it should switch after 2-3 seconds to our openAOS Android boot animation.

Note: For Gingerbread you also need to read this wiki page Guidelines to install Gingerbread

More info on multiroot Bootmenu

See also Multiroot Bootmenu Explained

Sample new menu.lst from kernel release 09-04-2012 and later:

Archos|ARCHOS|ARCHOS|/init|0
Angstrom||/rootfs.img|/sbin/init|1
Gingerbread||/openaos-gingerbread.img|/init|0

Sample old menu.lst from kernel release 24-12-2011 and earlier:

Donut|ANDROID||/init|0
openAOS android Anoa|/dev/sda1|/openaos-gingerbread-anoa-gen7_113301.img|/init|0
Angstrom Linux|/dev/sda1|/rootfs.img|/sbin/init|1

Note: extension to the menu.lst structure.

  • If you add '|1' then fbset will set the framebuffer like in the original SDE kernel (e.g. for Ångström).
  • If you add '|0' then it will be set like for the Android like Archos firmware, Froyo, Gingerbread.

(In addition it tries to guess the right defaults: Everything gets the old 24 bit framebuffer unless it is: Archos firmware or the menu entry name contains ‘android’ or ‘froyo’, then it is set to the new mode.)

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:  http://www.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.
    • Again do not use the debug initramfs in connection with Android! It will make it very unstable! Use ADB instead. You can turn it on from the settings menu or init.rc
  • root ->  http://forum.archosfans.com/viewtopic.php?f=47&t=50465 (I hope you are conscious about what you are doing).

How to repair things if you messed it up / Get back to Archos firmware

If anything goes wrong, dont panic; your Archos is nearly un-brickable. Hint: Calling 'Recovery' from Advend menu does not work on Gen7, cf. Gen7 Features

  • Just boot while holding [vol -] button, and select "update firmware"
  • It'll ask you to connect your device to your computer: do it.
  • Copy/Paste the latest Archos regular firmware. DO NOT RENAME IT.
  • Press [POWER] and let it work; when the screen goes black, hold on [POWER] button 5-10 secs. It'll shut down completely.
  • You're done.