Enkel "brytare" för USB möjlig?

Planering och tankar kring eventuella framtida projekt.
irkasmork
Inlägg: 192
Blev medlem: 27 juni 2007, 20:32:02
Ort: Göteborg
Kontakt:

Enkel "brytare" för USB möjlig?

Inlägg av irkasmork »

Hej!

Jag funderar på huruvida det går att strypa dataöverföringen mellan ett USB-inkopplat pekdon och en dator
under en kortare tidsrymd utan att koppla ifrån enheten. Min tanke är att man med någon/några enkla logikkretsar
blockerar kommunikationen på båda datalinorna men låter spänningsmatning och jord vara ifred. Jag inbillar mig att
det borde fungera med enheter som kommunicerar med interrupts (möss, tangentbord o dyl.) då dessa antagligen
bara skickar data när något händer(?).
Vad jag undrar är om det har en chans att fungera, eller om det är något jag förbisett. Jag gissar att datorn detekterar
urkoppling av enheter genom att ha koll på matningsspänningen, men jag kan ha väldigt fel där. (Kanske skickas signaler
fram och tillbaka hela tiden istället?)

Användningsområdet för brytaren är att fixa ett problem som finns med vissa ergonomiska pekdon (Mousetrapper, Rollermouse etc.)
nämligen det faktum att det inte finns någon riktigt bra motsvarighet till att lyfta musen när man når kanten på musmattan.
Hur stort problem detta är generellt kan ifrågasättas, men jag skulle iaf ha nytta av en lösning...

/Janne i Göteborg
Användarvisningsbild
PHermansson
EF Sponsor
Inlägg: 4340
Blev medlem: 22 december 2004, 00:46:38
Ort: Särestad Grästorp
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av PHermansson »

Vad jag vet så kommuniceras det hela tiden. När man bygger egna usb-tillbehör måste man ju använda 'State machines', gör man tex en lång loop i programmet som gör något annat tappar datorn kontakten med usb-enheten.
Så det skulle ju gå att bara bryta matning eller datasignaler så sett, men då skulle Windows börja klaga direkt. Känns inte som en optimal lösning...
irkasmork
Inlägg: 192
Blev medlem: 27 juni 2007, 20:32:02
Ort: Göteborg
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av irkasmork »

Ok. Tack för informationen!
eqlazer
Inlägg: 923
Blev medlem: 22 september 2007, 13:53:45
Ort: Göteborg

Re: Enkel "brytare" för USB möjlig?

Inlägg av eqlazer »

Hur fungerar positionering av pekdonet, är det relativa förflyttningar eller kan man även sätta absoluta? Isf kanske man skulle kunna göra en USB-enhet som med en tryckknapp positionerar om pekdonet till 0,0 eller annan lämplig plats.
Nerre
Inlägg: 27205
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Enkel "brytare" för USB möjlig?

Inlägg av Nerre »

Jag tror det är olika för olika pekdon. Så det borde gå att göra en burk som sitter mellan. Problemet är väl att den burken måste ha stöd för en väldig massa protokoll....
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av blueint »

Pekdons protokollet är ganska standardiserat.

btw.. 25 ms var det största tillåtna tidsgapet för USB enheter?

Gillar för övrigt hellre Ethernet, IEEE1394.. vilken dag som helst.. :evil:
Användarvisningsbild
Swech
EF Sponsor
Inlägg: 4750
Blev medlem: 6 november 2006, 21:43:35
Ort: Munkedal, Sverige (Sweden)
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av Swech »

Låter enklare att strypa givarana i den ergonomiska musen med en brytare istället för att mickla med USBn,

Swech
Nerre
Inlägg: 27205
Blev medlem: 19 maj 2008, 07:51:04
Ort: Upplands väsby

Re: Enkel "brytare" för USB möjlig?

Inlägg av Nerre »

Men är protokollet så pass standardiserat så man utan problem kan koppla in möss med en massa extra knappar och finesser? Varför ska i såna fall varenda mus levereras med egna drivrutiner?

Eller menar du att man bara vidarebefordrar alla data som inte har att göra med positionen?
Användarvisningsbild
AndLi
Inlägg: 18257
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av AndLi »

Nerre: Säker för att det behövs, ta tex en usb till serieports adapter, drivrutinen finns redan i standard windows, men man behöver tala om för varje usb id att det är just en usbserieports grunka. Alltså skickar tillverkaren med en .inf fil.

TI har till en av sina µC lite exempelkod på hur en standard hid enhet funkar..
http://www.ti.com/litv/zip/swrc088c
Går säkert att hitta till de flesta µC med usb...
Användarvisningsbild
JimmyAndersson
Inlägg: 26577
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av JimmyAndersson »

