Skip to content
Control lego and fischertechnik controllers with the R-Pi via bluetooth LE
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
batterie.sh
ble_test.sh
charakteristiken.py
ft_bt_remote_led_blink.sh
ft_bt_smart_led_blink.sh
ft_karussell.py
ft_rc_racer.py
hcitool-xlescan-raspbian.tgz
hcitool-xlescan.patch
lego_boost_color_echo.py
lego_boost_led_blink.sh
lego_boost_monitor.py
lego_dino.py
lego_wedo_led_blink.sh
python-gatt-install.sh

README.md

BLE-Beispiele

Dieses Repository enthält Beispiele zur Bluetooth-LE-Kopplung von Raspberry-Pi3 und fischertechnik-BT-Smart-Controller, fischertechnik-BT-Control-Receiver oder einem Lego-WeDo-2.0-Hub wie in c't 18/2017 S. 144ff beschrieben.

Shell-Skripte

Für die Shell-Scripte sind keine weiteren Installationen nötig. Sie laufen auf einem Raspbian-Jessie-Lite-Standardinstallation.

  • batterie.sh ist ein einfaches Bash-Shellskript, das permanent nach BLE-Geräten sucht und für jedes gefundene Gerät versucht, den Batterielevel auszulesen.

  • ft_bt_smart_led_blink.sh ist eim einfaches Bash-Shellskript, das die orange und blaue LED des BT-Smart-Controller im Wechsel blinken lässt. Wird das Skript ohne Parameter aufgerufen, dann suche es selbsttätig nach einem passenden Controller. Dafür sind root-Rechte nötig. Wird eine Bluetooth-Adresse als Parameter übergeben, dann wird diese genutzt und es sind keine Root-Rechte nötig.

  • ft_bt_remote_led_blink.sh ist eim einfaches Bash-Shellskript, das die orange und blaue LED des BT-Control-Receivers im Wechsel blinken lässt. Wird das Skript ohne Parameter aufgerufen, dann suche es selbsttätig nach einem passenden Empfänger. Dafür sind root-Rechte nötig. Wird eine Bluetooth-Adresse als Parameter übergeben, dann wird diese genutzt und es sind keine Root-Rechte nötig.

  • lego_wedo_led_blink.sh blinkt mit der LED des WeDo-Hub im Wechsel orange und blau. Wird das Skript ohne Parameter aufgerufen, dann suche es selbsttätig nach einem passenden Controller. Dafür sind root-Rechte nötig. Wird eine Bluetooth-Adresse als Parameter übergeben, dann wird diese genutzt und es sind keine Root-Rechte nötig.

  • lego_boost_led_blink.sh blinkt mit der LED des Boost-Hub im Wechsel orange und blau. Wird das Skript ohne Parameter aufgerufen, dann suche es selbsttätig nach einem passenden Controller. Dafür sind root-Rechte nötig. Wird eine Bluetooth-Adresse als Parameter übergeben, dann wird diese genutzt und es sind keine Root-Rechte nötig.

Python-Skripte

Die Python-Skripte benötigen neben der bereits bei der Standardinstalltion eines Raspbian-Jessie-Lite zusätzliche Pakete. Vor allem wird für python-gatt eine neuere Version des BlueZ-Stacks benötigt als bei jessie mitgeliefert.

Das Script [python-gatt-install.sh](python-gatt-install.sh) nimmt die nötgen Änderungen automatisch vor.

  • ft_karussell.py kontrolliert das Karussell-Modell aus dem BT-Smart-Beginner-Set. Auf Tastendruck startet das Karussel, erhöht langsam seine Geschwindigkeit, läuft für 30 Sekunden und bremst langsam wieder ab.

  • lego_dino.py steuert das Dinosaurier-Modell aus dem Lego-WeDo-2.0-Baukasten. Der Bewegungssensor wird ausgewertet, um die LED am Dino zu färben. Befindet sich ein Hindernis direkt vor dem Dino, dann wird zusätzlich der Motor eingeschaltet.

  • ft_rc_racer.py kontrolliert das Rennauto aus dem BT-Racing-Set. Er beschleunigt sanft, fährt 2 Sekunden gerade, lenkt ein, fährt 2 Sekunden um die Kurve und bremst dann sanft ab.

  • lego_boost_color_echo.py liest einen Farbwert vom angeschlossenen Farbsensor und "spiegelt" diese Farbe an der eingebauten LED.

  • lego_boost_monitor.py gibt alle bekannten Ereignisse im Klartext aus. Dabei werden auch WeDo-2.0-Sensoren am Boost erkannt und deren Werte ausgegeben. Beinhaltet eine komplette Boost-Klasse zum Lesen und Setzen aller bekannten Sensoren und Aktoren inkl. aller Sensoren und Aktoren des WeDo-2.0

You can’t perform that action at this time.