Problems with gases on Shearwater

Linus Torvalds torvalds at linux-foundation.org
Thu Dec 6 09:59:28 PST 2018


On Thu, Dec 6, 2018 at 6:51 AM Long, Martin <martin at longhome.co.uk> wrote:
>
> By the way, my BLE and BT (I have to use legacy BT for the Petrel
> controller), have both been working very well for me lately. It used
> to be a struggle every time, but recently it's worked first time every
> time.

Yeah, we've gotten a lot more stable wrt BLE, that's for sure. Don't
know about legacy bluetooth, I don't really have any devices with
that.

I think what's going on with the Shearwaters is that they have this
odd "non-pairing pairing", where they don't really do proper
bluetooth, but instead have a simplified bluetooth stack that "kind of
works".

And that stack gets confused when you switch between two different
devices to download.

In particular, I think my Teric problem was that the last time I
downloaded from it, I used my laptop (because I was traveling for
diving). And then when I wanted to try it yesterday, my laptop was
sitting next to me on my desk, but I was trying to talk to the Teric
using my "real" computer.

So what I think happened is that the Teric saw the laptop, and
continued to want to talk to it, even though I was trying to connect
to it from the desktop.

Turning off my laptop before starting Bluetooth on the Teric seems to
have solved the issue.

So the Shearwater bluetooth stack has some kind of fake pairing which
is just "remember who I talked to last, and prefer that target,
whether it's talking to me or not".

Anyway, I don't think it's related to the subsurface BLE code at all -
we've always had odd behavior when trying to switch between different
downloaders with Shearwater.

> The 13/16 was what I had in when I arrived on site (a rubbish, but
> usable blend). After day 2 needed a fill, asked for 15/55, got 15/57.
> So I simply updated the 13/60 to 15/57. Just checked again, and there
> is only the 15/57 in there now. Same on both computers.

Hmm.

Then it's _really_ odd that all three dives show up as 15/57. I don't
see from the code how that could happen at all. There should have been
absolutely nothing in the first two dives that could have possibly
resulted in that gasmix being downloaded.

Strange. And I'm assuming there's no way you could possibly have had
15/57 on that Perdix AI from before (and just forgotten and dove with
the wrong gas), since it wasn't even some standard target gas for you.

But I have to ask, since you apparently use the Perdix AI as the
second backup. - could it be something like that?

Anyway, I'd love to see downloads from scratch and separately for the
Perdix AI and Petrel (ie don't download into your existing subsurface
database). Both the resulting xml file and the libdivecomputer
logfile.

If you start subsurface from the command line, the easiest way to do
that is to just do something like

    subsurface nonexisting.xml

which will start subsurface with an empty slate (and a warning about
how it can't open "nonexisting.xml", of course). And then you do "save
as" at the end to save the result to some temporary XML file (do *not*
save to cloud which might overwrite your existing cloud data!).

> The shearwater doesn't associate gasses with transmitters. They're
> completely separate things. T1 and T2, and Gas1, Gas2, Gas3 etc. Only
> the diver makes the association.

Bah. I like the Shearwater Perdix AI, and the Teric is probably now my
favorite dive computer, but dammit, the *only* dive computer that gets
gas handling right - including pressures - seems to be the Suunto EON
Steel/Core.

But yeah, that means that we'd need to have some way to fix up sensor
to cylinder mapping by hand after the fact. Which is a real pain from
a UI standpoint. Well, it is for me, at least. I'm perfectly comfy
working on libdivecomputer and on low-level subsurface stuff, but the
UI things I just punt on..

              Linus


More information about the subsurface mailing list