Gadgetbridge: Wiki updates

Created on 4 Jun 2016  Β·  81Comments  Β·  Source: Freeyourgadget/Gadgetbridge

I'm just working on the wiki, mainly the Pebble section. So far I've restructured the Pebble main page, reworked the Watchfaces page, and added Pebble Links.

Now I need some input, and would be glad if someone could point me to details (either links, or give some background):

  • Pebble system apps: Sport, Golf. What are they for (a quick Google search didn't reveal anything but 3rd party apps)? In how far does GB support them? If not needed, can they be disabled (without disabling health), and how?
  • Pebble Health: I've played already with this, but never saw any data on the "Live activity" screen. What has to be done to use that? The screen writes "Start Activity", but doesn't tell how. Does the Pebble support that at all? Also: are some of the health features device specific – if so, which and for what device, and what's shared among which supported devices? Can health data be exported somehow (and if so, how – and are there already tools to evaluate exported data)?
  • While there's an issue about Multiple smart wearables at once?, what about the opposite: can I e.g. pair a Pebble with two Android devices, and what would be the implications?
  • Any other thoughts about what should be added here?
documentation

All 81 comments

@IzzySoft
Pebble system apps:

Golf and Sport are some kind of barebone apps. It is possible for companion apps to

  • start and stop them
  • set the values you see on screen
  • customize the name and icon
  • react to the middle button when the app is started

Gadgetbridge does have support for all these except for changing the icon
Just install "RunnerUp" from f-droid, enable 3rd party app support in Gadgetbridge, reconnect the pebble, and start RunnerUp. It will automagically start the Sports app on the pebble.

To remove them from the AppManager, disable "untested features" (Pebble Health will stay there now!), but then you will also lose the ability to reply to SMS or wear enabled notifications (such as Signal notifications) from the pebble. The reason why I hide this cool feature is that I am afraid that due some bug SMS are send to the wrong person (I doubt it - but without a disclaimer, I do not want to unlock the feature)

Pebble Health:

Live activity does not work with health, health does not send live data (it can be used with the Mi Band) We separate data from the Mi Band, Pebble Health, Misfit and Morpheuz. The database can be exported in the debug activity. It is a sqlite database.

Multiple Android devices:

It is possible but only one device can be connected at a time. The implications are that chunks of your health data will be send to different android devices.

Thanks a lot @ashimokawa – that should get me started for the next page :)

Live activity does not work with health, health does not send live data (it can be used with the Mi Band)

Then maybe it should not be shown with the Pebble? After all, the screen is invoked via the context menu of the device, so a user would expect it matches. Hiding it would thus avoid confusion :)

The database can be exported in the debug activity.

Ah, there it was. And is there already anything it can be used for – or is it rather only interesting for backup (as it can be imported as well) or "experiments" (e.g. writing your own tool)?

It is possible but only one device can be connected at a time. The implications are that chunks of your health data will be send to different android devices.

I was afraid so, yes. For such situations it might be useful to define one device as "health master", and have the other one either ignore health data at all or at least NACK them (it might miss some data then which where ACKed by the "master" before it received them, but that we've got to live with unless both devices NACK in this configuration). Are there any plans towards this?

Last one (missed above): Is it possible to switch GB to use English UI without switching the system language? I'd prefer to have the screenshots match the language of the pages :)

Then maybe it should not be shown with the Pebble?

Right. I just forgot.

or is it rather only interesting for backup (as it can be imported as well) or "experiments" (e.g. writing your own tool)?

Yes, right now backup and writing your own tool. You should also be able to use sqlitebrowser to see the raw database.

For such situations it might be useful to define one device as "health master", and have the other one either ignore health data at all or at least NACK them.

That would be possible, personally this has low priority for me right now. But it is basically the same problem we would have with calendar sync or with improving the AppManager.

Is it possible to switch GB to use English UI without switching the system language?

No, but I will add this feature soon.

Regarding health and multiple devices, we could simply nack every pebble health message unless pebble health is the user defined preferred activity provider (in pebble settings). This wouldn't need another setting and could be implemented fairly easily, but that would be argument of a separate issue.

Regarding documentation of pebble health in general, I'll provide more detailed info as soon as I can write from the PC, but I wanted to share a background information because it could be important for the organization of the page: every firmware update after 3.10 has brought some news wrt pebble health data format:

  • 3.10 introduced steps and simple sleep data (tag 81 and 83)
  • 3.11 introduced overlay data (tag 84, deep sleep data) and changed the format for steps (tag 81)
  • 3.12 changed the format of overlay data (tag 84) it now contains further activities beside deep and shallow sleep, but these have yet to be decoded

So I'm not sure if it's better to organize the page first by record type and then by different firmwares' version, or the opposite.

@ashimokawa

  • Live activity: I'll write then "only relevant to MiBand" or "not relevant to Pebble", ignoring that it's currently shown for both (and without data on the Pebble). Your next update concerning this will then fix it automatically :)
  • Database backup: Thanks, will put it that way (just as a hint; details then should go to the page describing the debug screen)
  • Health master: Will point out this is "work-in-progress", not top-prio, and not fully decided yet, but ideas are there. Will look for matching issues and link them. This might help avoiding unnecessary questions/issues.
  • English UI: Great. I'll then make the screenshots German for now, and replace them later.

