Arduino - BLE
In deze handleiding leert u:
- Hoe u Bluetooth Low Energy (BLE) technologie gebruikt met Arduino
- Hoe u data van Arduino naar een smartphone-app verstuurt via BLE
- Hoe u data op Arduino ontvangt van een smartphone-app via BLE
- Hoe u Arduino bedient vanaf een smartphone-app via BLE

De reikwijdte van deze handleiding:
- Gegevensuitwisseling tussen Arduino en een smartphone-app via BLE. Communicatie tussen twee Arduinos via BLE wordt behandeld in een andere tutorial.
- Gebruik van de zeer populaire HM-10 Bluetooth Low Energy module.
- Demonstratie van de Bluetooth Serial Monitor app op Android, maar elke Android/iOS app kan worden gebruikt.
- Besturing van verschillende apparaten aangesloten op Arduino via de smartphone-app, met voorbeelden zoals een LED en servo motor.
Het is belangrijk om te vermelden dat deze handleiding specifiek Bluetooth Low Energy (BLE, Bluetooth 4.0) behandelt. Als u op zoek bent naar informatie over Classic Bluetooth (Bluetooth 2.0), raadpleeg dan een vergelijkbare tutorial Arduino - Bluetooth.
Hardware Benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over HM-10 Bluetooth Module
De HM-10 is een Serial BLE-module die functioneert als een Serial naar Bluetooth Low Energy converter. Het voert de volgende acties uit:
- Ontvangt data via de Serial RX-pin en verzendt deze via BLE naar een gekoppeld apparaat zoals een smartphone
- Ontvangt data van BLE (van het gekoppelde apparaat) en stuurt deze naar de Serial TX-pin.
Meer specifiek, bij gebruik van een Arduino om te communiceren met een smartphone-app (Android/iOS), gebeurt het volgende:
- De Arduino verbindt met de HM-10 Bluetooth module via de Serial/SoftwareSerial pins
- De HM-10 Bluetooth module wordt gekoppeld aan een smartphone-app
- De Arduino verzendt data naar de smartphone-app door deze naar de Serial/SoftwareSerial te sturen
- De Arduino ontvangt data van de smartphone-app door deze vanaf de Serial/SoftwareSerial te lezen
- Er is geen extra BLE-code nodig op de Arduino.
Pinout

De HM-10 BLE Module heeft 6 pins:
- BKR-pin: voor het aansturen van het gedrag van de module. Negeer deze pin als u beginner bent.
- RX-pin: seriële datapin, verbind deze met de TX-pin van de Arduino. Data die via deze pin wordt ontvangen, wordt via Bluetooth verzonden.
- TX-pin: seriële datapin, verbind deze met de RX-pin van de Arduino. Data die via BLE wordt ontvangen, wordt via deze pin als seriële data verstuurd.
- GND-pin: voedingspin, verbind deze met de GND van de voedingsbron.
- VCC-pin: voedingspin, verbind deze met 3.3V van de voeding
- STATE-pin: geeft de werkstatus aan:
- Knippert in standby modus - herhaalde pulsen van 500ms;
- Aan in verbindingsstatus - high-level.
- We gebruiken slechts 4 pins: VCC, GND, RX, TX
- Sommige fabrikanten leveren de HM-10 met slechts vier pins.
※ Notiz:
Over Bluetooth Serial Monitor App
De Bluetooth Serial Monitor app is een mobiele applicatie die het uiterlijk van de Serial Monitor in de Arduino IDE nabootst. Het maakt communicatie met een Arduino bord via Bluetooth mogelijk zonder extra code in de Arduino sketch. Volg de volgende stappen om het te gebruiken:
- Verbind de Arduino met een HM-10 Bluetooth module
- Download en installeer de Bluetooth Serial Monitor App op uw smartphone
- Open de app en verbind deze met de HM-10 Bluetooth module
Met deze stappen voltooid, kunt u nu data verzenden en ontvangen van Arduino alsof u de Serial Monitor in Arduino IDE gebruikt, zonder uw bestaande Arduino code te wijzigen of Bluetooth-specifieke code toe te voegen.
Aansluitschema

