maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   [SFOS] [Announce] Pebble Watch Connector daemon (https://talk.maemo.org/showthread.php?t=93399)

wormdrummer 2015-08-27 11:55

Re: [Announce] Pebble Watch Connector daemon
 
Awesome!, I am sure a few people here will be interested to hear this!, thankyou so much!

Feathers McGraw 2015-08-27 20:34

Re: [Announce] Pebble Watch Connector daemon
 
I ordered one today :D

wormdrummer 2015-08-27 23:48

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by RobertMe (Post 1480264)
AFAIK: no.
But I don't have a Pebble yet (backed the Time Steel though), and aren't familiar with the code base of this app. But a couple of days ago I did some investigation, and it doesn't look like it should be that hard to get notifications working for the Time (Steel). So it's just a matter of having the time to implement it. After I've gotten mine I will probably try to give that a go. But as said, I don't have my Time Steel yet (hopefully will arrive in a couple of weeks), and it will probably also take some time to properly implement it.

If you can get it going, donation will be heading your way!. I donated to the app on openrepos yesterday, so fingers crossed we can get some movement :)

I've invested in buying a pebble time steel, so I'll invest some more in the software to get it working!. I just don't have the know how!

HtheB 2015-08-29 17:22

Re: [Announce] Pebble Watch Connector daemon
 
Pebble daemon works with the Pebble Time (Steel).
The things that works for now:

- Dismissing an Incoming call
- Changing tracks and volume (using any music app that supports MPRIS protocol)

I couldn't get any notification to work, neither receiving sms messages.

Also, I hope that the 'Pebble Time' store will be added soon too (since the Time store has also exclusive Time apps)
The Apps don't work properly though.

RobertMe 2015-08-29 17:51

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by HtheB (Post 1480415)
I couldn't get any notification to work, neither receiving sms messages.

As far as I've seen all notifications are kinda the same. They just contain a flag which states it's for SMS, e-mail etc. So after "converting" all notifications to the new protocol for the timeline all of those should work. But that of course means just the notifications work and are put on the timeline. That doesn't mean you magically get full support for the timeline, which can also be filled by remote services and apps. So the first goal would be to convert all the existing notifications to "pins" on the timeline. And when those are working it should be possible to investigate how to add support for external/web services[1]. And then it might also be feasible to add some kind of API for "local" apps to add pins to the timeline.

[1] From what I've read in the official documentation the timeline is foremost filled based on external services. Using the Pebble app you have to subscribe to a service, after which your subscription will be registered by Pebble (the company/website). The external service then has to push the pins to Pebble (company/website), after which the Pebble app will then query Pebble (company/website) for all new/updated pins and push those to the watch itself.
So luckily Pebble took some effort to make it possible to fill the timeline for all kinds of mobile devices without requiring native apps. So when this is working (which will take some time, to investigate how the API between the Pebble app and Pebble servers works) a lot of the shiny timeline data might become available. Like all those sport based pins.

Edit:
Forgot to add that filling the timeline based on the phones calender would of course also be feasible. So that should be something to add after (re)adding support for sending notifications.

MikeHG 2015-08-30 18:35

Re: [Announce] Pebble Watch Connector daemon
 
This sounds awesome - will be jumping on the Time Steel train as soon as notifications work.

Has anyone looked into making a Saera app?

HtheB 2015-08-31 00:53

Re: [Announce] Pebble Watch Connector daemon
 
I've added new issues and feature requests on the github page

wormdrummer 2015-08-31 05:59

Re: [Announce] Pebble Watch Connector daemon
 
So, I guess the big question is, who is willing to take this on so we can give donations? ;)

And.. I was hoping to use the pebble with an activity tracker to track running etc (ie start stop the tracking on the phone with gps enabled). Are there any apps that the pebble and Jolla will support in this fashion?

Amboss 2015-08-31 11:41

Re: [Announce] Pebble Watch Connector daemon
 
