Send dato to Serial Bluetooth Terminal

Hi everyone,

I would like to send data from Arduino Nano 33 BLE to the Serial Bluetooth Terminal app.
With the HC05 module it was easy. I don't know how to do it with BLE. I know you have to assign a GATT with Services and Characteristics.

Can anyone help me?
Thank you very much!

Kai Morich's Android app Serial Bluetooth Terminal uses the Nordic_UART Service by default. There may be ways to change the app to use a custom service, but I have never tried to so.

You will need to write a program for the Nano33BLE which uses the Nordic UART Service UUIDs.

#define BLE_UART_SERVICE_UUID        "6E400001-B5A3-F393-E0A9-E50E24DCCA9E"
#define BLE_CHARACTERISTIC_UUID_RX   "6E400002-B5A3-F393-E0A9-E50E24DCCA9E"
#define BLE_CHARACTERISTIC_UUID_TX   "6E400003-B5A3-F393-E0A9-E50E24DCCA9E"

There is a library which you can use with the Nano33BLE which implements that service. It is available through the library manager.

There is an issue with this library and the Serial Bluetooth Terminal app, and without modification of the library the app fails to connect with the Error message

connection failed: no write characteristic(4/16)

To fix this error, go into the library .h file and see line 101

//line 101
BLECharacteristic receiveCharacteristic = BLECharacteristic("6E400002-B5A3-F393-E0A9-E50E24DCCA9E", BLEWriteWithoutResponse, BLE_ATTRIBUTE_MAX_VALUE_LENGTH);

Change it to this

BLECharacteristic receiveCharacteristic = BLECharacteristic("6E400002-B5A3-F393-E0A9-E50E24DCCA9E", BLEWrite, BLE_ATTRIBUTE_MAX_VALUE_LENGTH);

Make sure to save the changed file.
With this modification, the library example SerialPassthrough works with the Morich terminal app.

1 Like

Thank you very much cattledog.
I will try as soon as possible. Thanks again.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.