Forum: Mikrocontroller und Digitale Elektronik Tastaturbefehl senden nach Tastendruck/Schalter drücken


von Alex (nandi)


Lesenswert?

Hallo zusammen,
ich bin neu hier im Forum und kenne mich leider mit ESP usw. noch nicht 
so gut aus.
Ich suche eine Lösung für folgendes Problem:
Durch einen mechanischen Auslöser (Taster, Schließer, Knopf o.ä.) soll 
der Benutzer am PC abgemeldet werden.
Meine Idee ist, dass ein ESP oder ähnlich via USB als zusätzliche 
"Tastatur" am PC angeschlossen wird und dieser dann nach Auslösung des 
Tasters den Befehl "Windows-Taste + L" o.ä. an den PC sendet und der 
Benutzer somit abgemeldet wird.
Ist sowas theoretisch machbar?
Wie könnte man sowas anders/einfacher lösen?

Vielen Dank schonmal für Eure Ideen!

von Heinz R. (heijz)


Lesenswert?

Am einfachsten geht das z.B. mit einem Arduino Micro

https://maker.pro/arduino/projects/how-to-turn-an-arduino-into-a-keystroke-automation-tool

such mal nach arduino hid oder arsuino keyboard emulator

von Christian M. (christian_m280)


Lesenswert?

Mit einem Arduino Micro. Taster gegen GND, Pull-Up ein. Beispiele in der 
HID, etwas anpassen, fettich!

Gruss Chregu

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Christian M. schrieb:
> Mit einem Arduino Micro. Taster gegen GND, Pull-Up ein. Beispiele in der
> HID, etwas anpassen, fettich!

Es wäre nicht die schlechteste Idee, den Taster anständig zu entprellen, 
bevor daraus ein Steuersignal für den PC generiert wird.

von Alex (nandi)


Lesenswert?

Vielen Dank für die schnellen Antworten!
Ich besorge mal so ein Teil und probiere es aus. Danke!

von Jens M. (schuchkleisser)


Lesenswert?

Man kann auch einfach eine alte Schrotttastatur nehmen, baut die Platine 
aus, piepst Win und L raus, macht einen Doppelschließer dran und ist 
fertig.

von Harald K. (kirnbichler)


Lesenswert?

Statt eines Arduino Micro tut es auch ein Attiny 85 mit V-USB; eine 
Integration in das Arduino-Universum gibt es auch in Form des 
"Digispark" (oder einer der unzähligen Nachbauten) davon:
http://digistump.com/products/1
Die Platine ist nur wegen des (im USB-Betrieb überflüssigen) 
Spannungsreglers so groß.

von Flunder (flunder)


Lesenswert?

Alex schrieb:
> Tasters den Befehl "Windows-Taste + L" o.ä. an den PC sendet und der
> Benutzer somit abgemeldet wird.

Diese Tastenkombination sperrt den Rechner, meldet den Benutzer aber 
nicht ab. Vermutlich willst Du den Rechner aber auch nur sperren, weil 
dabei alle vom Benutzer gestarteten Programme weiter laufen.

> Statt eines Arduino Micro tut es auch ein Attiny 85 mit V-USB; eine

Ist ca. halb so teuer, macht aber mittlerweile mehr als doppelt so viele 
Probleme. Das sagt sogar der Laden, der das Dingens mal entwickelt hat. 
Der darauf verbaute µC kann USB nicht hardwaremäßig und muss es deshalb 
in Software emulieren. Das geht allerdings nicht perfekt. Zu Zeiten als 
USB2.0 das höchste der Gefühle war, waren die Hubs und Host-Controller 
noch nicht so pingelig.

von Harald K. (kirnbichler)


Lesenswert?

Flunder schrieb:
> Der darauf verbaute µC kann USB nicht hardwaremäßig und muss es deshalb
> in Software emulieren. Das geht allerdings nicht perfekt.

V-USB ist eine Emulation von Low-Speed-USB. USB-Tastaturen nutzen 
Low-Speed-USB, und V-USB ist dabei spezifikationskonform.

Anders sieht die Sache aus, wenn USB-Geräteklassen genutzt werden, die 
nicht für Low-Speed-USB spezifiziert sind, wie z.B. das für serielle 
Schnittstellen genutzte CDC.

Solange man sich auf HID beschränkt, funktioniert V-USB perfekt und 
ohne Probleme. Und da es hier um Tastendrücke geht, kommt sowieso nichts 
anderes in Frage als HID.

V-USB ist keine Entwicklung von "digistump", sondern von Objective 
Development:

https://www.obdev.at/products/vusb/index.html

von Guido K. (Firma: Code Mercenaries GmbH) (thebug)


Lesenswert?

Falls es auch was "von der Stange" sein darf, es gibt auch fertige 
USB-Tasttaturcontroller, da muss man nur noch die gewünschte 
Tastenbelegung programmieren:
https://www.codemercs.com/de/tastatur/8x8-matrix

von Michael B. (laberkopp)


Lesenswert?

Alex schrieb:
> Ist sowas theoretisch machbar?

Du entnimmst die Elektronik aus einer kaputten Tastatur und lasst deinen 
Kopf die für Win-L nötigen Tastaturleitungen verbinden, fertig.

WLAN brauchst du ja nicht, also keinen ESP.

von C-hater (c-hater)


Lesenswert?

Harald K. schrieb:

> V-USB ist eine Emulation von Low-Speed-USB. USB-Tastaturen nutzen
> Low-Speed-USB, und V-USB ist dabei spezifikationskonform.

Nicht wirklich vollständig und zwar weder auf dem PHY noch beim 
Protokoll.

Aber doch nah genug dran, um i.d.R. problemlos zu funktionieren.

Konkret fehlt bei V-USB:
PHY: differentielle Auswertung von D+/D-
Protokoll: Prüfsummenchecks

Mit den neuen AVR8 kann man das beides allerdings auch noch haben. Der 
höhere Takt und die CCL machen's möglich.

Macht aber dann in der Praxis keinen merklichen Unterschied im Vergleich 
zum originalen V-USB. Kann man sich also auch getrost schenken.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.