I was worried this would happen some day... Is there any possibility do implement timeline independent from companies website? I would like my watch to talk to my phone directly and require other services at need only.

Since I am using Pebble Steel (the original) I might stick to the old firmware. I haven't started to investigate yet: Am I missing some data leakage there as well?

Feathers McGraw 2015-08-31 14:00

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by Amboss (Post 1480528)
Is there any possibility do implement timeline independent from companies website? I would like my watch to talk to my phone directly and require other services at need only.

Me too, I didn't realise that was how the timeline works. If it's not possible to use the feature without sending loads of data to Pebble then I won't use it at all.

MaemoUser 2015-08-31 15:52

Re: [Announce] Pebble Watch Connector daemon
 
Seems like smoku abandoned the project or even the whole Jolla:
http://abadcafe.pl/post/122926111638...ne-post-mortem
Quote:

Concluding: It was a fun year… but it came time to exit that train and move on. R.I.P.

RobertMe 2015-08-31 16:30

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by wormdrummer (Post 1480506)
So, I guess the big question is, who is willing to take this on so we can give donations? ;)

I will, once I've gotten my Time Steel :) And I of course need to find some time (no pun intended) to work on it. But at least for notifications I've did some more investigations past weekend.


Quote:

Originally Posted by wormdrummer (Post 1480506)
And.. I was hoping to use the pebble with an activity tracker to track running etc (ie start stop the tracking on the phone with gps enabled). Are there any apps that the pebble and Jolla will support in this fashion?

I think I've read some comments from Smokku that at least some kind of investigation happened for MeeRun, or there at least was some interest. As he said these apps require some background app running on the Pebble but it was unclear how to do so.


Quote:

Originally Posted by Amboss (Post 1480528)
I was worried this would happen some day... Is there any possibility do implement timeline independent from companies website? I would like my watch to talk to my phone directly and require other services at need only.

Quote:

Originally Posted by Feathers McGraw (Post 1480544)
Me too, I didn't realise that was how the timeline works. If it's not possible to use the feature without sending loads of data to Pebble then I won't use it at all.

From what I've read it's, at least for public data, quite safe to use. Take the example of some sports app (reporting scores).
Using the Pebble app (on the phone) you'll have to subscribe to a topic on the service. This subscription is then automatically registered by Pebble (probably based on your Pebble account, the id of the watchapp/service, and the subscribed topics). So no data is send to the service provider. The service provider then sends the pins to Pebble (company/website), but the only data it knows are: its own watchapp/service id, and the topic(s) the pin is associated with. Pebble then combines this data to send the pin to the users who subscribed to these topics. The Pebble app on your phone will then periodically query the Pebble servers to get the latest updated pins.

So while Pebble knows which services and topics you are subscribed to, the service itself won't know anything about you. They just push pins to Pebble, and Pebble does all the work to distribute it to the users who subscribed to those topics. So there will never be any direct communication between your Pebble (or app on phone) and the 3th party service.

There are however ways for Pebble (watch)apps to get some unique token, which they can use to create personal pins. But you of course aren't required to use those.

And besides it's not like the timeline won't work without the external services. But then you will need native apps which push the pins to the Pebble watch (using the phone app). And I don't think that's very likely to happen for Sailfish. Although it might well be possible that some developers will put some effort into it. But there will then maybe be like 10 or 20 native apps which can fill the timeline, while there might be hundreds, or thousands of external services which can fill the timeline.

HtheB 2015-08-31 18:44

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by MaemoUser (Post 1480554)
Seems like smoku abandoned the project or even the whole Jolla:
http://abadcafe.pl/post/122926111638...ne-post-mortem

Ouch.... I didn't noticed this before!! :(

Fuzzillogic 2015-08-31 21:09

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by RobertMe (Post 1480420)
[1] From what I've read in the official documentation the timeline is foremost filled based on external services. Using the Pebble app you have to subscribe to a service, after which your subscription will be registered by Pebble (the company/website). The external service then has to push the pins to Pebble (company/website), after which the Pebble app will then query Pebble (company/website) for all new/updated pins and push those to the watch itself.

