Import data from Scubapro Aladin Sport Matrix

Linus Torvalds torvalds at linux-foundation.org
Sat Oct 21 19:31:39 PDT 2017


On Sat, Oct 21, 2017 at 7:56 PM, Berthold Stoeger
<bstoeger at mail.tuwien.ac.at> wrote:
>
> Fetch newest dives does (I: to divecomputer O: from divecomputer)
> I: 09c69a32b94210270000
> O: 0400000000

That actually looks like the Scubapro G2 protocol. Same model of
9-byte command with a 0xC6 command byte and then a 4-byte timestamp
and then 0x10 0x27. From src/scubapro_g2.c:

        // Command template.
        unsigned char command[9] = {0x00,
                        (device->timestamp      ) & 0xFF,
                        (device->timestamp >> 8 ) & 0xFF,
                        (device->timestamp >> 16) & 0xFF,
                        (device->timestamp >> 24) & 0xFF,
                        0x10,
                        0x27,
                        0,
                        0};

        // Data Length.
        command[0] = 0xC6;
        unsigned char answer[4] = {0};
        rc = scubapro_g2_transfer (device, command, sizeof (command),
answer, sizeof (answer));

so you literally *could* try to claim it's a G2 and try to see how far
it downloads.

> So does this ring a bell or should I try to investigate further?

I think you might want to investigate further - have you looked at the
libdivecomputer source code at all?

There are various minor differences in the details of the Uwatec
protocol, so there might be differences. So maybe it might download
like a G2, but then need parsing as some older Uwatec thing (ie I'd
not be surprised if they just replaced the old nasty IRdA crud with
bluetooth).

See src/scubapro_g2.c for the downloading part, but  notice how it
uses the src/uwatec_smart_parser.c parsing. It might just parse the
same was as the old Uwatec Aladin..

                 Linus


More information about the subsurface mailing list