How to compile your own ITGate FirmwareHere you'll find first level informations that will help you to setup a Cross Development Kit (or CDK), in order to produce your own ITGate firmware...
Disclaimer
Setting up a non official firmware into your receiver may cause large damages to the device. End users are warned that, by doing this, they won't have the possibility to claim about waranty for any damage, in case of a receiver that is not used only with the official firmware.
Before you begin
Building a firmware for a device such as your ITGate is not a simple task. It involves large compilation processes and complicated building tasks. For this reason, you should not start such a process if you're not sure of what you're doing. Having a good understanding of GNU compilation process is required. You should also be easy enough in using a Linux development system, as all tasks can only be performed under such an operating system.
System pre-requisites
Here are the things you need to achieve a firmware building process :
A computer with a Linux OS + development tools (at least, compilers).
About 1 Gb of free user space on your harddisk.
A high speed (DSL) internet link, as a lot of large files will be downloaded during the process.
For development tools, here are the minimal tools and their version numver you MUST have :
cvs
autoconf >= 2.57a
automake >= 1.8
libtool >= 1.4.2
gettext >= 0.12.1
make >= 3.79
makeinfo (texinfo)
tar
bunzip2 (bzip2)
gunzip (gzip)
patch
infocmp (ncurses-bin / ncurses-devel)
gcc 2.95 or >= 3.0
g++ 2.95 or >= 3.0
flex
bison
pkg-config
wget
libpng2 or libpng3 (DirectFB)
perl
Downloading primary files
Change to the directory you want the CDK to be installed in and issue the following commande sequence :
export CVS_RSH=ssh
cvs You are not allowed to view links.
Register or Login:/sources co .
Dont miss the ending point in the cvs command.
This one will run during a while, and will download all required source files onto your system.
Downloading dependencies
When all is done, do the following :
cd TGS100
cd cdk
./prepare
make download
This second sequence will make your computer downloading all the archives from different web sites, that are required to build a complete image. If you can not succeed in this step, there's no way out !
Building the image
Now that you've got all the required parts, all you have to do is to run the following command sequence :
make
make itgateimage_all
The first make will produce all binaries. It will take several hours for any system to build complete CDK but fortunatly, you won't have to do it each time !!! Only for the first CDK setup.
The second command will build the image itself. You'll find several files...let's see them.
Output files, flash process
Change into the following directory :
cd ../root/cdkflash
You'll find here several directories names TGS100xxx, that containes files used for flashing.
TGS100ftpmc is for memory card (and ftp) flashing
TGS100srl is for serial link flashing
There's also a tftp procedure to flash the receiver, but it won't be explained here as it require direct flash operations that are dangerous and may cause bootloader to be permanently destroyed !
For this tutorial, we will simply upload the software part of the image and flash it. Go into the TGS100ftpmc directory. You'll find the following files and directories :
flashtools
flashtoolsmc
22:01 TGS100ftpmc_complete.img
TGS100ftpmc_kernel.img
TGS100ftpmc_logo.img
TGS100ftpmc_noboot.img
TGS100ftpmc_root.img
TGS100ftpmc_uboot.img
TGS100ftpmc_update.img
TGS100ftpmc_var.img
The first 2 are directories that contains flashing tools. The others are different parts of the image. As you may think, the _complet.img file is the 16 Mb complet image file. This file can be placed on a memory card with others required files in order to flash the whole memory, including an empty /var directory.
For test purpose, you only have to flash the software part of the image. This can be done with the _update.img file.
For this, just cd to the flashtools directory. You'll see that this img file has been copyed here, together with a bin directory that contains the flashing tool itself.
So now do the following :
ftp 192.168.0.10
Of course, replace the IP address with the one of your TGS100 ! Log onto it with required login and password, then...
cd /tmp
bin
put TGS100ftpmc_update.img
lcd bin
prompt
mput *
bye
All files are loaded into /tmp onto the receiver. Connect to it via a telnet command and execute the final flash process :
telnet 192.168.0.10
Into the telnet do the following to prevent problems :
killall rcS
killall enigma
Then start the flashtool :
cd /tmp
chmod 755 flashtools
./flashtools
You'll see the erase procedure then the flash procedure. After both of them, the receiver will reboot and you image will be active !
Congratulation ! You now have your own firm into the box !
Trouble shooting
Any problem when compiling the "lemm" game ?
change into its directory and clean it, then start the build process again :
cd ../apps/tuxbox/plugins/fx2/lemm
make clean
cd ../../../../../cdk
make
many thanks to DREAMBUSTER