investigating BT problem MacBook Pro <-> Aqualung i770R

Daniel Azuelos daniel+plongee at azuelos.org
Fri May 27 09:23:47 PDT 2022


Since Subsurface 5.0.8 was crashing sometimes during repeated tests,
I went back to 4.9.7 which seemed to be crash proof in the exact
same radio environment.

Distance from my Mac to the i770R: 	30 cm.
			i770R	RSSI:	-62 dB
Nb of other env. BT equipments:		9
			best RSSI:	-54 dB

Here are my results on 30 attempts to just download from the i770R
and then exit without saving:
	----------------
	success	failure
	----------------
	22	8
	----------------

Strange behaviour: the time to get an answer either success or failure
seems to vary from 2 s to 30 s. Is this coming from the underlying
BT driver?
Here are included 2 subsurface log I got with the -vv arg.
-- 
    « The only thing necessary for the triumph of evil
    is for good men to do nothing. »
                                                Edmund Burke
--------
daniel Azuelos
-------------- next part --------------
Subsurface v4.9.7,
built with libdivecomputer v0.7.0-devel-Subsurface-NG (d52dfb002d40e70cf77c76bc175c8e1401af8357)
built with Qt Version 5.13.2, runtime from Qt Version 5.13.2
built with libgit2 0.26.0
"validateGL(): created OpenGLContext."
"validateGL(): obtained QOpenGLFunctions."
"validateGL(): detected OpenGL version 2.1."
loading dive data from ("/Users/dan/Library/Application Support/Subsurface/test_i770R_2022.xml")
Unable to match dive 'program.divelog' (subsurface)
Unable to match dive 'version.divelog' (3)
Unable to match autogroup 'model.divecomputerid.' (Suunto Vyper)
Unable to match autogroup 'deviceid.divecomputerid.' (2cb68919)
Unable to match autogroup 'nickname.divecomputerid.' (Suunto Vyper (2cb68919))
Unable to match autogroup 'model.divecomputerid.' (Mares Puck Pro)
Unable to match autogroup 'deviceid.divecomputerid.' (32291d2f)
Unable to match autogroup 'nickname.divecomputerid.' (prêt de Yann Legros)
Unable to match autogroup 'model.divecomputerid.' (Aqualung i770R)
Unable to match autogroup 'deviceid.divecomputerid.' (5d9d9589)
Unable to match autogroup 'serial.divecomputerid.d.' (010747)
Unable to match autogroup 'model.divecomputerid.' (Suunto Vyper)
Unable to match autogroup 'deviceid.divecomputerid.' (636e9a36)
Unable to match autogroup 'nickname.divecomputerid.' (Suunto Vyper (636e9a36))
Unable to match divecomputerid 'state.autogroup.' (1)

File locations:

Unable to get local git directory
Cloud URL: No valid cloud credentials set.

Image filename table: /Users/dan/Library/Application Support/Subsurface/hashes
Local picture directory: /Users/dan/Library/Application Support/Subsurface/picturedata/

BTDiscoveryReDiscover: localBtDevice.isValid() true
"BTDiscoveryReDiscover: localDevice noether is powered on, starting discovery"
starting BLE discovery
Starting download from  BT
downloading only new dives
still looking scan is still running, we should just wait for a few moments
Found new device: "" "LE:{850d8be4-680c-4025-88d4-90a09a19abd5}"
Not recognized as dive computer
Updating RSSI for "00:00:00:00:00:00" -38
Updating manufacturer data for "00:00:00:00:00:00"
"{0000fe61-0000-1000-8000-00805f9b34fb}"
Found new device: "" "LE:{e59614db-f0a8-40d7-9ea2-05d5de942aaf}"
Not recognized as dive computer
Found new device: "" "LE:{83656bbf-9a3e-4539-842b-e234e07ae605}"
Not recognized as dive computer
"{cb3c4555-d670-4670-bc20-b61dbc851e9a}"
Found new device: "i770R" "LE:{c7d52420-5e99-4800-a1bc-e5b07b2d0770}"
"this could be a Aqualung i770R"
Updating RSSI for "00:00:00:00:00:00" -66
Found new device: "i770R" "LE:{c7d52420-5e99-4800-a1bc-e5b07b2d0770}"
"this could be a Aqualung i770R"
---> stopping the discovery agent
qt_ble_open( {c7d52420-5e99-4800-a1bc-e5b07b2d0770} )
trying to connect
connected to the controller for device {c7d52420-5e99-4800-a1bc-e5b07b2d0770}
finished service discovery, start discovering characteristics
Found service "{0000180a-0000-1000-8000-00805f9b34fb}"
 .. ignoring standard service
