USB hardwareseitig schalten

Gast #3447857
Lesenswert?

Hallo zusammen,

ich möchte die Kommunikation eines USB Devices hardwareseitig 
blockieren/abschalten und durch einen GPIO auf Wunsch aktivieren (die 
meiste Zeit soll der Bus blockiert bleiben). Dazu will ich die beiden 
Datenleitungen D+/- sperren. Die Versorgungsspannung/GND soll erhalten 
bleiben.

Ich bin noch recht neu (ich hoffe ich mache mich net zum Hampel) und ich 
bin nicht ganz sicher wie ich das bewerkstelligen möchte, so dass das 
ganze auch zuverlässig funktioniert.

Meine erste Idee wäre einen pull-up auf die Datenleitungen zu und 
abzuschalten. Nun bin ich mir nicht sicher, ob das angeschlossene Gerät 
bei einem + auf der Leitung nicht schon aktiviert wird (genau das will 
ich verhindern). Hat da jemand zufällig Erfahrung?

Eine andere Idee wäre natürlich einfach einen Transistor nehmen und 
damit die Spannung eines einstellbaren GPIOs zu schalten. Ich würde 
jedoch nur ungern in den Signalpfad eingreifen und dadurch riskieren, 
dass USB nicht mehr funktioniert.

Bitte löschen wenn die Frage zu dumm ist.

Lg
#3448291
Lesenswert?

Normalerweise hast Du ja einen 1k5 Pullup, mit dem der Host feststellt, 
dass ein Device (1) da ist und (2) Full/High Speed oder Low Speed ist 
(je nachdem, ob der Pullup an D+ oder D- ist). Es reicht, die Versorgung 
dieses Pullups zu schalten (zB per Portpin). Wenn der Pullup mangels 
Spannung nicht mehr pullt, wird das Device nicht mehr enumeriert und ist 
dann auch nicht mehr da.

fchk
Gast #3448319
Lesenswert?

Dandel schrieb:
> Eine andere Idee wäre natürlich einfach einen Transistor nehmen und
> damit die Spannung eines einstellbaren GPIOs zu schalten.

Lol. Dass USB differentiell ist ist dir bekannt? Dass man mit 
Transistoren auch nicht ohne weiteres ein paarhundert MHz schaltet auch? 
Schonmal was von Augendiagramm gehört?
Gast #3448343
Lesenswert?

Aus meiner begrenzten Sicht des Bastlers würde ich, wenn's mein Problem 
wäre, einfach einen Analogswitch* nehmen. Kostet praktisch nix und 
sollte funktionieren. Oder gibt's dagegen Einwände?

*Damit meine ich natürlich das CMOS-Bauteil und keinen Schiebeschalter.

LG, N0R
Gast #3448366
Lesenswert?

Norbert M. schrieb:

> Aus meiner begrenzten Sicht des Bastlers würde ich, wenn's mein
> Problem
> wäre, einfach einen Analogswitch* nehmen. Kostet praktisch nix und
> sollte funktionieren. Oder gibt's dagegen Einwände?

Falls du die 4066, 4067, 4051, 4052, 4053 o.ä. meinst: Zu hochohmig, zu 
große parasitäre Kapazitäten. Die Dinger sind eher für den Audio-Bereich 
bis zu 20kHz gedacht, nicht für schnelle digitale Kommunikation mit 
500MHz.
Gast #3448403
Lesenswert?

c-hater schrieb:
> Falls du die 4066, 4067, 4051, 4052, 4053 o.ä. meinst: Zu hochohmig, zu
> große parasitäre Kapazitäten.

In der Tat, sowas in der Art habe ich gemeint.

> Die Dinger sind eher für den Audio-Bereich bis zu 20kHz gedacht,
> nicht für schnelle digitale Kommunikation mit 500MHz.

Im Datenblatt vom MC74VHC1G66 steht was von Bandwith 175 MHz, in dem vom 
SN74LVC1G3157 etwas von 300 MHz "Frequency response". Was das genau 
bedeutet weiß ich natürlich nicht, weil dieses "Hochfrequenzzeugs" für 
mich wohl immer ein Buch mit sieben Siegeln bleiben wird. Das mit den 
parasitären Kapazitäten verstehe ich jedoch, das ist natürlich blöd.

Anyway, ich hab' noch mal kurz nach "USB analogue switch" gesucht, und 
da findet sich schon einiges:
NLAS7222A von On-Semi, S1F77310 von Epson, 14535 von Maxim, etc.
Erwartungsgemäß natürlich nicht im Bastlergehäuse DIP, sondern DFN-artig

Schlußendlich sollte glaube ich, mit dem ADG3242 im SOT-23-8 etwas 
passendes für den OP gefunden haben, das eventuell passen könnte, auch 
wenn das natürlich ein sehr kleines Gehäuse ist (was sich in diesen 
Geschwindigkeitsklassen wohl wegen der von Dir angesprochenen 
Kapazitäten wohl kaum vermeiden lässt). Hier gibt's noch mehr Auswahl:

www.analog.com/library/analogdialogue/archives/40-01/usb_switch.html

Wenn man mit 12 Mbps auskommt, dann gibt's dort sogar ein bastler- 
freundliches SOIC (ADG774, ist allerdings kein Switch sondern ein MUX).

LG, N0R
Gast #3449043
Lesenswert?

Die erste Frage wäre mal was das soll.

Die zweite wäre dann was für Geräte damit geschaltet werden sollen und 
ob überhaupt geklärt ist, ob die sich das so gefallen lassen.

Leider wird viel am USB ohne Sachkenntnis gebastelt. Es gibt Grenzen was 
man mit dem USB machen kann und dabei im betriebssicheren Bereich zu 
bleiben.
Gast #3449081
Lesenswert?

kopfkratz
Also wenn muß schon D+/D- physisch getrennt werden, das mit den 
Widerständen wird nicht funktionieren.
Also am einfachsten einen USB2USB Adapter selber aufbauen mit Relais, 
SolidStateRelais oder Triac.
USB1.1, USB2 oder USB3, was soll geschaltet werden ?
Und wie schon erwähnt verträgt das USB-Gerät das oder hängt es sich auf 
?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren