Hallo kann man ein Gerät was per Rs 232 zu usb Anschluss angesteuert wird auch per lan adapter (rs233 zu lan) in das Netzwerk der Fritzbox integrieren und dann vom Pc aus ansteuern?
Ich hoffe ihr wisst was ich meine.
Habe schon ein paar adapter angeschaut aber keine Ahnung welchen ich da nehmen kann.
Also es ist aktuell so das ich eine HDMI Matrix per Rs 232 ansteuere (zum umschalten der kanäle sende ich hex codes), angeschlossen ist die matrix an dem pc per usb (rs 232 zu usb kabel).
Nun dachte ich man könnte ja die HDMI matrix evtl ins Netzwerk integrieren das noch ein anderer Pc im Netzwerk die Kanäle schalten kann.
Es müssen nur die Hex codes zur Matrix geschickt werden.
Zur Fritzbox die hat ja nen usb port , könnte man den nutzen um die Matrix dort anzuschließen und dann über das Netzwerk die Befehle schicken?
Das Hauptproblem ist doch, ob die Ansteuersoftware am PC mit einer IP
was anfangen kann, oder nur COM Ports kennt.
Gibt es eine Software, die am PC eine IP als COM Port einbindert?
Aktuell nutze ich eine geschrieben Batch Datei die als Exe umgewandelt ist zum schalten. Dort steht nur der Pfad der Datei auf die zugegriffen werden soll und der comport des pcs drin.
Aktuell nutze ich eine geschrieben Batch Datei die als Exe umgewandelt
ist zum schalten. Dort steht nur der Pfad der Datei auf die zugegriffen
werden soll und der comport des pcs drin.
Dann schreib die um, dass die direkt TCP oder HTTP oder MQTT oder sonstwas macht, und du sparst dir komplett das Tunneln von RS232 über Netzwerk.
Dein Ziel ist: Wenn ein Programm am PC gestartet wird, soll irgendwo anders im Netzwerk ein RS232-Kommando abgesetzt werden?
Das geht auch mit einem Ser2Net-Tunnel o.Ä., aber eben auch anders.
Also: Erst das Problem anschauen, dann Lösungen suchen, und aus den gefundenen Lösungen die Beste auswählen.
z.B. noch einen Schritt zurückgehen: Dein Streamdeck kann auch (per Plugin) direkt HTTP-API-Requests auf die Tasten legen. Du könntest also auch die Batch-Dateien wegsparen, und mit einem ESP32, ESP8266 usw. deinen HDMI-Umschalter direkt per Netzwerk Steuerbar machen.
Aktuell nutze ich eine geschrieben Batch Datei die als Exe umgewandelt
ist zum schalten. Dort steht nur der Pfad der Datei auf die zugegriffen
werden soll und der comport des pcs drin.
Dann schreib die um, dass die direkt TCP oder HTTP oder MQTT oder
sonstwas macht, und du sparst dir komplett das Tunneln von RS232 über
Netzwerk.
Dein Ziel ist: Wenn ein Programm am PC gestartet wird, soll irgendwo
anders im Netzwerk ein RS232-Kommando abgesetzt werden?
Das geht auch mit einem Ser2Net-Tunnel o.Ä., aber eben auch anders.
Also: Erst das Problem anschauen, dann Lösungen suchen, und aus den
gefundenen Lösungen die Beste auswählen.
z.B. noch einen Schritt zurückgehen: Dein Streamdeck kann auch (per
Plugin) direkt HTTP-API-Requests auf die Tasten legen. Du könntest also
auch die Batch-Dateien wegsparen, und mit einem ESP32, ESP8266 usw.
deinen HDMI-Umschalter direkt per Netzwerk Steuerbar machen.
Hallo kann man ein Gerät was per Rs 232 zu usb Anschluss angesteuert
wird auch per lan adapter (rs233 zu lan) in das Netzwerk der Fritzbox
integrieren und dann vom Pc aus ansteuern?
Ja klar.
Habe schon ein paar adapter angeschaut aber keine Ahnung welchen ich da
nehmen kann.
Das hängt primär davon ab, was genau vom RS232-Protokoll über die Leitung gehen muss, da trennt sich i.d.R. die Spreu vom Weizen. Also: reichen die seriellen Daten oder müssen auch die Steuersignale transportiert werden?
Es hängt also letztlich vom anzusteuernden Zielgerät ab. Welches du in deiner unerforschliche Weisheit natürlich nicht konkret benannt hast.
Dazu kommt die Problematik, wie die Sache dann auf der anderen Seite anzusteuern ist. Auch das ist typisch an o.g. Eigenschaft gekoppelt. Die einfachen Adapter stellen typisch auf dem Host keine übliche serielle Schnittstelle bereit. Man muß hier einfach nur eine TCP-Verbindung zum Ziel aufbauen.
Die Dinger mit Unterstützung für Steuersignale hingegen liefern auch die nötigen Treiber, damit die serielle Schnittstelle auch als solche erscheint, also unter Windows als COMn oder unter Linux als ttyIrgendwas.
Also es ist aktuell so das ich eine HDMI Matrix per Rs 232 ansteuere
(zum umschalten der kanäle sende ich hex codes), angeschlossen ist die
matrix an dem pc per usb (rs 232 zu usb kabel).
[...]
Es müssen nur die Hex codes zur Matrix geschickt werden.
Das hört sich so an, als ginge es ohne Steuersignale ab. Damit könntest du jeden beliebigen Adapter verwenden. Der muss aber natürlich vor Verwendung passend konfiguriert werden (i.d.R. über ein Web-Interface). Einzustellen wären für die Netzwerkseite IP-Adresse und Port, für die RS232-Seite Baudrate und Datenwort-Format.
Zur Fritzbox die hat ja nen usb port , könnte man den nutzen um die
Matrix dort anzuschließen und dann über das Netzwerk die Befehle
schicken?
Wenn auf dem steuernden Windows-PC die AVM-Software für den "USB Fernanschluss" installiert ist, ist das quasi eine Art "virtuelle USB-Karte". USB-Geräte, die an die Fritzbox angeschlossen werden, können damit so genutzt werden, als wären sie direkt am PC angeschlossen.
Wenn also eine USB-Seriell-Bridge an der Fritzbox hängt, lässt sich auf die gewohnte Weise auf dem PC ein COM-Port dafür einrichten und verwenden, der läuft wie gewohnt über den FTDI-Treiber, der auch verwendet wird, wenn die USB-Seriell-Bridge direkt am PC hängt.
Daß da ein Netzwerk dazwischen ist, bleibt einem recht vollständig verborgen.
Die große Einschränkung: AVM hat das verwendete Protokoll nicht offengelegt und bietet die "USB Fernanschluss"-Software nur für Windows an.
Andere Hersteller bieten USB-Device-Server an, die sich effektiv genauso verhalten (z.B. Silex), deren Software gibt es auch für andere Betriebssysteme.
Hat man einen ungenutzten Raspberry Pi, gibt es auch eine Lösung mit VirtualHere. Die kann man, wenn man nur ein Gerät damit ansteuern will (also nur ein USB-Seriell-Kabel) auch kostenlos nutzen.
Auf dem das ganze steuernden PC braucht es den dazu passenden Client, den es für verschiedene Betriebssysteme (macOS, Windows und auch Linux) gibt
Alternativ gibt es Ethernet-Seriell-Server, die auch mit Software daherkommen, die einen virtuellen COM-Port auf dem PC einrichtet. So etwas gibt es z.B. von Tibbo oder Lantronix.
Und natürlich gibt es auch kostenfreie Ansätze; für die PC-Seite kann ein virtueller COM-Port mit com2tcp aus dem com0com-Paket eingerichtet werden, die Gegenseite kann irgendein netzwerkfähiger Computer/µC mit passender (notfalls selbstzuschreibender) Software sein.
Rüdiger B. schrieb im Beitrag
Wenn auf dem steuernden Windows-PC die AVM-Software für den "USB
Fernanschluss" installiert ist, ist das quasi eine Art "virtuelle
USB-Karte". USB-Geräte, die an die Fritzbox angeschlossen werden, können
damit so genutzt werden, als wären sie direkt am PC angeschlossen.
Wenn also eine USB-Seriell-Bridge an der Fritzbox hängt, lässt sich auf
die gewohnte Weise auf dem PC ein COM-Port dafür einrichten und
verwenden, der läuft wie gewohnt über den FTDI-Treiber, der auch
verwendet wird, wenn die USB-Seriell-Bridge direkt am PC hängt.
Habe ich vorhin probiert als ich vor Ort war, die AVM software für den Fernanschluss hat sich auch mit dem usb to serial Adapter Verbunden. Aber ich habe keinen comport gesehen im Gerätemanager.
Muss man den comport manuell installieren der von der fritzbox kommt?
Ja klar, das ist der Sinn der Sache. Das Geräte sollte sich genau so verhalten, als wäre es lokal an den Rechner angeschlossen.
Das bedeutet aber auch: wenn es (lokal angeschlossen) einen speziellen Treiber erfordert, muss dieser auch installiert werden, wenn das USB-Gerät über den USB-Fernanschluss bereit gestellt wird.
Einfach in den Gerätemanager schauen! Wenn der fehlende Treiber das Problem ist, sollte das Gerät als "unbekanntes Gerät" auftauchen. Dann halt einfach den fehlenden Treiber dafür installieren.
Ja klar, das ist der Sinn der Sache. Das Geräte sollte sich genau so
verhalten, als wäre es lokal an den Rechner angeschlossen.
Das bedeutet aber auch: wenn es (lokal angeschlossen) einen speziellen
Treiber erfordert, muss dieser auch installiert werden, wenn das
USB-Gerät über den USB-Fernanschluss bereit gestellt wird.
Einfach in den Gerätemanager schauen! Wenn der fehlende Treiber das
Problem ist, sollte das Gerät als "unbekanntes Gerät" auftauchen. Dann
halt einfach den fehlenden Treiber dafür installieren.
Vielen Dank ich werde es erst mal Probieren und berichten.
Habe gerade alles hinbekommen mit dem Usb Anschluss der Fritzbox läuft super 👍, vielen Dank an alle die mir hinweise gegeben haben.
Das einzige Manko ist, das nur ein Pc den Zugang vom comport haben darf und man erst beim aktiven pc den comport schließen muss um das der andere pc ihn aktiveren kann für den zugriff.
Ich denke über kurz oder lang werde ich da einen Seriell zu lan Adapter nutzen und hoffen das man dort mit 2 pc gleichzeitig verbunden sein kann.
Das einzige Manko ist, das nur ein Pc den Zugang vom comport haben darf
Logisch. Das USB-Gerät existiert halt nur einmal, kann also auch nur einmal zu einem beliebigen Zeitpunkt benutzt werden. Sharing-Fähigkeiten sind bei USB nicht vorgesehen. USB hat eine klare Baum-Struktur, in der es nur einen einzige Wurzel geben kann, halt den Host, der das USB-Gerät besitzt.
Ich denke über kurz oder lang werde ich da einen Seriell zu lan Adapter
nutzen und hoffen das man dort mit 2 pc gleichzeitig verbunden sein
kann.
Nein, kann man nicht. Auch die üblichen seriell/LAN-Adapter verhindern eine Mehrfach-Nutzung ihres Targets. Weil das einfach keinen Sinn ergibt. Seriell ist halt Peer2Peer. Das läßt keinen Raum für einen Baum auf irgendeiner Seite der Verbindung.
Nein, kann man nicht. Auch die üblichen seriell/LAN-Adapter verhindern
eine Mehrfach-Nutzung ihres Targets. Weil das einfach keinen Sinn
ergibt. Seriell ist halt Peer2Peer. Das läßt keinen Raum für einen Baum
auf irgendeiner Seite der Verbindung.
Muss der pc sich mit den lan-Adapter verbinden (so wie bei Fritzbox Usb Fernanschluss)oder schickt man nur den Befehl an die Ip übers Netzwerk?
Es müssen nicht beide Pc‘s zur gleichen zeit etwas senden, sie müssen nur die Möglichkeit haben etwas zu senden ohne sich vorher extra mit den lan-Adapter zu verbinden. ( so wie es bei fritzbox Usb Fernanschluss aktuell ist)
Muss der pc sich mit den lan-Adapter verbinden (so wie bei Fritzbox Usb
Fernanschluss)oder schickt man nur den Befehl an die Ip übers Netzwerk?
Man muss sich zunächst auch verbinden. Und der Adapter läßt nur genau eine aktive Verbindung zu einer Zeit zu. Weitere TCP-SYNs werden nicht "accepted", so lange bereits eine Verbindung besteht.
sie müssen
nur die Möglichkeit haben etwas zu senden ohne sich vorher extra mit den
lan-Adapter zu verbinden.
Das geht halt nicht. Das ganz grundsätzliche Peer2Peer-Konzept einer seriellen Schnittstelle spricht dagegen.
Es müssen nicht beide Pc‘s zur gleichen zeit etwas senden
Dass niemals zwei gleichzeitig senden, ist halt nur dadurch sicher zu stellen, dass das Senden nur im Rahmen einer Verbindung möglich ist und dadurch, dass es halt nur eine Verbindung zu einer Zeit geben kann.
So arbeiten alle handelsüblichen Adapter. Willst du was anderes, mußt du es selber bauen.
Nein. Ich bezüg mich auf die handelsüblichen Adapter, also genau das was der TO sucht.
Mit LAN zu USB sollte mehr möglich sein mit einem USB Hub
Nein.
Die mir bekannten Device-Server unterstützen keine Hubs. Logisch: wer sollte auch die teuereren Versionen mit mehr Ports kaufen, wenn einfach die Fähigkeiten per Hub erweiterbar wären...
Aber selbst wenn das ginge (technisch ginge es, nur das Profitstreben der Hersteller schließt diese Möglichkeit aus), könnte man eventuell mehrere USB-Geräte über eine Verbindung verfügbar machen.
Das ist aber überhaupt nicht das Problem des TO. Der hat ja nur EIN einziges USB-Gerät.
Sein Problem ist: er will dieses eine Gerät (virtuell) gleichzeitig in zwei USB-Ports stöpseln. Und das geht halt weder real mit USB noch virtuell via USB-Device-Server.
Mit LAN zu USB sollte mehr möglich sein mit einem USB Hub
Nein.
Ich habe zwar den Sharkoon USB LAN 400 aber kann das nicht mit einem 4-fach USB HUB testen mangels 4 COM Geräte am anderen Ende. Arduino Nano 328p und USB COM Adapter funktioniert aber.
Ich habe zwar den Sharkoon USB LAN 400 aber kann das nicht mit einem
4-fach USB HUB testen mangels 4 COM Geräte am anderen Ende. Arduino Nano
328p und USB COM Adapter funktioniert aber.
Es mag sein, das es USB-Server gibt, die nicht so restriktiv sind und Hubs und damit mehrere USB-Geräte über ein Host-Verbindung zulassen.
Das ändert allerdings rein garnichts daran, dass das überhaupt ncht das Problem des TO ist. Der hat nur EIN Gerät, möchte das aber für mehrere Hosts gleichzeitig verfügbar machen.
Mein Gott, das kann doch nicht so schwer zu begreifen sein?
Entsprechende Programmierkenntnis vorausgesetzt, ist das Problem natürlich recht einfach lösbar:
Ein netzwerkfähiger µC wird mit einem einfachen Webserver ausgestattet, und über ein vom Webserver angesteuertes Skript gibt der µC auf seiner seriellen Schnittstelle irgendwelche Daten aus.
Da Webseitenaufrufe keine dauerhafte Verbindung seitens der Clients erfordern, können hier mehrere Clients wechselweise beliebige Datenübertragungen auslösen. Was halt nicht geht, ist exakt gleichzeitiges Handeln.
Das aber scheint auch nicht das Ziel des Threadstarters zu sein.
Wenn man die "Webseite" auf dem µC einfach genug gestaltet, kann der Webseitenaufruf auch über ein Kommandozeilentool wie wget oder curl erfolgen.
Wenn WLAN als Netzwerk genügt, bietet sich ein ESP8266 oder ein ESP32 an, wenn Ethernet erforderlich ist, kann man /irgendeinen/ µC und einen ENC82J60 verwenden:
Die Hardware auf der Gegenseite ist ein einfacher ESP8266, der auf der einen Seite im WLAN hängt und auf der anderen Seite eine serielle Schnittstelle bedient oder auch etwas anderes macht, z.B. Ports schaltet. Falls du weiters wissen möchtest, bitte PN!
Man benoetigt ein kleines Stueck Software, welches auf dem PC ein Ethernet Port(=Socket) auf den Serial abbildet. Allenfalls muss noch etwas Protokol geschrieben werden.
Man benoetigt ein kleines Stueck Software, welches auf dem PC ein
Ethernet Port(=Socket) auf den Serial abbildet.
Das wurde bereits erwähnt und (unter anderem von mir) als Bestandteil des com0com-Paketes verlinkt.
Das aber ist, wenn mehrere PCs gleichzeitig damit arbeiten sollen, /der falsche Ansatz/.
Da der ganze Krempel eh' irgendwie geskriptet aufgerufen werden soll, kann man statt irgendwas mit 'ner seriellen Schnittstelle herumzuhampeln, auch direkt wget/curl mit passenden parametern aufrufen, und fertig.
Da der ganze Krempel eh' irgendwie geskriptet aufgerufen werden soll,
kann man statt irgendwas mit 'ner seriellen Schnittstelle
herumzuhampeln, auch direkt wget/curl mit passenden parametern aufrufen,
und fertig.
Wurde ja vorgeschlagen, aber wohl für nicht gut befunden.
Kleinen ESP an den Umschalter drangebastelt (je nach Bastelwut direkt in das Gerät, als "Ersatz" für den MAX232 o.Ä. darin, Stromversorgung lässt sich da evtl. auch abgreifen)
Genauso aus Scripten per curl/InvokeHTTPRequest, oder man macht die Seite im Browser auf und hat dort einen Haufen Knöpfe. Geht dann auch vom Handy oder Tablet am Sofa.
Kleinen ESP an den Umschalter drangebastelt (je nach Bastelwut direkt in
das Gerät, als "Ersatz" für den MAX232 o.Ä. darin, Stromversorgung lässt
sich da evtl. auch abgreifen)
aber wenn dann einen der mit 3,3V zurecht kommt wie MAX3232, übliche 232 arbeiten ab 4,5V und sind am ESP ungeeignet.
Da der ganze Krempel eh' irgendwie geskriptet aufgerufen werden soll,
kann man statt irgendwas mit 'ner seriellen Schnittstelle
herumzuhampeln, auch direkt wget/curl mit passenden parametern aufrufen,
und fertig.
Wurde ja vorgeschlagen, aber wohl für nicht gut befunden.
Kleinen ESP an den Umschalter drangebastelt (je nach Bastelwut direkt in
das Gerät, als "Ersatz" für den MAX232 o.Ä. darin, Stromversorgung lässt
sich da evtl. auch abgreifen)
Und dann den Tasten an seinem Streamdeck direkt einen HTTP-Aufruf wie
"http://hdmiswitch.local/?channel=1",
"http://hdmiswitch.local/?channel=2" usw.
Konfigurieren.
Genauso aus Scripten per curl/InvokeHTTPRequest, oder man macht die
Seite im Browser auf und hat dort einen Haufen Knöpfe. Geht dann auch
vom Handy oder Tablet am Sofa.
Zur Referenz, wo die "Serieller Port"-Idee ursprünglich herkommt:
Beitrag "Streamdeck, Hex codes senden, exe erstellen"
Da war aber noch PC und Umschalter direkt verbunden...
Das wollte ich evtl auch umsetzten mit nem esp. danke für den Tipp.
Als Leihe sieht man bei den ganzen Möglichkeiten kaum durch :)
Setzt man auf den ESap nen kleinen server auf der sich mit dem Seriellen Port dauerhaft verbindet?