Building the HAH Firmware

The firmware is also available pre-built. If things break during this build process you're on your own.

The HAH firmware is based upon the Inventel source distribution with quite a number of changes.

These are notes are to setup a CentOS 5.5 x64 Linux distribution as a development system for HAH building your mileage may vary for other releases.

First you need to install the MIPS toolchain as root.

# mkdir /opt
# cd /opt
# wget http://www.dbzoo.com/_media/livebox/toolchains.tar.gz
# tar zxf toolchains.tar.gz

As a normal user amend your .profile/.bashrc et al to include the following path

PATH=$PATH:/opt/toolchains/bin

Make sure you have at least these packages installed on your linux distro:

  • Debian based: $ apt-get install autoconf gcc make g++ libgh6-zlib-dev subversion pkgconfig flex curl-devel patch
  • Redhat/CentOS/Fedora based: $ yum install autoconf gcc make gcc-c++ zlib-devel subversion pkgconfig flex curl-devel patch bison

The HAH source code is held at the following location in a Subversion_(software) repository. Everybody has READ-ONLY access, writes are restricted.

$ svn checkout http://livebox-hah.googlecode.com/svn/trunk/ livebox-hah-read-only

Building the firmware from the development trunk, this is the latest and greatest and possibly unstable. Once I get into the swing of things I'll branch a stable release. You will want to add the PATH set-up to your .bashrc

$ cd livebox-hah-read-only
$ make

Now is a good time to go get yourself a cup of coffee as this takes a while.

As the cramfs image must be constructed with root permissions you will asked for the root password during the final stage of the process. So keep an eye out for the “password:“ prompt.

From the master Makefile this is the shell script called by the SU command if you want to check what its about to do. You'll find this in ./targets/buildFS

buildimage: $(KERNEL_DIR)/Image
        su --command="cd $(TARGETS_DIR); ./buildFS"
        cp $(KERNEL_DIR)/Image $(TARGET_FS)

When its finished you'll find two files in the images directory

$ ls -l images/
total 7684
-rw-rw-r-- 1 brett brett 3932216 Nov  9 17:17 firmware.dwb
-rw-rw-r-- 1 brett brett 3923968 Nov  9 17:17 Image.bin
$
  • Image.bin is a cramfs image that can be written to a /dev/mtd device using fcp
  • firmware.dwb is suitable for flashing via TFTP or using the RGWRepair.exe utility

Remember: to get this firmware onto your livebox you need to

You now might consider setting up a TFTP server for image downloads so updating your Livebox is painless.