Monkey graph "Could not open IQ file xxx.iq".

I am a beginner with data recording,  using "ActivityRecording.createSession" and session.stop() and  session.save() inter alia.

Compiled without errors, program runs in the simulator, I can make a fit file via the menu Simulation/FIT Data/Save Fit Session.

I have "Activity recording" and "FIT contributor" on in my manifest file.

I exported the program to an IQ file with the export wizard,

When I open Monkeygraph and I try to open the IQ file it says "Could not open IQ file xxx.iq".

This also happens when I try it with the RecordSample sample.

Why does Monkeygraph not open my iq file? 

Top Replies

  • Now I've created a new .iq file from the example SimpleDataField, which is included in SDK 7.4.3. But again, MonkeyGraph doesn't accept the .iq file.

    I tried this real quick with SDK…

All Replies

  • Reply myself:

    I read around a bit and it seems to me that Monkeygraph only works for self-made fields ?

    All I want at the moment though is just looking how recorded data is presented:

    From a device this is presented either in "history" or in "Connect IQ".

    I would like to see this on the computer before side loading or publishing.

    This seems not possible, am I right?

    It seems that I have to side load or publish to get to know how the recordings look like?

  • Just side load, record, and when the device syncs with Garmin Connect, you'll see the graphs.

  • Thank you Jim, feel confident now concerning this matter.

  • After a two-year break, I try to develop a simple data field and encounter problems. While the df runs smoothly with the sim, MonkeyGraph refuses to open the .iq file with "Could not open IQ file xxx.iq".

    Now I've created a new .iq file from the example SimpleDataField, which is included in SDK 7.4.3. But again, MonkeyGraph doesn't accept the .iq file.

    Of course, I can load the df into my watch, run it and sync it with GC as suggested above. But that runs the risk of crashing my watch or messing up my training stats in GC. Even if the test activity is deleted after sync, I'm not sure if the stats, e.g. training load, VO2max, etc., will be reversed to the old stats accordingly.

    I have already searched the forums and bug reports but can't find a solution. Can anyone confirm that MonkeyGraph is not working properly. And I wonder how the devs test their custom fit fields.

  • Now I've created a new .iq file from the example SimpleDataField, which is included in SDK 7.4.3. But again, MonkeyGraph doesn't accept the .iq file.

    I tried this real quick with SDK 7.4.3 (and older SDKs).

    MonkeyGraph won't open iq files for projects whose resources lack the <fitContributions> tag. If you add <fitContributions> to your resources, your iq file should be accepted. This makes sense because <fitContributions> specifies how your developer FIT fields are supposed to be graphed in Connect. If you don't have <fitContributions>, then your fields won't show up in Connect.

    I tested this with the MoxyField sample (after cutting down the number of products significantly, to speed up export). The exported iq file is accepted by monkeygraph if the resources (including fitContributions) are untouched. If I comment out fitContributions, the iq file is rejected by monkeygraph.

    It might be nice if there was a better error message here, like: "IQ file x.iq was not opened, because resources are missing fitContributions".

    (On a side note, your app has to be published to the store, either as a beta app or non-beta app, in order for developer FIT field graphs to show up in Connect. Fields recorded by a sideload won't be graphed in Connect unless the app has also been published to the store.)

  • You're right. I forgot to define the resources.xml and the error message from MonkeyGraph isn't helpful.

    Many thanks for your help.

  • OTOH, I mistakenly thought that if something compiles and exports without errors, it must also be accepted by MonkeyGraph. If a df contains custom fit fields (FitContributor methods), then at least at export it has to be checked that the .iq is complete and all references are satisfied.

  • Yeah, I think that should warrant a warning in the compiler. Maybe worth to open a feature request about it.