The last version is always on http://atm.eagle-usb.org/wakka.php?wiki=UeagleAtmDoc

====Starting the modem====
at http://castet.matthieu.free.fr/eagle/release/
Download ueagle-atm-1.0.tar.gz, 
untar it with 
$ tar -xzf ueagle-atm-1.0.tar.gz
enter in the created directory
$cd ueagle-atm-1.0
compile the driver
$make
install it
$make install

Now you need to install firmware and CMV file.

If you don't know anything about it, just download ueagle-data-1.0.tar.gz.
untar it
$ tar -xzf ueagle-data-1.0.tar.gz
enter in the created directory
$cd ueagle-data-1.0

You should have 
 - usb firmware : ""EagleI.fw, EagleII.fw and EagleIII.fw""
 - dsp firmware : DSPex.bin
 - CMV : CMVex.bin

DSPei.bin is for isdn and DSPep.bin for pots.

CMVei.bin is for isdn and CMVep.bin is for pots. There some CMV customised for ISP. See http://faq.eagle-usb.org/wakka.php?wiki=InfoCMVEn for more detail.

If you don't use the default name CMV.bin and DSP.bin, you need to use module options. You can also use symbolic link.

Put files in the hotplug firmware dir ($grep FIRMWARE_DIRS= /etc/hotplug/firmware.agent to see them).
for example on debian
# mkdir -p /usr/lib/hotplug/firmware/ueagle-atm
# cp -a * /usr/lib/hotplug/firmware/ueagle-atm


If you are a experienced user, you could edit CMV or use other dsp firmware :

If you need special DSP code, you could generate a DSPex.bin file with the bnm provided by ADI/sagem with bnm2dsp.
If you need special CMV you could edit the CMV*.txt provided in eagle-usb or sagem windows driver and generate a CMVex.bin file with build_cmv your_CMV.txt

These tools and the default file are provided in ueagle-data-src-1.0.tar.gz


modprobe usbatm
modprobe firmware_class
modprobe ueagle-atm

once you see in dmesg : #[ueagle-usb] modem operational#, its work :)

====Once the modem is running====

This step allow you to configure your connection

==show stats==
cat /proc/driver/ueagle-atm/*

==pppoe==
packet br2684ctl for debian is need.
You need a kernel with  RFC 1483/2684 Bridged protocols enabled

Once the modem is running.

load br2684 module :
# modprobe br2684

then you need to create an ethernet interface with br2684ctl
In most of case (only one atm interface) you need to run :
# br2684ctl -c 0 -e x vpi.vci

If x=0 then it is LLC encapsulation
if x=1 then it is VC mux encapsulation

vpi/vci value are given by your provider.
For example in france
# br2684ctl -c 0 -b  -a 8.35
   br2684ctl[18144]: Interface "nas0" created sucessfully
   br2684ctl[18144]: Communicating over ATM 0.8.35, encapsulation: LLC
   br2684ctl[18144]: Interface configured

Then you need to configure the interface : assign an IP address and netmask (you can also assign a Ethernet MAC address if necessary)
# ifconfig nas0 192.168.2.1 netmask 255.255.255.0


Now you can use the "nas0" ethernet interface. You could for example run adsl-start for starting rp-pppoe.

==routed ip==

You need a kernel with  Classical IP over ATM enabled

Once the modem is running.

First you should check that the atmarpd daemon is running.
If not you should try to start it with /etc/init.d/atm start

If it still don't work use atmarpd -b

Create the specified an IP interface with :
# atmarp -c 0

# ifconfig atm0 # should show
""<pre>
atm0      Lien encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          [PAS INDICATEURS]  MTU:9180  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:100
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)</pre>""
Then you need to configure the atm interface with ifconfig. You need to use the adress IP given by your provider.
For example :
# ifconfig atm0 $MYIP netmask 255.255.255.0 mtu 1500

Then you need to configure the atm arp daemon, for that you need the adress IP of your gateway.
If you want a LLC encapsulation then run
# sudo atmarp -s $MYGWIP vpi.vci
or if you want VC mux encapsualtion
# sudo atmarp -s $MYGWIP vpi.vci null

vpi/vci value are given by your provider.

Finaly you need to add a default route to your gateway
# sudo route add default gw $MYGWIP

Now everything should work (you need to configure your dns in /etc/resolv.conf)

=DHCP support=
===THIS DON'T WORK AS THE PATCH IS FOR 2.4 KERNEL===
If you want dhcp support, you will need to patch your kernel. This method sould be less efficient than the previous method as the kernel need to fake an ethernet device (add and remove header).

##
taken from pulsar pci doc (http://sourceforge.net/projects/openadsl)
##
If you plan to use routed IP Instead, you will need to patch your kernel 
and use a different version of br2684ctl from..

ftp://ftp.cmf.nrl.navy.mil/pub/ekinzie/linux-atm/rfc2684/

To patch the kernel replace the following files with those on the above site...

/usr/src/linux/include/linux/atmbr2684.h
/usr/src/linux/net/br2684.c

Notes : 
(1) Don't forget to recompile your kernel.
(2) Use '-p 0' on the br2684ctl command line to get "routed" functionality 
and '-p 1' for bridged.

after that you should follow pppoe step and use dhcp on the created ethernet device.
==pppoa==
you need ppp package on debian
your kernel need to support :
PPP (point-to-point protocol) support
PPP support for async serial ports
PPP support for sync tty ports
PPP Deflate compression
PPP BSD-Compress compression
PPP over ATM 

Then assuming the modem is runing, you need to configure ppp.
load pppoatm
# modprobe pppoatm

For example it could be
##
# example configuration for the kernel space PPP over ATM driver
#
# See the manual page pppd(8) for information on all the options.

# MUST CHANGE: replace myusername@realm with the PPP login name given to
# your by your provider.
# There should be a matching entry with the password in /etc/ppp/pap-secrets
# and/or /etc/ppp/chap-secrets.
user "myusername@realm"

# Load the PPPoA plugin.
plugin pppoatm.so

# VP.VC pair used by your ISP.
8.35

# Enable this option if your ISP uses PPPoA with LLC encapsulation.
#llc-encaps

# Assumes that your IP address is allocated dynamically by the ISP.
noipdefault
# Try to get the name server addresses from the ISP.
usepeerdns
# Use this connection as the default route.
defaultroute

# Makes pppd "dial again" when the connection is lost.
persist

# Do not ask the remote to authenticate.
noauth
##


Once the configuration is ok, you need to run 
# pppd user myusername@realm
