ESP32 Bluetooth Analoog Meter Voorbeeld - Analoog Meter Display Tutorial
Overzicht
Het Bluetooth Analoog Meter voorbeeld biedt een klassiek analoog meter-stijl display dat toegankelijk is via de DIYables Bluetooth STEM app. Ontworpen voor ESP32 boards met ondersteuning voor zowel BLE (Bluetooth Low Energy) als Classic Bluetooth verbindingen. Verstuur numerieke waarden met configureerbaar bereik en eenheidsetiketten — perfect voor snelheidsmeters, druksensoren, voltmeters en elke toepassing die een analoog wijzerplaatdisplay vereist.
Dit voorbeeld ondersteunt twee Bluetooth-modi:
- ESP32 BLE (Bluetooth Low Energy): Werkt op zowel Android als iOS
- ESP32 Classic Bluetooth: Werkt alleen op Android. iOS ondersteunt Classic Bluetooth niet. Gebruik BLE als u iOS-ondersteuning nodig heeft.

Kenmerken
- Analoog Meter Display: Klassieke wijzerplaat/meter-stijl visualisatie
- Configureerbaar Bereik: Stel minimum- en maximumwaarden in voor de meter
- Aangepaste Eenheden: Toon km/h, PSI, V, %, of een willekeurige eenheidstekst
- Realtime Updates: Stuur live metingen met vloeiende naaldbeweging
- Verzoek Callback: App kan huidige waarde op aanvraag opvragen
- BLE & Classic Bluetooth: Kies de Bluetooth-modus die bij uw project past
- Cross-Platform: BLE modus werkt op Android en iOS; Classic Bluetooth werkt op Android
- Laag Energieverbruik Optie: BLE gebruikt minder stroom dan Classic Bluetooth
Benodigdheden Hardware
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
ESP32 Code
Snelle Stappen
Volg deze instructies stap voor stap:
- Als u voor het eerst met de ESP32 werkt, raadpleeg dan de tutorial over het instellen van de ESP32-omgeving in de Arduino IDE.
- Verbind het ESP32 board via een USB-kabel met uw computer.
- Start de Arduino IDE op uw computer.
- Selecteer het juiste ESP32 board en de COM-poort.
- Navigeer naar het Libraries-icoon in de linker balk van de Arduino IDE.
- Zoek op "DIYables Bluetooth", en vind dan de DIYables Bluetooth bibliotheek van DIYables.
- Klik op de Installeren-knop om de bibliotheek te installeren.

- U wordt gevraagd om aanvullende bibliotheekafhankelijkheden te installeren
- Klik op de Alles installeren-knop om alle afhankelijkheden te installeren.

Kies een van de onderstaande twee Bluetooth-modi, afhankelijk van uw behoeften:
ESP32 Classic Bluetooth Code (werkt alleen met de app op Android)
Opmerking: Classic Bluetooth wordt NIET ondersteund op iOS. Gebruik de BLE-code hieronder als u iOS-ondersteuning nodig heeft.
- In Arduino IDE, ga naar Bestand Voorbeelden DIYables Bluetooth Esp32Bluetooth_AnalogGauge voorbeeld, of kopieer bovenstaande code en plak deze in de editor van de Arduino IDE
- Klik op de Uploaden-knop in Arduino IDE om de code naar de ESP32 te uploaden
- Open de Seriële Monitor
- Bekijk het resultaat in de Seriële Monitor. Het ziet eruit als onderstaand:
ESP32 BLE Code (werkt met de app op zowel Android als iOS)
- In Arduino IDE, ga naar Bestand Voorbeelden DIYables Bluetooth Esp32BLE_AnalogGauge voorbeeld, of kopieer bovenstaande code en plak deze in de editor van de Arduino IDE
- Klik op de Uploaden-knop in Arduino IDE om de code naar de ESP32 te uploaden
- Open de Seriële Monitor
- Bekijk het resultaat in de Seriële Monitor. Het ziet eruit als onderstaand:
Mobiele App
- Als u de ESP32 Classic Bluetooth code gebruikt, moet u de ESP32 eerst koppelen met uw Android-telefoon voordat u de app opent:
- Ga naar de Instellingen > Bluetooth van uw telefoon
- Zorg dat Bluetooth aan staat
- Uw telefoon scant naar beschikbare apparaten
- Zoek en tik op "ESP32_Gauge" in de lijst van beschikbare apparaten
- Bevestig het koppelverzoek (geen pincode nodig)
- Wacht tot het "Gekoppeld" onder de apparaatnaam toont
- Als u de ESP32 BLE code gebruikt, is koppelen niet nodig. Ga direct naar de volgende stap.
- Open de DIYables Bluetooth App
- Bij het eerste gebruik vraagt de app om toestemmingen. Sta alstublieft het volgende toe:
- Nearby Devices toestemming (Android 12+) / Bluetooth toestemming (iOS) — nodig om te scannen en verbinding te maken met Bluetooth-apparaten
- Locatie toestemming (alleen Android 11 en lager) — vereist door oudere Android-versies voor het scannen van BLE-apparaten
- Controleer of Bluetooth ingeschakeld is op uw telefoon
- Tik op het startscherm op de Verbinden-knop. De app zal zowel BLE als Classic Bluetooth apparaten scannen.