Found service "{0000180f-0000-1000-8000-00805f9b34fb}"
 .. ignoring standard service
Found service "{9e5d1e47-5c13-43a0-8635-82ad38a1386f}"
 .. ignoring service Broadcom Upgrade #1
Found service "{cb3c4555-d670-4670-bc20-b61dbc851e9a}"
 .. recognized service Pelagic (i770R, i200C, Pro Plus X, Geo 4.0)
starting service characteristics discovery
   .. service state changed to QLowEnergyService::DiscoveringServices
 .. done discovering services
   .. service state changed to QLowEnergyService::ServiceDiscovered
Found service "{cb3c4555-d670-4670-bc20-b61dbc851e9a}" "Unknown Service"
   c: "{5ee30931-ccaa-4870-ab32-6b87ef1f78ed}"
   c: "{17738114-18db-467c-b15f-a5bdb84025be}"
   c: "{6606ab42-89d5-4a00-a8ce-4eb5e1414ee0}"
   c: "{a60b8e5c-b267-44d7-9764-837caf96489e}"
        d: "{00002902-0000-1000-8000-00805f9b34fb}"
   c: "{a60b8e5c-b267-44d7-9d65-857bad95479f}"
Using service "{cb3c4555-d670-4670-bc20-b61dbc851e9a}" as preferred service
 .. enabling notifications
