GPS signal issue on 920xt when using CIQ api from widget

Looking for help from developer owning 920xt

Hi I have recently developed this widget: https://apps.garmin.com/en-US/apps/3ab1e334-4181-45a3-8bec-a42b8955733e

I have tested it in simulator on all devices and on a real Fenix 3. I have some good reviews from 920xt owners, but 2 of them are reporting the same issue with acquiring satellites:

Widget is unable to get the GPS signal. It can get it well, if user first run some GPS enabled activity and from that activity runs the widget, or (maybe), exits the activity and quickly run the widget...

Please can you test it on your device and tell me the behavior? Are you aware of some issue or setting which could cause it? Does your GPS enabled widget have the same issue?

Thanks a lot,
David
  • I have a test widget that just displays the current gps position and accuracy floating around on my dev box at home. I'll just need to dig it out.

    Travis


    Hi again,
    I have put it together. The full source code below. I would be grateful if you can test in on your 920xt and observe differences between this and my Position widget. Maybe I will be lucky and this test will work -> and I will just need to find a 920xt specific bug in my code :-)

    using Toybox.Application as App;
    using Toybox.WatchUi as Ui;
    using Toybox.Graphics as Gfx;
    using Toybox.Position as Pos;

    class GPSTApp extends App.AppBase {
    function getInitialView() {
    return [ new GPSTView() ];
    }
    }

    class GPSTView extends Ui.View {
    hidden var status = "Please wait...";

    function onShow() {
    Pos.enableLocationEvents(Pos.LOCATION_CONTINUOUS, method(:onPosition));
    }

    function onPosition(info) {
    status =
    info.accuracy == Pos.QUALITY_NOT_AVAILABLE ? "None" :
    info.accuracy == Pos.QUALITY_LAST_KNOWN ? "Last known" :
    info.accuracy == Pos.QUALITY_POOR ? "Poor" :
    info.accuracy == Pos.QUALITY_USABLE ? "Usable" :
    info.accuracy == Pos.QUALITY_GOOD ? "Good" :
    "???";
    Ui.requestUpdate();
    }

    function onUpdate(dc) {
    dc.setColor(Gfx.COLOR_WHITE, Gfx.COLOR_BLACK);
    dc.clear();
    dc.drawText(102, 20, Gfx.FONT_MEDIUM, status, Gfx.TEXT_JUSTIFY_CENTER);
    }

    function onHide() {
    Pos.enableLocationEvents(Pos.LOCATION_DISABLE, method(:onPosition));
    }
    }
  • Ha. I already found my code filed a bug for this. Technically, I think the position sample program is sufficient to demonstrate.
  • Thanks Travis,

    So you were able to replicate issue using test/demo code? It would mean the bug does not originate in my code, but solution is far far away :-)...

    David
  • Yes. It is a problem with the fr920xt. I've reported it to Garmin. I also found and reported problems with the when field not being updated on the fr920xt and vivoactive.