Cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Fitbit Versa 2 not working with Fitbit Studio

I followed all the instructions. I enabled Developer Bridge on BOTH the phone and the Versa 2. On the Fitbit Studio side of things, I have connected my phone and my Fitbit. So all 3 things should now recognize each other for a perfect sideloading of the app I developed. Unfortunately it isn't working. The Fitbit Studio console is consistendly generating a specific error message EVERY SINGLE TIME I try to sideload the app from the Studio though clicking the Run button.

The error message says:

Sideload of app failed. Connected device does not support API version requested by app.

 

And yes, I selected the correct API. Specifically I selected API 4.2, which is the correct API for Versa 2. Given that everything has been correctly configured, there is no other explanation than the fact that the developers of Fitbit Studio itself have somehow introduced a bug into the Studio. So PLEASE fix it.

Best Answer
6 REPLIES 6

i was about to make a post describing the exact same issue and circumstances.
i even went so far as to install fitbit CLI and create an app with

npx create-fitbit-app --sdk-version 4.2.0 test

and still received the same error.

Auto-connecting only known device: Versa 2
Sideloading app: starting...
Install failed: Connected device does not support API version requested by app.

 

as a band-aid to actually accomplishing something using the fitbit API, i stumbled across this slightly dated reddit thread about building for the Versa 2.

i didn't have to modify any of the code as mentioned in the thread, but i was able to successfully create a default app using 

npx create-fitbit-app --sdk-version 4.0.0-pre.4 test2

which immediately pushed the app to my Versa 2.

 

i'm speculating, but as far as i can tell, the latest SDK that is supposedly compatible with the Versa 2 (4.2 according to fitbit Studio) doesn't build correctly for the Versa 2, in either fitbit studio or fitbit CLI.

yeah, it works fine in the OS Simulator, but that doesn't really do a whole lot if i can't put it on the actual device it's emulating.

Best Answer
0 Votes

I think the most likely situations here are that the watches are running old firmware. I think that 4.2 requres 35.71.6.12 or newer.

Peter McLennan
Gondwana Software
Best Answer
0 Votes

you were correct. it turns out i was running 35.70.7.14.

by updating to 3.72.1.9, both fitbit Studio and fitbit CLI indeed push apps configured to work in SDK 4.2.0.
i would not have made that connection intuitively on my own.

seems like it would make sense to add some clarity to the install failed message and specify what part doesn't support the API..

Install failed: Connected device firmware does not support API version requested by app.

 

Best Answer
0 Votes

I have to agree with you, myleskeller and at no point did I see any mention about turning on Developer Bridge in the Fitbit app on the phone or that the Developer Bridge on the watch only appears later in Settings - it isn't automatically there. Then in view of the fact that most people would expect to be using the most up to date sdk software there is nothing to say that it doesn't support Versa 2. So it's all a bit like the blind leading the blind!

 

I have firmware 3.72.1.9, but I still can't get anything to work. If I say build all I get is errors and that I have component and setting components missing

 

This project is being built without a companion component. Create a file named companion/index.ts or companion/index.js to add a companion component to your project.This project is being built without a settings component. Create a file named settings/index.tsx, settings/index.ts, settings/index.jsx or settings/index.js to add a settings component to your project

Building app for Fitbit Versa 2

Error: One or more required files do not exist in the project: resources/index.gui and resources/widgets.guiBuild failed.

Very frustrating!!!!

 

Best Answer
0 Votes

I think you can safely ignore the messages about companion and settings, unless you want those things.

 

To convert a SDK5 project back to SDK4 (eg, for Versa 2), you'll need to rename a couple of files. resources/index.view needs to become index.gui, and resources/widget.defs needs to become widgets.gui (note plural).

 

You'll probably also need to change a line in your widgets.gui, from

<link rel="import" href="/mnt/sysassets/widgets/baseview_widget.defs" />

to

<link rel="import" href="/mnt/sysassets/widgets/baseview_widget.gui" />

There may be other things you need to do. A trick is to do the reverse of the migration steps here.

Peter McLennan
Gondwana Software
Best Answer

Thank you for your prompt reply

I have tried your suggestions and only did the renaming you suggested in your response.

No luck - but I am totally confused. e.g.

If I go into Fitbit studio with a completely new setup just using 'digital clockface setup' I get  code with the old references that you said I need to change. If I choose sdk 5.0 and versa 3 simulator I don't get new code with the new changes, its the old sdk 4.2 code. If I choose versa 3 in the the simulator and Hit Run it works. Why? It's the old code.

If I change to 4.2 sdk and Versa 2 it doesn't work! But it's the old code! I also get errors saying resoures\index.gui and widgets\gui don't exist.

If I then rename those 2 files then it works. However, the line change you suggested below is not quite correct

it needs to be as follows:-

<link rel="import" href="/mnt/sysassets/system_widget.gui" />

Just thought I'd point that out incase other people have the same problem.

 

Could you possibly help me with the following problem as well, please?

My Fitbit Versa 2 watch refuses to connect using the developer bridge in settings. How can I solve this?
All other connections are fine 

iPhone to Fitbit Studio - OK
Versa 2 Simulator to Fitbit Studio - OK

I assume that without solving this I won't be able to get the clock face onto my phone?

Thank you for your time

Regards

Best Answer
0 Votes