09-24-2020 08:10
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post


09-24-2020 08:10
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
SDK 5.0 has been released! Check out the developer blog post for all of the details!
https://dev.fitbit.com/blog/2020-09-24-announcing-fitbit-os-sdk-5.0/
Answered! Go to the Best Answer.
Accepted Solutions
09-27-2020 01:06
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-27-2020 01:06
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
Whilst I do understand that sometimes a new major version of software needs to be released.
It does very much feel like the app and clock face developers have been left to work out how to support both versions of the SDK with workarounds to the Fitbit tooling.
Fitbit studio does not support "multi-targets" like other tools (e.g. visual studio and .net versions)
There are no compile time directives (again like .net) to support multi targeting where code bases will be different.
The GAM does not nicely support uploading a 4.2 SDK and 5.0 SDK version.
This whole thing feels like the app ecosystem has been split into legacy and new. With no real way for developers to support old and new devices without a large amount of manual work of uploading multiple apps. And also having a split codebase to support 4.2 and 5.0 SDK.
All in all, very disappointing from FitBit.
09-24-2020 08:29
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-24-2020 08:29
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
does this mean no more updates for the Ionic and Versa 1, lite, and 2?
09-24-2020 08:47
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-24-2020 08:47
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
How long is SDK 4.x going to be supported?
And what does that mean for developers building apps/clockfaces for that older SDK version?
Building your applications for both versions at the same time would make parallel development for SDK 4.x and 5.x way easier.
But as stated in the blog post this is not possible - not yet or never?
Will the release of SDK 5.0 effectively make Ionic, Versa (original, lite, 2) obsolete? - Which makes building apps/clockfaces for these devices way less attractive.
09-24-2020 14:43
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-24-2020 14:43
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
I get the following error when trying to implement scrollview or tileview using the new SDK 5.0 on Versa 3 and Sense with the Fitbit Simulator:
"Error 22 Invalid value ' ' Resources/widget_tray/widget.defs: 1,1"
I've renamed the index.gui file to index.view, widgets.gui to widget.defs and changed the imports in the widget.defs file as instructed.on the link above.
09-24-2020 19:03 - edited 09-24-2020 19:04
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-24-2020 19:03 - edited 09-24-2020 19:04
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
Hi Jon,
Thanks for the update.
Going forward, do we have to build 2 separate Apps to support all devices?
I.e. One App in SDK 4.2 that supports Ionic,Versa,Versa Lite, Versa 2 and a separate App with SDK 5+ for Versa 3 and Fitbit Sense?
Thanks.
09-25-2020 02:32
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post


09-25-2020 02:32
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
@SuperStevo86 wrote:
I get the following error when trying to implement scrollview or tileview using the new SDK 5.0 on Versa 3 and Sense with the Fitbit Simulator:
"Error 22 Invalid value ' ' Resources/widget_tray/widget.defs: 1,1"
I've renamed the index.gui file to index.view, widgets.gui to widget.defs and changed the imports in the widget.defs file as instructed.on the link above.
There are a few spurious errors appearing in the console. We're working to get these resolved.

09-25-2020 02:34
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post


09-25-2020 02:34
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
Two separate projects/fba files, hopefully with shared application logic. They can both be published under the same UUID to the same GAM listing.

09-25-2020 02:39
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post


09-25-2020 02:39
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
How long is SDK 4.x going to be supported? And what does that mean for developers building apps/clockfaces for that older SDK version?
Fitbit Studio only supports 2 SDK versions simultaneously, but you can continue to build with any SDK version using the command line SDK.
Building your applications for both versions at the same time would make parallel development for SDK 4.x and 5.x way easier.
But as stated in the blog post this is not possible - not yet or never?
Technically it's possible to do this, and community members are discussing ideas on Discord.
Will the release of SDK 5.0 effectively make Ionic, Versa (original, lite, 2) obsolete?
SDK 4.2 was just released for those devices. SDK 5.0 was released for the new devices. Unfortunately it wasn't possible to have a single toolchain for both OS versions, but you can continue to use SDK 4.2 and publish to the gallery.
09-25-2020 04:39
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-25-2020 04:39
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
After switching it to 5.0, started getting this error.
09-25-2020 06:23
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-25-2020 06:23
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
I am able to figure it out.
Actually the difference between 4.x and 5.x is the index and widget file extension.
for index file, it is index.view and for widget is widget.defs

