BX3105 help getting started

I just purchased a BX3105 evaluation board. I can communicate over serial using TERMite and AT commands. Not all the commands seem to work, and I can’t figure out how to get the device discover-able and pair-able. If someone can just post the AT commands and the order, that would be helpful. I know, this is basic stuff, but I’m really stuck here. :wink:

you might try the followings:
AT+SRBTSYSTEM=3
AT+RST
at+srbtstate=1,2

Here’s a log of what I tried. Still can’t pair. The LED’s on the eval board do not change state (though, I’m not sure they should). But the unit does not show up on my iPhone when I look for BT devices to pair with.

> AT&F
> E (238403499) wifi: esp_wifi_restore 1433 wifi is not init
> 
> OK
> 
> Sierra Wireless Copyright 2018
> BX310x.2.6.3
> READY
> AT+LOG=1
> 
> OK
> AT+SRBTSYSTEM=3
> I (10989) BTC: eul_btc_task_start_up BTC task start
> I (10991) BTC: BTC GAP up signal
> D (10991) BTC: eul_btc_work_dispatch event 0x0, param len 0
> D (10991) BTC: eul_btc_task_handler, sig 0x1, 0x0
> D (10992) BLE_GAP: eul_ble_gap_init
> D (10996) BTC: eul_btc_hdl_stack_evt evt 0
> I (11002) BTC: BTC GAP init
> D (11004) BTC_GAP: eul_btc_gap_system_init
> D (22453) BLE_GAP: esp_gap_cb evt[4]
> I (22455) BLE_GAP: eul_ble_gap_init BLE GAP init OK
> I (22457) BLE_GAP: Set adv data raw successfully
> E (22455) BTC_CONFIG: get tx_pwr nvs, error code = 1102
> D (2246
> 6) BLE_GAP: esp_gap_cb evt[2]
> I (22462) BLE_GATTC: GATTC Register gattc_event_handler callback OK
> D (22481) BLE_GATTS: eul_ble_gatts_callback_init
> I (22485) BLE_GATTS: GATTS register callback OK
> I (22490) BT: BLE & BT classic enabled
> I (22493) BT: BT system start finished OK
> 
> +SRBTC_IND: 0
> 
> OK
> AT+RST
> 
> OK
> I (1862) BTC: eul_btc_task_start_up BTC task start
> I (1864) BTC: BTC GAP up signal
> D (1864) BTC: eul_btc_work_dispatch event 0x0, param len 0
> D (1864) BTC: eul_btc_task_handler, sig 0x1, 0x0
> D (1864) BLE_GAP: eul_ble_gap_init
> D (1869) BTC: eul_btc_hdl_stack_evt evt 0
> I (1876) BTC: BTC GAP init
> D (1878) BTC_GAP: eul_btc_gap_system_init
> D (1881) BLE_GAP: esp_gap_cb evt[4]
> I (1885) BLE_GAP: Set adv data raw successfully
> D (1893) BLE_GAP: esp_gap_cb evt[2]
> I (1894) BLE_GAP: eul_ble_gap_init BLE GAP init OK
> E (1894) BTC_CONFIG: get tx_pwr nvs, error code = 1102
> I (1897)
>  BLE_GATTC: GATTC Register gattc_event_handler callback OK
> D (1908) BLE_GATTS: eul_ble_gatts_callback_init
> I (1912) BLE_GATTS: GATTS register callback OK
> I (1916) BT: BLE & BT classic enabled
> I (1921) BT: BT system start finished OK
> 
> +SRBTC_IND: 0
> 
> Sierra Wireless Copyright 2018
> BX310x.2.6.3
> READY
> AT+LOG=1
> 
> OK
> AT+SRBTSTATE=1,2
> 
> OK
> AT+SRBTSTATE?
> 
> +SRBTSTATE: 1,2
> OK

Do you mean you cannot even discover it in your phone?

Yes - that’s correct.

I don’t see problem on my android phone:

AT+SRBTSYSTEM?
+SRBTSYSTEM: 3
OK
at+srbtstate=1,2
OK
at+srbtaddr?
+SRBTADDR: “cc:93:4a:00:43:22”
OK

+SRBTPAIR: “a0:28:ed:a6:dc:bd”,1
ati3
BX310x.2.7.2
OK