@danielegobbetti

  • Health master NACK/ACK: See above :)
  • I'll provide more detailed info: OK, waiting for that then.
  • organize the page first by record type: While this sounds good _for the technical page,_ I disagree _for the user page_: the end-user normally isn't interested in protocol details, record types and API interfaces – but simply want's the feature working and know how to deal with it. So I'd rather point out which features/details are available depending on FW version (e.g. "detailed sleep data: … (not available before FW 3.11 / GB 0.9.8 for Pebble"), and how to use them. Later, someone else should cross-check and add relevant details for other devices (e.g. MiBand) before the page gets linked from the sidebar.

BTW: Are there any details available on the debug page? Or should I start with a "skeleton", and some of you devs fill the gaps? Similarly for the "config" screen (though most things are pretty obvious there).

OK, can someone please cross-check the new Configuration page? Especially the things I've {enclosed in curly braces} as I've not been 100% sure. Moreover, I may have named some items wrongly (back-translated from German UI).

Also, the section on _Mi Band_ is completely empty still (except for the matching screenshot), as I have no _Mi Band_ device :)

@IzzySoft ack/nack is in current master :wink:

@ashimokawa

but then you will also lose the ability to reply to SMS or wear enabled notifications (such as Signal notifications) from the pebble

I personally don't care for those (yet), but while working on the Configuration page I've noticed the "predefined responses". Am I assuming correctly that those are for exaxtly this purpose? As I cannot imagine typing a real response on the Pebble, and GB has no support yet for "dictation", that seems the logical conclusion to me – but I prefer to have a confirmation :)

@danielegobbetti

ack/nack is in current master

Cool! Reading the commit message that would mean with the next release of GB I could pair my Pebble with 2 devices (as long as the Pebble allows for that) without losing health data – provided I set the "preferred activity tracker" to something other than "Pebble Health" (e.g. "Misfit") on the secondary? And if I do so on the primary as well, both would have the "full set of data"? Besides: Setting it to "Morpheus" certainly requires to have the _Morpheus_ app installed (on both ends?). What's that "Misfit" in this context?

@IzzySoft

  • organize the page first by record type:

I don't know which way of organizing the content is better for the user but I'd say that the firmware version is the most user-understandable characteristic, so I'd use this for the first-level organization.

I could pair my Pebble with 2 devices (as long as the Pebble allows for that) without losing health data

That's the idea, yes. If you don't have "Pebble Health" selected as activity tracker the android device will receive the datalog messages but they will be NACKed. They will also NOT be processed/saved by GB in this case.

And if I do so on the primary as well, both would have the "full set of data"?

Well, no: see above.

Besides: Setting it to "Morpheus" certainly requires to have the Morpheus app installed (on both ends?). What's that "Misfit" in this context?

Misfit and Morpheuz are apps that is able to record activities on the watch. You don't have to have them installed on the watch if you just care of preserving your pebble health data for the main android device.

@danielegobbetti

I don't know which way of organizing the content is better for the user

By feature, by "app page", by item. Then point out if something is available only from "version X" onwards, on "device Y only", or "not on device Z". Organizing the entire page by FW version looks like a changelog, not like a user manual (at least that's my opinion). For the _technical_ page (Pebble-Datalog.md) it might be a different case – which I prefer not to touch: you're the devs, you know how you would like to read it. I'm a user, so I better stick to my trade and don't talk into yours :)

Pebble with 2 devices