Yugh. That's horrible. But I guess we had it coming. Pebble is very hipster. Development "in the cloud". The configuration-pages for the apps are hosted-only, instead of on-device. Still the phone app must relay those messages to the watch, so if that protocol is available, it's possible to ignore the cloud.

MikeHG 2015-08-31 21:27

Re: [Announce] Pebble Watch Connector daemon
 
I'm not sure I get the objection. How else would you do it?

This way presumably the updates could be pushed by the server, instead of the watch / phone having to poll it all the time. And the only server you need to talk to is Pebble's, rather than having to trawl through a long list...

wormdrummer 2015-08-31 22:43

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by MaemoUser (Post 1480554)
Seems like smoku abandoned the project or even the whole Jolla:
http://abadcafe.pl/post/122926111638...ne-post-mortem

Ouch, oh well hopefully RobertMe will be able to pick up where Smoku left off.

For me the priority list would be:

- Notifications
- Push calendar to timeline
- Allow internet access to pebble so apps can connect (weather etc)
- Allow gps access to pebble (again weather etc)
- Install/remove apps
- Integrate other apps in to timeline
- Allow apps to communicate with the watch (running apps etc)

Hopefully most if not all are possible. I've tried other phone and smartwatch combinations, but I'm set to sticking with my Jolla, so the pebble is a real investment. I'm happy to donate what's needed to get this up and running. :)

Fuzzillogic 2015-09-01 16:03

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by MikeHG (Post 1480606)
I'm not sure I get the objection. How else would you do it?

This way presumably the updates could be pushed by the server, instead of the watch / phone having to poll it all the time. And the only server you need to talk to is Pebble's, rather than having to trawl through a long list...

Atom/RSS/CalDAV comes to mind. Sure, that's poll instead of push, but still preferable over a centralized service.

MikeHG 2015-09-01 16:15

Re: [Announce] Pebble Watch Connector daemon
 
That makes sense.

I admit I don't really understand much about the Pebble architecture, but presumably it is possible to have an RSS reader on the phone, then a watch app that mirrors it.

And my understanding of what RobertMe is saying is that calendar events will sync between the watch and the phone without talking to Pebble's servers.

So I suppose all you'd be missing is the mini apps in the timeline?

RobertMe 2015-09-01 17:46

Re: [Announce] Pebble Watch Connector daemon
 
Yep, in the end there is still a pretty simple protocol between the phone app the watch. So it doesn't really matter where the data is coming from, as long as the phone app understands it and can send it.

