Notices


Reply
Thread Tools
Posts: 9 | Thanked: 7 times | Joined on Jul 2010
#401
Hey there!

At first I want to thank you for the amazing work you did with Rockpool. I really like my Pebble and it's great that it works with my Jolla.
I would like to ask if there currently is a way of communicating with a Jolla app. Specifically I think it would be great if we could show direction instructions from apps like Poor Maps.

Could we map the API Pebble provides for companion apps to DBus interfaces?

Best
Max
 

The Following 2 Users Say Thank You to DarthMax For This Useful Post:
Posts: 959 | Thanked: 3,427 times | Joined on Apr 2012
#402
Originally Posted by Boke View Post
While I agree with you, maybe it would be possible to implement it first with a cloud based service and letting the user choose to activate it or not and then when a more elegant solution is found, remove the cloud-based part.

I miss the voice service
As of the latest update, Saera has an option for opt-in cloud-based speech recognition as well as on-device recognition.
 

The Following User Says Thank You to taixzo For This Useful Post:
Posts: 207 | Thanked: 482 times | Joined on Mar 2016
#403
what would be that cloud-based service?
If there's something ready the feed the voice with simple API - we can of course link it as a PoC and then we can formulate what would be the best api for us to implement in saera.
As of now the only PoC i can do is to dump voice to /dev/null and send some stub text in response.
 
Posts: 207 | Thanked: 482 times | Joined on Mar 2016
#404
Originally Posted by DarthMax View Post
I would like to ask if there currently is a way of communicating with a Jolla app. Specifically I think it would be great if we could show direction instructions from apps like Poor Maps.
Hi, rockpool supports (almost) full JSKit API, including XHR and WS, so the fastest way to communicate to local app I can see is to fire up a WS or HTTP endpoint on the loopback and speak to it from jskit.
There's an effort (currently WiP no ETA) to extend JSKit API by DBus interface, which may allow one to spare some time coding WS - although i don't think it's that complicated, qtwebsocketserver is quite straightforward one.
 

The Following User Says Thank You to ruff For This Useful Post:
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#405
Originally Posted by abranson View Post
Just found out that the new Pebble 2 watches on the Kickstarter only support Bluetooth LE, so it looks like it won't be possible to use them with the Jolla phone at all. Hopefully Sailfish will support BLE on newer devices and ports at some point though, then we can adapt Rockpool accordingly.
I have to say that I _really_ doubt the devices are BLE-only, mainly because of bandwidth constraints. If they plan to still keep the "applications-uploaded-on-demand" charade, I'm quite sure they still use normal Bluetooth for that; otherwise the delay to use a program would more than annoying.
If you have any more confirmation about that than CEO-speak it would be interesting.

In fact bandwidth is the main reason that so far no smartwatch has actually been "BLE-only". I only know of some editions of the Metawatch, and some fitness bands.

And I used to connect the BLE Metawatch happily with my Nokia N9, which had a kernel that was even older kernel than the Jolla
On the N9, the kernel had a limitation regarding BLE Random addresses, but that's no longer present on the Jolla, and random _static_ addresses work fine (right now my Jolla is connected to a Garmin Fenix without problem).



If it turns out that the newer Pebbles are BLE only, or that some functionality is only accessible via BLE, as mentioned, you might want to use a "mostly user-space" BLE stack, such as Gato or backport Qt Bluetooth 5.4 (which was partially based in Gato).

With both approaches you have the same limitations as described in https://together.jolla.com/question/...th-le-support/ .
To summarize:
* Scanning for devices is difficult because it requires root access. Maybe a small setuid binary or something like that to trigger the scan.
* No "peripheral" role (i.e. Jolla must connect to the watch, not viceversa).
* Pairing is possible, but not safe: LTKs are _not_ stored by Bluez, so MITM attacks are possible. However, BT4.0 has confirmed security holes, so MITM attacks are technically possible even if LTKs were stored.