So, I tried with my Amazon Fire tablet (Android OS), and the device appeared. But it still doesn’t appear from my iPhone (I’ve tried two different phones).

I thought I’d try to upgrade the firmware, as I see we are on different versions. I downloaded the tool and the firmware.

I placed a jumper (wire) from GPIO_27 pin to VDD_PADS.

With the terminal emulator still connected, I pressed the RESET button on the Eval board.

The instructions for the firmware show a multi-line response, followed by WSIH. I don’t see the other info, but only get WSIH.

I then exit the terminal program and opened a command line window (as administrator).

I entered:
BX31xxBlTest.exe com18 -v

And get the response: connection failed -103

I also tried COM17, as the device appears on my system as two COM ports.

I realized that I had entered “-com18” for the upgrade tool, rather than just “com18”. It’s now upgrading to the latest firmware.

i don’t have a iphone…
But other people seems to make it work on iphone:

Even when attempting to pair with the Android tablet, the tablet shows “pairing” but it never completes. The BX shows that it’s paired, but something isn’t right.

I looked over the article you references for IOS, and a subsequent video, with no luck.

I really need this to work. Any suggestions for how to escalate this issue? Or, at least, get a firm answer if it will do what I need. I have a project that I’m trying to develop and have spent the last few months evaluating different dev boards and BT modules. This one looked really promising. I’m praying that we can get it to work!

Thank you for your help!!!
Tommy

Do you see +SRBTPAIR notification?

Yes, from the Android. Again - on IOS - I cant’ discover the BX3015 device. Although I see that on the BX3015 for Android, the BX3105 doesn’t show up as available, and the pairing never appears to complete.

As I dig further into this, I think I’m understanding a bit about what’s happening. I am able to get my Android device to connect. But, it doesn’t do anything. In other words, I can’t stream audio to the BX3105. When I try to enable A2DP, I get an error SRBTC_IND: 19 . When I try to enable the audio codec on the dev board, I get CME ERROR: 919.

However, I’m still unable to “see” the BX3105 from my IOS device. Perhaps because it’s not in a supported profile mode (audio, etc).

at+srbtsystem=0

I (25919238) BTC: eul_btc_task_shut_down BTC task stop

I (25919239) BT: BT system stop finished OK

OK

at+rst

OK

Sierra Wireless Copyright 2018

BX310x.2.7.2

READY

at+srbtsystem=2

I (6626) BTC: eul_btc_task_start_up BTC task start

I (6628) BTC: BTC GAP up signal

D (6628) BTC: eul_btc_work_dispatch event 0x0, param len 0

I (6629) BT: BT Classic only enabled

D (6629) BTC: eul_btc_task_handler, sig 0x1, 0x0

I (6635) BT: BT system start finished OK

D (6636

O) BTC: eul_btc_hdl_stack_evt evt 0

I (6643) BTC: BTC GAP init

D (6646) BTC_GAP: eul_btc_gap_system_init

E (6652) BTC_CONFIG: get tx_pwr nvs, error code = 1102

K

+SRBTC_IND: 0

at+srbtcprofiles=2

I (21334) BTC: BTC A2DP profile up signal

D (21334) BTC: eul_btc_work_dispatch event 0x1, param len 0

D (21334) BTC: eul_btc_task_handler,

sig 0x1, 0x1

D (21336) BTC: eul_btc_hdl_stack_evt evt 1

I (21340) BTC: BTC A2DP profile init

OK

+SRBTC_IND: 9

at+srbtsystem?

+SRBTSYSTEM: 2

OK

at+srbtcprofiles=1

I (78203) BTC: BTC SPP profile up signal

D (78203) BTC: eul_btc_work_dispatch event 0x5, param len 0

D (78203) BTC: eul_btc_task_handler,

sig 0x1, 0x5

D (78205) BTC: eul_btc_hdl_stack_evt evt 5

I (78209) BTC: BTC SPP profile init

D (78212) BTC_SPP: eul_btc_spp_init_esp_system

D (103199) BTC_SPP: event_handler event[0]

D (103202) BTC_SPP: ESP_SPP_INIT_EVT: status[0]

D (103209) BTC_SPP: event_handler event[28]

OK

+SRBTC_IND: 12

at+sra2dpcodec?

+SRA2DPCODEC: 0

OK

at+sra2dpcodec=1