OK, got that; Configuration page updated accordingly. As for "multiple devices", we should consider making that a separate page with details on what is possible, what is not, what needs to be considered if, and giving some practical examples (like the one here: set your main device to "Pebble Health", the secondary to "something else" – and you'll receive notifications from both on your Pebble without losing pieces of your health data). Either a page "Multiple Devices" – or as part of some FAQ.

Don't forget that you still loose Misfit and Morpheuz data when using two devices.

@ashimokawa

Don't forget that you still loose Misfit and Morpheuz data when using two devices.

Just to check whether I got you right: Assuming I'd use Morpheuz. So I'd set the "preferred tracker" to Morpheus on the primary device, and to Misfit on the secondary. Or the other way around if I'd use Misfit. And I still would lose data?

correct

Ouch. Page updated again and hint included. Thanks, @ashimokawa !

@IzzySoft
fixed now in git for Misfit
Morpheuz data can be resent at any time for the last night and the latest release does not work yet with Gadgetbridge, so I will fix that later.

@ashimokawa
Cool. When done, will you fix that in the wiki page as well then (and while on it, check the {braced terms} plus check what I might have missed/got wrong)? :innocent:

@IzzySoft
Removed the note from the wiki.
I will have a closer look at the article later

After thinking twice about it, I don't think our current solution is good.
I want separate checkboxes for all activity trackers.
The way it is now destroys some usecases:

  • Using a Ppebble Time with health and comparing steps data with Mitfit
  • Using a Classic Pebble with Misfit and using Morpheuz for smart alarm (it was is possible since Morpheuz no longer uses a background worker)

For people who only use one phone which should be the vast majority we just broke things with zero extra value.

@ashimokawa I only document what is currently there, but you have your point here (which probably belongs to #305 ). If behavior changes, we certainly should update the documentation. But for now I'd rather need to know whether the Configuration page is OK (and the gaps are filled / {curly braces} removed) so it might be "made public" and linked from the sidebar :)

@IzzySoft
In master you can now switch the language at runtime. Hope that helps with screenshots and correct strings in the configuration page.

About the curly braces:

define answers to pick from β€žinteractive notificationsβ€œ, so you can e.g. answer SMS directly from your Gadget

That's correct, however we should move that to the pebble settings as long as we can only support that on pebble.

Details on your person

I would also write how what they are for. They are sent to the Mi Band and Pebble Health to magically adjust their algorithms. We just know they have to be sent but we do not really know what happens on the device because firmware is not open source.

enable only if you know what you're doing – or being told by our devs

The "force notification protocol" is a legacy option that I used for letting other debug 3.x firmware issues (because I did not have 3.x at that time)
Right now the option only does something for 2.x firmware users: It forces 2.x style (instead of 1.x style) notifications instead in all cases. If is is not checked, for email notifications 1.x style notifications are used, because we can set an email icon there (but we wont have a context menu on the pebble then).

@ashimokawa

In master you can now switch the language at runtime

Thanks a lot! Guess that didn't make it into v0.10.0 which came out today (or I'm just blind and do not see where the option hides). So I'll update the screenshots when the next version of GB is released :)

curly braces

Thanks for the background! That was what I was lacking. Updated the page accordingly. As you might have seen, I've already replaced the Pebble config screenshot with 2 new screenshots reflecting new features added with v0.10.0. All that's missing in the Pebble part now is Emulator IP/Port. I only have a vague guess here – but not being an Android dev, I'd rather make sure first :)

As for MiBand: Maybe someone else can add the details for this. I have no MiBand and thus have no experience with it, don't know about its capabilities and working, and neither can cross-check. With the general and Pebble sections being complete so far, shall I already link the page from the sidebar's "General" section, immediately before the Changelog?

@IzzySoft
0.10.0 was tagged 5 days ago and is in fdroid since 4 days ago.

Language selection is in current master.

For the emulator part, it does not work at all without internet permission. So you have to compile Gadgetbridge yourself to use the feature. Then you will be able to connect to a pebble emulator (included in pebbles SDK) and use it like a real pebble. I was using that to implement some 3.x features without actually having a 3.x watch at that time. Unfortunately, starting from 3.x the emulator is quite crippled and does only include the timeline features (no music, no calls, no health, no menus). Still it is useful for various tests.

@ashimokawa

0.10.0 was tagged 5 days ago and is in fdroid since 4 days ago.

Ooops? I just got the update notification today. Well, nevermind: fact is I'll have to wait for the next version to switch the language :)

emulator

Reading that, maybe those configuration options should not be shown unless relevant? As you wrote (and I can definitely follow the reasoning – which is why I was wondering before what use these options might be), _it does not work at all without internet permission._ Official releases of GB won't have that permission anyway – and whoever compiles GB with that permission could also toggle a switch to make these options show up. So IMHO these options should only be visible when compiled with the INTERNET permission declared in the Manifest then. If you agree, I'll notice that when doing the English screenshots and remote the two bullet-points accordingly – as "not being relevant to end-users" :)

So: Shall I add "Configuration" to the sidebar now – or better wait until someone cares about the MiBand section? I'd say I add it now – that might make it easier to find a volunteer for the MiBand stuff :)

@IzzySoft
Thanks for the suggestion, I will try to hide the emulator options if the permission is not available.

I also edited the wiki article, so that the menu items match what is actually written in Gadgetbridge. English translation is not very good, unfortunately. I never know when using uppercase letters is appropriate and when not.

@ashimokawa Thanks! Looks good. And yes, we Germans always have problems deciding upper-case for English UIs :)

I've added the Configuration page to the sidebar now. Though it's still incomplete (MiBand options missing) and the screenshots need to be replaced, it should already be quite helpful. Also makes it easier for new potential users to figure what to expect. And some MiBand user might feel to fill the gap at the end of the page :)

As soon as the next release is available, I'll cross-check once more while replacing screenshots. After that, I might go for the "Health" page – but again can do that only based on my experience with the Pebble plus some background gathered here and from the issues. Help from a MiBand user would be very welcome, as they probably have more features in that context. For clarity: should we use a new issue for that page, and rename this one to "Wiki updates: Configuration page"?

