mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Eumex 401 rooten


Autor: Moritz M. (thinksilicon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Forum,
mir ist kürzlich eine Eumex 401 Telefonanlage von funkwerk in die Finger 
gekommen. Und natürlich konnte ich es nicht lassen und hab mir das Ding 
mal genauer angesehen.
Zunächst ganz ohne es zu zerlegen: Schließt man das USB-Kabel an, wird 
eine Netzwerkkarte erkannt. Der Anleitung ist zu entnehmen, dass die 
Anlage dann auf der 192.168.1.250 lauscht - also dem Rechner die 
192.168.1.50 gegeben und mal ein nmap drüber laufen lassen.
Auf der TK-Anlage sind die Ports 5000 bis 5004 offen. Wobei man auf Port 
5004 die dmesg zu gesicht bekommt.
Jan  1 00:00:03 k400 syslogd[24]: [MSG] version 1.4.1 (re)started
Jan  1 00:00:03 k400 vmlinux: memory available is 15421KB
Jan  1 00:00:03 k400 vmlinux: start_mem is 0x400e0ba8
Jan  1 00:00:03 k400 vmlinux: virtual_end is 0x40ff0000
Jan  1 00:00:03 k400 vmlinux: before free_area_init
Jan  1 00:00:03 k400 vmlinux: free_area_init -> start_mem is 0x400e2ba8
Jan  1 00:00:03 k400 vmlinux: virtual_end is 0x40ff0000
Jan  1 00:00:03 k400 vmlinux: Calibrating delay loop.. ok - 56.72 BogoMIPS
Jan  1 00:00:03 k400 vmlinux: Memory: 14052k/15M available (712k kernel code, 32k reserved, 1524k data)
Jan  1 00:00:03 k400 vmlinux: Swansea University Computer Society NET3.035 for Linux 2.0
Jan  1 00:00:03 k400 vmlinux: NET3: Unix domain sockets 0.13 for Linux NET3.035.
Jan  1 00:00:03 k400 vmlinux: Swansea University Computer Society TCP/IP for NET3.034
Jan  1 00:00:03 k400 vmlinux: IP Protocols: ICMP, UDP, TCP
Jan  1 00:00:03 k400 vmlinux: Linux version 2.0.38.0 (lueck@TEVlnx-1) (gcc version 2.95.4 20010319 (prerelease)) #1 Di Nov 4 09:48:31 CET 2008
Jan  1 00:00:03 k400 vmlinux: am29: [INF] flashmem_init (simulation=off)
Jan  1 00:00:03 k400 vmlinux: am29: [INF] flashid: 0x1, 0x49
Jan  1 00:00:03 k400 vmlinux: am29: [INF] toggling_bits=0x44
Jan  1 00:00:03 k400 vmlinux: am29: [INF] special_base=0x2000000 special_base2=0x2000000
Jan  1 00:00:03 k400 vmlinux: am29: [INF] special sectors map:
Jan  1 00:00:03 k400 vmlinux: am29: [INF] start=0x0 size=0x4000
Jan  1 00:00:03 k400 vmlinux: am29: [INF] start=0x4000 size=0x2000
Jan  1 00:00:03 k400 vmlinux: am29: [INF] start=0x6000 size=0x2000
Jan  1 00:00:03 k400 vmlinux: am29: [INF] start=0x8000 size=0x8000
Jan  1 00:00:03 k400 vmlinux: am29: [INF] total=4 sectors in 1 region(s)
Jan  1 00:00:03 k400 vmlinux: am29: [INF] org='BOTTOM' start_index=3 step=-1
Jan  1 00:00:03 k400 vmlinux: mtd: Giving out device 0 to AMD29LV160Bottom
Jan  1 00:00:03 k400 vmlinux: am29: [INF] flashmem_init (simulation=off)
Jan  1 00:00:03 k400 vmlinux: am29: [INF] flashid: 0x50b0, 0xe4
Jan  1 00:00:03 k400 vmlinux: am29: [INF] toggling_bits=0x44
Jan  1 00:00:03 k400 vmlinux: am29: [ERR] unknown flash
Jan  1 00:00:03 k400 vmlinux: am29: [ERR] unable to get flash info
Jan  1 00:00:03 k400 vmlinux: Ramdisk driver initialized : 4 ramdisks of 1024K size
Jan  1 00:00:03 k400 vmlinux: bmtd: [INF] registered device at major 42
Jan  1 00:00:03 k400 vmlinux: PPP: version 2.3.11 (demand dialling)
Jan  1 00:00:03 k400 vmlinux: TCP compression code copyright 1989 Regents of the University of California
Jan  1 00:00:03 k400 vmlinux: PPP line discipline registered.
Jan  1 00:00:03 k400 vmlinux: ISDN subsystem Rev: 1.6/none/1.21/1.26/none
Jan  1 00:00:03 k400 vmlinux: P2001 FIQ & Timer1 Handler Module - $Revision: 1.19 $, (Nov  4 2008, 09:49:38)
Jan  1 00:00:03 k400 vmlinux: P2001 USB Remote NDIS Driver Module - $Revision: 1.33 $, (Nov  4 2008, 09:49:43)
Jan  1 00:00:03 k400 vmlinux: P2001 HDLC Driver Module 
Jan  1 00:00:03 k400 vmlinux: P2001 L1 driver module 
Jan  1 00:00:03 k400 vmlinux: BHDLC driver module installed 
Jan  1 00:00:03 k400 vmlinux: VFS: Mounted root (romfs filesystem) readonly.
Jan  1 00:00:03 k400 vmlinux: LED Driver Module - Version 2.0 (Nov  4 2008, 09:52:21)
Jan  1 00:00:03 k400 vmlinux: 802.1D Ethernet SoftSwitch Module - Version 1.0 (Nov  4 2008, 09:52:26)
Jan  1 00:00:03 k400 vmlinux: P2001 MFV Driver Module - $Revision: 1.21 $, (Nov  4 2008, 09:52:09)
Jan  1 00:00:03 k400 vmlinux: P2001 CLIP Driver Module - $Revision: 1.10 $, (Nov  4 2008, 09:52:07)
Jan  1 00:00:03 k400 vmlinux: P2001 codec Driver Module - $Revision: 1.18 $, (Nov  4 2008, 09:52:05)
Jan  1 00:00:03 k400 vmlinux: P2001 analog scannner Driver Module - $Revision: 1.9 $, (Nov  4 2008, 09:52:12)
Jan  1 00:00:03 k400 vmlinux: ISDN hardware layer initialized
Jan  1 00:00:03 k400 vmlinux: UDP Switch Module - Version 1.0 (Nov  4 2008, 09:52:35)
Jan  1 00:00:03 k400 sh[25]: [MSG] starting mpsv6xx
Jan  1 00:00:05 k400 mpsv6xx[27]: [WRN] FLASH 2 perhabs no present: /dev/mtd1 open failed with -1 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ***** Flash 1 phys. paramter: ***** 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Base.   : 0x02000000 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Size    : 0x00200000 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Segments:         35  
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ***** Flash 2 phys. paramter: ***** 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Base.   : 0x00000000 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Size    : 0x00000000 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Segments:         0  
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ***** MPS Flash configuration ***** 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### GEB_START_SEGMENT   at 0x021F0000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### BUCH_START_SEGMENT  at 0x021E0000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### LCR_START_SEGMENT   at 0x021E0000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### M_HW_BACKUP_KFG_ADR at 0x021D0000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### GEB_SUM_ZAEHLER_SEG at 0x021C0000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### TEL_BOOK_INTER      at 0x02006000 ### 
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] ### M_HW_FLASH_KFG_ADR  at 0x02008000 ### 
Jan  1 00:00:05 k400 vmlinux: Got country code NO_COUNTRY
Jan  1 00:00:05 k400 mpsv6xx[27]: [MSG] Starting HAL_main! 
Jan  1 00:00:06 k400 sh[28]: [MSG] configuring system
Jan  1 00:00:07 k400 cnfd[29]: [MSG] version 2.1 (Nov  4 2008, 09:55:13) started 
Jan  1 00:00:07 k400 vmlinux: Got country code GERMANY
Jan  1 00:00:07 k400 mpsv6xx[27]: [MSG] init mempool 
Jan  1 00:00:07 k400 mpsv6xx[27]: [MSG] Setting PORT infos... 
Jan  1 00:00:08 k400 cnfd[29]: [MSG] writing config files ... 
Jan  1 00:00:08 k400 cnfd[29]: [MSG] terminating with status=Success 
Jan  1 00:00:08 k400 init[1]: [MSG] entering runlevel '2' 
Jan  1 00:00:08 k400 init[1]: [MSG] Sending SIGTERM to runlevel '1' processes 
Jan  1 00:00:08 k400 init[1]: [MSG] Sending SIGKILL to runlevel '1' processes 
Jan  1 00:00:08 k400 sh[31]: [MSG] killing wan service
Jan  1 00:00:09 k400 sh[35]: [MSG] starting cnfd
Jan  1 00:00:10 k400 cnfd[37]: [MSG] version 2.1 (Nov  4 2008, 09:55:13) started 
Jan  1 00:00:10 k400 sh[38]: [MSG] configuring network devices
Jan  1 00:00:12 k400 sh[54]: [MSG] configuring network
Jan  1 00:00:14 k400 sh[66]: [MSG] configuring routing table
Jan  1 00:00:15 k400 syslogd[24]: [MSG] version 1.4.1 (re)started
Jan  1 00:00:15 k400 sh[70]: [MSG] starting dhcpd
Jan  1 00:00:15 k400 dhcpd[72]: [MSG] version 0.9.7 (Nov  4 2008, 09:54:34) started 
Jan  1 00:00:16 k400 sh[73]: [MSG] starting dnsd
Jan  1 00:00:16 k400 dnsd[75]: [MSG] version 1.1 (Nov  4 2008, 09:54:39) started 
Jan  1 00:00:16 k400 sh[76]: [MSG] starting bccd
Jan  1 00:00:17 k400 bccd[78]: [MSG] version 1.0 (Nov  4 2008, 09:55:07) started 
Jan  1 00:00:17 k400 bccd[78]: [MSG] connecting to mps 
Jan  1 00:00:17 k400 sh[79]: [MSG] starting capid
Jan  1 00:00:17 k400 bccd[78]: [MSG] connect with mps 
Jan  1 00:00:18 k400 sh[82]: [MSG] starting tapid
Jan  1 00:00:19 k400 capid[81]: [MSG] ACTIVATE_IND To mps  
Jan  1 00:00:19 k400 capid[81]: [MSG] M_IT_DAE_ACTIVE_CONF from mps CAUSE = 0.  
Jan  1 00:00:19 k400 tapid[84]: [MSG] ACTIVATE_IND To mps  
Jan  1 00:00:19 k400 sh[85]: [MSG] starting statd
Jan  1 00:00:20 k400 tapid[84]: [MSG] M_IT_DAE_ACTIVE_CONF from mps.  
Jan  1 00:00:20 k400 statd[87]: [MSG] version 1.9 (Nov  4 2008, 09:56:04) started 
Jan  1 00:00:20 k400 statd[87]: [MSG] current provider '---' 
Jan  1 00:00:21 k400 statd[87]: [MSG] connect from mps client 0x3e7 (1/10) 
Jan  1 00:00:23 k400 statd[87]: [MSG] SIGHUP received 
Jan  1 00:00:23 k400 statd[87]: [MSG] current provider '---'
Über Port 5003 Befehle wie Statusanfragen oder die Einwahl zu einem 
Internetprovider (ISDN) abschicken kann (welche Befehle siehe weiter 
unten).
Der dmesg ist zu entnehmen, dass auf dem Gerät ein
Linux version 2.0.38.0 (lueck@TEVlnx-1) (gcc version 2.95.4 20010319 (prerelease)) #1 Di Nov 4 09:48:31 CET 2008
läuft.
Daraufhin habe ich mir die Hardware etwas genauer vorgeknüpft - es ist 
ein ARM9-Prozessor verbaut. Allerdings eine "Eigenkonstruktion" von 
Elmeg-Funkwerk, weshalb man zu dem Prozessor so gut wie nichts findet. 
Auf dem Teil steht nur
elmeg
P_2001 Kolibri
840
K145RUP
 - vielleicht findet ihr ja noch mehr dazu als ich.
