Hallo Karl,

vielen Dank für deine Antwort.

Am 13.05.2010 schrieb neo-n...@…:
Die Minimierung der Tastenzahl stellt meiner Meinung nach nur ein Teil des
anzustrebenden Ziels dar. Lieber möchte ich die Anzahl der Tasten maximieren,
wobei auf die hinreichend gute Erreichbarkeit der Tastenanordnung aus der
Grundstellung heraus geachtet wird. Daraus ergibt sich die Anzahl der Tasten
von selbst. Ein paar Tasten am Rand sollen dahingehend als gerade noch
vertretbar gelten - auch zwei Daumentasten -, um sie mit selteneren Zeichen
oder Funktionen zu belegen.

Erreichbar sind sie sicher alle gut. Aber brauchen wir sie?

Ich habe die Standardtastatur genommen, den Nummernblock abgezogen,
dann die Ebene4. Somit waren alle Doppelbelegungen weg. Effektiv fehlt
nur das KP-Enter, Num-Lock und die höheren Ebenen des Ziffernblock.
Davon vermisse ich nichts bis auf ein paar Zeichen vom Nummernblock,
die mit dem modularen Ebenenkonzept von Neo 3 hoffentlich auf das
Hauptfeld zu holen sind. Mit Zusatznumblock wäre alles wieder da.
Anschließend habe ich 13, aus meiner Sicht selten benutzte, Tasten auf
eine Fn-Ebene ausgelagert.

Will man mehr Tasten belegen, so muss man:
 a) Irgedwas wieder doppelt haben, oder
 b) Ziffernblocktasten richtung Hauptfeld verschieben, oder
 c) Irgendwas wieder von der Fn-Ebene holen, oder
 d) Andere Scancodes senden (Multimediatasten, eigene erfinden, …)
Was schlägst Du vor?

Allerdings benötigt dieser Vorschlag mehr als einen Standard-Encoder.

Vorgesehen ist der selber programmierbare Encoder
SK5101 von Sprintek (3 Stück bekam ich zugesandt):
http://www.sprintek.com/products/SK5100.aspx

Den hast Du ja schon mal vorgestellt. Dazu wollte ich aber erst viel
später was schreiben, aber wenn Du damit anfängst…

Der wäre sehr einfach einzusetzen und benötigt wenig
Softwareentwicklung.

Wo kriegt man den her, was kostet er, ist er flexibel genug, kannst Du
QFN mit der Hand löten? Hast du die Samples direkt vom Hersteller oder
von einem Distributor? Bei Farnell, Digi-Key, Arrow, Bürklin und
Schuricht habe ich ihn leider nicht finden können.

Für meinen Gegenvorschlag habe ich allerdings noch nichts passendes
gefunden. Mein Wunsch wäre ein Standard 8 bit μC mit USB-Interface in
LQFP-32:
 + sehr wahrscheinlich billiger
 + leichter zu löten
 + flexibler einsetzbar (falls der Flash groß genug ist)
 + nicht auf Software des Herstellers angewiesen
 - erheblicher Programmieraufwand
 - habe noch keinen passenden μC gefunden

Vielleicht ist der MC68HC908JB8 was für den Fall. Den gibts als SOIC-28
für 1,82 € ab 10 Stück bei Farnell. Laut Datenblatt¹ kann er an den
USB-Pins auch genügend Strom für PS/2. ABER der hat nur 8 kB Flash
(reicht das?), kein EEPROM und ist noch kein „modernerer“ HCS08.

Es gibt aber auch Projekte, die μCs ohne USB-Interface für
USB-Tastaturen nutzen². Da weiß ich allerdings nicht, ob die Lizenz für
uns passt. In diesem Fall wäre der μC eventuell noch günstiger. Dies
erfordert allerdings etwas Schaltungstechnik.

Bei der Programmierung der Firmware könnte vielleicht die libusb³
nützlich sein.

Am schlimmsten dürfte hier die Tatsache sein, dass ich zwar weiß, was
ich in der Firmware drinhaben will, dass ich aber zum Programmieren zu
doof bin.