Just to pinpoint current status of "open items":

  • [ ] Configuration: MiBand
  • [x] [Multiple devices](https://github.com/Freeyourgadget/Gadgetbridge/wiki/Multiple-devices)1 (see e.g. this post ff.)
  • [x] Health (currently integrated with _System Apps,_ see below)
  • [x] [System Apps](https://github.com/Freeyourgadget/Gadgetbridge/wiki/Pebble-System-Apps) (Pebble Sport/Golf)1 _Golf_ still missing (no idea about that :)

1 should probably go into some FAQ page. Currently we have an FAQ _section_ in the sidebar, with a single page linked containing a single paragraph. I'd suggest making that an FAQ page with the current item and the two 1 icons from above. That would mean 2 new pages currently (health, FAQ) with one of them "migrated".

How does that sound to you, @ashimokawa & @danielegobbetti ? And shall I stay within this current issue with "requests for details" – or switch to new ones as suggested with my previous comment?

@IzzySoft
I think we can keep this issue open

About system apps: I don't think a documentation here is obligatory. Since they only pop up when untested features are enabled. The more the better though ;)

The reason why they are there is only debugging. There was a problem with a companion app using this: It was not able to start sports, making it available via app manager enabled us to manually start it and see if the rest works.

A FAQ should be a FAQ though, and not much was asked except "can't you do feature X please?"

@ashimokawa I do not see that the system app stuff justifies its own page (neither do I see that for the one logging paragraph currently filed in the FAQ section). So my though was putting all those "minors" together into one file. I understand (and follow) your reasoning not to call that "FAQ" – so why not call it "Misc" (or something similar) and move it to the "General" section – removing the "FAQ" section which doesn't have FAQ items anyway? :smiley_cat:

As for system apps: Not obligatory might be true. But those questions will arise again – and you've put your finger on the exactly right point: companion apps which use them. Especially the "Sports" app (while there are some "Golf" apps for Android which seemingly address the "Golf" Pebble app, I don't think there are that many users for it with GB :)

However, I agree with you: "The more the better". And if it's well organized, it cannot hurt. Give me a name for the "Misc" page, and I'd start on that (I hesitate a little concerning the "Health" part as I do not feel that familiar with it – to me it seems that's rather 75% MiBand and only 25% Pebble ;)

@ashimokawa & @danielegobbetti could you please proof-read the Multiple devices page I've just created? With "work in progress" I'm not 100% sure if I got that right. If you approve, I'd link that next to "Log files" in the sidebar.

Should we rename the "FAQ" header to something else while on it, as discussed in the previous two comments?

@IzzySoft I reviewed and updated the page where needed. I hope it's clear but feel free to rephrase where needed.

@danielegobbetti Thanks! Much clearer :) I didn't know the exact version number etc, just guessed by the commits. Linked it from the sidebar then :)

@danielegobbetti One more thing, with the new interface for "Preferred ActivityTracker" in v0.10.1: What happens if I tick on multiple trackers? Will packets be always NACKed then – as otherwise it would become a "first come first served" situation, with the first candidate consuming the packet leaving nothing for the others?

You can still select a preferred activity tracker (this is the one used for the graph display), it has nothing to do with what will be synced.

@ashimokawa Reading Daniele's edit of the Wiki page again: So there's a _new config item_ for what-to-be-synced (check-boxes), and it remains the other one (radio buttons) for what GB uses for graph display – now I've got that, thanks :) So with selecting multiple trackers to sync, GB ensures that _each_ of them gets _all_ the data – did I get that right as well?

@IzzySoft
Right.
The behavior @danielegobbetti introduced regarding the preferred tracker has been reverted and never made it into any release. We now have the checkboxes for controlling what to sync and what not. They are all checked as the default. Only if someone is in that "multiple phones" scenario, he/she can uncheck them.

Thanks, @ashimokawa – integrated that with the "Multiple" page :)

@IzzySoft
FYI, I have tagged 0.10.1, it should show up on f-droid in the next 24 hours

EDIT: it is there now

@ashimokawa Thanks for the pointer! Will keep my eyes open and then replace the screenshots ASAP :)

@ashimokawa Done. Noticed 2 strange things (you will notice too when looking at the page): 1) while all pages have a header, the Pebble settings have none – and 2) title of the General settings didn't honor language override :)

Apart from that: I'll go over the descriptions once more ASAP to include the new additions etc.

OK, updated. Would be good if someone could proof-read the "Preferred activity tracker" versus "Sync XXX" section. If I understood correctly, "Preferred" means which data source GB should use to display health data. So I assume for that to work, the corresponding data source must also be ticked on in "Sync XXX" – and if not, all graphs in GB would remain empty. But what with both items checked correctly, but the corresponding app (Misfit/Morpheus) not being installed? If one selects e.g. _Misfit_ as preferred, ticks to "Sync Misfit", but doesn't have the Misfit app installed: would that matter, or does GB store the data sync'd for Misfit and thus can use this nevertheless?

@IzzySoft
I know, the activity titles are somehow now translated properly, I got it working once after force closing Gadgetbridge through settings. No idea about that.