Dann ist das Teil noch mit 8 MB-Ram und 16 MB-Flash bestückt. Ein 
zweiter Platz für einen Flash-Baustein ist vorgesehen und wird auch von 
der Firmware versucht anzusprechen:
mpsv6xx[27]: [WRN] FLASH 2 perhabs no present: /dev/mtd1 open failed with -1
Ansonsten ist nichts großartig spannendes mehr drauf: 2 AD-DA-Wandler 
mit jeweils 2 Wandlern (OKI M7704-01)für die insgesamt 4 
Analoganschlüsse der Anlage und weitere 2 Verstärkerchips (TL064C) um 
das Signal für die Telefon aufzubereiten.

Interessanter war da schon der Anschluss auf der Platine mit der 
Beschriftung JTAG und daneben V24 (direkt beim Prozessor). Leider habe 
ich bisher kein JTAG-Programmer - aber zumindest einen 
RS232-Pegelwandler für 3.3V-Pegel, sodass ich die V24-Schnittstelle 
angeschlossen habe.
Dabei ist der Pin direkt neben der V24-Aufschrift TX und ich vermute 
zumindest der Richtung Kondensatoren RX - direkt bei den Kondensatoren 
ist GND. Startet man das Gerät erhält man bei 57100 8n1 einige wenige 
Ausgaben der seriellen Konsole:
Jan  1 00:00:00 init[1]: [MSG] version 1.1 (Nov  4 2008, 09:54:07) started

