USB - Seriell Treiber in DS-Mod

Hallo

Ich hab mir jetzt auch ein Display gekauft und das mit einem Controller und einem USB zu RS232 adapter an die FritzBox angeschlossen.

Code:
usb 1-1: new full speed USB device using ahci and address 5
pl2303 1-1:1.0: PL-2303 converter detected
usb 1-1: PL-2303 converter now attached to ttyUSB0

wenn ich jetzt aber z.B.
Code:
echo "#Hallo Welt" > /dev/ttyUSB0
sende, dann macht das Display nichts, obwohl es Hallo Welt anzeigen müsste.

Am PC mit dem selben USB RS232 Adapter funktioniert es ohne Probleme.
Die Baudrate ist auch richtig eingestellt (Wie kann ich das am besten nochmal überprüfen)

Wieso funktioniert das nicht, der Treiber müsste richtig sein, es ist ein PL-2303.

mfg
 
Was für Module sind denn geladen? (lsmod)

MfG Oliver
 
Code:
/var/mod/root $ lsmod
Module                  Size  Used by    Tainted: P
pl2303                 19152  1
usbserial              27136  3 pl2303
userman                32336  2
kdsldmod              587024  5 userman
usbahcicore            26064  0
usbcore               113232  4 pl2303,usbserial,usbahcicore
isdn_fbox_fon4        906816  0
ubik2                  76624  3 isdn_fbox_fon4
tiatm                 107904  1 ubik2
Piglet                 10560  0
 
Der AVM Treiber unterstützt kein isochronous Transfer. Ist das vieleicht das Problem? Sorry, ich kann nur raten...

MfG Oliver
 
Könnte sein, ich hab davon keine Ahnung.
Ich hab das Display jetzt erstmal an den PC angeschlossen, da ist es vielleicht auch nützlicher.

Es war nur mal ein Experiment, ich brauch es nicht unbedingt, aber wär schon schön wenn es funktioniert hätte, aber es ist nicht so wichtig.
 
Hallo,

läuft der PC mit Linux oder mit Windows?
Baudrate und andere serielle Info bekommst Du mit "stty -a -F /dev/ttyUSB0" raus und kannst auch alles einstellen. Wenn der PC, an dem es geht, ein Linux-PC ist, kannst Du die Daten ja mit diesem vergleichen. Ist es ein Windows-PC dann sieht man an dem stty-Output, dass man hier bei Linux - im Gegensatz zu Windows - eine Menge einstellen kann. Und manchmal auch muss. Z.B. ist bei der FB die Hardware-Flußkontrolle (RTS/CTS) meist ausgeschaltet (-crtscts), der USB-Adapter hat aber eine, dann ist die Frage, ob in Deinem Anschlusskabel RTS/CTS verdrahtet sind. Um aber da konkret weiterhelfen zu können, braucht man weitere Info (Belegung Anschlusskabel, welcher Controller u.ä.).

Gruss, Reiner
 
Ich habe mir diesen Controller bei ebay gekauft. an die RS232 Schnittstelle habe ich noch einen Pegelwandler gebaut. Vom Pegelwandler geht nur das Sendesignal und GND zum Controller. Und vom Pegelwandler zum RS232 geht GND, Sende- und Empfangssignal. Und Pin 1, 4 und 6 am RS232 sind noch miteinander verbunden.

Unter Windows habe ich mit Putty drauf zugegriffen, mit:

Speed: 9800 (ist an fritzbox auch so eingestellt)
Data Bits: 8
Stop Bits: 1
Parity: None
FlowControl: XON/XOFF
 
