Archiv/Eumex 2220PC

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Installation von Programmen

  2. Bearbeiten von Paketquellen

  3. Ein Terminal öffnen

  4. Einen Editor öffnen

  5. Archive entpacken

  6. Ein Programm starten

  7. Ein einzelnes Paket installieren

  8. Programme zum Menü hinzufügen, optional

Inhaltsverzeichnis
  1. Installation
  2. Treiber herunterladen
  3. Edgy 6.10
    1. Anpassen der Treiber
    2. Treiber kompilieren
  4. Feisty 7.04 & Gutsy 7.10
    1. Anpassen der Treiber
    2. Treiber kompilieren
  5. Treiber beim Systemstart laden
  6. Kontrolle
  7. KDE: Kisdnwatch installieren

Dieser Artikel beschreibt die Installation einer TK-Anlage Eumex 2220PC für die Verwendung als Faxgerät und Anrufbeantworter.

Die Anlage ist "intern" von AVM und weitgehend baugleich mit der AVM FritzCard USB. Jedoch ist die USB Device-ID leicht geändert, so dass die in den Ubuntu-Quellen vorhandenen Treiber für die AVM FritzCard nicht funktionieren. Es existiert ein RPM-Paket e2220pc für SuSE Linux, mit dem man die Anlage dort in Betrieb nehmen kann. Im Folgenden wird beschrieben wie man diese Treiber auch unter Ubuntu nutzen kann.

Installation

Folgende Pakete müssen installiert [1] werden:

Treiber herunterladen

Der Quellcode des Treibers befindet sich im Paket e2220pc-0.1-0.src.rpm, das man von hier herunterladen kann.

Edgy 6.10

Anpassen der Treiber

Das RPM Paket kann man natürlich in dieser Form unter Ubuntu nicht verwenden. Es muss zunächst mit Alien in ein .deb Paket umgewandelt werden.

Es wird dadurch ein Paket e2220pc_0.1-1_i386.deb im gleichen Verzeichnis erstellt. Dieses Paket darf man nicht installieren. Stattdessen muss man das Paket auspacken und alle enthaltenen Dateien extrahieren [5].

Man erhält dabei wiederum zwei Archive: control.tar.gz und data.tar.gz.

Die Datei data.tar.gz muss man wiederum extrahieren und erhält dann die Datei eumex2220-suse92.tar.bz2.

Diese extrahiert man ebenfalls und kommt so an die Quellen des Treibers. Der Treiber lässt sich in der vorliegenden Form jedoch nicht übersetzen. Der Compiler bricht mit einer Fehlermeldung ab. Zunächst müssen noch zwei Dateien angepasst werden:

Dazu wechselt man in das eben ausgepackte Verzeichnis und dann in das Verzeichnis src. Hier öffnet man die Datei tools.h mit einem Editor [4] und entfernt die Zeilen 72 - 80:

/*---------------------------------------------------------------------------*\
\*---------------------------------------------------------------------------*/
static inline unsigned long atomic_xchg (
        volatile atomic_t *     v,
        unsigned                value
) {
        return __xchg (value, &v->counter, sizeof (unsigned));
} /* atomic_xchg */

Dann öffnet man die Datei main.c und kommentiert die Zeilen 85 und 86 aus:

.owner =        THIS_MODULE,
.name =         TARGET,

Hinweis:

Das Auskommentieren (sprich deaktivieren) der entsprechenden Anweisungen geschieht in diesem Fall durch Einschließen der entsprechenden Zeilen in /* und */.

Treiber kompilieren

Man startet eine Konsole [3] und wechselt ins Quellverzeichnis des Treibers. Dann gibt man folgendes ein:

sudo ./install 

Der Treiber sollte jetzt fehlerfrei übersetzt werden.

Feisty 7.04 & Gutsy 7.10

Anpassen der Treiber

Da sich das Kernelmodul aus o.g. Quelle unter Feisty nicht übersetzen lässt, ist ein alternatives Vorgehen notwendig. Ausgangspunkt ist hier wiederum das Archiv eumex2220-suse92.tar.bz2 (siehe oben). Dieses muss zunächst entpackt werden. Allerdings müssen keine Änderungen an den Quellen durchgeführt werden. Stattdessen installiert man zusätzlich das Paket

Nach der Installation von avm-kernel-source befindet sich in /usr/src das Archiv avm-fritz.tgz Dieses muss entpackt werden. Im Archiv enthalten ist ein Ordner fritz und diverse Unterordner, unter Anderem einer namens fcusb. Dieser wird im Weiteren benötigt, alle anderen können wieder gelöscht werden.

Hinweis:

Im Folgenden wird davon ausgegangen, dass das Archiv eumex2220-suse92.tar.bz2 nach ~/e2220pc entpackt wird und dass sich die Treiber aus fcusb in ~/fcusb befinden. Natürlich kann man auch andere Pfade verwenden, die Angaben sind dann entsprechend anzupassen.

