Forum: Mikrocontroller und Digitale Elektronik PC-Tastaturlayout ändern mit avr?


von Martin N. (martini2)


Lesenswert?

Hallo

ich möchte mir eine Schaltung bauen die, eingeschleift in eine Tastatur, 
die empfangenen scancodes in andere übersetzt. Im Grunde z.B. so: Taste 
A rein Taste G raus. Somit könnte ich mir eine normale Tastatur mit 
einem "nativen" dvorak oder neo Layout programmieren. Muss dann nur noch 
die Tastenkappen vertauschen.
Vor langer Zeit habe ich auf http://www.keelog.com/diy.html eine 
Schaltung gefunden die ich modifizieren wollte. Sollte möglichst klein 
und günstig sein um sie in alle Tastaturen einbauen zu können. 
Allerdings bin ich immer noch ganz am Anfang meiner Mikrocontroller 
Karierre und noch immer bei Basic ;) Aber laut forum hat bascom ja 
einige Funktionen um mit Tastaturen umzugehen. Mit PS/2 Tastaturen 
sollte das ja sogar von mir machbar sein.
Nun stirbt PS/2 aber langsam aus und ich habe auch einige 
USB-Tastaturen. Kann man da auch so einfach die Daten abgreifen und 
manipulieren oder muss man chips wie ft232, etc. verwenden? Oder kann 
man den in die Tastatur eingebauten controller auslesen, 
Zuweisungstabellen patchen und zurückflashen?
Wo kann ich Infos über die USB-Tastaturcontroller oder das verwendete 
Protokoll finden?
Aber vielleicht kennt jemand so eine Schaltung oder hat sowas im Netz 
schon (kaufbar) gesehen?

Gruß
Martin

von Kai (Gast)


Lesenswert?

Am einfachsten wird es, in Bezug auf USB-Tastaturen, sein, wenn du den 
Controller aus der Tastatur rausreißt und an seiner Stelle einen 
KeyWarrior von http://www.codemercs.com/ (gibts bei Segor zu kaufen) 
reinpflanzt. Dieser kann dann auf das gewünschte Layout programmiert 
werden.

von Peter D. (peda)


Lesenswert?

Wäre es nicht einfacher, in Windows ne andere Tastaturtabelle zu laden ?

Das hätte auch den Vorteil, zwischen verschiedenen Layouts umschalten zu 
können.


Peter

von Martin N. (martini2)


Lesenswert?

@Peter
softwaremäßig geht das nicht. Das funktioniert dann nicht im BIOS oder 
in DOS bzw. vor der Anmeldung in Windows. Und ich müsste ständig die 
Tastaturkappen tauschen :(. Der PC muss schon beim booten denken dass 
eine dvorak, etc. Tastaur dranhängt.

für den KeyWarrior will Segor 17,20 Euro plus Versand haben. Das ist 
recht teuer. Ich schaue mir das aber mal genauer an.

von Thomas B. (yahp) Benutzerseite


Lesenswert?

Moin,

hätte auch gesagt, das Software die einfachere Lösung ist. Von 
Gerätetreibern für diese "neumodschen" Tastaturlayouts hat man schon 
gehört. Wegen BIOS und DOS: Mal im Ernst, wie oft bist du im BIOS zu 
Gange? DOS, DOS? Was soll das sein ;->

von André (Gast)


Lesenswert?

>softwaremäßig geht das nicht. Das funktioniert dann nicht im BIOS oder
in DOS bzw. vor der Anmeldung in Windows.

Weil ich nicht genau wußte worum es hier mit DVORAK eigentlich geht, 
habe ich mal beim Wiki nachgeschaut. Das würde ich dir auch einmal 
empfehlen, dann würdest du deine letzte Aussage revidieren ;)

Gruß, André

http://de.wikipedia.org/wiki/Dvorak-Tastaturlayout

von Martin N. (martini2)


Lesenswert?