Not only the pebble settings have no header - no subscreen has one. Mi Band settings is an extra activity, that is why it has one. Its some poor android limitation. There are evil hacks to make it work, somehow, but I didn't find it important enough to figure it out yet.

About activity trackers: Your assumptions are correct.
And: We do not need any Misfit Android app, this is just between the watchapp and Gadgetbridge. If Misfit is not installed on the Pebble, nothing happens and it does not matter if the option is checked or not. Same for Morpheuz.

Just for clarification: If neither Morpheuz nor Misfit are installed, and I select one of them as "preferred activity tracker":

  1. would that work with just sync being ticked for it? (Edit: obviously not – where should the data come from?)
  2. if sync for it is not ticked, the activity graph would simply stay empty?

Another question that might come up in this context: Does it make sense using multiple trackers, e.g. Pebble Health and Misfit (and does that have much impact on battery life)? If not, and one decides for Misfit or Morpheuz: how to disable Pebble Health if one wants to switch to Misfit/Morpheuz?

Pebble Health can be disabled via appmanager (long press on health)

I don't think multiple trackers make sense, but they should not affect battery either.

Morpheuz is a different beast, because it is only meant for sleep tracking. Latest versions do not work with GB, have to fix that...

Thanks, @ashimokawa – added that (disabling a tracker) to the "Multiple Trackers" section on the "Multiple devices" page :)

Guess next I'll take care for the "Pebble System Apps" page. If I understood correctly, the "Pebble Health" app is now shown by default – but for Golf/Sport one still needs to tick the "untested features" in the Pebble specific settings. I've planned to check out a few companion apps I think will make use of the Sports app (I know RunnerUp will do that, but suspect e.g. Meerun doing the same). Not sure about the Golf app; as I'm no golfer, I have no idea what to check on that ;)

Btw: Except for those two sport apps, is anything else affected by the "untested features" checkbox that should be mentioned? Or is that a continuously changing set which should go to a separate page?

Another interesting feature is the music control, it was improved recently in GB and there are a number of free-software music players on f-droid that work. I believe it could be explained in the wiki.

For what I observed the aosp player (android M), vanilla and antennapod work with "basic" functionalities. Timber works fully.
Basic functionalities means you can see the current song on the pebble but not its progress.
This works through the android notifications' system: if you're playing music and your pebble is connected to GB, as soon as you start the music app on the pebble you see the information.

Good point, @danielegobbetti – last time I've checked into that was _before_ the related PR was integrated (and the watchface didn't even reflect when the player switched to the next title). Where would you say should that go? Together with the "System Apps" would make sense, as Music comes pre-installed.

Alright, so today I'll test the Music app with CM's _Apollo,_ DJD Player and with Jockey, so we have some alternatives to report :)

Thanks for the pointer again!

Edit for the records:

  • _Apollo_ gives "basic" info (current song) – but other than before v0.10.1, that's now automatically updated when advancing to the next title
  • _DJD Player_ works the same ("basic" info, properly updated)
  • _Jockey_ seemed to give no info on the Pebble.

Might give the GEM Player a quick check as well.

PS: Is it normal that pressing "Pause" on the Pebble only has effect with a preferred player app selected _explicitly_ – while pressing "play" seems to work with "Default" as well? If not, maybe I should create a new issue for that?

PS: Is it normal that pressing "Pause" on the Pebble only has effect with a preferred player app selected explicitly – while pressing "play" seems to work with "Default" as well? If not, maybe I should create a new issue for that?

Since I noticed in your message I fixed it already (will be in the next release :-)
I also have to correct my stance about AntennaPod: it works fully (with progress report etc.)

@danielegobbetti

Since I noticed in your message I fixed it already (will be in the next release :-)

Cool – so I put no note on that into the wiki :)

I also have to correct my stance about AntennaPod: it works fully (with progress report etc.)

I'd add that, but I'm a bit hesistant: You've said the same about _Timber_ – but to me, it gives the very same basic info as other apps, no progress bar.

Initial version of the new wiki page: Pebble System Apps. Proof-read and feedback welcome – as well as screenshots, if available ;)

@IzzySoft
Regarding the wiki page:

and again others are hidden by default and require the "untested features" to be enabled

That's not true. They work perfectly without the "untested features". They just wont shop up in AppManager if the option is not enable. As I said, I only put them in AppManager to debug non-working companion app.

Starting with v0.10.1, Music works well with most players

It worked well before v0.10.1 also. There is just a new feature to extract information from the notification on Android >=5. Also the old method has been updated to detect progress, playstate and duration.

though only for "basic information": it displays the currently played track's interpret and title (see screenshot)

No. Album is also displayed. Plus a progress bar for most players (Antenna Pod, Cyanogenmod's "Music")

you also can control those players via the three buttons on the right side of your Pebble: the upper button skips one title back, the lower forward.

There is more: Long press on the upper or lower button reveals volume controls. :)

If you selected "Pebble Health" as your preferred activity tracker, those data will be used on Gadgetbridge's "Your activity" screens:

Yes, correct, but the screenshots are not Health specific at all they would look the same with Misfit, that's why I think they probably do not belong into the article.

