Simulator GPS question: Set Position / Set GPS Quality changes state, but no location callback in watch-app (fr265)

Hi,

I’m trying to understand the expected GPS simulation behavior in the Connect IQ Simulator on `fr265`.

I have a normal `watch-app` with:

```monkeyc
Position.enableLocationEvents(Position.LOCATION_CONTINUOUS, method(:onPosition));
Then in the simulator I use:

Settings -> Set Position
Settings -> Set GPS Quality
What I can confirm:

these menu items do change the current position state
Position.getInfo() reflects the new values
What I cannot get:

my app does not receive any onPosition() callback
this happens not only in my app, but also in a very small sample-style app that subscribes in onStart()
So the simulator appears to change the location state, but not deliver it as a location event callback to the app.

Environment:

device: fr265
app type: watch-app
Positioning permission is enabled
simulator menus are available
tested with LOCATION_CONTINUOUS
My question is:
For a normal watch-app on fr265, what is the correct way to make the simulator generate actual Position.enableLocationEvents() callbacks?

Is Set Position / Set GPS Quality only meant to affect Position.getInfo() state?
Or is there another simulator mode / activity / switch that must be enabled first?

Thanks.

  • You need to start a simulation: Simulation > Activity data > click the play button (triangle)

  • With the default, and "data simulation", you get data from around Garmin's HQ in Olathe Kansas.  That might be fine in some cases, 

    But if you want specific locations, select "FIT/GPX Playable file" where can copy the fit file from the Garmin and play it back in the sim and get not only GPS data, but other data related to the specific sport/activity.

    One thing to note if you playback a fit file that was recorded with "smart recording", it be that things like GPS are only updated every 5+ seconds, so you may want to make sure that your Garmin is set to "every second recording" to make things more constant and smoother.