Mares Smart Dive Computer + Bluelink pro

Linus Torvalds torvalds at linux-foundation.org
Tue Sep 25 15:19:58 PDT 2018


On Tue, Sep 25, 2018 at 3:01 PM Linus Torvalds
<torvalds at linux-foundation.org> wrote:
>
> I'm not seeing that "write HIT with incoming packets" message, so
> I'm starting to suspect that we actually never queue the packets up
> due to some confusion with the way we registered the
> characteristcStateChanged() callback.

Yeah, I think that may be it.

We end up connecting the "hey, characteristic value changed" to
*every* service we find. And that's fine for the cases where we only
had one service.

But in the BlueLink case, it means that the last service we find will
*override* the signal we registered for the service we actually care
about.

I may be full of shit - because I don't actually know how the Qt
"connect" thing works, but that might explain this behavior where I
clearly see a characteristicChanged event, but we don't seem to
actually see the data. I thought we could just connect all the <n>
different services to one slot in the BLEObject, but maybe you can't
do that, and it needs to be a 1:1 connection.

Somebody who knows Qt better should check me, but if this is about
that "you can't connect multiple services to one BLEopbject slot",
then the attached trivial patch might just fix this all.

                Linus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.diff
Type: text/x-patch
Size: 1375 bytes
Desc: not available
URL: <http://lists.subsurface-divelog.org/pipermail/subsurface/attachments/20180925/921f1d77/attachment.bin>


More information about the subsurface mailing list