espruino / espruino/BangleApps

gps on banglejs2: report satellites before the fix

Open
#3,097 1 comment 1 reaction 0 assignees View on GitHub
area-firmware type-enhancement
Dominant language
JavaScript
Stars
571
Forks
1.3k
Avg merge
17h 38m
Merged PRs (30d)
17

Description

### Affected hardware version

Bangle 2

### Your firmware version

2v19

### The bug

GPS fix (as reported by Bangle.on('GPS', function(fix) { ... });) contains satellites field. Unfortunately it is only nonzero when we actually have a fix.

To provide some kind of feedback before fix is acquired, it would be nice to know number of satellites decoded even before we have the fix. (Currently such information is only available with gps-raw interface). There's big difference between "no fix, 6 sats decoded" -- which means "stay in place and wait a minute" and "no fix, 0 sats" which means "move under clear sky, can't get a fix here".

My proposal would be to report fix.satellites as number of satellites with known snr ratio when we don't have a fix, but other solutions are possible.

### Installed apps

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Bangle.on('GPS', function(fix) { ... }) interface and compare its satellites field with the gps-raw interface described in the issue. Determine how satellite counts are represented before a fix, then verify that the reported count distinguishes no fix with decoded satellites from no satellites.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
embedded-iot
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.