We have moved to a new Sailfish OS Forum. Please start new discussions there.
173

[Request] [Jolla Tablet] Bluetooth LE (Low Energy) Software Support -> Wearable

asked 2014-11-19 22:53:18 +0300

harry gravatar image

updated 2015-12-15 09:21:54 +0300

c.la gravatar image

Add Bluetooth LE (Low Energy) software support to the tablet in order to be able to connect wearables and other gadgets. There is an existing request for the phone, but there is currently no API to make use of it. There are currently APIs that could work on SailfishOS, but there is no official support by Jolla.

For more infos about Bluetooth LE see wikipedia .

EDIT 2015-12-15 by c.la: this topic will be discussed on Dec, 17th Jolla Community meeting. If you plan to attend please edit the post and add your name in the list of substitutes in case I can't show up (50% chance atm)

edit retag flag offensive close delete

Comments

6

It is not blocked because of old kernel, but rather because there is no Qt API currently. One is available under Qt5.4 but you can already experiment with it using libgato. Out of curiosity, which BLE device do you have?

javispedro ( 2014-11-23 23:26:15 +0300 )edit
3

I bought a Xiaomi Miband

harry ( 2014-11-26 07:33:02 +0300 )edit
1

Are you looking forward to develop a Sailfish program that connects to it?

javispedro ( 2014-11-26 13:32:50 +0300 )edit

That's the plan, but I thunk the API won't be ready in the near future.

harry ( 2014-11-26 20:01:14 +0300 )edit
9

Actually, QtBluetooth 5.4 with BLE support is just around the corner. You should be able to modify it to build on Jolla's Qt as I did here : https://github.com/lainwir3d/qtconnectivity/tree/5.4_sailfish_backport ( needs updating / rebase though ) and provide it in your rpm (as I did in "Parrot ZIK 2.0 manager").