Ich entschuldige mich für die missverständliche Formulierung. Ich meinte 
"softwaremäßig möchte ich es nicht", aus den angegebenen Gründen.
Nach meiner Vorstellung wäre diese Tastatur dann im bios, linux, 
windows, etc immer eine dvorak und das eben ohne Gefummel am kernel oder 
der systemsteuerung. What you push ist what you get.
Außerdem möchte ich was basteln :) Sonst hätte ich nicht in einem 
mikrocontroller forum nachgefragt :)

von Peter D. (peda)


Lesenswert?

Im Bios braucht man eh nur die Pfeiltasten, ESC und Enter, ist also 
völlig egal, wo die Buchstaben liegen.
Und für Linux gibts bestimmt auch ne fertige Tabelle.


Aber wenns unbedingt Selbstbau sein muß, mußt Du dir eben die 
USB-Spezifikationen reinziehen, viel Spaß dabei.

Eigentlich kannste es voll vergessen, ich kenne jedenfalls keinen MC, 
der gleich 2 USBs (1*Master, 1*Slave) intern hat.


Peter

von Kai (Gast)


Lesenswert?

@Peter
Selbst das gibt es mittlerweile, obwohl es für diese Anwendung sicher 
reichlich overkill ist: Vinculum VNC1L. Siehe www.ftdichip.com oder 
www.vinculum.com

Kai

von Martin N. (martini2)


Lesenswert?

Jungs, ihr müsst das mal sportlich sehen :)
Dafür sind doch mikrocontroller da. Vielleicht kann man das Signal 
anzapfen, auf bestimmte Muster überprüfen und modifiziert ausgeben. Oder 
es geht noch einfacher. Aber danke für die Infos und links. Melde mich 
sicher wenn ich was zustande kriege.

Martin

von Sebastian (Gast)


Lesenswert?

Wieso beschränkst du dich nicht einfach auf PS/2? Das schein ja auch für 
bastler handlebar zu sein und wie du sagst ist es sogar schon in Bascom 
integriert. Damit wird die Software doch relativ einfach.
Oder du lädst dir einfach die entsprechenden Treiber.

Sebastian

von Thomas B. (yahp) Benutzerseite


Lesenswert?

> Vielleicht kann man das Signal anzapfen, auf bestimmte Muster überprüfen
> und modifiziert ausgeben.

Du kannst bei USB nicht einfach das "Signal" anzapfen. Da wandern immer 
ganze Pakete über den Bus. Die musst du dann erstmal zerpflücken. Im 
Prinzip bräuchtest du dazu wirklich ein System was Richtung Tastatur nen 
USB Host miemt und Richtung PC ein USB Gerät, also die Function. Beides 
in einem µC habe ich wie Peter auch noch nicht gesehen.

Du kannst natürlich einen leistungsfähigen µC mit USB-Hostfunktionalität 
nehmen und den anderen Teil, also das USB Device, in Software machen. 
Sowas geht schliesslich sogar auf nem AVR und eine Tastatur braucht ja 
nicht gerade Highspeed USB ;-)


> Oder es geht noch einfacher.

Einfacher ist dann wahrscheinlich den originalen Controller der Tastatur 
rauszureißen und zu ersetzen...

von TravelRec. (Gast)


Lesenswert?

Das PS/2 Protokoll ist easy, eine schöne Anleitung dazu gibt´s auf 
www.marjorie.de . Ein Tiny2313 kommt damit locker klar.

von Michael F. (startrekmichi)


Lesenswert?

Noch eine Möglichkeit: mit PS/2 den Tastaturcontroller bauen, falls man 
dann für den PC eine USB-Schnittstelle braucht, muss man halt einen 
Adapter anschließen.

von Peter D. (peda)


Lesenswert?

Ein einigermaßen einfache Möglichkeit wäre noch, sich zwischen 
Tastenmatrix und USB-Chip zu hängen.
Ist natürlich ein höllischer Verdrahtungsaufwand.


Peter

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.