Meine Firmwareidee:
 • Firmware erkennt automatisch, ob USB oder PS/2 gesprochen wird.
 • Im EEPROM benutzerdefinierte Tastenbelegungen ablegbar.

Ich habe in dem Vorschlag die Tasten F1 … F4 als Hardware eingeplant.

Dazu wäre die F4-Position an einer zu schlecht greifbaren Stelle platziert.
Hingegen ist für den rechten Zeigefinger an der vermutlich gerade noch gut genug
vertretbaren Stelle zwischen den LEDs namens Mod4 und Fn keine Taste
vorgesehen. Dann lieber zwei Funktionstasten auf die andere Hand legen und
zwei LEDs in dem Bereich anordnen, wo F4 vorgeschlagen ist.

Guter Vorschlag, danke. also F1 und F2 links, rechts F3 und F4.
Allerdings würde ich die LEDs dann rechts lassen, weil wir sonst
wahrscheinlich mehr als 12 Adern im Verbindungskabel der beiden
Tastaturhälften brauchen.

Bei der Funktion der Mod4 / Fn Taste habe ich in deiner Mail
(hmk5qp$6fu$1 <at> dough.gmane.org) gewildert (Mod4 drücken + loslassen =
Fn). Wahrscheinlich ist das gewöhnungsbedürftig.

Wenn ich mich richtig erinnere, wurde die Idee gut begründet abgelehnt, weswegen
lieber andere Möglichkeiten bedacht werden sollten.

Ich glaube, die Einwände bezogen sich auf die vorhergehenden Mails mit
komplizierteren Konzepten. Aber eine separate Fn-Taste ist bestimmt
auch nicht das schlechteste. Damit fällt dann auch die Fn-LED weg.
Also: an jedem Daumen eine? Oder deine Kleinfingerspreiz-Tasten?

Die Tastatur soll bei betätigter Mod4 nämlich dann den Scancode von
Enter statt Mod4+P senden. Damit wäre auch das Bios bedienbar.
> Beim Booten wird Del bisweilen auf der ersten Ebene benötigt. Zudem sollte
> die Tastenkombination Ctrl+Alt+Del ohne eine weitere (Fn-) Taste gedrückt
> werden können. Evtl. kann für diese besonderen Zwecke eine Del-Taste als
> Mikrotaster eingebaut werden.

Dass beim Booten Entf auf der ersten Ebene gebraucht wird sehe ich nicht.

Das hängt vom BIOS ab. Mir ist der Sonderfall in Erinnerung geblieben, dass die
Kollegen aus der EDV-Abteilung nach langem Rätseln erst nach dem Anschließen
einer anderen Tastatur (die Delete auf Ebene 1 hatte) das BIOS aufrufen
konnten, trotzdem die andere Tastatur (nachträglich überprüft) korrekt
funktionierte.
Ob solch ein Fall heute noch relevant ist, das vermag ich nicht abzuschätzen.

Die Tastatur soll ja den Scancode von Entf senden statt Mod4+c. Für den
Rechner und dessen Software wären meiner Meinung nach die beiden Fälle
nicht unterscheidbar.

PPS: Meine Darstellung der Ebenen im pdf nach dem Prinzip Vektoradition
finde ich unübertroffen schön.

Ja, die Darstellung ist gelungen. Wo die Belegung von Ebene1 und Ebene2 sich nur
durch Großschreibung desselben Buchstaben unterscheidet, da könnte die
Übersichtlichkeit erhöht werden, wenn nur der Großbuchstabe aufgedruckt wird. ;)

Für den Tastaturaufdruck würde ich nur die Ebenen 1–4 verwenden, ähnlich
dem heutigen Standard auch ohne Kleinbuchstaben. Die komplette Belegung
nur auf Papier beilegen oder auf die Rückseite kleben.

Gruß

Miche

¹ <http://cache.freescale.com/files/microcontrollers/doc/data_sheet/MC68HC908JB8.pdf>
² http://www.obdev.at/products/vusb/hidkeys.html
³ http://www.libusb.org/

PS: Jetzt muss ich aber wirklich wieder zurück an die Arbeit.




Antwort per Email an