Abo
  • Services:

Das Peripheral-Modul

Die Funktion des Peripheral wird ein Raspberry Pi übernehmen, an ihn schließen wir über dessen GPIO-Pins eine LED und einen Taster an. Dann entwickeln wir einen BluetoothLE-Service mit zwei Characterics: einen um die LED an- und auszuschalten und einen zweiten zum Auslesen des Taster-Status.

Stellenmarkt
  1. über duerenhoff GmbH, Frankfurt am Main
  2. Heraeus infosystems GmbH, Hanau

Dazu müssen wir mit Hilfe von Bleno den Service sowie die Characteristics implementieren und die notwendige Logik, um auf Schreib- beziehungsweise Leseanfragen zu reagieren. Das vollständige Javascript-Skript für Node.js kann von unserem Webserver unter https://www.golem.de/projekte/btle/bt_peripheral.js heruntergeladen werden.

Wir beginnen damit, Bleno in unserem Skript einzubinden und zwei Event-Handler zu registrieren.

  1. var bleno = require('bleno');
  2.  
  3. bleno.on('stateChange', function(state) {
  4. if (state === 'poweredOn') {
  5. bleno.startAdvertising('led', []);
  6. } else {
  7. bleno.stopAdvertising();
  8. }
  9. });
  10.  
  11. bleno.on('advertisingStart', function(error) {
  12. if (!error) {
  13. bleno.setServices([
  14. new LedService()
  15. ]);
  16. }
  17. });

Der Event 'stateChange' wird aufgerufen, wenn der Bluetooth-Dongle von Bleno angesprochen werden kann - oder auch nicht mehr. Wenn der Dongle bereit ist, versetzt startAdvertising() ihn in einem Modus, in dem er kontinuierlich auf sich aufmerksam macht. Der erste Parameter dieser Methode ist der Name, unter dem das Peripheral für andere Bluetooth-Geräte sichtbar ist.

Der zweite Event wird ausgelöst, wenn das Advertising erfolgreich gestartet werden konnte. Jetzt kann unser eigener Service initialisiert werden. Die Klasse LedService ist abgeleitet von bleno.PrimaryService. Im Konstruktor der Klasse setzen wir die UUID des Service und initialisieren die beiden Characteristics des Services.

  1. function LedService() {
  2. LedService.super_.call(this, {
  3. uuid: '5dfeb700bb8711e393430002a5d5c51b',
  4. characteristics: [
  5. new LedReadCharacteristic()
  6. , new LedWriteCharacteristic()
  7. ]
  8. });
  9. }
  10.  
  11. util.inherits(LedService, bleno.PrimaryService);

Die UUID können wir selbst festlegen, sie sollte laut Bluetooth-Spezifikation 128 Bit lang sein. Eine einfache Generierungsmöglichkeit gibt es auf der Webseite der ITU.

 Noble und BlenoTasterwert lesen und senden 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
  11. 10
  12. 11
  13.  


Anzeige
Top-Angebote
  1. 172,98€ (beide Artikel in den Warenkorb legen, um 60€ Direktabzug zu erhalten. Einzelpreise im...
  2. (zusammen mit G703/903 Lightspeed in den Warenkorb legen, um 60€ Direktabzug zu erhalten)
  3. 699€ statt 1.199€ im Vergleich
  4. (u. a. HP Omen 1100 Gaming-Tastatur für 49,99€ statt 79,99€ und HP 15.6" Topload Tasche...

Panzergerd 25. Sep 2015

Inzwischen gibt es bei BlueZ auch GATT-Support via D-Bus. Mit den Beispielprogrammen...

pUiE 10. Jun 2014

Um eine Verbindung von Android Smartphone zu µC herzustellen (zu testzwecken...

Tylon 25. Apr 2014

Sehr schön! An den Threadersteller: wer benötigt auch dB als Angabe bei den...

MarioWario 24. Apr 2014

Ja, im Bereich der Kraft-/Leistungsmesser ist ANT+ noch wichtig (momentan; http://www...


Folgen Sie uns
       


Xbox E3 2018 Pressekonferenz - Golem.de Live

Große Gefühle beim E3-2018-Livestream von Microsoft: Erlebt mit uns die Ankündigungen von Halo Infinite, Gears 5, Sekiro, Cyberpunk 2077 und vielem mehr.

Xbox E3 2018 Pressekonferenz - Golem.de Live Video aufrufen
Gemini PDA im Test: 2004 ist nicht 2018
Gemini PDA im Test
2004 ist nicht 2018

Knapp über ein Jahr nach der erfolgreichen Finanzierung hat das Startup Planet Computers mit der Auslieferung seines Gemini PDA begonnen. Die Tastatur ist gewöhnungsbedürftig, längere Texte lassen sich aber mit Geduld durchaus damit tippen. Die Frage ist: Brauchen wir heute noch einen PDA?
Ein Test von Tobias Költzsch und Sebastian Grüner

  1. Atom Wasserfestes Mini-Smartphone binnen einer Minute finanziert
  2. Librem 5 Freies Linux-Smartphone wird größer und kantig
  3. Smartphone-Verkäufe Xiaomi erobert Platz vier hinter Huawei, Apple und Samsung

Sony: Ein Kuss und viele Tode
Sony
Ein Kuss und viele Tode

E3 2018 Mit einem zärtlichen Moment in The Last of Us 2 hat Sony sein Media Briefing eröffnet - danach gab es teils blutrünstiges Gameplay plus Rätselraten um Death Stranding von Hideo Kojima.
Ein Bericht von Peter Steinlechner

  1. Smach Z ausprobiert Neuer Blick auf das Handheld für PC-Spieler
  2. The Division 2 angespielt Action rund um Air Force One
  3. Ghost of Tsushima Dynamischer Match im offenen Japan

CD Projekt Red: So spielt sich Cyberpunk 2077
CD Projekt Red
So spielt sich Cyberpunk 2077

E3 2018 Hacker statt Hexer, Ich-Sicht statt Dritte-Person-Perspektive und Auto statt Pferd: Die Witcher-Entwickler haben ihr neues Großprojekt Cyberpunk 2077 im Detail vorgestellt.
Von Peter Steinlechner


      •  /