Einleitung
Dieser Artikel erklärt, wie Sie das IoT-Entwicklungskit einrichten, Bluetooth SPP aktivieren, die Yocto-Anwendung erstellen, welche die Daten aus dem Puffer der Pipe abruft, die von der BT-DBUS-API verwendet wird, und wie Sie den GPIO zum Ein- und Ausschalten der Intel(R) Edison-LED steuern. Durch das Befolgen der untenstehenden Schritte können Sie die Intel(R) Edison Entwicklungsumgebung für Bluetooth einrichten und die Funktionsweise der Intel(R) Edison-Hardware und -Software nachvollziehen.
Dieser Artikel basiert auf 2 Artikeln und 1 Startbeispiel für Intel Edison.
- Verbinden der Intel® Edison-Platine mit Ihrem Android* Phone über Serial Port Profile (SPP)
- Arduino-Codekommunikation mit Ihrem Android* Phone über Bluetooth Serial Port Profile (SPP) auf Intel® Edison
- Steuern einer LED mit der Eclipse* IDE auf der Intel® Edison-Platine
https://software.intel.com/de-de/blinking-an-led-with-eclipse-ide
<Abb. Die Systemstruktur mit einer Anwendung>
Voraussetzungen
- Hardware
- Laptop (Windows 7 oder 8.1 wird bevorzugt)
- Android Smartphone oderr Tablet mit der Android BT App (Bluetooth SPP tools pro)
- Intel(R) Edison Arduino-Platine
- Installieren Sie das IoT-Entwicklungskit (IDE -> Eclipse*) – falls Sie noch nicht über Intel Edison verfügen.
(1) Besuchen Sie https://software.intel.com/iot/downloads
(2) Wählen SIe Eclipse und Windows.
(3) Entpacken Sie iotdk-ide.win.7z
(4) Führen Sie die Datei devkit-launcher.bat aus (möglicherweise müssen Sie zunächst JRE-64bit herunterladen.)
(5) Eclipse sollte starten.
Schritt-für-Schritt-Anleitung
1. Anschließen und Zusammenbau
Weitere Einzelheiten: https://software.intel.com/de-de/assembling-intel-edison-board-with-arduino-expansion-board
Weitere Einzelheiten: https://software.intel.com/de-de/assembling-intel-edison-board-with-arduino-expansion-board
2. Installation des Gerätetreibers
https://software.intel.com/iot/hardware/edison/downloads
Standalone-Treiber für Windows, Version 1.2.1 (8,97 MB, .exe)
Sie müssen den installierten Gerätetreiber für den Host-PC überprüfen, an dem Intel(R) Edison angeschlossen ist.
3. Anschluss Ihrer Intel® Edison-Platine mithilfe von Ethernet-over-USB
Weitere Einzelheiten finden Sie unter: https://software.intel.com/de-de/connecting-to-intel-edison-board-using-ethernet-over-usb
- Erstellen einer Zielverbindung (lib- und Ziel-Image-Warnungen ignorieren, falls sie angezeigt werden)
(1) Führen Sie die Datei devkit-launcher.bat aus
(2) Wählen Sie die Option „Create Target Connection“
(3) Geben Sie den Verbindungsnamen ein: Edison/IP-Adresse: 192.168.2.15
(4) Gehen Sie zu „Target SSH Connections“, rechtsklicken Sie und wählen Sie „Connect“
(5) Warten Sie einen Moment, bis die Verbindung aufgebaut wurde.
(6) Sie können das Terminal durch Rechtsklicken unter „Target SSH Connections“ aufrufen
(7) Die Login-ID, falls erforderlich, lautet „root“.
4. Steuern einer LED mit der Eclipse* IDE auf der Intel® Edison-Platine
Weitere Einzelheiten finden Sie unter: https://software.intel.com/de-de/blinking-an-led-with-eclipse-ide
5. Aktivieren von Edison Bluetooth und SPP
(1) Ändern Sie den Bluetooth-Gerätenamen
root@edison:~# rfkill list root@edison:~# rfkill unblock bluetooth root@edison:~#bluetoothctl [bluetooth]# scan on [bluetooth]# discoverable on [bluetooth]# exit root@edison:~#vi /var/lib/bluetooth/XX:XX:XX:XX:XX:XX/settings
Fügen Sie folgende Zeile hinzu: Alias=MyName-edison
root@edison:~#shutdown –r now
(2) Laden Sie das Python-Skript für das SPP-Testprofil über die DBUS-API hoch
Öffnen Sie auf dem Host-PC einen FTP-Client mit folgendem Hostnamen: 192.168.2.15/Protokoll: SFTP (SSH FTP).
Laden Sie die Datei „SPP-pipe-out.py“ hoch.
(3) Fügen Sie das Testprofil für SPP hinzu
root@edison:~# vi /etc/dbus-1/system.d/bluetooth.conf
Wenn die Datei bluetooth.conf nicht die Zeile <allow send_interface="org.bluez.Profile1"/> enthält, fügen Sie sie hinzu und speichern Sie die Datei.
root@edison:~#shutdown –r now
(4) Schalten Sie die Platine ein und stellen Sie die BT-Verbindung her (in den Terminals)
root@edison:~# python SPP-pipe-out.py & root@edison:~#rfkill unblock bluetooth root@edison:~#bluetoothctl [bluetooth]# show ← to make sure of the Serial Port Profile [bluetooth]# scan on [bluetooth]# pair 40:E2:30:21:64:18 ← enter the MAC of your android device
Wählen Sie auf dem Android-Gerät im erscheinenden Dialogfenster die Option „Pair“.
[bluetooth]# discoverable on ← to connect it in the Android [bluetooth]# trust 40:E2:30:21:64:18 ← enter the MAC of your android device
(5) Führen Sie die BT-App auf dem Android-Gerät aus und bauen Sie eine Verbindung über SPP auf
Starten Sie auf dem Android-Gerät „bluetooth spp pro“ → scan → Wählen Sie Ihre Edison-Platine → connect → CMD line mode
6. Intel(R) Edison BT SPP-Anwendung
(1) Kopieren Sie in Ihrem Eclipse-Workspace 2 Dateien in den Quellordner der C++-Anwendung „on board LED blinking C++“. (Z.B. \workspace\ble-spp-led-test1\src)
(2) Drücken Sie im Project Explorer von eclipse die Taste F5 (Aktualisieren).
(3) Fügen Sie durch Bezugnahme auf ble-spp-test.cpp in main() der Anwendung „LED blinking C++“ Code hinzu bzw. modifizieren Sie diesen.
7. Ein- und Ausschalten der Onboard-LED über BT SPP vom Android-Gerät aus.
(1) Schalten Sie die Platine ein und stellen Sie eine BT-Verbindung her/führen Sie die BT-App aus → siehe obige Prozedur „5. Aktivieren von Edison-Bluetooth und SPP (4) und (5)“.
(2) Kompilieren Sie die BT SPP-Anwendung in eclipse und führen SIe sie aus. (Überprüfen Sie, ob die Verbindung zu Edison in den Ziel-SSH-Verbindungen von eclipse vorhanden ist.)
(3) Senden Sie in BT SPP Pro auf dem Android-Gerät den Befehl „On“ oder „Off“ nud überprüfen Sie die Onboard-LED.
8. Begriffe
SPP | Serial Port Profile |
DBUS | Ein Interprozess-Kommunikationsprotokoll |
GPIO | General Purpose Input/Output |
9. Verweise
Anleitungsdokument für Intel(R) Edison Bluetooth.
Verbinden der Intel® Edison-Platine mit Ihrem Android* Phone über Serial Port Profile (SPP)
https://software.intel.com/de-de/articles/connecting-the-intel-edison-board-to-your-android-phone-with-serial-port-profile-spp\
Arduino-Codekommunikation mit Ihrem Android* Phone über Bluetooth Serial Port Profile (SPP) auf Intel® Edison
https://software.intel.com/de-de/blogs/2015/05/19/communicate-to-arduino-code-with-your-android-phone-by-bluetooth-serial-port
Steuern einer LED mit der Eclipse* IDE auf der Intel® Edison-Platine
https://software.intel.com/de-de/blinking-led-with-eclipse-ide-on-intel-edison-board