Android can't reliably connect to Zebra via BLE when BT classic is enabled

M Michael Heins 3 years 6 months ago
913 4 0

We have an iOS app that we are re-doing for Android.  We typically connect with ZD4xx family printers via wifi, BLE or BT classic, depending on customer requirements.  Typically all 3 of those interfaces are active.  On iOS we are able to reliably discover and connect to the printers via BLE, but on Android, the connect attempt usually fails.  If we disable the BT classic interface on the printer, the BLE connections usually succeed (but that is not a viable solution for us).  The behavior is the same with different Android platforms and Android OS versions that we have tried.

Our speculation is that the reason may be that the printer is advertising the BLE and BT classic with the same MAC address on both interfaces, and that this confuses the Android Bluetooth stack.  We speculate that if BLE and BT classic were advertising with different MAC addresses, the problem would go away.

Our questions are: Has anyone else has observed this problem?  Has anyone found a solution?  Is there any way to programmatically set a different MAC address for the two Bluetooth interfaces?

Thank you.

Michael Heins

Please Register or Login to post a reply

4 Replies

S Sammy Khamis

hello,
I have been trying to get my Zebra ZQ520 to connect via Zebra Setup Utilities and I was able to with my Zebra TC77 and Galaxy S7 but not Galaxy XCover Pro and unfortunately our client will be using the Galaxy XCover Pro. I couldn't find a particular reason why the XCoverPro wouldn't work with even the Zebra Setup Utilities, it finds it just find via the Android bluetooth and have tried class/btl and both settings.
Any way to get the XCover Pro to work with ZSU? This is the first step before we decide to create our own app and use the supplied APIs via Link-OS

G Guillermo Noblega

Hi, I am also having problems when printing from an Android app.
I have my app in a yoga tablet working fine but It does not work with a lenovo tab 10 with android 9.
In each tablet it works fine with print connect
With my lenovo tab 10 I can pair the printer correctly but whenever I want to print it tells me that I need to connect the printer to my device. I go to settings, I select the printer I click in connect but nothing happens

L Leonid Kaleda

I am experiencing the same problem with ZQ520. I have tested it across multiple Android devices and if the printer is put into "Low Energy Only" mode all of them are able to connect without any problems. Interestingly, one of my devices (Galaxy S7) is able to connect to the printer in "Classic & Low Energy" mode. According to the system logs the problem is not that Android is not able to open GATT connection to the printer but that BLE service discovery procedure never finishes or returns GATT error 129. Unfortunately "Classic & Low Energy" is a default mode and we have to ask all users of our app to configure their printers before first use. Here is the list of devices I tried:

Nexus 5X (8.1.0)
Samsung Galaxy J1 (4.4)
Samsung Galaxy J3 (5.1.1)
Samsung Galaxy S7 (6.0)
Samsung Galaxy Tab S3 (7.0)
Xiaomi Redmi 4 (6.0.1)

My printer's serial number is XXRBJ182902108. Is there any information I could provide you to troubleshoot the issue?

E Efkan YILMAZ

Hi Michael,

Do you have a test app to share that we can reproduce this problem? We would like to see if this happens during the discovery or happens after connected.

CONTACT
Can’t find what you’re looking for?