I think FIT is actually a (somewhat) documented format that's used by a number of non-Garmin devices as well, mostly GPS cycle computers. It's not really any more non-standard than the Garmin extension to GPX being used for heart rate after conversion. Probably a little harder to implement though, given that it's a terse space-optimized binary format. (Though maybe not, since XML namespaces seem to be involved.)