About blueduino pairing application (pairing with computer)


#1

Hello, I want to design an application that works in real time using blueduino. But, this requires pairing with my computer. (I’m trying to apply the algorithms built into my computer.)
So I installed the BLE dongle on my computer and tried to pair it, but I can not find it at all. (I can find it in the mobile. But when I pair it directly on my mobile, zerobeacon rejected the connection. Bluo works well.)
I would appreciate it if you tell me what settings I need to pair with my computer.
And I want to update the BLE firmware, but the link on the wiki is broken. Could you give me a link to get the firmware file?


#2

Which model BLE dongle do you use? You can’t use it to pair with BlueDuino directly.

We’ve fix the link at our wiki. Please check the bottom of this link


#3

Thanks for your reply.
I use bluetooth CSR 4.0 dongle. (part number: TG-BTD90)
And i found zerobeacon when I use ubuntu. (I can’t found it in Windows 10.)
I tried pairing but it was not. I think I need a passkey for pairing.


#4

I have no experience to use the dongle under ubuntu. But I think you can try to play it with bluez first.

I will buy a CSR dongle to play with our BlueDuino


#5

Thanks for your reply. There’s another question.
When I connect with my mobile phone, I can’t use it to pair with BlueDuino directly.
But Bluo application can. Could you explain how it works?
I’ll try it using Python 3.


#6

You can’t use your mobile to pair with BlueDuino directly. Because it use classic bluetooth not BLE to do this job. The Bluo app use BLE API to pair with BlueDuino


#7

When I use bluez (ver 5.4x in Ubuntu 16.04 with CSR BLE dongle), I connected Bluedunio successfully.
Could you tell me how to receive the data? (I do not know how I can receive it. )
I know UUID, but I do not know how to use it to listen to data.
Thanks in advance!


#8

Sorry. I have no more experience about bluez. But the good news is I just got a CSR BLE dongle also. I will pay some time to test this on my ubuntu laptop.


#9

That’s good news. I will continue this work and inform you when I can receive the data by using bluez.


#10

I have tried the CSR usb dongle today. I used gatttool to connect BlueDuino. Let’s say the Mac address for BlueDuino is 88:33:14:DD:87:6D

Run the gatttool in interactive mode:

sudo gatttool -I

and then connect to the Hexiwear with the address from above:

connect 88:33:14:DD:87:6D

With the ‘primary’ command I list the primary services:

[88:33:14:DD:87:6D][LE]> primary
attr handle: 0x0001, end grp handle: 0x000b uuid: 00001800-0000-1000-8000-00805f9b34fb
attr handle: 0x000c, end grp handle: 0x000f uuid: 00001801-0000-1000-8000-00805f9b34fb
attr handle: 0x0010, end grp handle: 0x0022 uuid: 0000180a-0000-1000-8000-00805f9b34fb
attr handle: 0x0023, end grp handle: 0xffff uuid: 0000fff0-0000-1000-8000-00805f9b34fb

The service 0xfff0 is the serial service. characteristic discovery command:

[88:33:14:DD:87:6D][LE]> char-desc 0x0023 0xffff
handle: 0x0023, uuid: 00002800-0000-1000-8000-00805f9b34fb
handle: 0x0024, uuid: 00002803-0000-1000-8000-00805f9b34fb
handle: 0x0025, uuid: 0000fff1-0000-1000-8000-00805f9b34fb
handle: 0x0026, uuid: 00002902-0000-1000-8000-00805f9b34fb
handle: 0x0027, uuid: 00002901-0000-1000-8000-00805f9b34fb
handle: 0x0028, uuid: 00002803-0000-1000-8000-00805f9b34fb
handle: 0x0029, uuid: 0000fff2-0000-1000-8000-00805f9b34fb
handle: 0x002a, uuid: 00002901-0000-1000-8000-00805f9b34fb

the 16bit uuid 0xfff2 is the serial write characteristic. I can write ASCII string to it

[88:33:14:DD:87:6D][LE]> char-write-req 0x0029 313233
Characteristic value was written successfully

I got 123 at my serial monitor of BlueDuino


Send hex values with gatttool
#11

Fantastic! You solved the problem in a simple and clear way.
I tried the above and it worked out.
And I have a few questions.

  1. In serial service, what handle can be used to receive data? (I want to make data listening)
    Could you show me an example?

The service 0xfff0 is the serial service. characteristic discovery command:
2. I think there’s a typo in your reply. 0xfff0 -> 0xffff

Thank you.


#12

The command to read a handle is as follows:

char-read-hnd <handle>

The handle for reading serial data is 0x0025. you can use the command to read from blueduino

char-read-hnd 0x0025

No. It’s 0xfff0 not 0xffff. Please check the uuid

attr handle: 0x0023, end grp handle: 0xffff uuid: 0000fff0-0000-1000-8000-00805f9b34fb

the 16 bit uuid is 0xfff0. the 128 bit uuid is 0000fff0-0000-1000-8000-00805f9b34fb


No response from AT command