Alice IAD 5130 zur FBF 5140 machen

Moin,

das ist immer /dev/mtdblock(n+1) also beim Bootlader mtd2 wäre das /dev/mtdblock3.
Sehr detailliert ist das z.B. im Wiki und den dortigen Verweisen nachzulesen...


Jörg

EDIT: Falls möglich versuche doch mal, per ftp ein komplettes Image zu erzeugen, wie das von Alice_AVM hier gemacht wurde
 
.
@MaxMuster

Danke, Jörg. Genau so eine Anleitung suchte ich.

Edit: Auch Dein Edit (komplettes image) scheint mir wertvoll. Ich werde es mal versuchen ...
.
 
Eigentlich war bislang meine Meinung, dass der Bootlader nichts daran ändern sollte, wie das Image ausgeführt wird, sondern mittels seinem eingebauten "Entpacker" das Kernelimage starten, was dann alles andere macht. Aber das scheint ja nicht komplett so zu sein...
Hätte ich eigentlich auch gedacht, aber seltsamer Weise produziert dass vorher laufende 5140 Image mit dem Bootloader der 7170V2 die Kernel Panic und mit dem Bootloader des IAD 5130 nicht. Ich hab die Kombinationen jetzt aber schon mehrmals ausprobiert und konnte ds Verhalten reproduzieren.

2. versuchen, die mtd-Werte zu ändern, so dass ein größerer Flash-Bereich für das mtd1 Image da ist (meine Hoffnung: die Werte aus dem Lader haben da mehr "Überredungskraft" als die per setenv geänderten)
3. ein größeres Image bauen, was dann eben auf der 5140 basiert, die ja mal lief und dabei die Default-Ordner an die Werte anpassen.
Die Werte aus dem Bootloader haben Wirkung, flashen und starten konnte ich das deutlich größere Image der 7170 ja mit dm Bootloader der 7170V2.

Ich persönlich würde mit einem Bootloader der 8MB normal unterstützt direkt auf das Image der 7170 gehen. Wird halt besser geflegt und bietet mehr Funktionen. Man muss ja nicht bei dem mickrigen RAM alle davon gleichzeitig nutzen.

Das Image er 5140 würde ich nur nutzen, wenn sich der Bootloader nicht zufrieden stellend ändern lässt. Und dann halt mdt5 extra mounten.


Der nächste Schritt ist für mich die Anleitung aus deiner ersten PM um basierend auf dem Bootloader des IADs einen mit mit den relevanten Werten der 7170 zu erstellen. Allerdings habe ich immer noch das Problem, dass sich mit einem Image der 5140 urlader.setconfig26 immer noch nicht ausgeführt bekomme. Die selbe Vorgehensweise auf meiner 7170 geht aber seltsamerweise.

Das Image einer 7170 bekomme ich aber nicht soweit abgepeckt, damit es mit dem Bootloader des IADs 5130 läuft. Ich sollte wohl per push_firmware einfach mal Images für andere Boxen drauf schmeissen und mit denen testen, ob ich urlader.setconfig26 ausführen kann. Das Image einer 3170 könnte brauchbar sein oder die 3170 als Alien der 7170 und dann noch Wlan raus gepatcht sollte dafür brauchbar sein.
 
Ist natürlich auch eine Idee, ein anderes Image zu Testen. Laufen sollte das Programm auf jeden Fall auf einem "alten" FON-Image 06.04.33, denn aus dem kommt es ja ;-).
Da es dort kein UBIK und co. gibt, sollte die Grundfunktionalität wohl laufen, wobei ich nicht weiß, ob damit das LAN-Interface läuft.
Wenn das so wäre gäbe es nur die "Risiko-Variante" per seriellem Kabel und, wenn der Lauf geklappt hat, den so gebauten Lader gleich drauf zu kopieren...


Jörg
 
Hallo Jörg,

mit dem FON-Image 06.04.33 meldet EVA auf der seriellen Konsole noch decompress kernel und dann nur noch wirre Zeichen und kurz danach rebootet die Box.