Jan  1 00:00:00 init[1]: [MSG] set hostname 'k400'

Jan  1 00:00:00 init[1]: [MSG] mounting procfs on /proc

Jan  1 00:00:00 init[1]: [MSG] expanding ramdisk image into /dev/ram0

Jan  1 00:00:00 init[1]: [MSG] mounting /dev/ram0 on /var

Jan  1 00:00:00 init[1]: [MSG] entering runlevel '1'

Jan  1 00:00:01 sh[10]: [MSG] installing modules
Jan  1 00:00:02 sh[19]: [MSG] killing wan service
Jan  1 00:00:02 sh[22]: [MSG] starting syslog services
Leider kein Login-Prompt und nix - auch meine Eingaben wurden bisher 
ignoriert - es könnte also sein dass mein RX-Anschluss auf der Platine 
der falsche ist.
Ansonsten wäre meine Frage, ob es irgendeine Tastenkombination gibt, die 
üblicherweise den Bootvorgang unterbricht und mir entweder zugriff auf 
den Bootloader gibt oder besser auf das Linuxsystem.

Jetzt noch kurz zu den Befehlen, die man über Port 5003 absetzen kann:
STAT_REQ
(zweimal enter drücken gibt)
STAT_RESP=CON
STATE=DISCONNECTED
PROVIDER=---
DIALMODE=MANUAL
WANLINK=UP
CAPI_STATE=DISCONNECTED
CAPI_BCH_COUNT=0
CAPI_MAX_BCH_COUNT=2
CAPI_EXT_BCH_COUNT=0
CAPI_EXT_MAX_BCH_COUNT=2
TAPI_STATE=DISCONNECTED
CAPI_LIZENZ=10
CAPI_MAX_LIZENZ=10
TAPI_LIZENZ=10
TAPI_MAX_LIZENZ=10
DIALER_INFO=NO
VERSION=1.9 (k400, Nov  4 2008, 09:56:04)
Außerdem noch die Befehle für Einwahl
WANLINK ACTION=DIAL
WANLINK ACTION=DOWN
KHMP=DIALER_INFO_ACK