The advantage of Pebbles setup is that, as you already set MikeHG, the phone app doesn't need to constantly poll all the services if data has been updated. It just needs to poll the Pebble servers. This makes the communication a lot cleaner, and doesn't drain the battery that much (as there is less chatter over wifi or 3G, and the phone doesn't have to wake up for every individual service). This is kind of the same as the push notifications which you're required to use on iOS, and Googles counterpart which can be used on Android.

And besides the simplified communication it means you don't need a lot of native apps which push all the data to the Pebble. As long as the "data provider" can push the info to Pebbles servers, the watch should be able to show the data, as long as there is a Pebble phone app which supports this. This compared to none strict protocols as Atom/RSS feeds where the data can be put into different fields, and you thus possibly still need support for different Atom/RSS feeds based on the data provider.

And you're right about the calender. This can be handled locally. The phone app just needs to read the calender and send the events to the Pebble. It's not like the watch itself queries the phone app to get the data, but the phone app is always in charge. The phone app just says something like "can you add a pin on 1 sept at 19:45 with subject X and body Y", and were all the data is coming from is up to the phone app. So it could either be read by the phone app from for example the calender, or queried from Pebbles servers, or send by some app which is running on the phone, which would relay the message using the Pebble phone app.

Fuzzillogic 2015-09-01 18:12

Re: [Announce] Pebble Watch Connector daemon
 
It might be cleaner and easier to route everything through pebble's server, but I think that's a big problem of the internet today: users heavily rely on a single provider. Provider goes belly up? Provider goes stupid? Provider declares your shiny obsolete? Tough luck, throw your shiny away! Buy a new one!

I for one would happily give up a few electrons for a more decentralized option.

Enough of that, pebble is the most open watch on the market anyway. Unfortunately, without and Android-device its quite hard to develop apps for it. So actually, this first bullet on my wish list is support for the developer connection.

malerocks 2015-09-04 13:53

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by wormdrummer (Post 1480609)
Ouch, oh well hopefully RobertMe will be able to pick up where Smoku left off.

For me the priority list would be:

- Notifications
- Push calendar to timeline
- Allow internet access to pebble so apps can connect (weather etc)
- Allow gps access to pebble (again weather etc)
- Install/remove apps
- Integrate other apps in to timeline
- Allow apps to communicate with the watch (running apps etc)

Hopefully most if not all are possible. I've tried other phone and smartwatch combinations, but I'm set to sticking with my Jolla, so the pebble is a real investment. I'm happy to donate what's needed to get this up and running. :)

It will be excellent if an app is released with these features. I have a pebble time now and currently I can only use it as a digital watch. 😔

MrBlueSky 2015-09-04 14:13

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by malerocks (Post 1481088)
It will be excellent if an app is released with these features. I have a pebble time now and currently I can only use it as a digital watch. 😔

Dito. Where can I donate to make this happen :)

TomJac 2015-09-04 19:29

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by RobertMe (Post 1480558)
I will, once I've gotten my Time Steel :) And I of course need to find some time (no pun intended) to work on it. But at least for notifications I've did some more investigations past weekend.



I think I've read some comments from Smokku that at least some kind of investigation happened for MeeRun, or there at least was some interest. As he said these apps require some background app running on the Pebble but it was unclear how to do so.




From what I've read it's, at least for public data, quite safe to use. Take the example of some sports app (reporting scores).
Using the Pebble app (on the phone) you'll have to subscribe to a topic on the service. This subscription is then automatically registered by Pebble (probably based on your Pebble account, the id of the watchapp/service, and the subscribed topics). So no data is send to the service provider. The service provider then sends the pins to Pebble (company/website), but the only data it knows are: its own watchapp/service id, and the topic(s) the pin is associated with. Pebble then combines this data to send the pin to the users who subscribed to these topics. The Pebble app on your phone will then periodically query the Pebble servers to get the latest updated pins.

So while Pebble knows which services and topics you are subscribed to, the service itself won't know anything about you. They just push pins to Pebble, and Pebble does all the work to distribute it to the users who subscribed to those topics. So there will never be any direct communication between your Pebble (or app on phone) and the 3th party service.

There are however ways for Pebble (watch)apps to get some unique token, which they can use to create personal pins. But you of course aren't required to use those.

And besides it's not like the timeline won't work without the external services. But then you will need native apps which push the pins to the Pebble watch (using the phone app). And I don't think that's very likely to happen for Sailfish. Although it might well be possible that some developers will put some effort into it. But there will then maybe be like 10 or 20 native apps which can fill the timeline, while there might be hundreds, or thousands of external services which can fill the timeline.

