Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Please support aplite platform (Pebble Steel, firmware 3.12) #1

Open
azuwis opened this issue Oct 18, 2017 · 15 comments
Open

Please support aplite platform (Pebble Steel, firmware 3.12) #1

azuwis opened this issue Oct 18, 2017 · 15 comments
Milestone

Comments

@azuwis
Copy link

azuwis commented Oct 18, 2017

Tried to install timestyle-bb-pebble.0.8.1_20171015.pbw using GadgetBridge on my Pebble Steel(firmware 3.12), and got:

pbw/pbz is broken or incompatible with your Hardware or Firmware

Compare to original TimeStyle pbw file from Pebble appstore, and find the following files are missing in the pbw archive:

aplite/app_resources.pbpack
aplite/manifest.json
aplite/pebble-app.bin

Please support the aplite platform.

@azuwis azuwis changed the title Please support aplite platform Please support aplite platform (Pebble Steel, firmware 3.12) Oct 18, 2017
@plarus
Copy link
Owner

plarus commented Oct 18, 2017

Yes Aplite version is currently not supported with this version. The TimeStyle Pebble source code for aplite is manage totally separately than others pebble watch version.

I must have a look on this specific aplite source code to see how many differences there is with the new version and if I can easily integrate my new code.

@plarus
Copy link
Owner

plarus commented Nov 11, 2017

Aplite platform is now included in 0.9.0 version.
I have ported bottom/top sidebar implementation to this platform

You can download it here : https://github.com/plarus/TimeStyleBBPebble/releases/tag/0.9.0

@azuwis
Copy link
Author

azuwis commented Nov 12, 2017

Thanks!

Installed 0.9.0, and found two different from the screenshot here:

  1. Font size of the time is smaller
  2. Sidebar does not align to center

See the following, the right one was taken by me:

image1 screenshot_20171112-080201

@plarus plarus reopened this Nov 12, 2017
@plarus
Copy link
Owner

plarus commented Nov 12, 2017

The classic pebble watches have various limitation. So I had to made simplification on my implementation:

  • Aplite timestyle app uses png images for each clock digit. For newer pebbles watches the timestyle app use pebble-fctx graphics library (https://github.com/jrmobley/pebble-fctx) for clock time display. So as I do not want to create and add new png images with a different digit size I have used the bigger available font size for clock time display.

  • For aplite bottom bar I always display four widgets. On the others app versions 1, 2, 3 or 4 widgets can be displayed. May be can I port this same behavior to this aplite version.

@plarus
Copy link
Owner

plarus commented Dec 30, 2017

I just published a new version.
Aplite get now the same widget management than for other Pebble!
Still not enough memory for using pebble-fctx. But it's should be possible (just need more work...)

@tilden
Copy link

tilden commented Feb 9, 2018

@plarus Yeah, moving to FCTX was what forced me to separate out the Aplite codebase unfortunately

@plarus
Copy link
Owner

plarus commented Feb 9, 2018

Yes that is what I have supposed.
I think is may be possible by doing several RAM memory optimization:

  • Only load needed font => Already done
  • Only load the needed language
  • Remove unneeded functionality in this use case from FCTX
  • Remove possibility to use 2 differents font for hour and minutes in Aplite
  • Some others optimizations still to be found…

@plarus
Copy link
Owner

plarus commented Mar 3, 2018

I made the 2 following optimizations:

  • Only load the needed language
  • Remove unneeded functionality in this use case from FCTX

But still not enough RAM to use FCTX on APlite...

@plarus
Copy link
Owner

plarus commented Mar 11, 2018

@azuwis: can you test this version (timestyle-bb-pebble 1.1.1_DRAFT_aplite_20180311.zip)?

This version know use FCTX as all modern pebble!
For this version I had to load each FCTX font character one by one.

@azuwis
Copy link
Author

azuwis commented Mar 13, 2018

timestyle-bb-pebble 1.1.1_DRAFT_aplite_20180311.zip works pretty well on Pebble Steel.

Weather: Current works, but Weather: Forecast does not work, display nothing.

It may be a problem of GadgetBridge, not TimeStyleBB's fault.

@plarus
Copy link
Owner

plarus commented Mar 13, 2018

Good news!
I do not see why it would work for "current" and not for "forecast" even with GadgetBridge. For "Weather: Forecast" you only get this display : "..."?

@plarus plarus added this to the 1.2.0 milestone Mar 13, 2018
@azuwis
Copy link
Author

azuwis commented Mar 14, 2018

It does not display ..., it displays nothing literally, see the following screenshots.

screenshot_20180314-093106
screenshot_20180314-093126

@plarus
Copy link
Owner

plarus commented Mar 14, 2018

I get the same result on the simulator.
But good news it is not a bug. It is a functionality!

If the total height of your 3 widgets is too high to be displayed ==> The middle widget is hidden.

#define COMPACT_MODE_THRESHOLD 142

bool hide_middle_widget = (totalHeight > COMPACT_MODE_THRESHOLD);

It is not a new feature. You should get the same result with older version.

@azuwis
Copy link
Author

azuwis commented Mar 15, 2018

Is this functionality only available on TimeStyleBB? Because on the original TimeStyle, I can get Weather: Current Weather: Forecast Today's day displaying at the same time, see the following screenshot.

screenshot_20180315-045941

One thing I notice is that on the original TimeStyle, month is missing on the Today's day widget.

@plarus
Copy link
Owner

plarus commented Mar 15, 2018

This functionality is from orignal timestyle application but was only available for modern Pebble version.
After reflexion this "hide_middle_widget" does not have much interest.
If the user only want 2 widget he just have to configure this 2 widgets.
If the user configure 3 widgets ==> application only have to found the best way to display them.

  • Analysis:
    Screen height = 168
    This Aplite draft threshold = 142
    Original Timestyle threshold = 168 - 8*2 - 3 = 149

  • Date widget height:
    Compact 41 (without month display)
    Compact Large font 42
    Normal 58
    Large font 62

  • Current Weather widget height:
    Normal 42
    Large font 44

  • Forecast Weather widget height:
    Normal 60
    Large font 63

=> So in your case:
Normal = 58 + 42 + 60 = 160 pixels
Compact = 41 + 42 + 60 = 143 pixels

With the 142 threshold => compact mode is always too big for the 3 widgets display.

So i should set the threshold to 149.
And I will set the following behavior when the threshold is reached :

Normal Mode => Compact Mode => Compact Mode + Compact Padding

With the compact padding we now have 157 pixels (168 - 4*2 - 3) for widgets display. Currently enough for all situation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants