Halloo,
ich möchte gern meine mechanischen USB Switches umbauen und diese über
USB steuerbar machen, damit ich den Input selbst durch meine
Heimautomatisierungssoftware unter Linux bestimmen kann.
Hab jetzt schon ne Weile im Internet gesucht, da ich noch ein Laie bin
was Elektrotechnik angeht. Habe auch schon Beiträge in anderen Foren
eröffnet, jedoch sind diese Foren nicht wirklich so auf solche Dinge
spezialisiert wie das Mikrocontroller Forum.
Ich hoffe ich darf das verlinken, hier ist mein Beitrag im FHEM Forum,
für die Leute die wissen wollen wozu genau ich das Ganze machen will
http://forum.fhem.de/index.php?topic=41136
Hier sind auch nochmal die Bilder von einem meiner USB Switches:
http://imgur.com/a/plZJP
Im FHEM Forum konnte mir jemand jetzt weiterhelfen und hat mir gesagt
was ich ungefähr brauche um das Projekt zu realisieren, jedoch kennt er
sich nicht mit Relais aus, daher möchte ich hier mal fragen. :)
Also welche Relais sind dafür geeignet die mechanischen Schalter des USB
Switches zu ersetzen um USB Verbindungen zu schalten? HF-Relais so wie
mir im Forum geraten wurde? Oder doch Reed-Relais, habe ich jetzt auch
schon hier gelesen.
Und kann z.B. ich einen günstigen Arduino Micro Pro Klon mit nem
ATmega32u4 zum Steuern der Relais verwenden? Oder gibts dafür was
besseres?
Müssen die mehr als USB1.1 12 MBit/s können? Wenn ja, würde ich das
nicht selber machen, die 480 MBit/s erfordern durchdachtes HF Design
(Impedanz etc).
Deine mechanischer Switch sieht übrigens auch nicht unbedingt USB2.0
tauglich aus - allerdings sieht man nicht die Leiterbahnen.
Hi,
für USB 1.2 werden irgendwelche einfachen Relais ausreichen. Für USB 2.0
gibt es vielleicht eine Chancen, es mit normalen Relais zu realisieren,
aber das ist nichts für Anfänger. Auch HF-Relais helfen nicht, wenn man
keine Impedanz-kontrollierten Leiterbahnen realisieren kann.
Die Fotos zeigen einen Aufbau, dem ich USB 2.0, wenn überhaupt, nur mit
viel Glück zutraue, aber USB 1.2, also Mäuse u.Ä., ohne Probleme.
@Alex: Du hast die Aufgabenstellung nicht verstanden.
Jim M. schrieb:> Müssen die mehr als USB1.1 12 MBit/s können? Wenn ja, würde ich> das> nicht selber machen, die 480 MBit/s erfordern durchdachtes HF Design> (Impedanz etc).>> Deine mechanischer Switch sieht übrigens auch nicht unbedingt USB2.0> tauglich aus - allerdings sieht man nicht die Leiterbahnen.
Hmm, also an sich hängen da nur Peripheriegeräte dran, da spielt die
Übertragungsrate nicht so eine große Rolle denke ich. Jedoch hat meine
Maus eine Pollingrate von 1000MHz, hab jedoch keinen Schimmer was das
genau bedeutet und ob die nicht auch über USB1.1 funktionieren sollte.
Auf der Herstellerseite von Delock werden die USB Switches zumindest mit
USB 2.0 beschrieben.
Momentan sind die auch so im Gebrauch und funktionieren wunderbar, nur
schalte ich die halt manuell per Hand.
shawly schrieb:> Jedoch hat meine> Maus eine Pollingrate von 1000MHz
Super, da kannst du die ja fast mit Lichtgeschwindigkeit hin und her
bewegen. Dann solltest du aber schon Relais mit 5..10 GHz zum Umschalten
vorsehen.
Georg
Hi shawly,
Du könntest den FSUSB30MUX von Fairchild nehmen (gibts u.a bei Farnell).
Das Gehäuse kannst du mit der Hand bestücken. Schalten kannst du die
Dinger via Mikrocontroller, FT232 (o.ä) oder Kippschalter, wie du
möchtest. Du musst ggf. die Pegel anpassen.
Wenn du die Leiterbahnen der Datenleitungen kurz hälst und parallel
führst, dann brauchst du dich von USB2.0 nicht abschrecken lassen. Poste
aber vielleicht deinen Schaltplan, bevor du die Leiterplatte baust.
Kondensatoren nicht vergessen.
Viel Spass
Mr.Moe
Georg schrieb:> shawly schrieb:>> Jedoch hat meine>> Maus eine Pollingrate von 1000MHz>> Super, da kannst du die ja fast mit Lichtgeschwindigkeit hin und her> bewegen. Dann solltest du aber schon Relais mit 5..10 GHz zum Umschalten> vorsehen.>> Georg
Ironie? Sorry wenn ich so dämlich frage, weiß leider nicht wie das Ganze
funktioniert, ich dachte wenn es mit so einem simplen Schalter klappt,
müsste das auch mit Relais funktionieren..
Heißt diese USB Switches sind also auch gefährlich?
Mr.Moe schrieb:> Hi shawly,>> Du könntest den FSUSB30MUX von Fairchild nehmen (gibts u.a bei Farnell).> Das Gehäuse kannst du mit der Hand bestücken. Schalten kannst du die> Dinger via Mikrocontroller, FT232 (o.ä) oder Kippschalter, wie du> möchtest. Du musst ggf. die Pegel anpassen.> Wenn du die Leiterbahnen der Datenleitungen kurz hälst und parallel> führst, dann brauchst du dich von USB2.0 nicht abschrecken lassen. Poste> aber vielleicht deinen Schaltplan, bevor du die Leiterplatte baust.> Kondensatoren nicht vergessen.>> Viel Spass>> Mr.Moe
Klingt für nen Laien wie mich wirklich nicht so einfach realisierbar,
wüsste nicht mal wie der Schaltplan aussehen sollte. Elektrotechnik
hatte ich damals nur in der Schule bisher und das war auch weniger als
nur Basiswissen, befürchte ich.
Und da es keine USB Switches mit solch einer Funktion zu kaufen gibt,
zumindest nicht dem Preis-/Leistungsverhältnis entsprechend, kann ich
das wohl mit der Automatisierung knicken mit meinem KnowHow.. :-/
Naja, so unglaublich schwer ist das nun wirklich nicht, einen Umschalter
zu bauen. Wie bist du denn an die Leiterplatte für den bisherigen
Umschalter gekommen?
Mr.Moe schrieb:> Naja, so unglaublich schwer ist das nun wirklich nicht, einen Umschalter> zu bauen.
Richtig, aber nicht bei dem Kenntnisstand:
shawly schrieb:> Jedoch hat meine> Maus eine Pollingrate von 1000MHz, hab jedoch keinen Schimmer was das> genau bedeutet und ob die nicht auch über USB1.1 funktionieren sollte.
wendelsberg
Wie reagiert eigentlich der USB Host (also der PC), wenn
man ihm unter der Nase eben mal das Gerät dahinter
austauscht. Bekommt der das überhaupt mit?
Vermutlich wenn das neue USB-Gerät dann Strom bekommt
nehme ich an, dass es sich dann initialisiert?
Also wenn man bedenkt über was für Kabel USB 2.0 fehlerfrei
funktioniert, dann dürfte es kein Problem sein es mit einem Reed-Relais
zu schalten.
Ob allerdings die angeschloßenen Geräte damit klarkommen, wenn man nur
die Datenleitungen schaltet müsste man experimentell ermitteln und
schlimmstenfalls den Strom mit schalten (bzw. beim Umschalten für paar
Sekunden unterbrechen)....
Mr.Moe schrieb:> Naja, so unglaublich schwer ist das nun wirklich nicht, einen> Umschalter> zu bauen. Wie bist du denn an die Leiterplatte für den bisherigen> Umschalter gekommen?
Der USB Switch ist von Delock, an die Leiterplatte bin ich gekommen, als
ich den USB Switch aufgeschraubt habe, die Umschalter waren schon drauf,
haha. :D
Max D. schrieb:> Also wenn man bedenkt über was für Kabel USB 2.0 fehlerfrei> funktioniert, dann dürfte es kein Problem sein es mit einem Reed-Relais> zu schalten.> Ob allerdings die angeschloßenen Geräte damit klarkommen, wenn man nur> die Datenleitungen schaltet müsste man experimentell ermitteln und> schlimmstenfalls den Strom mit schalten (bzw. beim Umschalten für paar> Sekunden unterbrechen)....
Also mit dem momentanen Switch wird der Strom auch unterbrochen, es ist
im Endeffekt das gleiche als würde ich das Kabel einfach rausziehen und
woanders anschließen, da es sich ausschließlich um Peripherie handelt,
sollte das auch kein Problem für die Geräte darstellen.
Jedoch wie oben schon gesagt, mit meinem Kenntnisstand wird das wohl
kaum was werden, egal wie simpel es in der Theorie ist, umsetzen kann
ichs wohl dennoch nicht ohne Step-By-Step Anleitung. :-/
wendelsberg schrieb:> Richtig, aber nicht bei dem Kenntnisstand:
Man lernt aber nur etwas, wenn man die richtige Motivation hat. Da ist
dies doch ein recht überschaubares Projekt, was man mit etwas überlegen
doch hinbekommen kann.
Der TO muss doch nur das Datenblatt vom FT232H und vom FSUSB30 lesen und
verstehen. Beispiele googeln, sich in KiCad einlesen, etwas ausprobieren
/ spielen, Schaltplan und eine Leiterplatte erstellen.
Klar gibt es noch ein paar Fallen auf die man achten muss, aber darauf
kann man ja dann freundlich beim Schaltplanreview hinweisen.
Warum sollte er es also nicht probieren?
Dem TO bitte nicht unterstellen, dass er nichts lernen möchte! Kennst du
ihn persönlich?
Es gibt auch noch USB-Switche die wie der USB-Teil einer KVM
funktionieren aber nur einen USB-Anschluß umschalten, zwisvhen 2 oder 4
Hosts. Ich hab so einen mit einem Hub dahinter an dem dann HID und Stick
und so stecken. So muss ich nur ein Knopf drücken wenn icb zwischen den
zwei Rechnern wechsle und hab trotzdem nur eine Maus/Tastatur auf dem
Tisch.
Ist ein Aten US221 den ich dafür habe, kostet ~20€. Wie gesagt auch als
4port. Müsste man nur entweder an die Taster ein Controller hängen oder
sie per Software umschalten. Aten liefert da was mit, hab ich aber nie
installiert weil kein Bedarf...
shawly schrieb:> Ironie? Sorry wenn ich so dämlich frage
Naja, du liegst da wohl um den Faktor von 1 Milliarde daneben. 1000 MHz
= 1000000000 Hz.
Georg
Die schnellen z.B. Gamermäuse tasten so 1000Hz ab, das hat er wohl
gemeint. Das hätte man finde ich auch herauslesen können, selbst wenn da
was durcheinander geraten ist, oder?
Mr.Moe schrieb:> wendelsberg schrieb:>> Richtig, aber nicht bei dem Kenntnisstand:>> Man lernt aber nur etwas, wenn man die richtige Motivation hat. Da ist> dies doch ein recht überschaubares Projekt, was man mit etwas überlegen> doch hinbekommen kann.> Der TO muss doch nur das Datenblatt vom FT232H und vom FSUSB30 lesen und> verstehen. Beispiele googeln, sich in KiCad einlesen, etwas ausprobieren> / spielen, Schaltplan und eine Leiterplatte erstellen.> Klar gibt es noch ein paar Fallen auf die man achten muss, aber darauf> kann man ja dann freundlich beim Schaltplanreview hinweisen.>> Warum sollte er es also nicht probieren?>> Dem TO bitte nicht unterstellen, dass er nichts lernen möchte! Kennst du> ihn persönlich?
Dankeschön, dass du mich verteidigst, auf jeden Fall will ich was davon
lernen und versuchen möchte ich das auch, ist nur schon recht
demotivierend wenn du nur fragst was man genau braucht und dann kommt
"das wird nichts"...
Soso schrieb:> Es gibt auch noch USB-Switche die wie der USB-Teil einer KVM> funktionieren aber nur einen USB-Anschluß umschalten, zwisvhen 2 oder 4> Hosts. Ich hab so einen mit einem Hub dahinter an dem dann HID und Stick> und so stecken. So muss ich nur ein Knopf drücken wenn icb zwischen den> zwei Rechnern wechsle und hab trotzdem nur eine Maus/Tastatur auf dem> Tisch.>> Ist ein Aten US221 den ich dafür habe, kostet ~20€. Wie gesagt auch als> 4port. Müsste man nur entweder an die Taster ein Controller hängen oder> sie per Software umschalten. Aten liefert da was mit, hab ich aber nie> installiert weil kein Bedarf...
Der Switch hat aber nur einen Schalter, daher kann ich nicht genau den
Port einstellen den ich will, ich muss dann solange durchschalten bis
ich den habe den ich brauche und wie soll ich das automatisieren, wenn
das Programm nicht weiß bei welchem Input er grade ist?
Ich hab aber auch in dem FHEM Thread den ich im ersten Beitrag verlinkt
habe, bereits den Aten US421A verlinkt, der hat für jeden Input einen
Button und an sich sieht es aus, als wären diese Buttons nicht
mechanisch also ging das dort auch ohne Relais theoretisch, jedoch
kostet der US421A halt auch fast 30€ pro Switch, womit ich bei 3
Switches schon bei 90€ bin.
Wollte halt meine mechanischen Switches verwenden, damit die nicht ganz
umsonst waren.
Soso schrieb:> Die schnellen z.B. Gamermäuse tasten so 1000Hz ab, das hat er wohl> gemeint. Das hätte man finde ich auch herauslesen können, selbst wenn da> was durcheinander geraten ist, oder?
Danke!
Es gibt extrem billig Reed-Relais mit 5V Nennspannung und der Atmega auf
nem ardu schafft mit seinen 40 mA pro Pin normalerweise auch die zu
treiben. Sollte also ganz gut machbar sein.
Ich möchte aber noch von dem nano abraten, dadurch, dass der keinen FTDI
(oder vergleichbar) Chip hat sondern der AVR direkt USB macht ist der
Aufwand mit dem was auf die Beine zu stellen ein Stück höher als mit
einem micro (der ist einfach ftdi + mega328).
Max D. schrieb:> Richtigstellung: Nano = mega328+serial Micro = mega32u4> (sinnvolle Namensverteilung fehlanzeige)
Also rätst du von dem Micro ab und nicht von dem Nano?
shawly schrieb:> Also rätst du von dem Micro ab und nicht von dem Nano?
Tut mir leid, dass ich so verwirrend schreib, aber ich bin "Plain AVR"
(also ohne arduino IDE) Nutzer und damit nicht so 100% fit bei den
Namen.
Ich rate dir ZU dem mit dem "normalen" ATMega328(P) ohne das U dabei.
Das ist "in groß" der Uno und klein heißt er (anscheinend) nano. Da ist
jeweils noch ein USB<->UART Wandler dabei der an deinem PC als COMx bzw
ttyUSBx auftaucht. Dann gibt es in klein noch einen ganz ohne
USB-Anbindung (heißt glaube ich "Mini"), den erkennt man daran, dass
garkeine USB-Buchse auf dem Board ist (Der ist auch eher ungeeignet für
dich).
PS: So einer dürfte am besten für dich sein:
http://www.ebay.de/itm/252022679414
Sieht man auch auf dem zweiten Bild den USB<->UART Chip (der auf dem
CH340G steht, das ist ein billigst Kokurrent zu dem FTDI, sollte aber
unter Linux genausogut funktionieren)
Alles klar, vielen Dank, Max D! Das hilft mir auf jeden Fall weiter,
zusätzlich zu deiner Antwort mit den Reed-Relais, dann weiß ich jetzt
auf jeden Fall mal was ich benötige.
An alles weitere kann ich mich auf jeden Fall dann mal rantasten!
shawly schrieb:> Hmm, also an sich hängen da nur Peripheriegeräte dran, da spielt> die Übertragungsrate nicht so eine große Rolle denke ich.
Die Signalgeschwindigkeit wird durch das Protokoll vorgegeben.
Da spielt es keine Rolle, ob Du diese Geschwindigkeit auch
brauchst. Allerdings arbeiten "langsame" Geräte wie z.B.
Mäuse nur mit USB 1.1 und den erwähnten 12 MHz. Da ist z.B.
der korrekte Wellenwiderstand der Leiterbahnen noch nicht
so wichtig. Trotzdem muss man auch da schon ein wenig auf
hf-gerechtes Design achten.
Hi shawly,
die USB-Switches müsstest du verketten, sollte aber kein Problem sein.
Der Vorteil der Lösung mit dem FTDI-Chip ist, dass du keine Firmware für
einen uC brauchst. Dieses Bauteil meldet sich als serielle Schnittstelle
und du kannst sehr einfach die Switches schalten. Wenn du die
Möglichkeit der Taster/Schalter ebenfalls vorsehen möchtest ist das
ebenfalls möglich.
Dies ist meiner Meinung nach einfacher, als eine Lösung mit einem ATMEL.
Viele Grüße
Mr.Moe
Mr.Moe schrieb:> die USB-Switches müsstest du verketten, sollte aber kein Problem sein.> Der Vorteil der Lösung mit dem FTDI-Chip ist, dass du keine Firmware für> einen uC brauchst. Dieses Bauteil meldet sich als serielle Schnittstelle> und du kannst sehr einfach die Switches schalten. Wenn du die> Möglichkeit der Taster/Schalter ebenfalls vorsehen möchtest ist das> ebenfalls möglich.
Also, dann werd ich mir mal einen ATmega328P bestellen, also den Nano
Klon den du verlinkt hast. Dann suche ich mal nach vier (für den Anfang
zum testen vielleicht auch mal nur eins) 5V Reed-Relais mit jeweils
4-Kanälen.
Dann noch ein paar geeignete Freilaufdioden, eine pro Kanal oder
benötige ich mehr?
Und dann noch pro Relais ein geeigneter Transistor, korrekt?
Ein paar LEDs, damit ich später auch sehe welcher USB input gerade
gewählt ist.
Kabel und Breadboard zum Ausprobieren natürlich noch und sobald ich weiß
welche Komponenten ich dann besitze und nen Schaltplan mit KiCad gemacht
hab, noch die passenden Widerstände.
Das wär so die Einkaufsliste, vor dem Kauf würde ich alles noch mal hier
verlinken, um sicher zu gehen.
Hoffe mein Halbwissen hat jetzt niemanden angegriffen, ich möchte nur
sicher gehen, dass ich verstanden hab was ich brauche, damit ihr mich
darauf hinweisen könnt, falls mir was fehlt und ob ich noch etwas
beachten muss.
Ich danke aber auf jeden Fall denen, die sich die Zeit genommen haben
mir bis jetzt zu helfen!
Wenn du Reeds mit 4 Kanälen findest, dann kannst du die sicher nehmen,
allerdings sind die eher selten. Solltest du also kein Glück haben nimm
einfach zwei einkanalige für die Datenleitungen und nen P-Mos oder nen
ausreichend kräftigen PNP für die Versorgung. Die Masse/Gnd/Minus der
Geräte kannst du getrost immer verbunden lassen.