(On the Jolla, Bluez4 will not scan for LE devices because it thinks it's not on a BLE device. I've managed to confuse it enough so that it actually scans for BLE devices, but it's ugly. )

Please note that there's not much Jolla can do about this since we're about the only platform (other than ChromeOS) where there's any interest in using Bluez4/5 stack with BLE+GATT. Updating the kernel will not help anything, unless they update it to extremely recent version alongside a extremely recent version of Bluez (which has upstreamed the ChromeOS GATT patches), and then fix QtBluetooth, and then recertify the device, and then...

In any case I suggest waiting to see if the newer Pebbles are BLE, and if they are, "how much" BLE they are before any move.

Last edited by javispedro; 2016-06-05 at 13:52.
 

The Following 7 Users Say Thank You to javispedro For This Useful Post:
Posts: 287 | Thanked: 862 times | Joined on Dec 2015
#406
I first heard about it from Katharine Berry on the ubuntu pebbler's group, then found the earlier statement from the CEO to back it up. She also said that the Pebble Time Round has been BLE only on iOS since it launched.

Originally Posted by Katharine Berry
The classic BT channel is never used because PTR is not an MFi device and so cannot use it.

All watches running 3.6+ support running with only BLE.

If they have both they will run them concurrently; otherwise they will use whatever is available.

This is currently only true on iOS, since the public Android app doesn't support LE.
 

The Following 3 Users Say Thank You to abranson For This Useful Post:
Posts: 114 | Thanked: 50 times | Joined on Oct 2006
#407
Originally Posted by ruff View Post
what would be that cloud-based service?
I found that: https://gist.github.com/alotaiba/1730160
 

The Following 2 Users Say Thank You to Boke For This Useful Post:
Posts: 207 | Thanked: 482 times | Joined on Mar 2016
#408
Thanks Boke, looks like good way to proof the concept.


Aside from that, I'm switching to gui mode now, and meanwhile posting alpha on beta that is 1.0-alpha1timeline2 - with following items:
* Added websync to the timeline
* Added (rather implemented) timeline API to the JSKit.Pebble - except account token - which is still randomly generated.
* Added canned messages for jolla messaging center (telepathy) which allows replying to SMS and IM.


All these elements require initialization to start working, which in absense of GUI could be done a always via DBus.

Set OAuth token
Code:
gdbus call -e -d org.rockwork -o /org/rockwork/XX_XX_XX_XX_XX_XX -m org.rockwork.Pebble.setOAuthToken 'hex string'
Set canned messages
Code:
gdbus call -e -d org.rockwork -o /org/rockwork/XX_XX_XX_XX_XX_XX -m org.rockwork.Pebble.setCannedResponses "{'x-nemo.messaging.im': <@as ['Aye','Nay','On my way']>, 'x-nemo.messaging.sms': <@as ['Ok','Are you talking to me?']>}"

Last edited by ruff; 2016-06-07 at 06:39. Reason: tested, fixed
 

The Following User Says Thank You to ruff For This Useful Post:
Posts: 959 | Thanked: 3,427 times | Joined on Apr 2012
#409
Originally Posted by Boke View Post
I found that: https://gist.github.com/alotaiba/1730160
nope, Saera currently uses Wit.ai as the optional speech recognition engine - google and AT&T are planned as options but not yet implemented.

edit: the reason for using wit.ai is because it has an official Python client, whereas the google voice recognition is a hack that might break at any time.
 

The Following User Says Thank You to taixzo For This Useful Post:
Posts: 21 | Thanked: 28 times | Joined on Mar 2016 @ Finland
#410
Hello,

Now that I've been using this excellent app for a while, I have repeatedly noticed one issue about the connectivity (daemon ?).

I tend to turn off the BT from Jolla in the evening and turn it on again in the morning. In my Pebble the BT is on all the time. The phone and the watch get connected perfectly (almost) every time, but the Rockpool app usually says "Disconnected" - and the notifications won't work - until I restart the service from Developer Tools (thank god for that ! ).
 

The Following User Says Thank You to Upp15 For This Useful Post:
Reply

Tags
pebble, smartwatch


 
Forum Jump


All times are GMT. The time now is 18:35.