This image is created using Fritzing. Click to enlarge image
De aansluit-tabel
| Arduino Pins | HM-10 Bluetooth Pins |
|---|---|
| RX (Pin 0) | TX |
| TX (Pin 1) | RX |
| 5V | VCC |
| GND | GND |
| BKR (NIET aangesloten) | |
| STATE (NIET aangesloten) |
※ Notiz:
De Arduino code kan andere pins gebruiken door het Serial object te vervangen door een alternatief zoals Serial1, Serial2 of SoftwareSerial (indien beschikbaar).
Hoe te programmeren voor Bluetooth
Er is geen speciale Bluetooth-code nodig, alleen seriële code is vereist.
Arduino stuurt data naar Bluetooth App op smartphone
Om data te verzenden van een Arduino bord naar een Bluetooth app op een smartphone kan onderstaande Arduino code gebruikt worden. Dit voorbeeld laat zien hoe het bericht “Arduino here, command me!” elke seconde wordt verzonden van Arduino naar de smartphone app.
Snelle Stappen
Volg deze stappen om de code te gebruiken en een Arduino bord te verbinden met een smartphone via BLE:
- Installeer de Bluetooth Serial Monitor App op uw smartphone.
- Verbind de HM-10 Bluetooth module met het Arduino bord volgens het aansluitschema.
- Open de Arduino IDE, kopieer de bovenstaande code en upload deze naar het Arduino bord. Lukt het uploaden niet, dan kunt u de TX en RX pins van de Bluetooth module loskoppelen, uploaden en daarna de RX/TX pins weer aansluiten.
- Open de Serial Monitor in Arduino IDE.
- Open op uw smartphone de Bluetooth Serial Monitor App en kies de BLE modus.

- Koppel de smartphone met de HM-10 Bluetooth module.

- Observeer het resultaat op de Android App.

- Bekijk het resultaat in de Serial Monitor van Arduino IDE.
Als u de stappen volgt en de code uitvoert, ziet u dat de data weergegeven in de Serial Monitor van Arduino IDE en op de Android app overeenkomen.
Bluetooth App stuurt data naar Arduino
De onderstaande code voert de volgende acties uit:
- Stuurt data van de Bluetooth app naar het Arduino bord
- Het Arduino bord leest de binnenkomende data en stuurt een respons terug naar het Bluetooth apparaat.
Snelle Stappen
Volg de onderstaande stappen om de code te gebruiken met Arduino en een Android app:
- Open de Arduino IDE en plak de bovenstaande code.
- Klik op de Upload knop om de code naar het Arduino bord te uploaden.
- Open de Serial Monitor in de Arduino IDE.
- Open de Android app en koppel deze met de HM-10 Bluetooth module zoals eerder beschreven.
- Zodra verbonden, typ "LED ON" of "LED OFF" in de Android app en druk op de "SEND" knop.

- Het Arduino bord ontvangt de data, print een respons naar de seriële poort. Deze data wordt naar de Bluetooth app verzonden.
- Controleer het resultaat op de Android app.

- Controleer het resultaat in de Serial Monitor van de Arduino IDE.
Na het voltooien van bovenstaande stappen zult u merken dat de getoonde informatie in de Serial Monitor van Arduino IDE en op de Android app hetzelfde is.
Arduino Code - LED besturen via smartphone App via BLE
De volgende Arduino voorbeeldcode gebruikt de commando’s “ON” en “OFF” ontvangen via de Bluetooth Serial Monitor App om een ingebouwde LED aan of uit te zetten.
De instructies vindt u gedetailleerd in de tutorial Arduino bestuurt LED via Bluetooth/BLE.
Arduino Code - Servo motor besturen via smartphone App via BLE
De volgende Arduino code ontvangt een hoekwaarde van de Bluetooth Serial Monitor App om de hoek van een servo motor te regelen.
Meer details over deze instructies vindt u in Arduino bestuurt Servo Motor via Bluetooth/BLE.
Als de Bluetooth Serial Monitor app nuttig voor u is, geef dan alstublieft een 5-sterren waardering op de Play Store. Dank u!
Video Tutorial
We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.
Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en maakt het starten met Bluetooth Low Energy op Arduino nog makkelijker.