Aaron Fischer Ingenieur, Vater, Heimwerker, Problemlöser

21 Februar, 2016

MX-Board

TL;DR:

Ein 3 Tasten Breakout-Board für Cherry MX Schalter. Hiermit lassen sich hochwertige mechanische Tastatur-Schalter an einen Arduino oder RaspberryPi anschließen. Erhältlich zum Selbstkostenpreis in meinem Tindie Shop -- natürlich alles 100% Handarbeit.

MX Board

Das Board lässt sich einfach über die Kabel an die I/O-Pins eines Arduino oder RaspberryPi anschließen. Jeder Taster hat einen Pull-Up Widerstand, um den echten Zustand auszulesen (gedrückt bedeutet HIGH, nicht gedrückt bedeutet LOW). Zudem hat jeder Taster eine Status-LED, die ebenfalls einzeln über Kabel angesteuert werden kann. Mit den LEDs kann beispielsweise ein Schalter-Zustand angezeigt werden (an/aus).

Die Taster sind original mechanische Cherry MX Black, made in Germany. Dies sind eine der besten mechanischen Taster für Tastaturen die man kriegen kann! Sie sind linear und haben einen non-clicky Auslösepunkt (60 cN Auslösekraft). Die Kappen sind schwarze DSA (ABS Plastik) von der Firma Signature Plastic, einer der führenden Tastaturkappen-Hersteller. Die Kappen können natürlich gegen beliebige andere durch abstecken ausgetauscht werden. Es wurden hier nur sehr hochwertige Komponenten ausgewählt und verbaut.

Anschluss

Die Verdrahtung mit einem Arduino ist sehr einfach. VCC und GND mit Strom versorgen. S1-S3 mit jeweils einem I/O-Pin am Arduino verbinden und diesen als Input definieren. Dies genügt schon, um die Taster abzufragen.

MX Board

Hier ein einfacher Beispiel-Sketch:

const int buttonPin = 10;
const int ledPin = 11;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // The switches are equiped with pull-down resistors. So if the
  // button is pressed, you read a HIGH, if the button is released
  // you read a LOW.
  digitalWrite(ledPin, digitalRead(buttonPin));
}

Das Board selbst kann auch auf OSH-Park bestellt werden. Wer sich gar die Platine selbst machen möchte, kann hier alle nötigen Files dazu finden.