Skip to content

Commit

Permalink
initial commit working v0.1
Browse files Browse the repository at this point in the history
  • Loading branch information
cemheren committed Nov 26, 2022
1 parent 212b454 commit fc21bed
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 10 deletions.
24 changes: 24 additions & 0 deletions readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Instinct 2s Better battery Watchface

This is a battery optimized watchface for instinct 2s. It does all of the layout positioning hardcoded to save battery life.
I get about 4% consumption per day with this, which is about 10% better than the stock watchfaces.

I daily drive this watch face and haven't seen any crashes in a long time.

![](screenshots/ss1.png) ![](screenshots/rain.png)

# Features

1. Live heart-rate. Bottom right corner of the watchface features a live heart rate count. This is updated partially even when the watchface is active to save battery.
All other parts of the watch face is only drawn once a minute.
2. Heart-rate graph. Goes back 100 mins and adjusts height as indicated by the left side arm. If the HR data is concentrated on higher or lower end of the spectrum, the graph will adjust to show most granularity. Updates once a minute.
3. Weather, steps, date. Drawn once a minute right above the live HR and the HR graph.
4. Time. No seconds to save battery.
5. 3 timezone hours. Only show hour for different timezones since minutes are the same. Zones are set to, UTC+9, UTC, and UTC+3. These are hardcoded to save battery.
6. Saliency area: Changes what's displayed based on circumstances.
* Picture above is showing sunset. Sunset and sunrise times are cached until the next event to save battery.
* If rain is coming this will show a precipitation forecast. Cached 30 mins to save battery.
* If battery is low, it will show battery percentage.
* If freezing it will show a freezing alert.

![](screenshots/full.png)
Binary file added screenshots/full.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/rain.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added screenshots/ss1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 2 additions & 10 deletions source/plottableArray.mc
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,13 @@ class PlottableArray

public var data;

public var capacity;

public var INVALID;

function initialize(invalidData, capacity)
function initialize(invalidData)
{
min = 2000;
max = -1;
data = [];
capacity = capacity;

INVALID = invalidData;
}
Expand All @@ -26,13 +23,8 @@ class PlottableArray
data.add(item);
}

function add(item as Numeric, when as Time.Moment)
function add(item as Numeric)
{
if(when != null && data.size() == capacity)
{

}

if(min > item)
{
min = item;
Expand Down

0 comments on commit fc21bed

Please sign in to comment.