DoctorMX用のスイッチを作る

/*
仕様が大分変わってしまったので書き直しました。
DoctorMX用のスイッチをまた作る
2016.6時点ではこちらです。また変わるのかな?
*/




K下ちゃんが音響室に良さげなものがないか物色しにきました。
照明のソフトDoctorMXのスイッチになるものが欲しいそうな。
以前にP田君に作ってあげたやつを引っ張りだして見せてあげました。
arduinoをUSB keyboardに化けさせる
でも、これを作るのは結構ハードルが高い。ソフト的にもハード的にもお財布的にも。

使ってないDaVinci32Uがあったので、新たに作ってみました。
DaVinciはArduino Leonardoの仲間なので、そのままでUSBキーボードになれます。そこが以前と違うところ。シンプルです。
30番ピン(PE6/D7)32番ピン(GND)間にスイッチをひとつ付けました。

ここからArduinoのソースコード。

/*
This sketch turns DaVinci 32U board into USB keybord that has only one(down-arrow) key.
It's usefull to fire each scene in order on some stage-lighting software(like DoctorMX).

The circuit:
  StrawberryLinux's Da Vinci 32U
  pushbutton attached from pin 30(PE6/D7) to 32(GND)
*/
#define BUTTON_PIN 7
#define LED_PIN 13

int prevRead = HIGH ;
int reading ;

void setup(){
  pinMode( BUTTON_PIN , INPUT_PULLUP ) ;
   pinMode( LED_PIN , OUTPUT ) ;
}

void loop(){
  reading = digitalRead( BUTTON_PIN ) ;
  
  if( reading ){
    digitalWrite( LED_PIN , LOW ) ;
  }
  else{
    digitalWrite( LED_PIN , HIGH ) ;
    
    if( prevRead ){
      Keyboard.write(KEY_DOWN_ARROW) ;
    }
    
  }
  prevRead = reading ;
  delay(50) ;
}

ソースコード終わり。シンプルです。

書き込みすると普通に下矢印として使えます。ってかそれしか出来ない。


あんまりはまる所はないはずですけど、留意点。

  • ダビンチはArduino版を買う。
  • boards.txtの書き換え。意識してなかったけど、ダビンチを買った時にやっていたらしい。ストロベリーリナックス社のサイトで確認。
  • 書き込みタイミング。直前にリセットするといいような。合ってる?





コメント