I seem to have found two issues. One seems like a bug on the watch, and one seems like a bug in Garmin Connect’s driver/plugin for the watch.
First one involving Connect IQ data fields:
For a given activity with multiple possible data screens, say Cardio, there’s a maximum of two different Connect IQ data fields. This makes sense but the app and firmware seem to interpret this limitation differently.
On the app, let’s say two data screebs are enabled. You add two connect iq fields to the first screen. On the second screen, you can still use one or both of those two connect iq fields but not any new type of field. The app darkens all other connect iq fields when selecting fields for the second screen, but the first two you selected are still selectable on the second screen. This makes sense and I suspect this is the correct behavior.
But when configuring these same two screens on the watch for the same activity, if you have two Connect IQ fields on the first screen, attempting to select one of them on the second screen will give you the error “remove an existing connect iq field to add another” error. That is, there’s no possibility of selecting one of the already used two connect iq fields like there is in Garmin Connect.
Configuring an activity like this using Garmin Connect seems to work just fine when the activity is started on the watch.
Second issue involving built in “Other” datafields:
Garmin Connect shows two fields available under Other. One is Steps and I forget the other, but neither appear in the list of fields on the watch itself.
If you try to select Steps in the app then the app shows that you selected Sunset Time instead. Selecting other Other fields also results in the wrong field on the watch. It looks like some enum definitions are out of sync here.