Aus den Treibern für die e2220pc müssen einige Dateien nach fcusb kopiert werden, wobei dort evtl. vorhandene Dateien ersetzt werden. Das erledigt man am besten in einer Konsole mit:

cp ~/e2220pc/ID ~/fcusb/ID
cp ~/e2220pc/src/Makefile ~/fcusb/src/Makefile
cp ~/e2220pc/lib/driver-lib.o ~/fcusb/lib/driver-lib.o 

Hintergrund: Im Wesentlichen sind die Treiber für die Eumex schon in den AVM Treibern von Ubuntu enthalten. Lediglich das Makefile entscheidet, ob nachher das Modul fcusb.ko (Für eine FritzCard USB) oder das Modul e2220pc.ko für die Eumex erstellt wird.

Treiber kompilieren

Danach gibt man in der Konsole nacheinander folgendes ein:

cd fcusb
sudo make
sudo make install
sudo depmod -a 

Wichtig ist, dass der Make-Vorgang wie dargestellt in fcusb gestartet wird und nicht etwa in fcusb/src Nach den entsprechenden Änderungen in /etc/modules (siehe unten) und einem Neustart sollte die Anlage korrekt erkannt werden, eine Kontrolle ist über dmesg | grep e2220pc möglich.

Treiber beim Systemstart laden

In /etc/modules muss man folgendes eintragen, damit das neu erstellte Kernelmodul und die Capi-Treiber beim Systemstart geladen werden:

e2220pc
capi
capidrv
capifs

Kontrolle

Nach einem Neustart sollte die Eingabe von

sudo capiinfo 

in etwa folgendes ausgeben:

Number of Controllers : 1
Controller 1:
Manufacturer: AVM GmbH
CAPI Version: 2.0
Manufacturer Version: 3.11-04  (49.20)
Serial Number: 0000000
BChannels: 2
Global Options: 0x00000039
   internal controller supported
   DTMF supported
   Supplementary Services supported
   channel allocation supported (leased lines)
B1 protocols support: 0x4000011f
   64 kbit/s with HDLC framing
   64 kbit/s bit-transparent operation
   V.110 asynconous operation with start/stop byte framing
   V.110 synconous operation with HDLC framing
   T.30 modem for fax group 3
   Modem asyncronous operation with start/stop byte framing
B2 protocols support: 0x00000b1b
   ISO 7776 (X.75 SLP)
   Transparent
   LAPD with Q.921 for D channel X.25 (SAPI 16)
   T.30 for fax group 3
   ISO 7776 (X.75 SLP) with V.42bis compression
   V.120 asyncronous mode
   V.120 bit-transparent mode
B3 protocols support: 0x800000bf
   Transparent
   T.90NL, T.70NL, T.90
   ISO 8208 (X.25 DTE-DTE)
   X.25 DCE
   T.30 for fax group 3
   T.30 for fax group 3 with extensions
   Modem

Die Anlage wurde also erkannt und der Capi-Treiber korrekt geladen. Nun kann man CapiSuite entsprechend des Artikels CapiSuite konfigurieren und die TK-Anlage als Faxgerät und / oder Anrufbeantworter verwenden.

KDE: Kisdnwatch installieren

Bislang einziger Schönheitsfehler: Man sieht nur an der Anlage selbst, ob eine Verbindung aufgebaut wurde oder nicht. Also möchte man vielleicht noch einen Monitor haben, der einem darüber Auskunft gibt.

Von AVM gibt es dafür für KDE-User kisdnwatch. Leider steht das nur als RPM Paket oder im Quelltext zur Verfügung. Der Quelltext lässt sich unter KDE 3.5.6 + (K)ubuntu nicht übersetzen. Der Vorgang bricht mit einer Fehlermeldung aufgrund angeblich fehlender Qt-Header ab (auch wenn die entsprechenden Pakete installiert sind).

Lösung: Man lädt das Paket kisdnwatch-01.00.10-15.i586.rpm von hier herunter

Hinweis:

Achtung: ältere Versionen funktionieren offenbar nicht. Diese arbeiten nicht mit der libcapi von Ubuntu zusammen.

Anschließend wandelt man kisdnwatch-01.00.10-15.i586.rpm mit Alien in ein .deb-Paket um und installiert dieses Paket [7].

Leider landet dabei das Programm in /opt/kde3/bin/. Damit man es bequem starten kann [6] ist noch folgender Befehl in der Konsole nötig:

sudo ln -s /opt/kde3/bin/kisdnwatch /usr/bin/kisdnwatch 

Es wird zwar kein Eintrag im Startmenü erzeugt aber man kann kisdnwatch manuell starten [6] oder man erstellt einen entsprechenden Eintrag im Startmenü [8].

Alle Abschnitte dieser Anleitung, welche nicht ausdrücklich mit Feisty 7.04 oder Edgy 6.10 überschrieben sind, gelten analog für beide Ubuntu-Versionen.