Using read characteristic "{a60b8e5c-b267-44d7-9764-837caf96489e}"
now writing "0x0100" to the descriptor "{00002902-0000-1000-8000-008[29.433478] ERROR: Failed to receive the answer. [in /Users/hohndel/src/subsurface/libdivecomputer/src/oceanic_atom2.c:719 (oceanic_atom2_packet)]
[30.546378] ERROR: Failed to receive the answer. [in /Users/hohndel/src/subsurface/libdivecomputer/src/oceanic_atom2.c:719 (oceanic_atom2_packet)]
[30.687765] WARNING: Ignored 2 excess byte(s). [in /Users/hohndel/src/subsurface/libdivecomputer/src/oceanic_atom2.c:756 (oceanic_atom2_packet)]
INFO: dc_device_open error value of 0
05f9b34fb}"
BLE write completed
QTime("17:22:49.629") packet SEND "cd40000184"
QTime("17:22:49.629") packet WAIT
QTime("17:22:50.736") packet SEND "cd40000184"
QTime("17:22:50.736") packet WAIT
QTime("17:22:51.854") packet SEND "cd40000184"
QTime("17:22:51.854") packet WAIT
QTime("17:22:51.888") packet RECV "cde000105a415155413737305220324120303030"
QTime("17:22:51.889") packet RECV "cdc10004346b01fb"
QTime("17:22:51.889") packet READ "cde000105a415155413737305220324120303030"
QTime("17:22:51.889") packet READ "cdc10004346b01fb"
QTime("17:22:51.891") packet SEND "cd40010ae5000100070407000013"
QTime("17:22:51.892") packet WAIT
QTime("17:22:51.926") packet RECV "cdc001015a"
QTime("17:22:51.927") packet READ "cdc001015a"
QTime("17:22:51.929") packet SEND "cd400203b80000"
QTime("17:22:51.929") packet WAIT
QTime("17:22:52.000") packet RECV "cde002105a000000100421000046510107470000"
QTime("17:22:52.000") packet RECV "cde10210000b01f204e202eb04c904ea04ff0faa"
QTime("17:22:52.000") packet RECV "cde2021048000000000000000000000000d400aa"
QTime("17:22:52.001") packet RECV "cde302107eea083d080000240869034d050250aa"
QTime("17:22:52.001") packet READ "cde002105a000000100421000046510107470000"
QTime("17:22:52.001") packet READ "cde10210000b01f204e202eb04c904ea04ff0faa"
QTime("17:22:52.001") packet READ "cde2021048000000000000000000000000d400aa"
QTime("17:22:52.001") packet READ "cde302107eea083d080000240869034d050250aa"
QTime("17:22:52.001") packet WAIT
QTime("17:22:52.012") packet RECV "cde402101dc01f00070020002000000100132b00"
QTime("17:22:52.012") packet RECV "cde50210000000020000002c015f000502010100"
QTime("17:22:52.012") packet READ "cde402101dc01f00070020002000000100132b00"
QTime("17:22:52.012") packet READ "cde50210000000020000002c015f000502010100"
QTime("17:22:52.012") packet WAIT
QTime("17:22:52.024") packet RECV "cde60210010000010001004e0081000100810000"
QTime("17:22:52.025") packet RECV "cde70210000000000000000000001e000000011e"
QTime("17:22:52.025") packet RECV "cde8021000008c008c008c008c00000000000000"
QTime("17:22:52.025") packet RECV "cde90210e5000000000000000001000000000000"
QTime("17:22:52.025") packet READ "cde60210010000010001004e0081000100810000"
QTime("17:22:52.025") packet READ "cde70210000000000000000000001e000000011e"
QTime("17:22:52.025") packet READ "cde8021000008c008c008c008c00000000000000"
QTime("17:22:52.025") packet READ "cde90210e5000000000000000001000000000000"
QTime("17:22:52.025") packet WAIT
QTime("17:22:52.036") packet RECV "cdea021000000000000000000000001400000064"
QTime("17:22:52.036") packet RECV "cdeb021064ffffffffffffffffffffffffffffff"
QTime("17:22:52.036") packet RECV "cdec0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.036") packet READ "cdea021000000000000000000000001400000064"
QTime("17:22:52.036") packet READ "cdeb021064ffffffffffffffffffffffffffffff"
QTime("17:22:52.036") packet READ "cdec0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.036") packet WAIT
QTime("17:22:52.048") packet RECV "cded0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.048") packet RECV "cdee0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.049") packet RECV "cdef0210ff208522202705000200120000ffffff"
QTime("17:22:52.049") packet READ "cded0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.049") packet READ "cdee0210ffffffffffffffffffffffffffffffff"
QTime("17:22:52.049") packet READ "cdef0210ff208522202705000200120000ffffff"
QTime("17:22:52.049") packet WAIT
QTime("17:22:52.061") packet RECV "cdd00203ff4359"
QTime("17:22:52.062") packet READ "cdd00203ff4359"
QTime("17:22:52.064") packet SEND "cd400303b80200"
QTime("17:22:52.064") packet WAIT
QTime("17:22:52.134") packet RECV "cde003105a248901000100010005141610081000"
QTime("17:22:52.134") packet RECV "cde103100059080101080008000a071510081000"
QTime("17:22:52.134") packet READ "cde003105a248901000100010005141610081000"
QTime("17:22:52.134") packet READ "cde103100059080101080008000a071510081000"
QTime("17:22:52.134") packet WAIT
QTime("17:22:52.144") packet RECV "cde2031000ffffffffffffffffffffffffffffff"
QTime("17:22:52.145") packet RECV "cde30310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.145") packet READ "cde2031000ffffffffffffffffffffffffffffff"
QTime("17:22:52.145") packet READ "cde30310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.145") packet WAIT
QTime("17:22:52.156") packet RECV "cde40310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet RECV "cde50310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet RECV "cde60310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet READ "cde40310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet READ "cde50310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet READ "cde60310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.156") packet WAIT
QTime("17:22:52.167") packet RECV "cde70310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.167") packet RECV "cde80310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.167") packet RECV "cde90310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.167") packet READ "cde70310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.167") packet READ "cde80310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.167") packet READ "cde90310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.168") packet WAIT
QTime("17:22:52.178") packet RECV "cdea0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet RECV "cdeb0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet RECV "cdec0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet READ "cdea0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet READ "cdeb0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet READ "cdec0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.178") packet WAIT
QTime("17:22:52.191") packet RECV "cded0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet RECV "cdee0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet RECV "cdef0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet READ "cded0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet READ "cdee0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet READ "cdef0310ffffffffffffffffffffffffffffffff"
QTime("17:22:52.191") packet WAIT
QTime("17:22:52.202") packet RECV "cdd00303ffe8e0"
QTime("17:22:52.202") packet READ "cdd00303ffe8e0"
QTime("17:22:52.205") packet SEND "cd400403f60001"
QTime("17:22:52.205") packet WAIT
QTime("17:22:52.263") packet RECV "cde004105a0000020000002c0107000502010100"
QTime("17:22:52.263") packet RECV "cde10410020000000000000000001e0000000104"
QTime("17:22:52.263") packet READ "cde004105a0000020000002c0107000502010100"
QTime("17:22:52.263") packet READ "cde10410020000000000000000001e0000000104"
QTime("17:22:52.263") packet WAIT
QTime("17:22:52.273") packet RECV "cde2041000008c008c008c008c00000000000000"
QTime("17:22:52.274") packet READ "cde2041000008c008c008c008c00000000000000"
turning off further BT debug output
Deleting BLE object
Finishing download thread: 1 dives downloaded
-------------- next part --------------
Subsurface v4.9.7,
built with libdivecomputer v0.7.0-devel-Subsurface-NG (d52dfb002d40e70cf77c76bc175c8e1401af8357)
built with Qt Version 5.13.2, runtime from Qt Version 5.13.2
built with libgit2 0.26.0
"validateGL(): created OpenGLContext."
"validateGL(): obtained QOpenGLFunctions."
"validateGL(): detected OpenGL version 2.1."
loading dive data from ("/Users/dan/Library/Application Support/Subsurface/test_i770R_2022.xml")
Unable to match dive 'program.divelog' (subsurface)
Unable to match dive 'version.divelog' (3)
Unable to match autogroup 'model.divecomputerid.' (Suunto Vyper)
Unable to match autogroup 'deviceid.divecomputerid.' (2cb68919)
Unable to match autogroup 'nickname.divecomputerid.' (Suunto Vyper (2cb68919))
Unable to match autogroup 'model.divecomputerid.' (Mares Puck Pro)
Unable to match autogroup 'deviceid.divecomputerid.' (32291d2f)
Unable to match autogroup 'nickname.divecomputerid.' (prêt de Yann Legros)
Unable to match autogroup 'model.divecomputerid.' (Aqualung i770R)
Unable to match autogroup 'deviceid.divecomputerid.' (5d9d9589)
Unable to match autogroup 'serial.divecomputerid.d.' (010747)
Unable to match autogroup 'model.divecomputerid.' (Suunto Vyper)
Unable to match autogroup 'deviceid.divecomputerid.' (636e9a36)
Unable to match autogroup 'nickname.divecomputerid.' (Suunto Vyper (636e9a36))
Unable to match divecomputerid 'state.autogroup.' (1)

