Connecting without Microsoft Health App - android-tv

I've been tinkering with the microsoft band for a while and i'm trying to connect it to a raspberry pi 3 running android TV(couldn't find any Android phone images), now i've got most normal apps running on the rasp , the microsoft health app crashes when i start it.
Funny thing is though, the costum app i've made to track all the sensors stil gets data from the band when paired, but the band itself just:
says "pairing succes! return to the microsoft health app to continue" So there has to be a way to bypass the app right?
So i'm trying to find a way to get the band linked to this device without the Health App. Or a way to get that app running on my Android image.
I got a logcat of the crash, but i'm not sure if that would be really usefull. Since i can't edit the microsoft health app itself ...right?

Reset the band.
Pair the band to an android phone using health app.
Unpair band from Android phone.
Turn off Bluetooth on band.
Turn on Bluetooth on rpi.
Do a regular (not using health app) pairing the band and the rpi.

Related

get a broadcast to android app on BLE connection

A question about registering BLE notification on android:
I am developing an app that once the android device detects our beacon/ble hardware, should write something to one of the writable characteristics of that hardware.
Trying to understand, on the android app side how can I register some intent to be called when a ble connection was made to the android framework.
since a broadcast receiver registered in manifest can no longer launch my app and android background services policy was changed, this can't be done. so..
I am trying to use JobScheduler which was designed to be launched based on criteria. this can launch a JobService to do the job.
When the app is in foreground or background this seems to be working.
The thing is, I need to be notified when the app is not running (Not even in background)

ChromeOS / Chromebook exception when connecting to BLE devices (getCharacteristic)

In a small team we're developing an application that is deployed to both Android (Tablets) and ChromeOS devices. For this, we have a couple build targets such as Pixel C's, Galaxy Tabs, an Asus C302 Chromebook and a Pixelbook.
The App we're developing interfaces over BLE with a Windows 10 system that runs an application that accepts incoming BLE connections. What we perform in our App:
We perform a scan to find a device with a specific name
We connect to this device: using the Android Native BluetoothDevice class: mBluetoothDevice.connectGatt();
We request the services: using the Android Native BluetoothGatt class: mBluetoothGatt.discoverServices();
When our App is deployed to Android targets, it successfully connects to the W10 app and retrieves its services (onServicesDiscovered).
However, when the same builds of the App are ran on ChromeOS, the following exception is thrown for retrieving services:
08-17 10:46:52.750 3827-3846/com.(our namespace) D/TheApp: BleGattHandler | onServicesDiscovered() called with: gatt = [android.bluetooth.BluetoothGatt#baff2ee], status = [0]
08-17 10:46:52.751 3827-3846/com.(our namespace) W/BluetoothGatt: Unhandled exception in callback
java.lang.NullPointerException: Attempt to invoke virtual method 'android.bluetooth.BluetoothGattCharacteristic android.bluetooth.BluetoothGattService.getCharacteristic(java.util.UUID)' on a null object reference
at com.(our namespace).communication.bluetooth.lowenergy.BleGattHandler.onServicesDiscovered(BleGattHandler.java:90)
at android.bluetooth.BluetoothGatt$1.onSearchComplete(BluetoothGatt.java:237)
at android.bluetooth.IBluetoothGattCallback$Stub.onTransact(IBluetoothGattCallback.java:103)
at android.os.Binder.execTransact(Binder.java:565)
Our conclusion is that for some reason, ChromeOS fails to retrieve the services of a BLE device. We're at a loss here and hope to hear if anyone of you knows the cause or possible resolution (we're also open to professional help)
What ChromeOS version are we using
Our most recent test (today) was on the Pixelbook with:
ChromeOS 68.0.3440.87 (from beta channel)
ChromeOS 69.0.3497.21 (from dev channel)
What we have found up till now
This ChromeOS issue, yet it is reported Fixed:
https://bugs.chromium.org/p/chromium/issues/detail?id=722987
Android app which interacts with BLE devices not working on Chromebook
Why are we not using 'normal' Bluetooth (classic)?
We're currently using a C# W10 App to connect to using the App. However, this application serves as a Stub for now and will in the near future be replaced by a low-power embedded solution (wearable product) we are developing that requires operation over BLE. We're therefore bound to use BLE.

Reading Heart Rate Sensor off Microsoft Band using Windows IoT Core on Raspberry Pi 2

When attempting to read Heart Rate Sensor from a Microsoft Band paired with a Raspberry Pi2 running latest Windows IoT Core (10586). I get an exception when calling:
“bandClient.SensorManager.HeartRate.RequestUserConsentAsync()”
It would seem that the IoT Core does not contain the necessary libraries to create the popup dialog that is seen on other devices when executing this method.
Are there plans to extend the Band SDK to support Windows IoT Core in this scenario?
Are there any proposed workarounds?
Thank you,
Paul
Windows 10 IoT is currently not supported by the Microsoft Band SDK. In particular, the user consent prompts run on the device that the band is paired with and in this case the required APIs for user prompts are not supported in the Windows 10 IoT Core APIs.
If you require this in a future release of the SDK please open a request at the Microsoft Health User Voice page https://microsofthealth.uservoice.com

Configure Gimbal iBeacon without iPhone?

Is there a way to configure the physical gimbal beacon without an iPhone?
In these instruction, it says you need to use the iPhone app. Is there another way with Android, PC, etc?
To apply custom configurations to a Gimbal Beacon or to change the Beacon Type from "Gimbal" to "iBeacon", you need the Gimbal Beacon Manager iOS App: https://itunes.apple.com/ca/app/gimbal-beacon-manager/id785688563
The configuration app is iOS only, there is no desktop or Android version of this configuration utility.
The steps to configure a beacon are:
-- register the beacon at Gimbal.com
-- create a configuration for your beacon(s)
-- set the beacon to use the specified configuration on gimbal.com
-- Launch the app on your iOS device, and go to the "Configure" section
-- reset the beacon by opening it and taking out the battery and closing it again
-- at this point the app will see the newly reset beacon (via Bluetooth), and ask if you want to update it. Press the "Update" button, and you're done.
So yes, you need an iOS device to configure the beacons.
As of today, Gimbal's beacons will work on both iOS and Android. You are certainly able to set everything up on your Gimbal Developer Account and configure the Gimbal SDK to work with your application and OS of choice. However, you won't be able to test these beacons without a device with BLE or Bluetooth Low Energy support.
This could be a tablet or a phone but most certainly will need a physical device to test things with. Also, keep in mind Gimbal's beacons are compatible with the iBeacon specification but aren't necessarily considered to be official iBeacons (strictly from a trademark/brand perspective). You must have a Gimbal Developer Account in order to use their beacons (whether running in iBeacon or Gimbal proprietary mode) and when going to production will want to consider the pricing per active user to use the service.
As noted before, what's nice about the Gimbal beacons is they are cross-platform. Some manufacturers will only allow their beacons to work on certain platforms or require the use of a proprietary SDK other than one which is open/public. Gimbal uses a proprietary SDK and requires the use of their backend service.
I hope I cleared things up for you. If you wish to know more about using the Gimbal Proximity SDK for Android or setting up the Gimbal Proximity SDK for Android Studio, please click on the respective links.
Update 10/11/2016
You are also able to configure a subset of items directly with the SDK inside your application but Gimbal is really pushing everything to be configured via your Gimbal Developer Account (a.k.a. Gimbal Admin Dashboard).
As far as configuring everything with a separate application from the one you are developing (e.g. a standalone application that allows you to configure your beacons which are associated with your Gimbal account), the only option I'm aware of is the Gimbal Manager for iOS.
Keep in mind this app basically accomplishes the same thing as if you were at your computer and logging into your Gimbal Developer Account. This could be convenient in situations where you are running around placing beacons and are not directly near a computer.
Granted, you could also accomplish the same thing on a mobile browser logging into your Gimbal Developer Account but a native app is likely to work better.
Thus, looking back at your question, the only standalone app for any platform to configure your beacons is the Gimbal Manager for iOS. With that being said, below is a simple list showing current options to configure your beacons.
Gimbal Developer Account
Gimbal Manager for iOS
Gimbal SDK from Within Your Application
Finally, if you need any assistance troubleshooting your beacon signals please see this article.
The Gimbal proximity feature is currently only available on iOS. The beacons are set up in such a way that they can only be seen from an iOS device with the Gimbal SDK (On any other platform, the Gimbal beacons signal appears with a different ID each time it is transmitted). Because of this, the only way to identify a Gimbal beacon is with an iOS device, and therefore the only way to change its configuration is with the Gimbal Beacon manager for iOS. Hopefully they will soon release an android sdk, and then you should be able to configure them from an android device as well.
I think you should have iphone or ipad to configure it. Since it use gimbal beacon manager app to reconfigure it after we configure in gimbal manager (via web).
you can also check this link : Gimbal beacon discovery

how to run ipad phone gap app on device and send it to others

I have a ipad phone gap app i want that app should also run on my clients device how may do this as we do normal by adhoc distribution and send ipa file but this is an phonegap app so how may send this and run on any device.
You may use Test flight (http://testflightapp.com) to distribute enterprise ad-hocs, or you can use phonegap build (http://build.phonegap.com) and then send the generated qr codes to your clients, so they can install the builds.

Resources