Das Fremdimage sollte also zumindest für das Kernel Layout "ohio" sein und nicht für "ar7" wie die ganz alte Fritzbox FON.

Aus der Config.in:
Code:
config FREETZ_KERNEL_LAYOUT
	string "Kernel ref"		if FREETZ_TYPE_CUSTOM
	default "ohio"			if \
		FREETZ_TYPE_2170 || \
		FREETZ_TYPE_FON_5140 || \
		FREETZ_TYPE_FON_WLAN_7113 || \
		FREETZ_TYPE_FON_WLAN_7140 || \
		FREETZ_TYPE_FON_WLAN_7141 || \
		FREETZ_TYPE_FON_7150 || \
		FREETZ_TYPE_FON_WLAN_7170 || \
		FREETZ_TYPE_WLAN_3130 || \
		FREETZ_TYPE_WLAN_3131 || \
		FREETZ_TYPE_WLAN_3170 || \
		FREETZ_TYPE_SPEEDPORT_W501V || \
		FREETZ_TYPE_SPEEDPORT_W701V || \
		FREETZ_TYPE_SPEEDPORT_W900V
Welche der Boxen hatte zuerst den Kernel 2.4 mit adam2 und ist somit ein Update inkl. urlader.setconfig26 verfügbar?


Edit:
7170 und 5140 haben eine andere uClibc-Version. Kann es damit zusammenhängen, dass auf der einen urlader.setconfig26 ausführbar ist und auf der anderen nicht?

Gruß Mario
 
Zuletzt bearbeitet:
Welche der Boxen hatte zuerst den Kernel 2.4 mit adam2 und ist somit ein Update inkl. urlader.setconfig26 verfügbar?
Keine, soweit ich das weiß, die haben das alle nur für den alten 2.4-er Kernel. Das liegt daran, dass an sich beim Übergang auf den neuen Kernel (also mit noch altem) der neue Bootlader geschrieben wurde.
Leider gab es da bei der FON-Box ein Problem: Die hatte dabei unter bestimmten Voraussetzungen den Annex "vergessen" und ihn dementsprechend nicht in den Bootlader geschrieben, worauf dann spätere Updates fehlschlugen. Deshalb musste man hier prüfen, ob Annex gesetzt war und wenn nicht, das ganze Prozedere mit neuem Bootlader wiederholen und dabei auch den Annex reinschreiben. Weil man da aber schon den 2.6-er Kernel haben konnte, musste jetzt das Programm für alten und neuen Kernel mit rein.

Es könnte übrigens durchaus an geänderter uClibc liegen, aber auch an unterschiedlicher Ansteuerung der seriellen Schnittstelle.

Du könntest zu Not noch versuchen, das alte (2.4-er) urlader.setconfig zu nehmen, und dazu die alten Libs mit in den library-Pfad nehmen.

Jörg
 
Hallo Jörg,

danke für die Erklärung, ich hatte mich schon gewundert, wieso da urlader.setconfig26 und urlader.setconfig24 in dem Image drin sind.

Ich werde erstmal ein Image für die 3070 als Alien der 7170 probieren. Dann habe ich die Basis auf der ich ja schon urlader.setconfig26 ausführen konnte.