Maybe we would need an extra article for Activity tracking (one for all trackers and Mi Band)

Anyway, you did a really great job with the wiki!! That's a very good contribution for the project and should answer a lot of questions! Thank you!!!

@ashimokawa thanks for proof-reading! Suggested update:

and again others are hidden from Gadgetbridge's Application Manager by default and require the "untested features" to be enabled if you want to see them there (they'll work perfectly on your Pebble regardless of that)

Starting with v0.10.1, Music works well with most players
It worked well before v0.10.1 also

Not for me. Title info always stuck on the Pebble with the title played when the watchapp was called, and a refresh required leaving the watchapp and calling it again. But no problem to kick-out the introductional half-sentence (thus starting with "Music works …")

There is just a new feature to extract information from the notification on Android >=5.

Thanks! That was what I guessed but lacked proof – as I don't get those details (Kitkat on the device running GB).

There is more: Long press on the upper or lower button reveals volume controls. :)

Wow! Need to check that ASAP!

Yes, correct, but the screenshots are not Health specific at all they would look the same with Misfit, that's why I think they probably do not belong into the article.

Maybe we would need an extra article for Activity tracking (one for all trackers and Mi Band)

Agreed. I'd suggest leaving it at this place _for now_ – and I'll move (and link) it to a separate page later. OK with you?

Anyway, you did a really great job with the wiki!! That's a very good contribution for the project and should answer a lot of questions! Thank you!!!

Anytime – glad I can help! You do a great job in programming and supporting GB – so with taking care for some documentation I at least can give back something :)

Will update the "system apps" page ASAP.

Update done. Also updated my checklist above. From the currently known items, two things are missing which I cannot write about:

  • Configuration β€Ί MiBand (I have no MiBand)
  • Pebble System Apps β€Ί Golf (I'm no Golfer, so no idea on this one)

Anyone around who can fill those gaps? Any ideas what other pages are missing which I should "initialize"? Sure, configuration of watchfaces is not yet documented; but with that I better wait for #251 to be completed ;)

@IzzySoft
You can forget about Sports and Golf.

Maybe they should be mentioned in a companion app section, but I will remove them from the AppManager soon.

Reasons:

  • It was only meant for debugging, and companion apps should be able to start golf and sports on their own.
  • golf and sports can't be reordered

I have a WIP branch with a new AppManager which keeps track of installed apps and watchfaces and lets you reorder them by drag and drop. Apps which are not visible in the menu on the watch should not be there, because they can't be moved. Even if a companion sports app is running and it is actually visible in the menu on the watch, it still can't be moved. So I will remove them 100%.

But I will add Music, Notifications, Alarms, Watchfaces as System apps because they _can_ be moved.

@ashimokawa as they are still system apps, I'd say they should stay on that page. Of course, details would need to be updated accordingly (and the other system apps added, as you suggested). How does that sound?

@IzzySoft
Sounds good.
I will remove them in my branch, which will be merged after the next minor release.
So the instructions do not have to be changed that soon.

@ashimokawa OK, prepared so far. Did not yet mention the ability to "move a watchapp to the top", as that's not yet released. Will update it then as soon as the changes are made public (including Sport and Golf no longer appearing in the Application Manager – which will make it hard for me to update those screenshots later :)

BTW: I've run into a bug with Android 4.4 (not directly related to GB, nor anything GB can fix): when using the Music watchapp to _control_ the music player (start/stop/skip), this may result in a permanent wake lock on the Android device (which then never goes to sleep until rebooted – see e.g. HandleMediaEvent Wakelock Galaxy S 4 / Handlemediaevent wakelock bug; on CM11, a different kernel might solve it). Should that be mentioned in the "Music" section?

@IzzySoft
Just curious, why don't you update to CM13?

@ashimokawa
Because there is no CM13 for that device (LG P880; last available is CM12.1 unofficial).1

I thought about that (and even have the CM12.1 image already on my computer for a while). But reports on "bad performance" kept me from it until now (they don't affect all devices – but according to Murphy, I'm afraid it would hit mine). Guess I'll give it a try some day, now that I have a new device with overwhelming stamina (battery lasts a full week on my Wileyfox Swift!).

Nevertheless, there might be users running KK and not having the chance to update to LP+. So I thought a pointer would be nice. And might avoid some "issues" being opened where GB cannot do anything about :)

1 Oh, surprise: a CM13 indeed turned up. Will be interesting times ;)

@IzzySoft
Most probably you wont get the performance on Android 5+ that you got on Android 4.4.
Apps like the Dialer and Webview became a lot more resource demanding.
Still I like the improvements and find the performance impact acceptable on the devices I tested. But I guess it is a personal preference. ;)

@ashimokawa
As I don't play heavy games or the like, I don't think that will be a big issue, right. And with the reports on the latest CM13 builds sounding quite promising, I guess I'll try CM12.1 as soon as time permits, and then go on to CM13.

But back to topic: shall I mention that KK issue on the Wiki page or not?

