I started to experiment with Bluetooth and ESP32. I’m wondering if it is BLE I’m using or “true” Bluetooth. Arduino IDE 2.3.7 is my environment.
I started with a small example application that can be found here.
I gave the BT connection a different name.
#include "BluetoothSerial.h"
/* Check if Bluetooth configurations are enabled in the SDK */
/* If not, then you have to recompile the SDK */
#if !defined(CONFIG_BT_ENABLED) || !defined(CONFIG_BLUEDROID_ENABLED)
#error Bluetooth is not enabled! Please run `make menuconfig` to and enable it
#endif
BluetoothSerial SerialBT;
void setup() {
Serial.begin(115200);
/* If no name is given, default 'ESP32' is applied */
/* If you want to give your own name to ESP32 Bluetooth device, then */
/* specify the name as an argument SerialBT.begin("myESP32Bluetooth"); */
SerialBT.begin("ESP32-BT-Slave");
Serial.println("Bluetooth Started! Ready to pair...");
}
void loop() {
if (Serial.available()) {
SerialBT.write(Serial.read());
}
if (SerialBT.available()) {
Serial.write(SerialBT.read());
}
delay(20);
}
Compiling and starting the app produces a device
/dev/cu.ESP32-BT-Slave
I was using the blueutil program (can be found here) to pair and connect the device.
Then I opened a serial terminal program in a terminal window:
picocom -b 115200 /dev/cu.ESP32-BT-Slave --imap lfcrlf,crcrlf --omap delbs,crlf
and was able to type characters in one terminal and receive it in the other and vice versa as the example is made for.
My question: am I using BT or BLE?
blueutil --inquiry
2026-01-26 12:41:08.912 blueutil[64370:13815599] -[IOBluetoothDeviceInquiry initWithDelegate:] - 0x6000017e01d0
address: d4-8a-fc-93-1f-36, connected (master, -72 dBm), not favourite, paired, name: "ESP32-BT-Slave", recent access date: 2026-01-26 11:41:18 +0000
2026-01-26 12:41:18.928 blueutil[64370:13815599] -[IOBluetoothDeviceInquiry dealloc] - 0x6000017e01d0
$
I find the -72 dBm a little bit weak.