OT: Allerdings kann ich seit gestern den freetz-trunk nicht mehr kompilieren:
Code:
touch -c root/lib/libc.so.0
cp -a /home/lxuser/freetz-trunk/toolchain/build/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/mipsel-linux-uclibc/lib/libgcc_s* root/lib/
cp: cannot stat `/home/lxuser/freetz-trunk/toolchain/build/gcc-4.2.1-uClibc-0.9.29/mipsel-linux-uclibc/usr/mipsel-linux-uclibc/lib/libgcc_s*': No such file or directory
make: [root/lib/libgcc_s.so.1] Error 1 (ignored)
/home/lxuser/freetz-trunk/toolchain/target/usr/bin/mipsel-linux-uclibc-strip --remove-section={.comment,.note,.pdr} root/lib/libgcc_s.so.1
/home/lxuser/freetz-trunk/toolchain/target/usr/bin/mipsel-linux-uclibc-strip: 'root/lib/libgcc_s.so.1': No such file
make: *** [root/lib/libgcc_s.so.1] Error 1
Sowohl auf meinem Laptop mit Xbuntu 8.10 auf dem es vorher ging als auch auf einem Ubuntu 9.04 Server. Trunk jeweils auch mal frisch ausgescheckt.

Viele Grüße
Mario
 
... gab es da nicht eine Änderung auf neuere gcc-Versionen in Revision 3283?
Da sollte 4.2.1 eigentlich nicht mehr auftauchen.

Jörg
 
Hm, eine gcc 4.3-Version habe ich offensichtlich auch.
Code:
lxuser@laptop-xubuntu:/media/truecrypt1/freetz-trunk$ sudo apt-get install gcc-4.3
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut       
Lese Status-Informationen ein... Fertig
gcc-4.3 ist schon die neueste Version.

Wie finde ich die genaue Version raus?

Was würdest du vorschlagen? Oder das OT hier raushalten und einen Thread unter freetz aufmachen?

Mario
 
Es geht dabei die GCC-Version, die für die Box gebaut wird ("mipsel-gcc").
Wenn das mit einem komplett neu ausgecheckten Trunk nicht geht, würd ich es im Freetz-Thread aufmachen, da findet sich wohl eher jemand.

Jörg
 
Mal ein kurzer Zwischenstand zum Briefbeschwerer :D

Nur mit dem originalen Bootloader scheint die Hardware richtig initialisiert zu werden.

Mit dem Bootloader der 7170 kommt es zu einer Kernel Panic wie schon vorher beschrieben und mit dem Bootloader der 7141 ist jetzt das Netzwerk tot. Und ohne Netzwerk bekomme ich da keinen anderen Bootloader mehr drauf. Mal sehen ob EJTAG funktioniert oder mir noch was anderes einfällt...

Und auch der modifizierte originale Bootloader war bisher keine brauchbare Lösung. Mit dem Original als Quelle und ein paar Anpassungen in Env. erstellt, hat er die wichtigsten davon nicht bei einem Coldboot behalten. Die dämliche Aufteilung der mtds war wieder da.

Also so wäre die Kiste bisher nur als ums Festnetz beraubte 5140 nutzbar, die auch noch Einschränkungen bei Werksreset und Recovery hat.
Und die richtige 5140 bekommt man bei ebay auch hinterher geworfen.
 
Mal ein kurzer Zwischenstand zum Briefbeschwerer :D
Danke für den Zwischenbericht. Ist ja nicht sehr ermutigend, bisher.

Auch ich komme nicht so recht weiter, auf viel tieferem Niveau:
Wollte den bootloader (mtd2) der 5140 auslesen, um ihn Dir zu schicken. Damit würde die IAD5130 ja vielleicht zu einer vollwertigen FB5140, einschliesslich Werksreset und Recovery.
Aber bei der FW 43.04.59 ist kein Telnet Daemon dabei und aus mir unverständlichen Gründen habe ich kein externes Telnet zum Laufen gebracht. Also konnte ich mtd2 (bisher) nicht auslesen.
Morgen sehe ich mal weiter.

Ein "fremder" bootloader ist offenbar immer ein Risiko. Hatte mal eine ganz ähnliche Situation mit einer 5050. Wollte die neuere FW einer 7050 darauf laden und hatte nicht bedacht, dass die 5050 nur 4 MB Flash hat, die 7050 aber 8 MB. Irgendwie lief die 5050 danach auch, aber leider nicht funktionell. Als ich dann wieder zurück zur 5050er FW wollte, gab die Box immer weniger Lebenszeichen von sich und irgendwann war sie dann ganz tot (Briefbeschwerer). Da hatte sich wohl der Speicherblock mtd2 selber überschrieben (sind ja nur 64 kB).
Allerdings habe ich auch nicht das Linux-Wissen wie Du und Jörg, da sind meine Möglichkeiten eingeschränkt.

Falls Du jetzt mittels EJTAG an die 5130 ran gehst, habe ich eine Bitte an Dich: Schau doch mal [post=1266582]hier[/post]. Würdest Du mir da eventuell helfen?
.
 
Also, mein Stand ist:
Im Emulator habe ich einen "Handgepatchten" 5130-Bootlader mit 5140-Image dran gestartet bekommen.
Änderungen:
mtd5 gelöscht und mtd1 auf maximale Größe (jeweils in Custom- und Default-Bereich des Laders)
HWRevision und ProductID auf 5140 (nur im Custom Bereich)

Dort waren im "printenv" dann auch die größeren Werte für mtd1 und die5140-Werte da

@lxuser: (siehe auch die Mail)
Wegen des Laders: Zur Not könntest du noch etwas mit uuencode / uudecode machen, um einen anderen Bootlader (oder Kernel-Modul für den Switch oder ...) über die Serielle auf die Box zu bekommen.
EDIT Setzt aber ein Freetz-Image voraus, was uudecode enthält.

Auf dem PC Datei "einpacken":
Code:
 uuencode <dein Bootlader> /tmp/bootlader > lader.uu

dann auf der Box die Eingabe der Seriellen in eine Datei:
Code:
cat << ENDBOOT > /tmp/lader.uu
# jetzt die uu-encodete Datei in die Console pasten 
# und zum Schluß genau einmal
ENDBOOT<Return>
# jetzt entpacken
uudecode /tmp/lader.uu


@el_valiente:
Du kommst auf jeden Fall mit einer seriellen Console drauf, um Befehle von dort abzusetzen und ein statisch gelinktes telnet sollte zur Not auch noch draufzubekommen sein.
Der "originale" Bootlader ist übrigens immer im Recover enthalten, da ist also dranzukommen ;-)
Das simpelste EJTAG sind ja eigentlich nur die Widerstände, die an die Box dran müssten. Da gab es hier mal eine nette Anleitung, wo jemand das mittels einer festen Pappe gans intelligent gelöst hatte...
Ah, hier ist es ja, da muss man wirklich nicht viel für machen, eigentlich kommt man, wenn man ein Druckerkabel (oder ein altes serielles Anschlussblech so aus den 486-er zeiten) "ausschlachten" kann oder die Drähte direkt in die Drucker-Schnittstelle reinsteckt, damit echt ziemlich leicht dran, sogar ohne zu löten...


Hoffentlich kommt meine Box bald ...

Jörg
 
Zuletzt bearbeitet:
Hallo Jörg,

super Idee mit uuencode und decode zu arbeiten. Ich habe aber noch so meine Problem damit.

Also das erstellen der uu-Datei war ok:
Code:
 uuencode <dein Bootlader> /tmp/bootlader > lader.uu
Dann habe ich lader.uu auf der Konsole des PCs mit
Code:
cat lader.uu
anzeigen lassen, markiert und kopiert.

Dann auf dem IAD über die Serielle folgendes aufgerufen:
Code:
cat << ENDBOOT > /tmp/lader.uu
Hier dann "lader.uu" gepastet ergibt folgende Meldungen:
Code:
> begin 644 /tmp/bootlader
> M`)"`0`"8@$``8!I`_O\;)"306P.__QL\__][-R306P,`8)I``&B`0`,`""0`
-/bin/sh: syntax error: "&" unexpected
> M@(A`8:@(/``6"#4(`!B-````K0"0`CP4`4(D_Q\!//__(30D$$$``*`!/"40
-/bin/sh: syntax error: word unexpected (expecting ")")
-/bin/sh: syntax error: word unexpected (expecting ")")
> M00`)^$````````"0"#R(``@E_Q\!//__(30D0`$!`(`!/"5``0$(```!````
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: word unexpected (expecting ")")
-/bin/sh: syntax error: end of file unexpected
-/bin/sh: syntax error: end of file unexpected
> M`"&`````D`(\3`)")`GX0```````!```%R$0``#C```,`````/__0!0`````
-/bin/sh: syntax error: end of file unexpected
> M`)`"/(0$0B0)^$```````&R4'3R4R[TG`$`()"'HJ`-AE!P\`':<)V&4"#P0
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M]@@E;)0)/)3+*24#``D1`0`()?W_`!#__P"A$``()"/HJ`-@E`(\_`I")`GX
-/bin/sh: M]@@E: not found
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M0````````$`$)!``!20`X(!``.B`0`"`!CPA.,0`(SCE````R+P``,F\_?_'
> M%"$PQ0`(`.`#`````&&H##P`&HPU``",C2``C#$O`(`5``````(``!8K``PD
-/bin/sh: syntax error: end of file unexpected
-/bin/sh: syntax error: "&" unexpected
-/bin/sh: syntax error: end of file unexpected
> M'0"-%2``##$"`(`10``((:``""$```"M$``$K0"`##04``RML`0,)/__@!7_
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M_XPA/``,C0$`C#']_X`5``````"`##08``RM`0`,)$``#*T!``PD.``,K3P`
> M#(T!`(PQ_?^`%0`````!``PD```,K0@`X`,``````",$`/X'A#0```"M!``,
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: end of file unexpected
-/bin/sh: PD: not found
M)!-/bin/sh: X: not found
``#*-/bin/sh: /XA#0: not found
-/bin/sh: ,K0@,,$M!,: not found
/var/mod/root # M)!``#*T0``R-`0",,?W_@!4`````$``$K1``#(T!`(PQ_?^`$0`````(`.`#
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M`````"'(X`-@!!`\`/`0-F&H"3P`&BDU(D@P`0``(HT``@$\)!!!`!!`0!`(
-/bin/sh: syntax error: EOF in backquote substitution
-/bin/sh: syntax error: "&" unexpected
> M``0D(<C@`V&H#3P`":TU%`"ME2L`#"01`(T5!0`$)&&H"3P`&BDU```BC6&H
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: redirection unexpected (expecting ")")
> M"3P`"BDU``(!/"0800``@$,P#0!@$`0`!"38```,9``$)(``0C`"`$`0!0`$
> M)`@`!"1AJ`D\``HI-2)(,`%2```,0``H(00`!"12```,(``H(0``(*UAJ`L\
-/bin/sh: syntax error: word unexpected (expecting ")")
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: word unexpected (expecting ")")
-/bin/sh: syntax error: end of file unexpected (expecting ")")
> M``AK-2)8<`'0```,"``$)`@`8JW0```,#``$)`P`8JW0```,$``$)"``8JW0
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M```,!``$)`0`8JW0```,%``$)!``8JW0```,&``$)!0`8JW0```,'``$)!@`
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M8JW0```,(``$)!P`8JT(`"`#(1````"0"#R`!0@E```%C0(`!B0#`,44($`$
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: word unexpected (expecting ")")
/var/mod/root # M`0@`X`,```*-8)0(/``'""5@E`D\``<I)2)`"0$`D`D\X`HI)2!`"0$@0`0!
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M"`#@`P```HTAR.`#\```#`"4!#P'`$`4``````<!``P$``4\`P!`%`````!@
-/bin/sh: syntax error: EOF in backquote substitution
> M`@`,!``%%`@`(`,`````_/\!)"0@@0`A0(``_Q\!//__(30D0`$!`*``/"5`
-/bin/sh: syntax error: end of file unexpected
-/bin/sh: syntax error: word unexpected (expecting ")")
/var/mod/root # M`0$`D`D\>`HI)0T`"R0A$``````LC?__:R$```RM!``+K0``"HTF4$P!)1!*
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M`/C_8!4$`"DA"`#@`P````#\_P$D)""!`/S_`20D**$`(4"``"%(A0#\_RDE
-/bin/sh: syntax error: ")" unexpected
/var/mod/root # M```(K?[_"14$``@E(4"``"$0``````J-)E!(`2402@#\_PD5!``()0@`X`,`
-/bin/sh: syntax error: end of file unexpected (expecting ")")
-/bin/sh: syntax error: word unexpected (expecting ")")
-/bin/sh: syntax error: Bad function name
/var/mod/root # M````(2"@`$0$&`D`````(2"@`"$HP`!$!!@)`````&"4"#P`!P@E`)`)/.`*
-/bin/sh: syntax error: end of file unexpected (expecting ")")
> M*24!``H\$.]*)2%020$``"*-```"K00`""'\_RH5!``I(0!`!"00``4D`(`&
> M/"$XQ``C..4```#!O/[_QQ0A,,4`"`#@`P`````!``````=@E.`*`)``!V"4
> M``````````````````````````````"0=`0`D````)````"0````D````)``
> M``"0````D.P,8)0```"0````D````)````"0:`0`D````)````"0````D```
> M`)````"0````D````)````"0````D````)````"0_____P``````````````
> M``````````````````(```"```!`(6```*L'```86"$"@06P``"'D!`T+:8%
-/bin/sh: !!@: not found
-BVF!-/bin/sh: !P@E: not found
-/bin/sh: K00: not found
...