File locations:

Unable to get local git directory
Cloud URL: No valid cloud credentials set.

Image filename table: /Users/dan/Library/Application Support/Subsurface/hashes
Local picture directory: /Users/dan/Library/Application Support/Subsurface/picturedata/

BTDiscoveryReDiscover: localBtDevice.isValid() true
"BTDiscoveryReDiscover: localDevice noether is powered on, starting discovery"
starting BLE discovery
Starting download from  BT
downloading only new dives
still looking scan is still running, we should just wait for a few moments
"{0000fe61-0000-1000-8000-00805f9b34fb}"
Found new device: "" "LE:{e59614db-f0a8-40d7-9ea2-05d5de942aaf}"
Not recognized as dive computer
Updating manufacturer data for "00:00:00:00:00:00"
Found new device: "" "LE:{e59614db-f0a8-40d7-9ea2-05d5de942aaf}"
Not recognized as dive computer
Found new device: "" "LE:{850d8be4-680c-4025-88d4-90a09a19abd5}"
Not recognized as dive computer
Updating RSSI for "00:00:00:00:00:00" -33
Updating manufacturer data for "00:00:00:00:00:00"
Found new device: "" "LE:{c20bb4cf-a0ed-4e37-a3b1-e4d23d07d8d8}"
Not recognized as dive computer
"{cb3c4555-d670-4670-bc20-b61dbc851e9a}"
Found new device: "i770R" "LE:{c7d52420-5e99-4800-a1bc-e5b07b2d0770}"
"this could be a Aqualung i770R"
Updating RSSI for "00:00:00:00:00:00" -69
Found new device: "i770R" "LE:{c7d52420-5e99-4800-a1bc-e5b07b2d0770}"
"this could be a Aqualung i770R"
---> stopping the discovery agent
qt_ble_open( {c7d52420-5e99-4800-a1bc-e5b07b2d0770} )
trying to connect
timeout while trying to connect to the controller  {c7d52420-5e99-4800-a1bc-e5b07b2d0770}
Finishing download thread: "Unable to open LE:{c7d52420-5e99-4800-a1bc-e5b07b2d0770} Aqualung (i770R)"


More information about the subsurface mailing list