====== Hello mBot Bluetooth ======
Dieses Arduino-Programm ermöglicht die Steuerung der **mBot-LEDs über Bluetooth**.  
Über ein **Bluetooth-Terminal** (z. B. ''Serial Bluetooth Terminal'' für Android)  
kann der mBot Befehle empfangen und die **LEDs in verschiedenen Farben schalten**. 
**Wozu Bluetooth?**
Sobald Bluetooth für den **mBot** verfügbar ist, eröffnet es eine Vielzahl von Steuerungs- und Regelungsaufgaben. Die **mBots** können sowohl untereinander als auch über einen PC (Android, Linux) gesteuert werden oder in Gruppen agieren. Dies schafft zahlreiche interessante Anwendungsmöglichkeiten. 8-)
 
**Bluetooth mit **mBot** ist aufgrund der //"fehlenden Dokumentation"// zu Beginn mit einigen Hürden verbunden.** :-?
  -  Beim **mBot** teilen sich die USB-Verbindung und das Bluetooth-Modul (welches aufgesteckt wird) die __gleiche Hardware__. Das bedeutet, dass bei einer USB-Verbindung (USB-Kabel steckt) Bluetooth nicht genutzt werden kann!
  - Die Klasse `MeBluetooth` in der API oder `SoftwareSerial` sind __nicht__ für den **mBot** zuständig. 
  - Die Programmierung ist identisch mit der Programmierung der seriellen Schnittstelle, wobei die Baudrate auf den Standardwert **115200** gesetzt werden sollte.
  - Das Gerät muss mit den richtigen ''UUIDs'' verwendet werden (siehe Unten).
==== Quellcode (engl. Sourcecode) ====
#include 
MeRGBLed led(0, 2);  // LED-Modul am mBot
void setup() {
    Serial.begin(115200);
    led.setpin(13);
    led.setColor(0, 0, 0, 0); // LED aus beim Start
    led.show();
}
void loop() {
    if (Serial.available()) {
        char cmd = Serial.read();
        switch (cmd) {
            case 'r':  // Rot
                led.setColor(0, 255, 0, 0);
                led.setColor(1, 255, 0, 0);
                break;
            case 'g':  // Grün
                led.setColor(0, 0, 255, 0);
                led.setColor(1, 0, 255, 0);
                break;
            case 'b':  // Blau
                led.setColor(0, 0, 0, 255);
                led.setColor(1, 0, 0, 255);
                break;
            case '0':  // LED aus
                led.setColor(0, 0, 0, 0);
                led.setColor(1, 0, 0, 0);
                break;
            default: // unknown command ...do nothing
                return; 
        }        
        led.show();
        delay(50); 
    }
}
**Erlaubte Befehle:**  
  * '''r''' → LEDs **Rot**  
  * '''g''' → LEDs **Grün**  
  * '''b''' → LEDs **Blau**  
  * '''O''' → LEDs **Ausschalten**  
===== Verbindung des mBot über Bluetooth =====
  - Den **Code auf den mBot hochladen** (über USB mit der Arduino IDE).  
  - Das **USB-Kabel entfernen**, da Bluetooth den __gleichen__ seriellen Port nutzt!
  - Den **mBot** neu starten.  
  - Den **mBot mit einem Bluetooth-Terminal verbinden**:  
    - **Android**: ''Serial Bluetooth Terminal'' (Play Store) 
    - **Linux**: ''bluetoothctl'' oder ''minicom''  
  - Einen der folgenden Befehle senden:  
    - **''r''** → LEDs **Rot**  
    - **''g''** → LEDs **Grün**  
    - **''b''** → LEDs **Blau**  
    - **''O''** → LEDs **Ausschalten**  
Nach erfolgreicher Verbindung können die **LEDs über Bluetooth gesteuert werden**. 🚀 
====  Bluetooth Verbindung herstellen   ====
  * [[Bluetooth-Verbindung mit Android]] 
  * [[Bluetooth-Verbindung mit Linux]]