@ashimokawa @danielegobbetti
I've meanwhile updated my device to Android 5.1.1. Tried with Timber, get no progress bar on the watchface. On my Pebble, all looks as it did before (and on my device, battery drains like crazy – as expected. For the next days, I'm afraid I'll have to carry my power bank in my pockets). Am I doing anything wrong here? I've checked the Timber settings, but no clue.

@IzzySoft
I don't know much about legacy KitKat ;) - if you find it worth mentioning - just do it.

About Timber: I installed it and I have a progressbar in the Music app. I don't know what you mean with "watchface".
Also, the progressbar is not limited to Android >=5, we also have new code that tries to get the information by receiving intents. But on Android>=5 we have a new additional method = higher change to get the information. The wiki would also have to be corrected regarding that.
This is all non-standard and stupid - unfortunately. We can try to support specific players better, but there won't be any code that can "catch them all" - not our fault.

Back to the topic:
We will release 0.11.0 today, and it will most likely pop up on f-droid tomorrow.
This is a feature-packed release, most notably "dismiss calls with sms" and "new app manager" including sortable app lists (Spoiler: long press on the icon for drag and drop). If you want to document that, we would be grateful ;)

@ashimokawa

I don't know much about legacy KitKat ;) - if you find it worth mentioning - just do it.

A short note cannot hurt. Done.

About Timber: I installed it and I have a progressbar in the Music app.

My fault. Found out after wondering why not a single notification was forwarded to my Pebble that I forgot to grant it access to notifications. Done that, works, screenshot added to the wiki page :) And by "watch face" I meant the "Music app", yes. So better I distinguish "watch faces" from "watch apps", huh? :)

Also, the progressbar is not limited to Android >=5, we also have new code that tries to get the information by receiving intents. But on Android>=5 we have a new additional method = higher change to get the information. The wiki would also have to be corrected regarding that.

I never had a progress bar with Kitkat – just now after upgrading the device to 5.1.1 I got to see it. Are you talking about new code not-yet-released? I can no longer check with Android < 5.1 – but feel free to update that in the wiki then.

0.11.0

Yeah, I followed the commit logs – cool stuff, good job! Of course I'll check things out and update the wiki accordingly. Might need some new page(s) (e.g. I'm not sure where to put the call-reject feature). Let me check first when it's out – most of it is clear where it goes (App Manager, Configuration Presets).

@IzzySoft
About the progress bar - no I am not talking about unreleased code, there are some players that expose all necessary information though intents so the new stuff for Android >=5 is not necessary. AntennaPod is one example

About 0.11.0, before you ask ;)
We added new system apps (for sorting). There is a "Send Text" app which will pop up as soon as canned phone call dismissal got enabled (by setting a canned message once). This App is not working yet with Gadgetbridge. But it will be supported soon.

I haven't tried AntennaPod. None of the music apps I've tried when running KK showed a progress bar.

As for 0.11.0: Guess I won't be using the call-reject feature (cannot remember many rejected calls ;) So shall I wait documenting this part until the "Send Text" app is supported (in other words, how soon is soon)?

Just FYI: if you fake an incoming call from the debug menu then the Decline with SMS option will show up (if configured). Just be sure to use a number (and not an alphanumeric string) in the input field.

@danielegobbetti Thanks! I totally forgot about that possibility. Will give it a try – and then see where in the Wiki to put that information (suggestions welcome!).

F-droid updated us ;)

@ashimokawa loaded. checking :)

Edit: Updated App-Manager section. Just done that, my phone froze again (or shut down, I don't know – looks rather like a freeze, as I have to press the power-button ~15s to start it again). Guess that LP ROM is not that stable. As I haven't used the music app since the last restart, it at least cannot be that ;)

@IzzySoft
Great. Thank you ;)

Regarding Firmware 3.x we do track which apps are installed and which have been remove (assuming you only use it with Gadgetbridge on one phone). In your case you have to reinstall all the apps on course. That is where the app sorting starts to shine. Long press on the icon to drag and drop. Magically the apps on your pebble will be in the same order ;)

@IzzySoft
Umm I forgot to mention:
App sorting in the cache does not change the order on the pebble. Sorting only does something on the pebble when you sort the apps inside the installed watchfaces or apps tab (swipe to the right).

Also installed watchfaces are tracked for each pebble separately if you own multiple pebbles, that is also taken into account.

Oh, there are more pages #D Need to do another update then… Later (maybe tomorrow). Btw: still open for a suggestion on where to place the call-reject feature in the wiki. With you knowing the "queue and priorities": is there something in-line that would go together with this, thus suggesting a matching (new) page?

Update done for the App Manager wiki page (just in case someone wants to cross-check ;)

About "things going together" with "reject a call": that's a system app, right? So maybe I integrate it with them for now? We can move it to another place anytime, if a restructuring shall be done.

@IzzySoft
Very nice. Thanks! Looks correct to me.
I noticed you have the "3.x Firmware cannot know..." stuff twice. You should remove the second note.