Nu går jag emot strömmen. :)

Det *går* faktiskt utmärkt att bara bryta dataledarna i USB till vanliga inmatningsenheter.

Så länge man återansluter samma USB-enhet till samma USB-port som innan så kommer bara OS'et att märka "Jahapp, nu är den igång igen. Aktiverar." Det blir däremot aningen mer trassel om olika enheter växelvis ska anslutas till samma USB-port. Då måste (enkelt uttryckt) rätt drivrutinerna aktiveras igen, vilket kan ta en liten stund.

Det stora problemet uppstår först när det är lagringsenheter som bryts/ansluts, iochmed att en avbruten skrivning kan trassla till filsystemet.


PHermansson:
"Så det skulle ju gå att bara bryta matning eller datasignaler så sett, men då skulle Windows börja klaga direkt."

Har du ett USB-anslutet tangenbord eller mus? Testa att plugga ur något av dem en stund så får du se att Windows inte kommer bry sig. :)
Det enda som eventuellt händer är att Windows spelar upp ett ljud som indikerar att något dragits ur USB-porten.


Nerre:
"Men är protokollet så pass standardiserat så man utan problem kan koppla in möss med en massa extra knappar och finesser? Varför ska i såna fall varenda mus levereras med egna drivrutiner?"

Det beror lite på vad det gäller för pryl, men oftast så är det mest för att hålla lite koll på vilken drivrutiner som produkten troligast kommer användas med. Underlättar t.ex vid support. Sedan kan det finnas lite extra features med de medföljande drivrutinerna.
Rent generellt kan man säga att om prylen är äldre än OS'et så behövs inga extra drivrutiner för att få igång prylen.
Vissa saker som t.ex skrivare, scanners och kameror kan däremot vara väldigt bestämda med att de vill ha en egen (medföljande) drivrutin ändå.
Användarvisningsbild
PHermansson
EF Sponsor
Inlägg: 4340
Blev medlem: 22 december 2004, 00:46:38
Ort: Särestad Grästorp
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av PHermansson »

Jo det var det jag menade med att klaga, det plingar och har sig. Sen är ju frågan hur enheten uppför sig när man kopplar in den igen om man bara bryter D+ och D-?
irkasmork
Inlägg: 192
Blev medlem: 27 juni 2007, 20:32:02
Ort: Göteborg
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av irkasmork »

Hmmm, nu låter det ju nästan som att det skulle kunna fungera i alla fall. :humm:
Det verkar förresten som att åtm. Mousetrapper kan fås att kommunicera över ps/2-porten
istället, kanske vore en bättre idé att använda den möjligheten, det protokollet ska ju
vara lite enklare...
Användarvisningsbild
JimmyAndersson
Inlägg: 26577
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av JimmyAndersson »

Mjo, PS2 är enklare. Då behöver du troligen bara bryta data-ledaren (pin 1).

Det går ju ganska fort att testa PS2 och USB. Om du testar så får du gärna berätta erfarenheterna. :)

PHermansson:
Ljudet är enkelt att åtgärda. :)
Kontrollpanelen -> Ljud och Ljudenheter -> Fliken "Ljud" och sedan bläddra ner till "Enheten är ansluten" respektive "Enheten är frånkopplad".
(C:/windows/media/Windows XP - maskinvara läggs till.wav och C:/windows/media/Windows XP - maskinvara tas bort.wav)

Jag har aldrig testat att bara bryta D+ och D-. För säkerhetskull kan man ju bryta +5V också.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av blueint »

Om man bryter D+ och D-. Och en ny enhet ansluts innan den första återkommer. Blir det inte fel i numreringen då så att drivrutinerna inte hittar rätt?
Speciellt om man t.ex skulle använda två möss.
Användarvisningsbild
JimmyAndersson
Inlägg: 26577
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Re: Enkel "brytare" för USB möjlig?

Inlägg av JimmyAndersson »

Om inte +5V-pinnen påverkar så blir det samma sak som att växla mellan två USB-enheter genom att plugga in/ur sladdarna, så det går fint.

Ifall +5V-pinnen påverkar ifall OS'et "håller kvar" enheten så kan jag tänka mig att det blir problem,
eftersom det ur OS'ets synvinkel ser ut att vara två enheter på samma USB-port.

Det vore lite kul att exprimentera med detta. :)
(Tyvärr har jag bara B-modellen av USB-kontakter för tillfället och jag känner inte för att kapa någon färdig kabel.)
Skriv svar