On Mon, Dec 5, 2022 at 10:26 AM Jef Driesen jef@libdivecomputer.org wrote:
You didn't enable verbose mode (-v), so I can't see the communication in the above log. I looks like you're experiencing a timeout on the very first request that gets send to the dive computer. That means there is no response from the dive computer.
Here's a verbose retry. I have rebooted the computer & DC, but nothing has changed:
$ dctool -v -l predator-download.log -f predator download -f raw -o predator-download.raw /dev/tty.Predator DATETIME 2022-12-05T10:19:03Z (1670235543) VERSION 0.7.0 Opening the I/O stream (serial, /dev/tty.Predator). INFO: Open: name=/dev/tty.Predator Opening the device (Shearwater Predator). INFO: Configure: baudrate=115200, databits=8, parity=0, stopbits=0, flowcontrol=0 INFO: Timeout: value=3000 INFO: Sleep: value=300 INFO: Purge: direction=3 Registering the event handler. Registering the cancellation handler. Downloading the dives. Event: progress 0.00% (0/10000) INFO: Write: size=15, data=FF010B00350034DD000000020080C0 INFO: Read: size=0, data= ERROR: Failed to receive the packet. [in shearwater_common.c:239 (shearwater_common_slip_read)] ERROR: Failed to receive the response packet. [in shearwater_common.c:358 (shearwater_common_transfer)] ERROR: Error downloading the dives. [in dctool_download.c:228 (download)] ERROR: Timeout
For the Predator, under the hood downloading a memory dump or dives are exactly the same operations. So it's expected that if downloading a memory dump fails, downloading dives will fail too.
OK, thanks for the clarification.
After a successful download, we send a disconnect command to the dive computer. That causes the bluetooth mode to terminate. Did you re-enabled the bluetooth connection on your Predator before re-trying? I don't really know when and how the /dev/tty.Predator device node appears on Mac, but maybe you also have to re-connect at the OS level, to re-create the device node as well?
On the macOS I have to manually select the Predator in the Bluetooth settings, only then /dev/tty.Predator is created.
Anything more I should try? Really can't understand what I did the first time it succeeded. Random timing issue?
Henrik