jrowberg / bglib

BGLib implementation for Bluegiga BLE Bluetooth Smart modules
Other
240 stars 170 forks source link

How to read MAC address from the device? #25

Closed SarenT closed 8 years ago

SarenT commented 8 years ago

Hi,

Thanks for the code! I came here actually from myo-raw project. Since, my question involves low level access to the dongle, I would like to know how to differ between 2 dongles of the same type? Is it also possible to connect multiple devices from the same dongle at the same time?

Thanks a lot!

mjbrown commented 8 years ago

Question 1 - There is a command for obtaining the MAC address: COM7: 2016-05-23 21:02:10,338 - bgapi - DEBUG - =>[ 00 00 00 02 ] COM7: 2016-05-23 21:02:10,339 - bgapi - DEBUG - <=[ 00 06 00 02 23 A4 78 80 07 00 ] COM7: 2016-05-23 21:02:10,341 - bgapi - INFO - RSP-System Address Get - 23A478800700

Question 2 - You can connect to multiple devices from one dongle. The BLE112 is capable of up to 8 connections. I don't know how many they support with the stock firmware, but you edit config.xml to modify how many connections are supported. Increasing available connections consumes Flash/RAM and limits other things you can do, like the size of your GATT table. That's why it's not just maxed for all devices.

<connections value="3" />
SarenT commented 8 years ago

Hey,

Thanks a lot! I guess sending those bytes on serial connection 00 00 00 02 will return it. I am sorry for forgetting to mention that I am using python to access the device. I will try to send those bytes over serial to see if it returns the MAC address.

SarenT commented 8 years ago

Update: sending a command with 0, 0, 0, 2 over serial return exactly something like a MAC address. I can't verify if it is really the MAC address but I am almost sure about it (it doesn't change and it is different among 2 dongles). I will not change the stock firmware, as the devices are not mine.