BC127: Changing Bluetooth Smart Service or Characteristic GUID causes no characteristic to be discoverable


#1

Hi.

I’m running 6.1.4 on some production devices and we have recently been doing some firmware updates and the software team asked if we can change the GUIDs. when we change either at all, we no longer get any characteristic broadcast and can’t therefore connect to the device.

What is the proper way to use this setting? I also note that we can only change the lower 8 characters of the GUID.

Thank you

Cole


#2

@clacount,

Can you give the commands you are using so far?

Regards

Matt


#3

Hi Matt,

I’m using SET BC_SMART_CONFIG=68E3 28F0 89F7 D93D . (Note: that I updated the last character from C to D). 6.1.4 doesn’t support the ON/OFF command so this is the full BC_SMART_CONFIG. I have changed it to several different values all with the same result and it makes no difference whether it is a change to the Characteristic or service GUID.

Thanks,

Cole


#4

@clacount,

I have changed the unit to the same value and still seem to be seen/connect to the melody smart application.

restore
BlueCreation Copyright 2017
Melody Audio V6.1.4
Build: 1493828294
Ready
advertising on
OK
OPEN_OK 14 BLE 45EA555DA425
RECV 14 5 bgdxv
RECV 14 5 bgdxv
RECV 14 5 bgdxv
RECV 14 5 bgdxv
send 14 abcd
OK
CLOSE_OK 14 BLE 45EA555DA425
status
STATE CONNECTED[0] CONNECTABLE[ON] DISCOVERABLE[ON] BLE[IDLE]
OK
set BC_SMART_CONFIG=68E3 28F0 89F7 D93D
OK
advertising on
OK
OPEN_OK 14 BLE 45EA555DA425
RECV 14 4 free
RECV 14 4 free
send 14 1234
OK
config
AUDIO=0 0
AUDIO_ANALOG=15 15 1 OFF
AUDIO_DIGITAL=0 44100 64 100A00
AUTOCONN=0
AUTO_DATA=OFF OFF OFF
BALANCE=100 100
BATT_CONFIG=OFF 145 4250 1500 150
BC_SMART_CONFIG=68E3 28F0 89F7 D93D
BEACON_DATA=0 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF 04 D2 16 2E EE
BLE_CONFIG=0 OFF 40 ON
BLE_CONN_PARAMS=128 12 6 40 0 400 50 400 400 61 400 400
BT_VOL_CONFIG=A A 10 1
CLASS_1=OFF
CMD_TO=20
COD=240404
CODEC=0 OFF
CONN_TO=0
DEEP_SLEEP=OFF
DEVICE_ID=0001 0002 0003 0004 0005 0006 0007 0008
DISCOVERABLE=2 0
ENABLE_BATT_IND=ON
ENABLE_CAPSENSE=OFF
ENABLE_LED=ON
ENABLE_SPP_SNIFF=OFF 0 0 0 0 0
GPIO_CONFIG=ON 0 255
HFP_CONFIG=OFF ON OFF OFF OFF
HIGH_SPEED=OFF OFF
LOCAL_ADDR=20FABB075DD3
MAX_REC=2
MM=OFF OFF 0 OFF OFF OFF OFF OFF
MUSIC_META_DATA=OFF
MUSIC_OLD_AVRCP=OFF
NAME=BC-075DD3
NAME_SHORT=BC75DD3
PIN=0000
PROFILES=2 0 2 0 2 1 2 1 0 0 1 0
REMOTE_ADDR=000000000000
SPP_UUID=00 00 11 01 00 00 10 00 80 00 00 80 5F 9B 34 FB
SSP_CAPS=3
TWS_CONFIG=OFF 1 2
UART_CONFIG=9600 OFF 0
USB_HOST=OFF
VREG_ROLE=1
OK

Regards

Matt


#5

Thank you,

I’ll look into what is going on, on our application end.

Cole


#6

Hi Matt,

Is there anything you can give us on how the app is able to connect to the characteristic? Using iOS CoreBluetooth, we are getting zero characteristics available on the service from the device. This makes it unconnectable as far as we can tell.

Is the source code for your app available?

Thanks,

Cole


#7

Cole,

Source code is on bit bucket, the link is given on the source.

https://source.sierrawireless.com/resources/airprime/application_notes_and_code_samples/melodysmartkit-sample-app-ios/

Regards

Matt


#8

Thanks Matt,

Unfortunately it looks like all the interesting code is hidden behind a cart file. Can you send any code snippets of how the connection process works?

Thanks,

Cole


#9

@clacount,

Spoke to a man who know and iOS Swift library doesn’t support modifying the UUIDs, but it is possible with iOS objC library and Android library.

If you want to develop with swift on iOS, you will need to implement the code without using the swift library.

Regards

Matt