Minimal bluez version is 4.101 (https://github.com/qtproject/qtconnectivity/commit/e18fbb5794dfbc3ffb9bc98fca51fb569a67f420) so that part is ok, but the same commit seems to indicate we need a minimal kernel version of 3.5....

TLDR : Seems like we're just waiting for an updated kernel to use QtBluetooth 5.4

libgato seems interesting, I'll take a look at it !

lainwir3d ( 2014-11-29 11:57:52 +0300 )edit

3 Answers

Sort by » oldest newest most voted
13

answered 2014-12-11 13:03:14 +0300

javispedro gravatar image

updated 2014-12-11 13:06:57 +0300

I think that people are over-optimistic regarding what support for BLE means. I am not sure what do most people who have voted this question actually want or what do they expect from BLE support in the Jolla.

So... What do you want?

  • If you are a developer, have a LE peripheral and want to write Jolla software that connects to it, then Gato may be for you. Contact me (maemo at-symbol javispedro dot-symbol com ) if you need more info. Alternatively, bundle Qt5.4 as has been mentioned above.
  • If you are a developer, have a LE central device and want to write Jolla software that makes the Jolla behave like a peripiheral, then you are currently out of luck. This is fortunately a very uncommon case. However it would not be hard to implement something hackish.
  • If you are a user and you have what you believe is a BLE device that you want to use from your Jolla:
    • First: are you sure? A device that advertises Bluetooth 4.1 is not necessarily a BLE device! The majority of current smartwatches, for example, are not BLE.
    • Do you have an existing Android software package that supports that device? In which case, do you want to run such software on the Jolla? Then you should vote for Android Bluetooth support, because this item alone won't do you much good.
      • But please note that such Android software may not integrate with Sailfish specific features. For example, if it's a notification device, it would not be able to access notifications from Sailfish applications.
    • If you do not have any existing software, or want to run native software instead of an Android application, do you have someone who will actually write that application for you? Or what you actually want is a developer who will write software that would support your device? (That is just an example question, you should open specific requests for specific devices!).

I don't see much that Jolla can do here except:

  • Ensure that the Bluetooth chip on the device supports BLE. I believe that is already the case...
  • Put pressure on Bluez developers to finish a BLE API, then put pressure on Qt developers to finish a BLE API (not going to happen any time soon)
  • Ship some non-upstreamed BLE API, like Gato cough, which may be a valid alternative, but not something that I would like (because it means diverging from Linux desktop, and for Jolla, a new source of bugs to maintain).
  • Ditch Bluez and ship Bluedroid, use the Android Bluetooth API even for native Sailfish development ( hear that? it is the sound of a gazillion SIREN ALARMs ringing at the same time. Please think TWICE before requesting this! ).
edit flag offensive delete publish link more

Comments

4

For me it would mean the usage of the BT smart devices or BT4.x devices with Low Energy mode activated such as heart rate monitor or Polar M400 Sports watch, which is communicating with heart rate monitor and Cell phone (Android 4.3 and IOS supported).

As far as I have understood it is not allowed by BlueTooth.org branding rules to say that device is BT Smart unless the Low Energy mode is activated => https://www.bluetooth.org/en-us/bluetooth-brand/smart-marks-faqs

For Android support BT smart or BT 4.x LE we would need to move up to Android 4.3 as that is the first android version with BLE support.

However my request to get Jolla to support newer Android version was not supported with highest priority => https://together.jolla.com/question/66931/what-android-version-jolla-is-compatible-with/?comment=67074#comment-67074

I would also say that all the new handheld small devices will be released as BT smart due to the need to save the energy of the battery - right?

Kari ( 2014-12-11 15:25:32 +0300 )edit
1

@Kari considering not even Polar's own Android appcan currently connect to the Polar M400 (according to http://www.dcrainmaker.com/2014/09/activity-tracker-review.html as well as review on the Google Store from yesterday), I can't really say.

However, this tells me that you what you want is an Jolla application to connect to the Polar M400 (not even the Android one will do!), so you should open a request for that.

Don't assume new devices are BLE, either, precisely because the Android BLE situation sucks.

javispedro ( 2014-12-11 15:37:26 +0300 )edit

The availability of the Android app for the Polar M400 and V800 sports watches was already know issue, and support is promised by Polar on December 2014. More precisely within this week as X-mas present for all the users.But will see, if and when the new Android app is finally released.

IOS app has already been released and it uses the BT communication to exchange data between watch and mobile app and Polar web service.

My question to Polar support about the Android app availability was actually first thing I did and it was done before posting in here (TJC) as background check to see where I stand with Jolla versus Polar flow sync for Android.

Currently I am stuck as Polar flow sync will require Android 4.3 due to the BLE/BT Smart support and apparently it will be very difficult to get support for Jolla as native solution or as Android solution.

In fact Polar has already Android app (requires Android 4.3 or higher) for their Loop activity bracelet and that uses the BT LE/BT smart communication to transfer data between phone and device.

There will new version of that app with support for M400 and V800 as mentioned above.

Kari ( 2014-12-11 16:48:13 +0300 )edit

Actually it is a very good question. In the end I want an app (best is native) for each of my Bluetooth LE enabled gadgets (Tablet is the client). But how this gone happen? For me the answer is an API supported by Jolla and one open-source app co-developed with one gadget producer. I know it is a long road, but Jolla wants to hear what we want so that they can prioritize. And Gato is a good example, but the GPL license might be a show stopper for app developers.

harry ( 2014-12-11 18:42:51 +0300 )edit
2

@Kari well, in my own experience, a native program is hard not because of the lack of BLE API, which isn't entirely true as seen in my post, but because no one knows the protocol the band speaks. So there are two options: asking for someone to figure out the protocol in order to write a native M400 program for Jolla, or asking for Bluetooth support in the Android environment.

If someone has figured out the protocol for a BLE or wearable and wants to write a Jolla application, I'd love to help. Writing such programs is what I've been doing for the past months...

@harry Every gadget uses their own proprietary protocol, "one open-source app" is not going to cut it. You'd need gazillions of them, which is, IMHO, not going to happen. GPL or not, Bluetooth Smart certification or not.

javispedro ( 2014-12-12 00:02:57 +0300 )edit
7

answered 2015-01-15 16:11:55 +0300

bijjal gravatar image

This feature requires the platform to upgrade to Bluez5, Qt5.4 and work to support this on Andriod runtime environment. A lot of work, which is not prioritized yet.

edit flag offensive delete publish link more

Comments

and maybe some work on the sdk emulator device

harry ( 2015-01-15 17:09:40 +0300 )edit

see w00ts comment on: https://together.jolla.com/question/76431/roadmap-for-qt-54/?answer=76797#post-id-76797 for more information about Qt5.4 plans

r0kk3rz ( 2015-01-15 20:49:26 +0300 )edit

It means your decision to rely on Android kernel and runtime was a mistake.

Displacer ( 2015-03-16 09:32:26 +0300 )edit

well not using the android kernel wasn't really a choice they could make... and having alien-dalvik seems to have been a fairly popular decision that got them a lot of attention at MWC this year.

r0kk3rz ( 2015-03-16 11:08:00 +0300 )edit
2

r0kk3rz, do you mean jolla phone also has an android kernel to run alien-dalvik?

Displacer ( 2015-03-16 11:57:50 +0300 )edit
6

answered 2014-12-09 23:35:44 +0300

rainisto gravatar image

updated 2014-12-10 14:30:40 +0300

Currently there is no plan to officially support LE in any near future. But your request has been noted.

Currently its not feasible because of wrong Qt version, unstable API's, tight timetable, and the amount of QA- and BT certification work required. But in the future if Qt version is upgraded, API's gets stable, etc problems would have been addressed, its not impossible that some sw upgrade would bring in new features, but currently I don't expect anything to happen in the next year or two. Nobody is of course stopping community to try stabilizing the API's and to get it working in faster timetable.

PS. this is just IMHO. I'm currently not involved with Bluetooth area directly.

edit flag offensive delete publish link more

Comments

3

What is the technical argument not to support BLE/BT 4.x in any near future as more and more equipment will be released with BLE/BT4.x support - Is it hardware issue on Jolla?

Perhaps not HW related as already implemented by community members on above comment...

Kari ( 2014-12-10 09:21:53 +0300 )edit
16

Thanks, for the note. Additionally, please note that it is a community request based on the rules The Jolla Tablet. We make it. You make it yours. By campaign closing it is number 3 of software features requested with the tags "feature-request" and "jolla-tablet".

  1. Split Screen Multitasking 204 votes
  2. Jolla tablet <-> Jolla smartphone pairing/communication 160 votes
  3. Bluetooth LE (Low Energy) Software Support -> Wearable 100 votes

I hope you play to the rules you set out there.

harry ( 2014-12-10 11:56:00 +0300 )edit
Login/Signup to Answer

Question tools

Follow
13 followers

Stats

Asked: 2014-11-19 22:53:18 +0300

Seen: 4,243 times

Last updated: Dec 15 '15