Ratio iX3M connection fails
Jef Driesen
jef at libdivecomputer.org
Sun May 14 23:42:19 PDT 2017
On 2017-05-15 05:13, Miika Turkia wrote:
> On Sun, May 7, 2017 at 10:22 AM, Jef Driesen <jef at libdivecomputer.org>
> wrote:
>> On 07-05-17 07:07, Miika Turkia wrote:
>>>
>>> We have a bug report that iX3M download does not work after latest
>>> firmware update. Do you Jef (or anyone else) have ideas what is going
>>> on?
>>>
>>> https://github.com/Subsurface-divelog/subsurface/issues/387
>>
>>
>> The ix3m protocol doesn't support memory dumps. It will fail
>> immediately
>> with DC_STATUS_UNSUPPORTED with doing any communication. That's why
>> the log
>> file doesn't show anything useful. Instead of downloading a memory
>> dump,
>> just do a normal download with only the logfile checkbox enabled, and
>> attach
>> that logfile to the bug report. That should tell us more.
>
> Now we have a new log attached to the bug report. The loading ends
> with unexpected packet length...
I received several similar reports. Apparently the new firmware changed
the data format. The size of the samples changed from 0x36 bytes to 0xC0
bytes, and that causes the download to fail.
I already patched a version of the dctool application available to fix
the download part:
http://libdivecomputer.org/builds/experimental/windows/ix3m.exe
It's a command-line application which you need to run with these
options:
ix3m -v -l ix3m.log -f idive -m 0x24 download -f raw -o dive.%n.bin COM3
Send back the ix3m.log and (if present) all dive.*.bin files.
I still need to figure out some way to detect the firmware version, to
support both the old and new firmware. Can you tell me which version
your ix3m has?
And I also need to verify whether the parser needs any changes or not.
Most likely the first 0x36 bytes of the new sample is backwards
compatible and the extra data contains new info, but I don't know for
sure. To verify that, I'll probably need the database of the ratio
software to compare against. The Ratio applications stores its data as a
set of xml files in a directory named "dives-divelogger" in the
installation directory. (This might be different depending on the
windows version you have.) Just zip the entire directory.
Jef
More information about the subsurface
mailing list