Also, I wouldn't call the "dismiss call with SMS" feature a system app. Maybe a new wiki page called "phone calls" where we also write about the phone calls feature in general.

@ashimokawa

I noticed you have the "3.x Firmware cannot know..." stuff twice. You should remove the second note.

Yeah, I noticed that (the second one is the older text) – but wasn't sure whether I should keep it or delete it. I was 50:50, so your vote pulls the trigger: gone now :)

Maybe a new wiki page called "phone calls" where we also write about the phone calls feature in general.

At the risk of sounding silly: What did I miss there – apart from phone calls being signaled and now being able to reject them (not counting certain 3rd party apps that is)? Can you enlighten me with some bullet-points?

@IzzySoft
Bullets for the Phone Call wiki page ;)

  • We were always able to reject calls
  • Now we are able to reject calls with an SMS (we could put a screenshot with the icon and the way of setting that up in Pebble Settings)
  • On Android >=6 users are able to not grant the contacts permission, they won't see caller names then. This is also the case if using CM >=11 with configured privacy guard
  • Our outgoing call feature is a fake, we fake an incoming call then take the call immediately, so this is a Gadgetbridge exclusive feature not present in the official App

@ashimokawa Sorry for my absence – keeping my phone from freezing had precedence (fixed now).

  • I was able to fake an incoming call and take screenshots (incoming call, call declined)
  • I didn't see a possibility to reject the call with an SMS. I guess for that I've got to go to _Settings β€Ί Pebble β€Ί Call Dismissal,_ tap an empty line (uh, figure that – I was looking for the "+"), add some "canned text", and then hit "Update on Pebble"? Ah, yeah, that did it. So what about the other funny options suddenly showing up there: "Reply with Voice" and "Emojis"? What does that do (if it works at all)?

Moreover, in Pebble Settings I find "Replies" and "Call Dismissal". I've already figured the latter must be setup to be able to reject a call with a canned reply. I take it the former are to react on SMS? That could go on the same page then – and instead of "Phone Calls" that should be "Calls and SMS" (first draft – feedback and details on SMS welcome)?

PS: Just updated the Configuration wiki (new screenshot, moved/additional options). What needs to be updated there as well is the "Enable untested features" item. What's currently covered by that? AFAIR Sports and Golf are no longer triggered that way ;)

Sorry for my absence – keeping my phone from freezing had precedence (fixed now).

No need to apology. Glad you are back :+1:

So what about the other funny options suddenly showing up there: "Reply with Voice" and "Emojis"? What does that do (if it works at all)?

Emoji lets you chose an emoji from a list. It is not our idea, its just there and we can't remove that. "Reply with voice" is new to me because I do not have a Pebble Time, it is not there with the Classic (no mic). I assume it sends your voice to some speech to text service living in the cloud and you will see the result on you watch then an can send it if the cloud was working as expected ;) We can pretty much assume it will never work with Gadgetbridge unless a miracle happens and a working opensource library pops up that can do speech recognition.

I take it the former are to react on SMS?

Not only SMS, also Android wear compatible notifications such as in Signal.
It is meant to be general purpose, the only problem is that not many projects support wearable actions. I _think_ the guys behind Conversations is also working on it.

What needs to be updated there as well is the "Enable untested features" item. What's currently covered by that?

It is only the reply option for SMS/wear compatible notifications that will be enabled. Decline calls with SMS will work without the option. There is a reason for that: in theory there could be a bug which does not reliably match the receiver to the SMS, and you do not want to do sexting with your mother in law I guess :D For decline calls with SMS it is sure it works because phone number + text are contained inside the same command packet coming from the pebble.

That being said, I did not have problems with wrongly matching a number.

@ashimokawa Thanks for the fast feedback! I've updated the pages accordingly:

  • added your details to the Calls and SMS page
  • fixed the "untested features" and linked the _Calls and SMS_ page from the "Canned messages" options on the Configuration page
  • linked to _Calls and SMS_ from the Pebble page

A cross-check cannot hurt – and if I got something wrong, feel free to fix :)

What's next? _MiBand_ is still open on the configuration page (I was hoping for some MiBand user to fill the gaps). Any other topics I should document? Or do we need a new issue for that, as this one already got quite long?

@IzzySoft I will provide some info for Mi Band users, but it will take a few more days. Thanks for all your work!

@cpfeiffer Great! Well, and take your time. That part was missing for quite a while, so what are "a few more days"? You do important work on the project which IMHO should have preference – so we're glad about that already ;) I'm happy being able to contribute my little bit by writing some docu ;)

FYI, added information about language packs.
Since these are supported and really nice we should mention them:

https://github.com/Freeyourgadget/Gadgetbridge/wiki/Pebble-Language-Packs

Was this page helpful?
0 / 5 - 0 ratings

Related issues

bigretromike picture bigretromike  Β·  8Comments

MagicFab picture MagicFab  Β·  7Comments

cpfeiffer picture cpfeiffer  Β·  4Comments

robalvsan picture robalvsan  Β·  3Comments

wYhyzByH picture wYhyzByH  Β·  4Comments