Sind hier noch Steuerzeichen drin, die fälschlicher Weise ausgewertet werden? Oder wird jedes Zeilenende als Enter ausgewertet?


Sobald die Kiste wieder läuft, freue ich mich schon deinen Bootloader mit den Änderungen im Default-Bereich zu testen.

Gruß Mario
 
... Sorry, versuche mal '-Zeichen um das obere ENDBOOT, also
Code:
cat << 'ENDBOOT' > /tmp/lader.uu
 
Danke Jörg, so sieht dass schon viel besser aus :)

Ich hatte zwischenzeitlich auch mal probiert über vi zu gehen. Da kam aber immer "last_modifying_cmd_overrun" bei Baudraten von 300 bis 115200.


Jetzt sieht die Übertragung ok aus. Allerdings komme ich nicht mehr zum normalen Prompt zurück.
Code:
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> 0_____________________P``
> `
> endENDBOOT
> 
> 
> 
> 
>
Gruß Mario
 
und nochmal Sorry!
das letzte ENDBOOT muss ganz allein am Beginn einer Zeile stehen.
Also, wenn es mit "end" endet und nicht in einer neuen Zeile, dann musst du zuvor einmal <Return> drücken und dann ENDBOOT<Return>

Jörg
 
Hallo Jörg, diese Version hatte ich auch schon probiert und kam trotzdem nicht wieder zurück zum normalen Prompt.

EDIT:
Führe ich die Befehle testweise auf meinem PC aus, komme ich zum normalen Prompt zurück. Ich teste es ein weiteres Mal auf der Fritzbox.

Mario
 
Zuletzt bearbeitet:
Ich hatte es nur kurz in einem Terminal versucht, da ging es:
Code:
/var/mod/root # cat << 'ENDBOOT' > /tmp/lader.uu
>
> _=_
> _=_ Part 001 of 001 of file mtd2.bin
> _=_
>
> begin 666 mtd2.bin
> M`)"`0`"8@$``8!I`_O\;)"306P.__QL\__][-R306P,`8)I``&B`0`,`""0`

[...snipp...]

> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> M____________________________________________________________
> 0_____________________P``
> `
> end
> ENDBOOT
/var/mod/root #

Das sieht bei dir doch sehr ähnlich aus. Ich habe das .uu-File im Editor geöffnet und mit <STRG>A <STRG>C in den Buffer kopiert...

Du musst auf jeden Fall sicherstellen, dass weder oben noch unten was anderes als 'ENDBOOT' steht (keine Leerzeichen oder so) und das untere muss ganz allein da stehen.

Ich werde es bei Gelegenheit nochmal per Serieller versuchen.


Jörg
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.