+CME ERROR: 919

how did you make the Android device to connect?
On my side, it can pair, but a few seconds later, it will disappear in my phone:

AT+LOG=1
OK
D (729140) BTC_GAP: event_handler event[4]
I (729141) BTC_GAP: Authentication success

+SRBTPAIR: “a0:28:ed:a6:dc:bd”,1

@tommy,

So I have read through the thread, first question is what do you want to connect/pair with BT or BLE?

If BT then you can use the generic BT menu in a given phone to pair with the BX31 as per the below.

at+srbtsystem=0
OK
at+rst
OK
ets Jun  8 2016 00:22:57
rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff80d0,len:4
load:0x3fff80d4,len:540
load:0x40078000,len:0
load:0x40078000,len:18348
+WDSI: 0
Sierra Wireless Copyright 2018
BX310x.2.7.2
READY
at+srbtsystem=3
+SRBTC_IND: 0
OK
at+srbtstate=1,2
OK                                          //Here I went into my phone BT menu, saw the unit and paired with it
+SRBTPAIR: "04:c2:3e:04:8a:70",1

If you want to use BLE then you cannot ‘pair’ with it you need to use an application to connect to the device which will be able to connect to its GAP profile. The application to use is the melody smart app which is on the google play store.

Should also be on the apple app store as well. The source code is held on bit bucket.
https://source.sierrawireless.com/resources/airprime/application_notes_and_code_samples/melodysmart-android/#sthash.OBxs9xa9.dpbs
https://source.sierrawireless.com/resources/airprime/application_notes_and_code_samples/melodysmartkit-sample-app-ios/#sthash.TU1e1B9x.dpbs

To get it to work, in theory, you need to send/have set the below.

at+srble?
+SRBLE: "BX3105",400,1,0
OK
at+srbleadv=1
OK

Once you have sent this then it will be visible in the smart application although I have just tried to connect to it using 2.7.2 and 2.5.0 and it seems broken, need to work on that.

Regards

Matt

Matt:

Thanks for the help. This is the same command sequence that I’ve been trying to use for several days. I am using BT Classic.

The BX unit does not appear on my iPhone when I look for a BT device to pair with.

As I recall when I was working on this project using a Microchip RN52 module, there are different device classes. I’m wondering if the BX isn’t showing a class that the iPhone supports, so that’s why it’s invisible.

(screen shots attached)

I just installed a BT scanner on my tablet, and it’s showing:

Class: unknown (class=7936)

Major class: uncategorized

Service: uncategorized

I’m just speculating – but since it doesn’t identify as a “audio” device, etc – perhaps that’s the problem. Though, I haven’t seen how to change that?

Tommy

@tommy

I have repeated what you are doing as well, seems to not be visible by Apple for some reason.

Given you are using classic I presume you are looking to do something with audio? If so I would actually suggest using the BC127 as it is very mature (over the years we have had hundreds of designs working with both iPhone and Android), has very strong audio capabilities and while we Officially do not offer Apple support any more there are MFi builds available.

I am still looking at the BX as it should work, need to figure out why it does not.

Regards

Matt

Matt:

Thanks for the help. This is the same command sequence that I’ve been trying to use for several days. I am using BT Classic.

The BX unit does not appear on my iPhone when I look for a BT device to pair with.

From my android device (Amazon Fire Tablet), I do see the BX and I’m able to pair with it. However, I cannot use the BX as an audio destination, though the device icon bar does show a BT connection.
As I recall when I was working on this project using a Microchip RN52 module, there are different device classes. I’m wondering if the BX isn’t showing a class that the iPhone supports, so that’s why it’s invisible.

(screen shots attached)

I just installed a BT scanner on my tablet, and it’s showing:
Class: unknown (class=7936)
Major class: uncategorized
Service: uncategorized

I’m just speculating – but since it doesn’t identify as a “audio” device, etc – perhaps that’s the problem. Though, I haven’t seen how to change that?

Tommy

Matt:

I purchased the BC127 dev board, and don’t see a way to enable legacy mode pairing (pin-based). There’s a command to set a PIN, but I don’t see how to enable that feature. Would you know how to do this?

Tommy

@tommy

So you don’t want to use SPP? I always avoided manual mode because it was so much more involved (and less secure) than SPP.

Regards

Matt