Hello Connect IQ team!
as I started to take Connect IQ development more seriously about year ago, spent lots of time with it and had to explore lots of dark corners of CIQ for my more complex projects, I feel to share some topics and ideas which I find quite important or limiting to take the apps on Connect IQ platform to next level. I didn’t want to create separate threads for them so there they are all together.
First of all, great job guys for creating such platform in what I assume not easy environment. You made the Garmin products A LOT smarter. There are lots of things on development on Connect IQ platform which I really like and why I decided to invest lots of my time and effort to it recently. On another hand during this immediately popped up lots of topics which in my opinion prevents developers to transform lots of ideas into real app solutions on the platform. So, I hope you will take it constructively as wider feedback from one of your CIQ developer for whom the development to CIQ is not just another hobby.
CIQ Features:
Datafields can’t share data with each other or connect to same ANT sensor.
Newly developed ANT sensors usually don’t provide only one interesting value. I find very limiting to not be able to read data from one ANT sensor (with one ANT channel) by more CIQ datafields. So in order to show users relevant values, we have to try to squeeze more values to one datafield which have big impact on UI experience and usability.
DF communication only every 5 minutes
I fully understand requirements for sustain good battery consumption, but this limitation take away huge amount of ideas as it applies also for communication with gyro sensor. And custom DFs which gyro data processing is something which can bring lots of added value for whole Garmin ecosystem in my opinion. I know that CIQ dedicated apps do not suffer from this limitation, but they on another hand brings lots of other limitations preventing them to be widely used during sport activities, especially on recent generations of CIQ devices. One of them is..
CIQ app is unable to do Resume later
In case it records the activity. This is one of the key reasons why we can’t substitute limitation of DFs by dedicated apps. Sure, we can pause recording within the app, but that don’t allow us to use other Connect IQ widget or watchfaces during activity break.
CIQ app can be automatically started only with user input to confirm dialog
I understand the idea behind this, but this again in my opinion take away some great scenarios and do more harm in development freedom than brings benefits. If some app will abuse this feature, it will be easy to identify it by user and do uninstall if necessary. Also, app reviews in Connect IQ store would be great control mechanism for possible abuse of this feature. I find this important as for Garmin watch to be powerful smartwatch, moving task from smartphone to watch and back must be seamless as possible just like on rival platforms in this respect. I believe allowing developers to launch app without confirm dialog but with some vibration alert and timeout for user-input would be great compromise.
CIQ app ability to run native or even other CIQ datafields
This is rather wilder idea to make CIQ apps more powerful. Ability to load available datafields from within the apps can remove lots of mentioned platform limitations in my view.
CIQ apps / activities main device menu
Recent Garmin watches can be in some way capable smartwatches with many installed applications doing various jobs, including native/custom activity recording or for example managing lights in your home. For that I find that current logic of main device menu, with native activities and CIQ apps in one list, insufficient mainly in contrast with other smartwatches on market.
CIQ platform development:
Slowdown of CIQ advancement?
This might be only subjective feeling, but I see noticeable decrease in activity around whole platform which relates also to following bullets. CIQ Summit didn't really help to change this opinion. And this doesn’t show the platform in “healthy” condition, which is rather disturbing.
CIQ 3.0 status
CIQ 3.0 was introduced year ago and in my opinion some of its key features are less polished than they already should be. For example, MapTrackView and MapView still seems like alpha version, because lots of their features are useless if you don't want to jeopardise user experience of your app. Of course, you will not find out this from documentation, so every developer have to multiply development time with those modules several time to learn their real limitations and to prepare workarounds for the rest. There are lots of posts regarding this topic on the forum.
CIQ 3 Messaging for selected developers
I miss information about who can be granted to use CIQ 3 Messaging, under what conditions and what are the actual capabilities.
Unknow future strategy
I find quite non-standard for developers on platform like this to know that little about future plan for platform development and upcoming possibilities. CIQ 3.1 is out and seems like even CIQ team don't know what should be in 3.2...
Long-term not resolved bug tickets
On the forum there are many topics about issues for which were reportedly opened internal tickets months or even years ago, but without any further status updates or with same status again and again that team is looking at them. One example: https://forums.garmin.com/developer/connect-iq/f/legacy-bug-reports/5144/failure_during_transfer-issue-again-now-using-comm-sample
Honestly in this environment I am not motivated to report all issues to which I step into during development. I simply don’t feel required feedback here.
Other Garmin pieces related to Connect IQ
Garmin Forum
New forum is vast improvement, but look here how messy it can still get: https://forums.garmin.com/developer/connect-iq/i/bug-reports/connect-version-4-20-broke-local-http-access
Updating thread rendering for sorting by new messages will help a lot.
Garmin development blogs
Which Garmin blog should I follow to not miss anything important? I followed https://developer.garmin.com/blog/ to find out that I missing lots of interesting articles from here https://www.garmin.com/en-US/blog/category/developer/ . I bet I am not the only one confused there. It will be great to simplify communication to community.
Closer integration with rest of Garmin – as viewed from outside
I am aware that the teams responsible for Garmin Connect, CIQ Store etc. are different and some even located in another country, but from what I see, I believe that communication/prioritization with those teams don’t work too well. And that drags down whole CIQ potential in the eyes of somebody who is considering to invest bigger effort/money to bring something new to the platform. What else explains that nobody is still able to fix issue like (https://forums.garmin.com/developer/connect-iq/i/bug-reports/connect-version-4-20-broke-local-http-access). I whish CIQ topics have bigger priority in other Garmin teams…
I think it’s all about potential of platform for Garmin itself which can be in my opinion higher not having the issues mentioned above. But you can’t rely on gaining another level of CIQ importance with help of 3rd party developers if they can’t rely that their service will work here. Typical egg or chicken paradox.
I will love to know what others thinks about these topics, hope that my summarized experience might help at least a little for making CIQ better, wish to keep the pace on further platform development and having enough contributors to CIQ Store. I am working on another one. :)
Jan
REFRESHED ON 30.7.2019 (but not that much...)
Actual view on current ciq situation here: forums.garmin.com/.../912867