- Zoek en tik op uw apparaat in de scanresultaten om verbinding te maken:
- Voor Classic Bluetooth: tik op "ESP32_Gauge"
- Voor BLE: tik op "ESP32BLE_Gauge"
- Na verbinding keert de app automatisch terug naar het startscherm. Selecteer de Analog Gauge app in het app-menu.

Opmerking: U kunt het instellingen-icoon op het startscherm tikken om apps te verbergen of weer te geven. Voor meer details, zie de DIYables Bluetooth App gebruikershandleiding.
- De analoge meter toont de huidige waarde met een bewegende naald

Bekijk nu de Seriële Monitor in de Arduino IDE. U ziet:
- Kijk hoe de meternaald in de app in realtime beweegt
Creatieve Aanpassing - Pas de Code aan voor Uw Project
Stel Meterbereik en Eenheid In
Stel het displaybereik en de eenheid in:
Verstuur Meterwaarde
Verwerk Waardeverzoeken van de App
Verwerk Verbindingsgebeurtenissen
Hoe de Analoog Meter te Gebruiken
App Interface
De analoge meter interface in de DIYables Bluetooth App toont:
- Wijzerplaat/Naald: Klassieke analoge meter met bewegende naald
- Numerieke Weergave: Toont exacte actuele waarde
- Eenheidsetiket: Toont de ingestelde eenheidstekst
- Schaalmarkeringen: Toont genummerde schaal van min tot max
Veelvoorkomende Eenheidsconfiguraties
- Snelheid: DIYables_BluetoothAnalogGauge(0.0, 200.0, "km/h")
- Druk: DIYables_BluetoothAnalogGauge(0.0, 100.0, "PSI")
- Spanning: DIYables_BluetoothAnalogGauge(0.0, 5.0, "V")
- Percentage: DIYables_BluetoothAnalogGauge(0.0, 100.0, "%")
- RPM: DIYables_BluetoothAnalogGauge(0.0, 8000.0, "RPM")
Programmeervoorbeelden
Voltmeter
Drukmeter (BMP280)
Stroomsensor (ACS712)
Snelheid van Encoder
Gevorderde Programmeertechnieken
Vloeiende Naaldbeweging
Peak Hold
Bereik Automatische Schaling
Hardware Integratie Ideeën
Analoge Sensoren
Elke sensor met een analoge output kan de meter aandrijven: potentiometers, krachtmeters, flex-sensoren enzovoort.
I2C/SPI Sensoren
Gebruik I2C-sensoren zoals BMP280 (druk), INA219 (stroom/vermogen) of SPI-sensoren voor hoge-snelheidsmetingen.
Puls/Frequentie Sensoren
Snelheidsencoders, flowmeters en RPM-sensoren die interrupt-gebaseerde telling gebruiken.
Weegcellen (HX711)
Gewichtsmeting met HX711 versterker voor keuken- of industriële weging.
BLE versus Classic Bluetooth - Welke te Kiezen?
| Feature | BLE (Esp32BLE_AnalogGauge) | Classic Bluetooth (Esp32Bluetooth_AnalogGauge) |
|---|---|---|
| iOS-ondersteuning | ? Ja | ? Nee |
| Android-ondersteuning | ? Ja | ? Ja |
| Energieverbruik | Laag | Hoog |
| Bereik | ~30-100m | ~10-100m |
| Datasnelheid | Lager | Hoger |
| Koppeling Nodig | Nee (auto-connect) | Ja (handmatige koppeling) |
| Geschikt Voor | Batterijgevoed, cross-platform | Hoge throughput, alleen Android |
Problemen Oplossen
Veelvoorkomende Problemen
1. Kan apparaat niet vinden in app
- Zorg dat de ESP32 aanstaat en dat de sketch geüpload is
- Voor BLE: Controleer of Bluetooth en Locatie op uw telefoon ingeschakeld zijn
- Voor Classic Bluetooth: Verbind het apparaat eerst via de Bluetooth-instellingen van uw telefoon
- Controleer of het juiste partitietype geselecteerd is (Huge APP)
2. Meter toont 0 of onjuiste waarde
- Controleer de bedrading en aansluitingen van de sensor
- Controleer sensorwaarden eerst via de Seriële Monitor
- Zorg dat de waarde binnen het ingestelde bereik valt
- Controleer de configuratie van eenheid en bereik in de constructor
3. Meternaald beweegt niet soepel
- Verhoog de update frequentie (kleinere interval in millis() check)
- Pas smoothing/filtering toe op sensorwaarden
- Controleer op ruis of instabiele sensormetingen
4. Waarden buiten meterbereik
- Pas het bereik aan met setRange(min, max) passend bij sensoroutput
- Waarden buiten bereik zullen worden getoond, maar kunnen afgekapt worden aan min/max
- Overweeg auto-scaling voor onbekende bereiken
5. Frequent wegvallende verbinding
- Kom dichter bij de ESP32 (verminder afstand)
- Voor BLE: Let op interferentie van andere BLE-apparaten
- Voor Classic Bluetooth: Zorg voor stabiele voeding van de ESP32
6. Sketch te groot / onvoldoende ruimte
- In Arduino IDE, ga naar Tools > Partition Scheme en selecteer "Huge APP (3MB No OTA/1MB SPIFFS)" of "No OTA (Large APP)"
- Het standaard partitietype biedt slechts ~1.2MB voor app-code en is onvoldoende voor Bluetooth bibliotheken
- Deze instelling vergroot beschikbaarheid tot ~3MB door de OTA partitie te verwijderen
Debug Tips
Voeg uitgebreide debugging toe:
Projectideeën
Voertuig & Beweging
- Snelheidsmeter voor RC-auto of fiets
- RPM-tachometer voor motoren
- G-krachtsmeter voor acceleratie
- Kantelhoekindicator
Elektrisch & Vermogen
- Voltmeter (batterijspanningsmonitor)
- Ampermeter (stroomverbruik)
- Wattmeter (vermogen)
- Batterijniveau meter
Omgevingsmetingen
- Barometerdrukmeter
- Windsnelheidsmeter (anemometer)
- UV-indexmeter
- Geluidsmeter (dB)
Industrieel
- Weegschaal weergave
- Doorstroomsnelheidmeter
- Tankniveaumeter
- Koppelmeter
Integratie met Andere Bluetooth Apps
Combineer met Bluetooth Temperatuur
Meter voor één parameter, temperatuur voor een andere:
Combineer met Bluetooth Tabel
Meter voor visueel, tabel voor details:
Volgende Stappen
Na het beheersen van het Bluetooth Analoog Meter voorbeeld, probeer:
- Bluetooth Temperatuur - Voor gespecialiseerde temperatuurweergave
- Bluetooth Plotter - Voor trendvisualisatie over tijd
- Bluetooth Tabel - Voor gestructureerde meerwaardeweergave
- Meerdere Bluetooth Apps - Combineer meter met andere displays
Ondersteuning
Voor extra hulp:
- Raadpleeg de API Reference documentatie
- Bezoek DIYables tutorials
- Arduino community forums