09-25-2020 07:44
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-25-2020 07:44
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
I bought my Fitbit Versa 2 less than THREE MONTHS ago. If I'm reading this post correctly, API 4.2 is now obsolete after only one week, API 5.0 is incompatible with ALL of the previous (Ionic, Versa, Versa 2 and Versa Lite) devices, there will be no COMMON upgrade path for any of the projects, and the platform will ONLY move forward with API 5.0. Where does that leave the current developers?
From what I've seen, the Fitbit Studio web site has only supported the current API version, and a single prior release. If that holds true, I won't be able to support any of my apps beyond API 5.1 from the web site. Since I registered as a developer two months ago, a new OS version has been released every 2 or 3 weeks. All total, I've gotten more than 1,000 reviews for my seven clocks (in just two months). I have no idea how many downloads that actually reflects because the Gallery App Manager STILL doesn't provide a download count. How am I supposed to support these users? I can't fix things using a development environment that locks me out of building my projects every time that a new API version is released.
I tried the Node.js command line interface (CLI) and it only allows me to select between Versa 3 and Sense for new projects. It doesn't look like you can build 4.2 applications out-of-the-box, and you must reverse engineer the project files manually. Versa 3 only came out on August 25th, and the Sense ships today. Virtually all of your user base is still wearing Iconic or legacy Versa devices, and developers have no easy way of creating projects for those platforms.
Honestly, I have no intention of buying a Versa 3 or Sense yet because my Versa 2 Special Edition is less than THREE MONTHS old and cost $230 USD. I've NOT seen any posts in this community to suggest that the new platform would be incompatible with the current one until the day API 5.0 was released. Even if I created a new project for API 5.0, I won't have the hardware to even use my own app. So, there's no motivation for me to build anything that's not a shared code base. If you are trying to attract developers, that's not the way to do it.
The success or failure of any platform depends on the software. Not just the software written by platform owners like Fitbit, but also third party developers who can make things fun and personal for people (often times for free). Both the Apple and Android mobile platforms owe a large part of their success to third party apps. When you don't provide a good and consistent experience for developers, you end up with something like the Microsoft Windows Phone. What's that? You say you've never heard of a Microsoft Windows Phone?
The API is a good platform that I like very much. And I only want to see it succeed.
09-25-2020 09:40
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-25-2020 09:40
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
I just moved one of my clocks over to API 5.0 as a test. All of the things that I changed were limited to the "resources" folder (at least for clock faces). For different screen resolutions, I require different sized icons, images and style definitions. The main JavaScript doesn't change.
Why not just have folders under resources for the specific major API versions? For example, "/resources/4" and "/resources/5"?
Have the API version check boxes in Fitbit Studio include 4.2 and 5.0. Since the majority of your user base is Ionic/Versa/Versa 2/Versa Lite, 4.2 needs to be supported for a while yet. I'm okay with still having to build API 4.2 and API 5.0 deployments separately, but the ability to easily switch between them in the development environment would be HUGE!
That way, developers could have a single code base, and utilize a library that you can check to see whether that features exists on the device -- similar to the way that elevation must be checked if you are supporting Versa Lite before you can access that feature.
09-25-2020 14:57
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-25-2020 14:57
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
Sad stopping propper support of the Versa 2 already. Terrible excuse that you can't upgrade the older once because of the screen size / resolution.
09-26-2020 00:26
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-26-2020 00:26
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
@TigerPointe wrote:Why not just have folders under resources for the specific major API versions? For example, "/resources/4" and "/resources/5"?
Have the API version check boxes in Fitbit Studio include 4.2 and 5.0. Since the majority of your user base is Ionic/Versa/Versa 2/Versa Lite, 4.2 needs to be supported for a while yet. I'm okay with still having to build API 4.2 and API 5.0 deployments separately, but the ability to easily switch between them in the development environment would be HUGE!
I am pretty sure that something like this would be possible. And this would motivate a lot of developers to also support SDK 5.x for existing projects.

09-26-2020 00:35
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post


09-26-2020 00:35
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
@Harboe They were even able to support Versa and Ionic withing the same SDK version. Be honest @JonFitbit and say that you don't have enough resources to keep all the Fitbit devices updated. To me this is a total letdown by Fitbit and will have big effects on its credibility towards users and developers.
09-26-2020 08:42
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-26-2020 08:42
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
This is truly disappointing. Every other OS provides updates for older devices. I was developing an app for fitbit, and I just bought a Versa 2, 3 months ago. I will not only stop developing it, my next device won't be a fitbit.
09-26-2020 13:40
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-26-2020 13:40
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
that's right, only 1 year of support is ridiculous.
me and my girlfriend bought two versa 2 but we will definitely never buy fitbit products again.
09-27-2020 01:06
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-27-2020 01:06
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
Whilst I do understand that sometimes a new major version of software needs to be released.
It does very much feel like the app and clock face developers have been left to work out how to support both versions of the SDK with workarounds to the Fitbit tooling.
Fitbit studio does not support "multi-targets" like other tools (e.g. visual studio and .net versions)
There are no compile time directives (again like .net) to support multi targeting where code bases will be different.
The GAM does not nicely support uploading a 4.2 SDK and 5.0 SDK version.
This whole thing feels like the app ecosystem has been split into legacy and new. With no real way for developers to support old and new devices without a large amount of manual work of uploading multiple apps. And also having a split codebase to support 4.2 and 5.0 SDK.
All in all, very disappointing from FitBit.
09-28-2020 07:46
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-28-2020 07:46
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
The platform was already in serious need of more developer support and this decision will certainly drive developers to other competing platforms. You are still selling (but not supporting) most of these watches! My next watch won't be a Fitbit....
09-28-2020 09:32 - edited 09-28-2020 09:34
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post

09-28-2020 09:32 - edited 09-28-2020 09:34
- Mark as New
- Bookmark
- Subscribe
- Permalink
- Report this post
- Who Voted for this post?
@JonFitbit When are these errors going to be fixed and does that mean any SDK 5.0 build that gets submitted for review in GAM will automatically be rejected because there are "errors" even though these errors can't be fixed by the developers as they are referencing "Fitbit" resources not accessible by developers?
