Tuesday, 23 June 2009

LTImage Installation on the Dreambox


Upgrading / Installing

If you are upgrading the firmware, make sure that you have saved / backed up / recorded any important data, for example:
  • The Bouquets (using DreamboxEdit under Wine)
  • Your Timers
  • The Crontab File (crontab -l)
  • The LNB / Diseq configuration
  • Any scripts you have installed on the internal flash

LTImage
Download and Install

Download the latest image for your dreambox from the LT Team website: http://www.ltteam.org/

Switch on your Dreambox, whilst holding down the down button on the front panel - the display will say **STOP**. Note the IP address displayed.

Connect to the IP address from your PC using a web browser, i.e. http://ip.add.re.ss/

Select firmware upgrade in the web browser page, and point at the nfi file you have downloaded, and press 'Flash!'.

Be patient ...

Swapfile

With the later versions of the image, it is necessary to use a swapfile. I use one on the compact flash, which is automatically mounted in /media/cf.
dd if=/dev/zero of=/media/cf/swapfile bs=1024 count=65544
mkswap /media/cf/swapfile

swapon /media/cf/swapfile
To make things permanent, create /etc/rc3.d/S99swap:
#!/bin/sh
swapon /media/cf/swapfile
Ensure that it can be executed with:
chmod a+x /etc/rc3.d/S99swap
Tuning In

Once the web browser has indicated that the download is complete, return to the Dreambox, and press the front panel power button off/on. The dreambox will now boot.

Select the wizard, and configure your LNB setup, then configure your network. Once complete, press the Menu button, and go to Setup / Servce Searching, and leave the dreambox for a while, searching for available channels.

Viewing Card

For UK Freesat, plug your card into the front of the machine, then go to the LT Menu, and download / install MGCamd and NewCS. Select these in the LT Menu 'EMU' section.

Radiotimes, and EPG Grabber


LT provides an EPG downloader. You provide it with an XML file, containing the channels you wish to download, and the python script visits the appropriate guide provider (e.g. Radio Times), and downloads the data.

This method is quite slow, as by default, every possible channel is downloaded. I have created my own scripts, which parse the currently selected bouquets and generate a minimal download.

E2 LoadEPG

Alternatively, someone has managed to produce an OpenTV decoder, and has created E2LoadEPG. It can be downloaded from: http://www.ambrosa.net/, and installed.
cd /media/hdd/download
wget http://www.ambrosa.net/data/files/E2_LOADEPG/e2_loadepg-052.tgz
cd /media/cf
tar xvzf /media/hdd/download/e2_loadepg-0.52.tgz
The program is a suite of python scripts, with a binary application to do the actual download. There are five files which require editing.

First File: /media/cf/e2_loadepg/e2_loadepg.conf
DOWNLOAD_MODULES=bskybsat
Second File: /media/cf/e2_loadepg/dl_modules/bskybsat-channel_list.conf

The script provides the option of selecting which EPGs to download. This actually needs to be automated (parsing lamedb and favorites like I do with my approach), however in the meanwhile, you need to set each channel you wish to get a guide for to a '1'.
# bbc 1 e mids , id=2105
2105=0,bbc 1 e mids
# bbc 1 east (e) , id=2106
2106=0,bbc 1 east (e)
# bbc 1 east (w) , id=2073
2073=0,bbc 1 east (w)
Third File: /usr/bin/enigma2.sh

Following a download, the enigma application is re-started, and this is when it reads the EPG from /media/hdd/epg.dat. I can't find a way of pointing it at the compact flash, however using the hard disk will not force it to keep spinning, as the file is read on startup, then deleted.

Editing the enigma2.sh script to include a 'ln' command makes the EPG available on each reboot:
#!/bin/sh
/usr/bin/showiframe /boot/backdrop.mvi
cd /home/root
[ -f /media/cf/ext.epg.dat ] && ln -s /media/cf/ext.epg.dat /media/hdd/epg.dat
LD_PRELOAD=/usr/lib/libopen.so.0.0 /usr/bin/enigma2
....
Fourth file: /media/cf/e2_loadepg/dl_modules/bskybsat.conf

The fourth file contains the actual download configuration - the transponder needs to be changed so that the program can switch to the right channel to download the EPG. There are two channels I have found that work: "EPG Background Audio" and "IEPG data 1" - if the channel does not have an audio stream playing the background audio you normally hear when navigating the EPG on a sky box, it probably won't have the EPG data.
#
# Set to EPG Background Audio
#
TRANSPONDER_SID_CHANNEL=1038:011C0000:07D4:0002:2:0
Last File: crontab (using 'crontab -e')

2 2 * * * python /media/cf/e2_loadepg/e2_loadepg.py
A Manual Run

Type:
python /media/cf/e2_loadepg/e2_loadepg.py
And check the log file:
/media/cf/e2_loadepg/loadepg.log