On 19 July, 2017 - Linus Torvalds wrote:
I'm slightly OCD when it comes to clocks. My wrist watch is one of those "radio time signal" ones. Seeing wall clocks that are the wrong time drives me wild. I just can't take it. "You have *one* job, and you suck at it".
When I was at the conference hotel in Beijing last month, I reacted to how almost *every* clock I saw was off by minutes, sometimes hours. The time display in the elevator? Off by a lot. The time in the room thermostat? Completely random.
So guess what happens with dive computers? I react to them when they have clocks that run slow or fast. My old Uemis would be off by minutes when I hadn't used it in a couple of months, and it was annoying to set the right time, and boy did I notice.
Fun fact is that the old OSTC mk2 / 2N / 2C computers has a setting to fine tune the clock in it, so with some trail'n'error you can eliminate most of the skew.
Anyway, what this all builds up to is that I'd actually like to just set the time automatically when I connect the dive computer to my laptop (or my cellphone, for that matter - usually those end up being synchronized to the local time quite nicely).
And I just wrote the code for that for the Suunto EON Steel. Patch to libdivecomputer attached in case anybody cares (and I was happy to realize that it actually uses milliseconds for synchronization, but then noticed that it may be just a protocol thing, and the extra precision may get thrown away).
But I suspect people will hate that patch because it does that time sync thing *unconditionally*. It would be good to have a check-box and some way to actually set the "sync time" flag. But for that to happen, we'd need not just the UI side, we'd need to have the libdivecomputer interface too.
And yes, I know about "configure dive computer" and the "sync time" hack there. But it's really an ostc-specific hack, not something that can be used in general to synchronize the clock.
I almost always verify / update the settings in my dive computers via that feature before a trip, and as a part of that synchronize the clocks.
Thus the "request for discussion". I'd love to be able to pass in flags like this to dc_device_open() or add a sane "dc_device_set_feature()" interface or something..
I'm more inline with Jef here. Why just not make it a standard interface which the different backends can implement?
That way it's easy for subsurface to have a to checkbox (or maybe always) synchronize the clocks.
//Anton