HOWTO for FLI4L on the Asus EEE 4G

Please note: Since May 2014 I don’t use FLI4L any longer. The following information is only kept for archival purposes.

By Carsten Beckermann, translation by Arno Welzel

Questions und suggestions will be forwarded if neccessary (Arno Welzel)

Why install a FLI4L on the EEE, which is much too “powerful” for a FLI4L?

1. Application:

A single, which is on the way with the EEE by day and returns home in the evening, often needs a router then. By day, when he is out, the router is not neccessary at home. Therefore, no additional hardware is needed for the FLI4L.

2. Application:

The Asus EEE contains a accumulator, so it is ideal, as it just continues running in case of a power blackout. The DSL modem, external ISDN devices etc. will fail anyway, as they need their own power. The advantage ist, that these tiny devices can be connected to a small UPS and due to their little power consumption, they may tolerate a power blackout up to an hour or more. The UPS doesn’t need to power the FLI4L too.

3. Application:

The Asus EEE as a mobile ethernet-2-WLAN or WLAN-2-ethernet router for hotel rooms, youth hostels, etc. (for this, additional configuration steps are neccessary, which are not described here).

With a crosslink cable, the existing laptop could also be connected to the EEE and the EEE will then route between the hotel WLAN and the laptop. In the other direction, the EEE could also route between the RJ45 network connection of the hotel and the own, small WLAN.

Prerequisites

For this project you need:

  • SD card (better no SDHC but a classic SD)
  • (USB-)cardreader for the PC, on which the configuration of the FLI4L will be created
  • Asus EEE 4G (eventually it will work with the successors too)
  • FLI4L 3.2.2 base package
  • FLI4L 3.2.2 WLAN package
  • FLI4L 3.2.2 MadWifi Atheros driver (you will find the link in the WLAN download section)
  • FLI4L 3.2.2 USB package
  • Modified kernel in this package: fli4l-kernel-2.6.23.17.tar.gz

A note about the modified kernel:

I got the kernel directly from the FLI4L Team. It contains the ATL2 driver for the network card and the optimized madwifi driver http://madwifi.org/ticket/1192 for the WLAN card.

In this kernel APM is disabled, therefore it is not possible to execute poweroff. This will probably be changed in the final version.

In summary it has to be mentioned, that the new driver will be integrated in FLI4L and i will check, if this HOWTO has to be modified, when the next official release FLI4L is ready.

Certainly there may be ways to do without some of the packages. But i assume these packages as i report, how it works comprehensible for me.

Further i can only explain the installation of FLI4L using Windows yet.

Preparation

Create a folder. I call it Basefolder_EEE.

Extract all packages and copy them to this folder, similar to the documentation.

Then adapt the configuration files for your own needs (see the respective documentation).

Now we continue with the particular variables.

Configuration

In base.txt verify and changed the following variables as neccessary:

BOOT_TYPE='integrated'

MOUNT_BOOT='no'

KERNEL_VERSION='2.6.23.17'

POWEROFF_ON_HALT='no'

OPT_MOUNTFLOPPY='no'

NET_DRV_N='2'
NET_DRV_1='ath_pci'
NET_DRV_1_OPTION=''
NET_DRV_2='atl2'
NET_DRV_2_OPTION=''

In usb.txt verify and changed the following variables as neccessary:

OPT_USB='yes'

USB_LOWLEVEL='uhci'

USB_EXTRA_DRIVER_N='1'
USB_EXTRA_DRIVER_1='storage'

The following changes in the system files are neccessary, as there will be a new driver, which is not part of FLI4L and has to be added. Maybe this will change in the near future, then the following changes can be ignored.

In CHECK/BASE.EXP change the following variable:

Search for NET_DRV (about line 166):

NET_DRV = '3c503|3c505|3c507|.......

Just add here: |atl2

(the upright line is a “pipe” symbol)

NET_DRV = '3c503|atl2|3c505|3c507|.......

In OPT/BASE:

Search for pcnet32 (about Zeile 226):

net_drv_%  pcnet32 pcnet32.o

Add the additional network driver atl2 in a new line:

net_drv_%  pcnet32 pcnet32.o
net_drv_%  atl2    atl2.o

(the extension must be .o and not .ko)

FLI4L build process as local administrator

Now put the SD card in and let it be recognized, if this was not done yet.

For the further progress at least for me under XP local administraive rights are neccessary.

Eventually the mkfli4l.bat will be changed for this.

For me, a RUNAS in a shortcut was sufficient

runas /user:administrator /env /savecred "cmd /T:A0 /k TITLE Admin 'Administrator'"

and a modified mkfli4l.bat as follows:

Add the following below the REM lines:

cd /D "%~dp0"

This causes the path of mkfli4l.bat to be used, otherwise, it will not find the other files, as mkfli4l.bat can not know, where the files are.

Now you can just move mkfli4l.bat in the new command line window (which was opened using the RUNAS shortcut) and will be executed with administrative rights.

This works for Windows XP. Older Windows version may not provide this function!

Create FLI4L on the SD card

In the “fli4l–Build–Options” select the tab “direct HD-Install”.

Activate the chekbox behind “Activate HD-install”.

Select the drive, where the SD card was inserted.

CAUTION: check thorough, that the drive lette is correct, otherwise data on the wrong drive may be overwritten!

Then click on Start Build Prozess at the bottom.

Maybe some error messages will show up, which has to fixed in any case.

After the, hopefully successful buid process you have to “eject” the SD card in Windows using the context menu of the drive in the Explorer, so all data will be saved. Then you can pull the SD card out.

The first start

Now insert the SD card in the EEE, turn the EEE on and then immediatly press the ESC key several times.

Now the boot menu will show up. Select the SD card here. The internal harddisc has the title HDD:SM-SILICONMOTION, which would be the wrong entry. The correct selection on my machine was: USB:USB2.0 CardReader SD0.

FLI4L should start now.

Maybe there will be some error messges, e.g. if the MAC-ID of the WLAN card is not configured yet in OPT_WLAN.

After logging in at the console you can get further notices by entering

cat /bootmsg.txt

Here you will also see the MAC-ID. This can be added in OPT_WLAN, but it is not neccessary.

The first tests

You can verify the existence of the devices by entering

ip addr

Here i get 4 devices listed.

lo:
wifi0:
wlan0:
eth0:

If you connected a LAN cable, you can execute a ping to the local network with

ping –c 3 192.168.23.10

(whereas an existing IP address of the own network has to be used)

Making the SD card writeable

One can write to the SD card under FLI4L, if any data should be stored there. Be careful with many write operations, as the SD card has only a limited number of possible write cycles and may become defective afterwords. Since the prices for small, simple SD cards are very low today, it is a good idea to keep some spare cards at home.

mkdir /usb
mount /dev/sda1 /usb

How to continue?

A DSL modem can be connected to the network card and can be configured. Also additional OPTs can be installed as usual and the configuration can be tuned. Via USB one can also use ISDN adapters, as Fritz Card USB.

Acknowledgements

My thanks go to:

  • The team of FLI4L for the continued development of the base and the packages
  • The users and the community for testing and the indefatigable effords
  • The experts for the valuable help in the newsgroup
  • Arno Welzel for revising and providing the HOWTO in his Wiki

THANK YOU: Without you all the whole FLI4L project would never be developed as it is today!

No guarantee. Use at your own risk.

Notices about errors are welcome.

Carsten Beckermann
September 2008

Translation by Arno Welzel

Questions und considerations will be forwarded, if neccessary (Arno Welzel)