 #ifdef SOFT_SERIAL
 #include <SoftwareSerial.h>
 #define CONSOLE sSerial
-#endif
+#endif /* SOFT_SERIAL */
+
 #ifdef SERIAL
 #define CONSOLE Serial
-#endif
-#ifdef YUN
+#endif /* SERIAL */
+
+#ifdef SERIAL1
+#define CONSOLE Serial1
+#endif /* SERIAL1 */
+
+#ifdef SERIAL2
+#define CONSOLE Serial2
+#endif /* SERIAL2 */
+
+#ifdef SERIAL3
+#define CONSOLE Serial3
+#endif /* SERIAL3 */
+
+#ifdef BRIDGE
 #include <Console.h>
 #define CONSOLE Console
-#endif /* YUN */
-
+#endif /* BRIDGE */
+
+#ifdef SOFT_WDT
+#include <avr/wdt.h>
+#endif /* SOFT_WDT */
 /*
     各種変数型の定義とグローバル変数の定義&初期化
  */

      currentState=transition_control_off();
  }
  delay(LOOP_WAIT_TIME); // 次のイベントチェックまでの待ち時間
}

   初期処理
 */
void setup() {
  Serial.begin(9600);
#ifdef SOFT_WDT
  wdt_enable(WDTO_8S);
#endif /* SOFT_WDT */
#ifdef DEBUG
  Serial.println("start");
#endif
#ifdef DEBUG
  Serial.println("relay pin setup");
#endif
  // Raspberry Piと接続するケーブルのデジタルI/Oのピンの動作定義
  pinMode(RELAY_PIN,     OUTPUT);
  relayControl(true);
#ifdef DEBUG
  Serial.println("done");
#endif
  //digitalWrite(RELAY_PIN,LOW);
#ifdef DEBUG
  Serial.println("shutdown pin setup");
#endif
  pinMode(SHUTDOWN_PIN,  OUTPUT);
  digitalWrite(SHUTDOWN_PIN,LOW);
#ifdef DEBUG
  Serial.println("done");
#endif
#ifdef DEBUG
  Serial.println("keep alive pin setup");
#endif
  pinMode(KEEP_ALIVE_PIN, INPUT);
  //digitalWrite(KEEP_ALIVE_PIN,LOW);
#ifdef DEBUG
  Serial.println("done");
#endif
  //pinMode(HIGH_TEMP_PIN,  OUTPUT);
  //digitalWrite(HIGH_TEMP_PIN,LOW);
  pinMode(HIGH_TEMP_PIN,  INPUT);
#ifdef DEBUG
  Serial.println("high temperature pin setup");
#endif
#ifdef DEBUG
  Serial.println("done");
#endif
#ifdef DEBUG
  Serial.println("power button pin setup");
#endif
  pinMode(POWER_PIN,      INPUT);
  //digitalWrite(POWER_PIN,LOW);
#ifdef DEBUG
  Serial.println("done");
#endif

#if defined(SOFT_SERIAL) || defined(SERIAL1) || defined(SERIAL2) || defined(SERIAL3)
  CONSOLE.begin(9600);
#endif /* SOFT_SERIAL || SERIAL1 || SERIAL2 || SERIAL3 */
#ifdef BRIDGE
  Bridge.begin();
  Console.begin();
#endif /* BRIDGE */
#ifdef LCD
  lcd.begin(16, 2);
#endif /* LCD */
