Suunto DM5 Format changed

Miika Turkia miika.turkia at gmail.com
Thu Apr 20 10:06:41 PDT 2017


Thanks, PR326

On Thu, Apr 20, 2017 at 5:44 PM, Rainer Mohr <mail at divelogs.de> wrote:
> Sent in private mail
>
> Rainer
>
> Am 20.04.17 um 16:36 schrieb Miika Turkia:
>>
>> Hello Rainer,
>>
>>
>> thanks for the heads up. Can you also provide me a sample log so I can
>> test our parsing works properly? (The change is simple enough, but
>> still I would like to test it up.)
>>
>> miika
>>
>> On Thu, Apr 20, 2017 at 3:20 PM, Rainer Mohr <mail at divelogs.de> wrote:
>>>
>>> Hi Miika, Linus,
>>>
>>> Picking up an old thread from two years back...
>>>
>>> I got the first file from the wild with yet another Suunto DM5 format in
>>> the
>>> Profile BLOB field.
>>> This time its blocks of 26 Bytes, no idea what they changed - Maybe a new
>>> firmware for The EON Steel made that necessary, who knows. Detectable by
>>> the
>>> first Byte being 04. Depths are still in Bytes 3-6 in same way as before.
>>>
>>> You may want to change that in your DM5 parsing too.
>>>
>>> Regards,
>>> Rainer
>>>
>>> Am 30.05.15 um 17:05 schrieb Rainer Mohr:
>>>
>>> Looking at it more closely, I assume it's a single byte as the header
>>> giving
>>> us the version information and then fixed-size 23-Byte blocks.
>>> This would also have the rest of the file divideable by 23 bytes and the
>>> last one also having all the 23 bytes. First sample is then 0m depth.
>>> Version information gives us the number of bytes (Thanks to Sven from
>>> Diving
>>> Log):
>>>
>>> Select Case Version
>>>     Case Is = 2
>>>        Return 19
>>>     Case Is = 3
>>>        Return 23
>>>
>>>
>>> Case Is = 4
>>>      Return 26
>>>
>>>
>>>     Case Else
>>>        Return 16
>>> End Select
>>>
>>> The Bytes 3 to 6 then give the depth infomation:
>>>
>>>   03 <!-- Header with Version of format -->
>>>   00 00 00 00 00 00 ff ff ff 7f 0f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 bf 0e 9c 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 83 51 b9 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 3f ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 e7 8c 08 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 83 51 b9 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 bf 0e 1c 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 bf 0e 1c 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 5b d3 cc 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 e7 8c 88 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 f6 97 fd 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 5d 6d 0d 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 5d 6d 0d 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 46 94 d6 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 6f 12 c3 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 0a d7 f3 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 32 55 e0 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 46 94 d6 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 32 55 e0 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 46 94 d6 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 46 94 d6 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 5b d3 cc 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 32 55 e0 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 0a d7 f3 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 f6 97 fd 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 71 ac 03 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 d3 4d 12 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 3f ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 3f ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 e7 8c 08 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 6a 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 d3 4d 92 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 ab cf a5 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 6a 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 83 51 b9 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 32 55 e0 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 1e 16 ea 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 5d 6d 0d 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 49 2e 17 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 71 ac 03 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 0a d7 f3 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 d3 4d 12 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 e7 8c 08 41 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 46 94 d6 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 ab cf a5 40 ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>   1e 00 f6 97 7d 40 ff ff ff 7f 0c ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>
>>> Rainer
>>>
>>>
>>> Am 29.05.15 um 23:26 schrieb Linus Torvalds:
>>>
>>> On Fri, May 29, 2015 at 2:01 PM, Rainer Mohr <mail at divelogs.de> wrote:
>>>
>>> Blob attached as file. According to the DM4.db file it was recorded from
>>> a
>>> zoop.
>>> Could be though, that they adapted the format to the EON Steel data.
>>>
>>> >From a quick look, the byte patterns don't look like the EON dumps at
>>> all, so my guess that they'd move to something like that was wrong.
>>>
>>> Looks more like a fixed-size (23 byte) repeating pattern. The
>>> sampleblob seems to be this:
>>>
>>>   - 7 bytes of header (probably some version information):
>>>
>>>          03 00 00 00 00 00 00
>>>
>>>   - followed by this pattern of constant-sized 17+6 byte blocks (the
>>> last one lacks the 6-byte thing)
>>>
>>>   ff ff ff 7f 0f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 bf 0e 9c 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 83 51 b9 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 3f
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 e7 8c 08 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 83 51 b9 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 bf 0e 1c 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 bf 0e 1c 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 5b d3 cc 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 e7 8c 88 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 f6 97 fd 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 5d 6d 0d 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 5d 6d 0d 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 46 94 d6 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 6f 12 c3 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 0a d7 f3 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 32 55 e0 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 46 94 d6 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 32 55 e0 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 46 94 d6 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 46 94 d6 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 5b d3 cc 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 32 55 e0 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 0a d7 f3 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 f6 97 fd 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 71 ac 03 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 d3 4d 12 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 3f
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 3f
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 e7 8c 08 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 6a 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 d3 4d 92 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 ab cf a5 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 6a 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 83 51 b9 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 32 55 e0 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 1e 16 ea 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 5d 6d 0d 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 49 2e 17 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 71 ac 03 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 0a d7 f3 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 d3 4d 12 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 e7 8c 08 41
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 46 94 d6 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 ab cf a5 40
>>>   ff ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f 1e 00 f6 97 7d 40
>>>   ff ff ff 7f 0c ff ff 7f 7f ff ff 7f 7f ff ff 7f 7f
>>>
>>> but I never looked at the old db4 blob pattern, so I can't tell
>>> whether it's just a simple extension of the old patterns.
>>>
>>>                   Linus
>>>
>>>
>>>
>


More information about the subsurface mailing list