Mit einem Hex-Editor hab ich mich auch noch ein bisschen in den Dateien 
des ControllCenters umgesehen und ein Paar weitere Befehle gefunden, die 
aber evtl. auch keine sind oder die anders verwendet werden müssen
WANLINK ACTION=BCH_SUB BCH_ADD BCHANNEL NEXT PROVIDER?

STAT_RESP=CON
STAT_RESP=PROVIDER
STAT_RESP=IPTEL
STAT_RESP=VPN

CAPI_MANUFACTURER
CAPI_SET_SIGNAL
CAPI_GET_PROFILE
CAPI_GET_SERIAL_NUMBER
CAPI_GET_VERSION
CAPI_GET_MANUFACTURER
CAPI_WAIT_FOR_SIGNAL
CAPI_GET_MESSAGE
CAPI_PUT_MESSAGE
CAPI_RELEASE
CAPI_REGISTER
CAPI_INSTALLED

Autor: Moritz M. (thinksilicon)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier nochmal ein Bild vom Inneren, dann kann man sich da etwas mehr 
drunter vorstellen. Unter dem Strichcode ist der Platz für den 2. Flash.

Autor: Jörg H. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hmm, das selbe Prob. hab ich auch.

Mein Prob. ist, ich suche die Firmware von der Eumex 401, bzw. möchte 
nen Dump erstellen.
Da ich gerne die Original-Soft von Freiwerk nutzen möchte.