Interessantes Teil! Nur warum geht's nicht? Ich würde den USB-seriell Adapter an die FB anschliessen und per Nullmodem Kabel mit einer V24-Schnittstelle des PC's verbinden und dort ein Terminalprogramm starten. Bei mir sieht man dann den Output des echo-Befehles mit Standardeinstellungen der FB-ttyUSB0. Ich habe kein dsmod, sondern habe mir lediglich die beiden Module generiert und starte die per Hand. Mein Output (dmesg) ist etwas anders:
Code:
drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic
drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0
drivers/usb/serial/usb-serial.c: USB Serial support registered for PL-2303
pl2303 1-1.4:1.0: PL-2303 converter detected
usb 1-1.4: PL-2303 converter now attached to ttyUSB0
drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver v0.12
Und auch mein "lsmod" liefert was anderes:
Code:
Module                  Size  Used by    Tainted: P
pl2303                 19152  0
usbserial              27168  1 pl2303
Dein Used 1/3 deutet darauf hin, das ein weiterer process die Schnittstelle geöffnet hat, vielleicht sendet der ja was dazwischen oder hat eine andere Baudrate eingestellt? Und hoffentlich sieht man das dann am PC (evtl. am PC andere Baudraten, insbes. 38400, probieren).
Vielleicht kommt ja was raus!? Gruss, Reiner
 
Hallo,