Would be awesome if you could continue on this,
I backed Pebble time but dont; really use it right now because I dont have good for use it with the boring watchface and no apps that work. I hope it will soon work nicely with Jolla or otherwhise I might sell the pebble ... :(

Would donate to see some software available!

wormdrummer 2015-09-09 21:29

Re: [Announce] Pebble Watch Connector daemon
 
Just wondering RobertMe, if you have an eta on receiving your watch and if there is anything we can do to help get everything working?

RobertMe 2015-09-10 12:27

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by wormdrummer (Post 1481860)
Just wondering RobertMe, if you have an eta on receiving your watch and if there is anything we can do to help get everything working?

No ETA yet. But my order is locked (since the 24th of august), so I guess I will receive it this month.

And I guess there is nothing others can do to help. I'll just have to find out how to properly implement that single "add timeline pin of type notification" message. The message structure can be found in the libpebble2 Python library created by Pebble, but I'm not sure how the wire protocol is (so the actual bytes send to the watch). As I think they use some "new" structures for the timeline pins which they don't use for any other messages. So the Sailfish app might not properly "encode" the message when actually sending it, which would mean it will take some trail and error to actually get it right.

Once I got something which works I'll create an RPM package for others to use/try and report back here.

RobertMe 2015-09-10 20:04

Re: [Announce] Pebble Watch Connector daemon
 
And I'm reporting back again :)

This afternoon I've took some time to properly look into how libpebble2 sends the pins to the timeline and how this app could do it. I've now got some big pile of hackish code which might actually work. So if someone really, really, really wants to be able to receive notifications, he (or she) can send me a private message and I can send the RPM then. But please do note that it is absolutely untested, so it might burn down your phone, Pebble, or house (I justed dumped all the binary data generated by libpebble2 and tried to "rebuild" it in this app, which I think I succeeded in).


Quote:

Originally Posted by Fuzzillogic (Post 1480692)
So actually, this first bullet on my wish list is support for the developer connection.

Seems like this might be relatively easy to achieve. I think they start a WebSocket server on the phone which the SDK connects to. The messages send over this connection are the normal messages as send between the phone and watch, just wrapped with some extra information (like if the message is meant for the phone or the watch).

Update:
Thanks to HtheB and wormdrummer for being able to test it so quickly. Notifications are still broken. So there's no need anymore to ask for a test version. In the upcoming days I'll try to add some extra debugging code/logging to try to narrow down the issue, to see if I can narrow down the issue without actually having received my Pebble.

TomJac 2015-09-11 21:40

Re: [Announce] Pebble Watch Connector daemon
 
Would be great if you also could find a way to change watchfaces because I would use it more if i could select another watchface fom the store, the default one is so boring lol :p

RobertMe 2015-09-11 21:53

Re: [Announce] Pebble Watch Connector daemon
 
First things first. Based on the logging output I received it seems like (some?) models aren't properly recognized as being of the Time model/platform (which means my changed code to add the timeline pins for notifications isn't triggered). After that is fixed I can try to finish/debug the actual changes for the notifications, and I then might be able to look into some other issues. But by that time I hopefully also will finally have my own Time Steel, which makes debugging a lot easier.

HtheB 2015-09-12 00:52

Re: [Announce] Pebble Watch Connector daemon
 
It seems like RobertMe is gonna get some donations very soon :)

(Notifications works!)

Edit:
By the way, I found a way to enter the Pebble (Time) App Store and getting all the .pbw files without needing anything:
http://pas.cpfx.ca/

Or without border:
http://pas.cpfx.ca/fullscreen.html