Komm irgendwie nicht weiter??

Hast Du vielleich nen Dump???

Gruss
Jörg

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hm, wenn da Linux verwendet wird, müsste denn nicht der Quellcode
offen gelegt werden?

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider kann ich über die Anlage selbst nichts sagen. Über den 
geheimnisvollen P2001 Prozessor habe ich - mit geringem Erfolg - schon 
mal recherchiert.
Meine Erkenntnisse lassen sich eigentlich kurz zusammenfassen: Der 
Prozessor ist eine Entwicklung von MAZ Brandenburg 
(http://www.mazbr.de/), es gab mal ein ziemlich kompliziertes Demoboard 
(LPEC-P2001), von dem man leider keine Doku mehr findet, und es hat mal 
jemand eine Diplomarbeit (bei der TU Berlin) darüber geschrieben. Leider 
ist das, was man im Netz davon lesen kann, ohne die entscheidenden 
technischen Details.

Interessant ist dieses Dokument: http://gdb-jtag-arm.sourceforge.net/
(siehe "History"). Der Name Tobias Lorenz taucht auch hier drin auf: 
http://opensrc.sec.samsung.com/

Autor: Peter So (peterso)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer sich die Eumex 401 anschaut, sollte sich auch die Eumex 800 
anschauen.

Dort gibts den Quellcode der Firmware.

http://hilfe.telekom.de/hsp/cms/content/HSP/de/338...

Die Eumex 800 hat auch den P_2001 eingebaut.

Autor: Peter So (peterso)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier mal Bilder der Platine.

Autor: Nordlicht (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Moritz M. schrieb:
> Ansonsten wäre meine Frage, ob es irgendeine Tastenkombination gibt, die
> üblicherweise den Bootvorgang unterbricht und mir entweder zugriff auf
> den Bootloader gibt oder besser auf das Linuxsystem.

Man kann sich auch ein Loch in die Kniescheibe bohren und warten
das da Erdöl rauskommt..............

Autor: Google (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim Openwrt-Wiki gibt es eine Analyse der Eumex 800
Link: http://wiki.openwrt.org/toh/t-com/eumex800

Autor: Tim S. (freak_ts) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Eumex 401 schaud am analogen a/b Teil hardwaremäßig ziemlich genau 
so aus wie die T444. Insgesammt sogar ziemlich gleich, bis auf das 
anscheinend der interne S0 und die Ethernetports fehlen. Vielleicht 
hilft das was, wegen alternativer Firmware von Funkwerk.. [Jetzt Teldat 
;-( ]

Ich spiel seit einigen Jahren mit dem LAN-Tapi / Capi rum, (T484) Das 
ist aber totale Bit-Fummelei (ist ne art CTI von nem Server über PHP und 
sonnst was für Sachen über Sockets). Lohnt sich bestimmt nicht das 
irgendwo reinzustellen.

Paar Tipps, schaud euch das Config-File an, was ihr für eure Anlage 
speichern könnt. Außerdem Wireshark verwenden währed des Auslesens / 
Schreibens über den "Configurator"

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.