ich habe mir nun auch den USB-serial-Adapter Digitus von Reichelt zugelegt ( siehe Beitrag #18 ). Die dafür benötigten Treiber usbserial.ko und ftdi_sio.ko konnte ich ohne Probleme kompilieren und sie lassen sich ohne Fehler laden. Ich versuche damit, auf meiner hinter der Fritz-Box liegende ISDN-Anlage (Conrad C easy classic) per Remote zuzugreifen, sie hat nur einen seriellen COM-Port. Die dafür nötige Konfigurationssoftware läuft unter Windows, dafür habe ich mir den Lantronics Com Port Redirector v3.1.0.1 http://ltxfaq.custhelp.com/cgi-bin/ltxfaq.cfg/php/enduser/std_adp.php?p_faqid=928 installiert und mir einen virtuellen COM-Port eingerichtet.
Auf der Fritz habe ich mir einen Serial-Server eingerichtet:
Code:
#!/bin/sh 

# Program serial-net.sh

TCP_PORT=15002
SERIAL_PORT=/dev/ttyUSB0
BAUDRATE=9600

test  ! -z $1  && test $1 != "&" BAUDRATE=$1

stty -F $SERIAL_PORT $BAUDRATE -echo clocal raw pass8
while (true) do
	netcat -l -p $TCP_PORT < $SERIAL_PORT > $SERIAL_PORT
done

Dieses Script starte ich mit ./serial-net.sh & und schicke es in den Hintergrund.

Starte ich nun den Download der Konfiguration aus der ISDN-Anlage schmiert die Fritz nach ca. 30-60% des Datenvolumens ab und macht einen Reboot. Die Konfigurationsdatei hat nur eine Größe von 13kb. Erwähnen muß ich noch, daß die Baudrate lediglich 9600 Baud beträgt.

Ich gehe davon aus, daß netcat zuviel CPU-Last in Anspruch nimmt, innerhalb von top ist netcat auch immer eines der oberen Kandidaten, wenn der Download läuft. Ich habe meine busybox auch schon um einen nice erweitert und das Script entsprechend geändert um die Priorität herabzusetzen: "nice -n 19 netcat -l -p $TCP_PORT ....", hat aber keine Besserung gebracht.

Erwähnen muß ich noch, daß im Standby (also Module geladen, Script gestartet, aber kein Download) die Fritzbox keinen Reboot macht.

Gibt es irgendwelche Möglichkeiten, um netcat dazu zu bewegen, weniger CPU-lastig zu sein? 9600 Baud ist ja nun nicht gerade High-Speed, das muß doch gemächlicher gehen.
Hat jemand sonst andere Ideen, wie man einen Serial-Server auf der Fritz realisieren kann?
Ich kenne da noch socat, bekomme den aber nicht kompiliert, weiß aber auch nicht, ob der sich nicht genauso verhält.
 
Hallo,

ich habe so was auch schon gemacht: http://www.ip-phone-forum.de/showthread.php?t=143186
und bin dabei auf das Programm ser2net aufmerksam gemacht worden. Ich hatte mit beiden (meinem eigenen Programm und mit ser2net) nie Probleme, nutze die Funktion allerdings auch nicht häufig. Mein Download (C-Control-Programm) ist ebenfalls nur max. 16 kB aber ich glaube bei meinem Download-Program wird das nächste Zeichen erst gesendet, wenn das vorherige "quittiert" wurde, es ist also max. ein Zeichen unterwegs. Dein Problem könnte sein, dass der Sender deutlich schneller als die V24 ist und damit der Speicher ausgeht? Das sollte ser2net beherschen. Vielleicht hat aber auch der "Virtuelle COM-Treiber" eine entsprechende Funktion.

Viel Erfolg, Reiner
 
Zuletzt bearbeitet:
Hallo,

ja, auf ser2net bin ich mittlerweile auch schon gestossen, ist ja komfortabler und bietet mehr Möglichkeiten als so ein Shell-Script.
Ich habe es mir mal kompiliert, leider mit dem gleichen Ergebnis.
Um die Box zu entlasten habe auch schon diverse Dienste abgeschaltet, wie webtransmission, callmonitor, firewall und auch wlan, auch habe ich alle überflüssigen Module entladen, siehe hier den Rest:
Code:
Module                  Size  Used by    Tainted: P  
tiap                  421312  0 
ftdi_sio               27856  0 
usbserial              27136  1 ftdi_sio
vfat                   11392  1 
fat                    50192  1 vfat
nls_cp437               5248  1 
nls_iso8859_1           3584  1 
usb_storage            33296  3 
sd_mod                 14864  4 
scsi_mod               92560  2 usb_storage,sd_mod
cdc_acm                11888  0 
ext2                   59392  1 
mbcache                 8272  1 ext2
kdsldmod              585648  2 
usbahcicore            26064  0 
usbcore               111440  6 ftdi_sio,usbserial,usb_storage,cdc_acm,usbahcicore
isdn_fbox_fon4        905168  0 
ubik2                  74848  1 isdn_fbox_fon4
tiatm                 107904  1 ubik2
Piglet                  9312  0
Code:
  PID  Uid        VSZ Stat Command
    1 root       1460 S   init       
    2 root            SWN [ksoftirqd/0]
    3 root            SW< [events/0]
    4 root            SW< [khelper]
    5 root            SW< [kthread]
    6 root            SW< [kblockd/0]
   23 root            SW< [pdflush]
   24 root            SW< [pdflush]
   26 root            SW< [aio/0]
   25 root            SW  [kswapd0]
   62 root            SW  [pm_info]
   69 root            SW  [mtdblockd]
   89 root            SW  [tffsd_mtd_0]
  477 root            SW< [capi_oslib]
  478 root            SW< [capi_oslib]
  479 root            SW  [capitransp]
  490 root            SW< [khubd]
  551 root      10168 S N ctlmgr 
  733 root       5572 S N websrv 
  738 root       6644 S   igdd 
  748 root       5572 S N websrv 
  749 root       5572 S N websrv 
  754 root       5572 S N websrv 
  786 root       5760 S   multid 
  794 root            SWN [scsi_eh_0]
  783 root        860 S   dnsmasq -p 53 --dhcp-boot=pxelinux.0 --enable-tftp --
  798 root            RWN [usb-storage]
  812 root       6364 S   dsld -i -n 
  825 root       3152 S   telefon a127.0.0.1 
  830 root       9260 S < voipd 
  850 root        964 S   /bin/run_clock -c /dev/tffs -d 
  890 root       2492 S   stunnel /mod/etc/stunnel-server.conf 
  932 root       6644 S   igdd 
  933 root       6644 S   igdd 
  934 root       6644 S   igdd 
  962 root            RWN [kdsld_token]
  983 root        912 S   ftpd -D -q -t 120 -m 15 -h FRITZ!Box Fon WLAN 7170 
 1137 root       1464 S   crond -b 
 1151 root       1476 S   httpd -p 81 -c /mod/etc/httpd.conf -h /usr/mww/ -r DS
 1349 root       1472 S   syslogd -L -C -R 192.xxx.xxx.xxx 
 1351 root       1456 S   /sbin/klogd 
 1574 root       1144 S   dropbear -p 22 
 1753 root       1208 S   dropbear -p 22 
 1755 root       1480 S   -sh 
 3142 root       1460 S   init       
 3227 root       1460 R   ps
Trotzdem bekomme ich keinen kompletten Download und die Box macht einen Reboot. Der Syslog auf einer Remote-Kiste zeigt auch nur an, daß die vor Aufruf von ser2net geladenen Module usbserial.ko und ftdi_sio.ko korrekt registriert sind, weiter nichts.
Vielleicht ist es besser, zu warten bis die neue AVM-Firmware 29.04.49 vom ds-mod unterstützt wird, dann kann man das möglicherweise über die neue Remote-USB Funktion hinbekommen.
Trotzdem wäre ich für weitere Tipps dankbar.
 
15.2 unterstützt doch auch eine USB-Labor mit Remote-USB. Das benötigt meines Wissens - ich nutze es nicht - aber eine AVM-Client-Installation unter Windows. Falls Du also Linux-Nutzer bist, hast Du nichts davon.
 
Hallo bluebaer,

... dann kann man das möglicherweise über die neue Remote-USB Funktion hinbekommen.
Trotzdem wäre ich für weitere Tipps dankbar.

nach meiner Kenntniss lohnt das Warten nicht, da die nur Geräte Remote zur Verfügung stellen, welche die FB kennt. Und das sind nur mal nur Speicher und Drucker.

Ich habe mir mal "Deinen" virtuellen-com-port Treiber angesehen, der funktioniert bei mir prima. Ich habe damit gerade 5 MB mit 115200 Baud an der seriellen Schnittstelle übertragen. Lt. top beträgt die CPU-Last für ser2net dabei permanent über 70%, aber abgestürzt ist da nichts. Top meldet noch 2632K freien Speicher. Anders ist bei mir noch, dass ich einen anderen usb-seriell Adapter (pl2303.ko) habe.

Ansonsten ist mir aufgefallen, dass der bisher von mir verwendete virtuelle-com-port-Treiber "HW Virtual Serial Port 2.5.10" unabhängig von der Baudrate immer etwa 1 KB pro sec. sendet. Also wahrscheinlich ein Zeichen pro Windows Grundtakt, das entspricht in etwa 9600 Baud. Vielleicht probierst Du den mal, vielleicht nutzt Dir diese "Langsamkeit" ja was? Ist aber wohl eher ein Strohhalm...

Grüsse aus Oberfranken, Reiner
 
Hallo rusmueller,

das macht mich ja richtig neidisch mit Deinem Download, da kann ich nur von träumen.
Habe nun 'mal den "Strohhalm" HW Virtual Serial Port V2.5.10 probiert, leider mit dem gleichen enttäuschenden Ergebnis. Auch der Versuch mit Deinem ttytotcp war erfolglos.
Nächster Ansatz war der Treiber (usbserial.ko und ftdi_sio.ko). Ich hatte nach dem ersten ds15.2 Image auf meiner Box im nachhinein die Konfiguration "replace kernel" angewählt (wg. knfs) und neu geflasht. Die Treiber werden nach jedem Neukompilieren nicht neu gebaut. Das habe ich nun nochmal explizit nachgeholt, hatte aber auch nicht die gewünschte Wirkung.
Als ganz anderen Ansatz habe ich die Stromversorgung über den USB-Bus in Betracht gezogen - ich betreibe immerhin 3 Geräte daran (den USB-Serial-Adapter, ein USB-class-Treiber Gerät und eine HD - allerdings zusätzlich auch eine seperate Stromversorgung). Um es vorweg zunehmen - daran lag es auch nicht, selbst mit dem USB-Serial-Adapter allein am Bus machte die Box wie bei allen anderen Versuchen einen Reboot nach einer gewissen Zeit.
Speicherprobleme sind es auch nicht (während Download > 1600 MB free und zusätzlich Swap auf HD).
Als letzten Versuch hing ich dann an den 9pol-Stecker des Adapters anstelle der ISDN-Anlage einen Laptop und startete das Hyper-Terminal. Über diesen lief der Download dann ohne Abstürze sowohl bei 9600 Baud als auch bei 115200 Baud. Wermutstropfen ist allerdings, daß es immer wieder zu irgendwelchen TimeOuts kam. ser2net hat bei 9600 Baud eine Last bis zu 15%.
Die Tatsache, daß es womöglich an meiner blöden ISDN-Anlage liegt und daß die Hoffnung auf die neue FW mit dem Remote-USB entsprechend Deiner Aussage nun auch geschwunden ist, läßt mich ja bald das Handtuch schmeißen.
Allerdings würde ich gerne noch wissen, welchen USB-Serial-Adapter Du benutzt. Ist es ein USB 1.1 Modell? Bei meinem Teil handelt es sich um ein USB 2.0 Teil, vielleicht ist doch etwas nicht zu 100% kompatibel, weil die FBox ja eben auch nur 1.1 unterstützt.

Gibt es hier sonst irgendwelche User im Forum, die noch einen Digitus USB2-Serial Adapter von Reichelt betreiben? Und mit welcher Konfiguration und welchem Ergebnis?
 
Hallo Capt Bluebaer,

schade, es bei Dir nicht geht! Ich habe auch einen Adapter von Reichelt, allerdings einen mit USB 1.1. Ist ein NoName Teil, Treiber pl2303.ko.
Deine Beschreibung klingt aber nicht nach Problemem mit dem Adapter, denn ohne Deine ISDN Anlage geht es ja. Die Frage ist nur, was Deine ISDN-Anlage überhaupt machen kann, damit die FB abstürzt? Da fällt mir langsam nicht's mehr ein. Vielleicht noch eine Idee (?): Der USB-Adapter hat ja die Leitungen der V24 Flusskontrolle (RTS/CTS/DTS/CTS). Falls die mit der ISDN-Anlage verbunden sind und vielleicht keine sauberen Pegel liefern, könnte das viel "Arbeit" in der FB bedeuten. Es könnte Sinn machen, ein Kabel / einen Adapter zu verwenden, welches nur Sende-, Empfangsleitung und Masse verbindet (2,3,5). Oder die Signale mit einem Oszi überprüfen. Na ja, könnte...

Schönen Gruss, Reiner
 
Es ist zwar schon eine ganze Weile vergangen, ich habe bisher nichts weiter in die Richtung ftdi_sio unternommen, aber gestern bin ich über diesen Thread gestossen. Da kribbelte es mir in den Fingern und ich habe den Patch auf den Treiber angewendet. Und siehe da - es funktioniert ohne Probleme. Ich konnte mehrere Downloads und Uploads mit Hilfe von ser2net über den ftdi_sio machen, die Box lief stabil und es gab keine Abstürze mehr. :dance:
Meine Box arbeitet übrigens nach wie vor mit dem ds26-15.2.

Gruß
Bluebaer
 
In ds26-15.2 ist dieser Patch auch noch nicht drin gewesen. Der kam erst später. Hoffentlich wird dein Beitrag über die Suchfunktion gefunden, für ähnliche Fälle.

MfG Oliver
 
Das war eigentlich auch der Grund, daß ich das nochmal explizit erwähnt habe, meine Signatur wird sich sicherlich in Kürze ändern.

Gruß
 
Selbst wenn es nicht gefunden wird, irgendjemand wird sich dann schon daran erinnern. Langsam wird es aber wirklich Zeit für Freetz 1.0...
 
Zuletzt bearbeitet:
Langsam wird es aber wirklich Zeit für Freetz 1.0...

Wenn man sich denn geeinigt hat, was da reinsoll, und welche Änderungen noch anstehen, dann kan nman auch festlegen was freetz-1.0 ist.
 
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.