Maybe we could implement this in our Pebble app, since the one that is in the Pebble app right now, is very choppy and not working properly... :(

RobertMe 2015-09-12 07:13

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by HtheB (Post 1482225)
(Notifications works)

That's good to hear :) So the remaining issue after implementing the protocol was the app not recognizing the Time Steel.

I will try to clean up the code (much) later today or tomorrow, after which I will send a pull request to Smokku and I will then also post an RPM here so all of you can enjoy notification support.

wormdrummer 2015-09-12 07:26

Re: [Announce] Pebble Watch Connector daemon
 
Thanks Robertme, I can also confirm notifications work on the pebble time steel!. Brilliant work. Please let us know where we can donate. Looking forward to the calendar functionality and hopefully more!

Fuzzillogic 2015-09-12 09:42

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by HtheB (Post 1482225)
Edit:
By the way, I found a way to enter the Pebble (Time) App Store and getting all the .pbw files without needing anything:

Maybe we could implement this in our Pebble app, since the one that is in the Pebble app right now, is very choppy and not working properly... :(

I'd love to see an easier way to get the apps, but since the apps are not signed, nor have published hashes which can be verified, I wouldn't trust a random shady third party to provide those apps. Many apps also have a browser component, which runs hidden on your phone. It could be possible for cpfx to inject malware in the apps.

HtheB 2015-09-12 12:37

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by Fuzzillogic (Post 1482249)
I'd love to see an easier way to get the apps, but since the apps are not signed, nor have published hashes which can be verified, I wouldn't trust a random shady third party to provide those apps. Many apps also have a browser component, which runs hidden on your phone. It could be possible for cpfx to inject malware in the apps.

No, I know this guy..... :)
You can trust him

MikeHG 2015-09-13 01:10

Re: [Announce] Pebble Watch Connector daemon
 
I'm a bit confused... before we had the problem with the notifications just saying "Four new emails" or whatever, I believe.

But SF 2.x doesn't have the same notifications view, and I can't really tell from 'Events view' what I would get on a Pebble.

Can anyone enlighten me?

wormdrummer 2015-09-13 01:42

Re: [Announce] Pebble Watch Connector daemon
 
I seem to get individual notifications when theres just one and then 2 new emails etc when I have multiple.

MikeHG 2015-09-13 02:15

Re: [Announce] Pebble Watch Connector daemon
 
I wonder whether we can pester the designers of the email client into having an option to change that...

HtheB 2015-09-13 03:44

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by wormdrummer (Post 1482325)
I seem to get individual notifications when theres just one and then 2 new emails etc when I have multiple.

It's not Pebble's fault :(
If you receive a second notification of the same app, it won't show the context of the message :(

wormdrummer 2015-09-13 07:27

Re: [Announce] Pebble Watch Connector daemon
 
Quote:

Originally Posted by HtheB (Post 1482329)
It's not Pebble's fault :(
If you receive a second notification of the same app, it won't show the context of the message :(

Yeah, I know, I was just responding to the previous post :)

MikeHG 2015-09-13 15:47

Re: [Announce] Pebble Watch Connector daemon
 
(and thanks for doing so :) )

I suppose the other way of going about it would be to get it so you can dismiss notifications from the Pebble.

(sorry... just mulling over whether it's time to buy one yet. If I could handle notifications generally without getting the phone out of my pocket, I'd probably be sold)

RobertMe 2015-09-13 16:21

Re: [Announce] Pebble Watch Connector daemon
 
Good news everyone. The Time Steel and notifications on the timeline are currently working, and all of you can enjoy it :D

[edit]See Smokus post below. The app has been updated on OpenRepos[/edit]. If you do find any issues (releated to notifications) please post them either in this thread or send me a private message.

Thanks to HtheB and wormdrummer for all the testing. And making sure I have working notifications when I finally receive my very own Pebble Time Steel :p

For those of you who, like wormdrummer, want to send me a small donation can do so on PayPal using this donation link. But please remember this is a contribution to me. If you want to have firmware upgrade support you have to send a donation to Smoku instead.

Quote:

Originally Posted by MikeHG (Post 1482372)
I suppose the other way of going about it would be to get it so you can dismiss notifications from the Pebble.

I think I've read the new events view in SFOS 2 should show more details for the individual events? So it might be possible to also read those details and thus create pins, containing the details, for all the individual items.

Quote:

Originally Posted by MikeHG (Post 1482372)
If I could handle notifications generally without getting the phone out of my pocket, I'd probably be sold

AFAICT notification bodies have a limit of 512 characters (at least that's how I implemented it), so at least for longer emails you would still need to use your phone. Although based on those 512 chars you should be able to determine if the email is important or it could wait to properly read it.


All times are GMT. The time now is 08:16.

vBulletin® Version 3.8.8