3 Replies Latest reply on Nov 28, 2018 7:56 AM by Mark Henke

    RS6000 bluetooth connection not detected by Xamarin EMDK 2.1 or 2.2

    Morten Attermann Holst

      Hi guys


      I am having some trouble getting the RS6000 connection detected by the Xamarin EMDK.


      It worked fine yesterday with a TC8000, however, as the EMDK documentation states it is recommended to have the latest image installed on the devices. So i went from a version 4.4.3 to 5.1 on a TC8000. Now, when I start my application, it goes directly to the Bluetooth Pairing Utility which displays the pairing barcode. I can scan the barcode and the RS6000 seems to be paired, however, when I enter my application again, it returns to the Bluetooth Pairing Utility. And so it continues.


      As the hands-free set is sold as the RS6000 and the WT6000, I tried to run the application from the WT6000 as well. Unfortunately with the same behavior.

      The WT6000 does write that it is connected to the scanner, and the input is registered in the DWDemo.


      This is the call which makes the Bluetooth Pairing Utility to appear.

      _scanner = _barcodeManager.GetDevice(BarcodeManager.DeviceIdentifier.BluetoothImager1);

      Note: Using the BarcodeManager.DeviceIdentifier.BluetoothImagerRs6000 makes the GetDevice return null.


      So in short. The RS6000 worked with the TC8000 with Android 4.4.3, and not with TC8000 and WT6000 with Android 5.1.


      Does anyone have the RS6000 running with a device with 5.1 using EMDK 2.2?



      Best regards

      Morten Attermann Holst

        • Re: RS6000 bluetooth connection not detected by EMDK 2.1 or 2.2
          Morten Attermann Holst



          I did not mention that this is while using the Xamarin version. Sorry for not mentioning it above.

          I have not yet tried with the Android version.


          If I run the BarcodeSample1 from the Xamarin EMDK and select the RS6000 Bluetooth Scanner, the info text displays the following text. "Status: RS6000 Bluetooth Scanner is enabled and idle...". However, when I push the trigger button nothing happens.

          Selecting the Bluetooth Scanner instead causes the same problem as above, where the app and the Bluetooth Pairing Utility Loops, claiming that no scanner is connected.


          I really hope someone can help in this matter.



          Best regards

          Morten Attermann Holst

            • Re: RS6000 bluetooth connection not detected by Xamarin EMDK 2.1 or 2.2
              Morten Attermann Holst

              Okay, so i figured this out.



              Somewhere along the line, during all the pairing/un-pairing of the WT6000 and RS6000, they got mis-paired.



              So if the two devices are not paired, and the GetDevice() method of the BarcodeManager is called, then the "Barcode Pairing Utility" is opened, displaying a barcode which can be scanned with the Bluetooth scanner, to pair the two devices. So far so good.



              At some point I called the barcodeManager.GetDevice(BarcodeManager.DeviceIdentifier.BluetoothImagerRs6000) which returned null, therefore, I assumed that I had to use the DeviceIdentifier.BluetoothImager1 enumeration type, as that actually returned an object. This was while using Android 4.4.3 on the TC8000. However, I think that was what caused the loop of our app and the pairing utility, after upgrading to 5.1. As the pairing went well, but the type of device was not correct. Hence also the issue, when I tried our application on the WT6000, which was already running 5.1.



              Solution. Remove the pairing. Call the GetDevice with the BarcodeManager.DeviceIdentifier.BluetoothImagerRs6000 enumeration value, and make sure your device is running 5.1.




              Best regards

              Morten Attermann Holst

                • Re: RS6000 bluetooth connection not detected by Xamarin EMDK 2.1 or 2.2
                  Mark Henke

                  Hi Morten... I believe I have the same situation but I am not clear how you resolved it... I am getting the Barcode Paring Utility loop also.


                  The code to initialize the EMDKManager, Instantiate a BarcodeManager and Enable/Disable the Scanner are fairly straight forward as with the segments below:


                                this.emdkResults = EMDKManager.GetEMDKManager(Android.App.Application.Context, this);

                                this.barcodeManager = (BarcodeManager)this.emdkManager.GetInstance(EMDKManager.FEATURE_TYPE.Barcode);

                                barcodeManager.Connection += barcodeManager_Connection;


                            the problems come when we try to enable the bluetooth RS6000 ring scanner device it always pops up a Barcode Paring Utility every time           you disable then re-enable the scanner across pages in the app as is common practice. In code the scanner_status returns "Error"...           "Cannot Open Reader".


                  I think the problem for us is that we received the RT6000 with RS6000 bt scanners from a 3rd party and they preloaded the image with all the utilities from Zebra thinking they are doing us a favor such as DataWedge, Barcode Paring Utility, some  other of bt paring and connection status app that says the bt RS6000 is always connected and in system/bluetooth devices there is also a connection.. I think that the problem is the resource are being used already and cannot be access by the api's in the EMDK SDK possibly? Why does the api think there is no connected device when there is? Also the device will use datawedge because I can scan to the focused entry in the app and scan to it... even though I disabled all the profiles in DataWedge.


                  I just want to used the existing bt device and scan to it and capture that event and databind the barcode data in our app. We have done it successfully with an internal Panasonic device and a Koamtac bt device.


                  Can you provide more detail how you resolved this on your end?