azymohliad / watchmate

PineTime smart watch companion app for Linux phone and desktop
GNU General Public License v3.0
136 stars 4 forks source link

Pairs, app interface doesnt recieve information. #27

Closed MadameMalady closed 1 year ago

MadameMalady commented 1 year ago

Mobian, Pinephone Pro:

app seems to pair to the watch according to the watch, but the apps interface doesnt behave correctly, it stays on the device listing, going back w/ the button im the top left says it cant fetch / failed to sync datas.

azymohliad commented 1 year ago

Hey, thanks for the report. If it stays on the device list, then most likely it didn't finish reading the list of BLE characteristics from the watch. For more clues the most detailed logs from bluer (the bluez library that watchmate uses) might help. To collect them you can run watchmate from the terminal with RUST_LOG=bluer=trace environment variable.

MadameMalady commented 1 year ago

debug

Sorry for the huge delay, had trouble getting some kind of log, the 'warning' error repeated over and over, the bottom errors were the only different ones.

azymohliad commented 1 year ago

Interesting, that's not what I expected. So it actually finished reading the list of BLE characteristics, recognized it as PineTime, and then immediately disconnected (or maybe just considered it as disconnected, because its Bluer stream of events is ended).

First of all, could you check if the watch actually stays connected to your phone after this? You can either just check Bluetooth section of the Settings app, or see if it's in the list of bluetoothctl devices Connected command output.

Could you also please run it with RUST_LOG environment variable set to bluer=trace? If you're using Flatpak package you can use --env option:

flatpak run --env=RUST_LOG=bluer=trace io.gitlab.azymohliad.WatchMate

I'm specifically interested in [TRACE bluer::*] logs between PineTime recognized and PineTime disconnected, but even that might be too verbose to fit on the screen so it might make sense to pipe it to a file

MadameMalady commented 1 year ago

I would really really like to, and as much as I like coding, i'm not sure exactly how to 'pipe to a file' yet :(

I ran the command you displayed and it ran, no errors spotted in the (very long) console output, connected correctly, and registered when I toggled on notifications. Whatever was wrong seems to have been fixed..?

azymohliad commented 1 year ago

Hm.. Do you not reproduce it anymore at all? It's still very hard to tell what was wrong. For now my best guesses are that it could either be a glitch of the watch itself (maybe it actually lost connection, but didn't update the status icon), but that's unlikely if it worked with other companion apps. Or it could be bluez or d-bus (if you updated related packages maybe that could've fixed it?) or bluer related. Specifically if it was ending the event stream while the device is still connected, then something could probably be done on watchmate side, at least double checking if the device actually disconnected.

By "pipe it to a file" I meant to save logs to file with something like this:

flatpak run --env=RUST_LOG=bluer=trace io.gitlab.azymohliad.WatchMate 2>&1 | tee log.txt
Details Where `|` takes standard output stream from one command (roughly, whatever it prints to the terminal) and forwards it to the standard input stream of another command; `tee` is another command that reads whatever it has on its standard input, prints it out, and saves it to a file (log.txt here); and `2>&1` is just to make sure all the logs are included because there are actually 2 output streams: one for regular output (stdout, 1), and one for errors (stderr, 2), but `|` forwards stdout only, so this forwards stderr into stdout first. You could also forward stdout to a file directly using `>`, without `| tee`, but then you won't see anything printed to the terminal at the same time. Lastly, if you're on bash, it has shortcuts `&>` for `2>&1 >` and `|&` for `2>&1 |`, the more verbose options just work on some other shells too. Sorry for the lecture if you knew all that already and just the wording around "pipe" was confusing.
MadameMalady commented 1 year ago

Idk why it's listing devices that aren't turned on, but here is the log: (and don't worry, the explaination was useful and educational!)

(watchmate:2): GVFS-WARNING **: 12:26:57.642: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:26:57.658: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:26:59.280: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges. [TRACE bluer::session] Connected to D-Bus with unique name :1.87 [TRACE bluer::session] Starting event loop for :1.87 [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.Powered := true [TRACE bluer::gatt::local] Publishing application at /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c [TRACE bluer::gatt::local] Publishing service at /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0 [TRACE bluer::gatt::local] Publishing characteristic at /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0 [TRACE bluer::gatt::local] Registering application at /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0: org.bluez.GattService1.UUID = Some("00001805-0000-1000-8000-00805f9b34fb") [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0: org.bluez.GattService1.Primary = Some(true) [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.Flags = Some(["read"]) [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.WriteAcquired = None [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.NotifyAcquired = None [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.UUID = Some("00002a2b-0000-1000-8000-00805f9b34fb") [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0: org.bluez.GattService1.Handle <- 21 [TRACE bluer::gatt::local] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.Handle <- 23 [TRACE bluer::device] /org/bluez/hci0/dev_2C_E0_32_DB_8C_FA: org.bluez.Device1.Name = "Soundcore Life Q20" [TRACE bluer::device] /org/bluez/hci0/dev_DF_B3_5C_7C_CB_D2: org.bluez.Device1.Name = "Tesla Coil 10" [TRACE bluer::device] /org/bluez/hci0/dev_B8_EF_8B_5A_0E_8E: org.bluez.Device1.Name = "Onn TWS In-Ear" [INFO watchmate::ui::devices] Discovery started [TRACE bluer::session] Starting new single session for /org/bluez/hci0 [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.SetDiscoveryFilter ({"DuplicateData": Variant(false), "Discoverable": Variant(false), "UUIDs": Variant([]), "Transport": Variant("auto")},) [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.SetDiscoveryFilter (...) -> Ok(()) [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.StartDiscovery () [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.StartDiscovery (...) -> Ok(()) [TRACE bluer::session] Adding event subscription for /org/bluez/hci0 with child_objects=true [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0\0"), interface: "org.bluez.Adapter1", changed: {"Discovering": Variant(true)} } [TRACE bluer::device] /org/bluez/hci0/dev_2C_E0_32_DB_8C_FA: org.bluez.Device1.Name = "Soundcore Life Q20" [TRACE bluer::device] /org/bluez/hci0/dev_DF_B3_5C_7C_CB_D2: org.bluez.Device1.Name = "Tesla Coil 10" [TRACE bluer::device] /org/bluez/hci0/dev_B8_EF_8B_5A_0E_8E: org.bluez.Device1.Name = "Onn TWS In-Ear" [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58\0"), interfaces: {"org.freedesktop.DBus.Properties", "org.bluez.Device1", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Name = "InfiniTime" [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Connected = false [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Alias = "InfiniTime" [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.RSSI = -55 [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_63_2C_2B_23_5E_E5\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.bluez.Device1", "org.freedesktop.DBus.Properties"} } [TRACE bluer::device] /org/bluez/hci0/dev_63_2C_2B_23_5E_E5: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_72_53_97_B2_D7_1B\0"), interfaces: {"org.bluez.Device1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::device] /org/bluez/hci0/dev_72_53_97_B2_D7_1B: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_78_07_7F_02_02_C3\0"), interfaces: {"org.bluez.Device1", "org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::device] /org/bluez/hci0/dev_78_07_7F_02_02_C3: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_7C_3D_EB_DC_FD_D4\0"), interfaces: {"org.bluez.Device1", "org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_3A_3B_D2_C2_45_9C\0"), interfaces: {"org.bluez.Device1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::device] /org/bluez/hci0/dev_7C_3D_EB_DC_FD_D4: org.bluez.Device1.Name = None [TRACE bluer::device] /org/bluez/hci0/dev_3A_3B_D2_C2_45_9C: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_EE_57_86_BF_B7_8B\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.Device1"} } [TRACE bluer::device] /org/bluez/hci0/dev_EE_57_86_BF_B7_8B: org.bluez.Device1.Name = None

(watchmate:2): GVFS-WARNING **: 12:27:03.792: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.793: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.794: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.802: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.806: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.810: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.814: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.818: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.821: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.823: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.827: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:03.831: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:04.122: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:04.122: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges.

(watchmate:2): GVFS-WARNING **: 12:27:04.122: The peer-to-peer connection failed: Error when getting information for file “/run/user/1000/gvfsd”: No such file or directory. Falling back to the session bus. Your application is probably missing --filesystem=xdg-run/gvfsd privileges. [INFO watchmate::ui::devices] Discovery stopped [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.StopDiscovery () [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Connect () [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.StopDiscovery () -> Ok(()) [TRACE bluer::session] Terminated single session for /org/bluez/hci0 [TRACE bluer::session] Event: ObjectRemoved { object: Path("/org/bluez/hci0/dev_3A_3B_D2_C2_45_9C\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.Device1"} } [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Connect (...) -> Ok(()) [INFO watchmate::ui] Device connected: E8:1D:8B:83:FC:58 [TRACE bluer::session] Adding event subscription for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58 with child_objects=false [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.ServicesResolved = false [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Connected = true [TRACE bluer] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.ReadValue ({"link": Variant("LE"), "mtu": Variant(256), "device": Variant(Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58\0"))}) [TRACE bluer] /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0: org.bluez.GattCharacteristic1.ReadValue (...) -> Ok(([231, 7, 7, 6, 12, 27, 5, 4, 0, 0],)) [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0006\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.bluez.GattService1", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a\0"), interfaces: {"org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable", "org.bluez.GattService1"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0017\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.GattService1"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0038\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.bluez.GattService1", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service003d\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0046\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.GattService1"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service004c\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0058\0"), interfaces: {"org.freedesktop.DBus.Properties", "org.bluez.GattService1", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f\0"), interfaces: {"org.bluez.GattService1", "org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0066\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.GattService1"} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58\0"), interface: "org.bluez.Device1", changed: {"ServicesResolved": Variant(true), "UUIDs": Variant(["00000000-78fc-48fe-8e23-433b3a1942d0", "00001530-1212-efde-1523-785feabcd123", "00001800-0000-1000-8000-00805f9b34fb", "00001801-0000-1000-8000-00805f9b34fb", "00001802-0000-1000-8000-00805f9b34fb", "00001805-0000-1000-8000-00805f9b34fb", "0000180a-0000-1000-8000-00805f9b34fb", "0000180d-0000-1000-8000-00805f9b34fb", "0000180f-0000-1000-8000-00805f9b34fb", "00001811-0000-1000-8000-00805f9b34fb", "0000febb-0000-1000-8000-00805f9b34fb", "00010000-78fc-48fe-8e23-433b3a1942d0", "00030000-78fc-48fe-8e23-433b3a1942d0", "00040000-78fc-48fe-8e23-433b3a1942d0"])} } [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c: org.bluez.GattCharacteristic1.UUID = "00002a37-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0038/char003b: org.bluez.GattCharacteristic1.UUID = "00040002-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0038/char0039: org.bluez.GattCharacteristic1.UUID = "00040001-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0017/char001a: org.bluez.GattCharacteristic1.UUID = "00002a2b-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0017/char0018: org.bluez.GattCharacteristic1.UUID = "00002a0f-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055: org.bluez.GattCharacteristic1.UUID = "00002a19-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0046/char0049: org.bluez.GattCharacteristic1.UUID = "00020001-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0046/char0047: org.bluez.GattCharacteristic1.UUID = "00002a46-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service004c/char004d: org.bluez.GattCharacteristic1.UUID = "00001532-1212-efde-1523-785feabcd123" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service004c/char004f: org.bluez.GattCharacteristic1.UUID = "00001531-1212-efde-1523-785feabcd123" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service004c/char0052: org.bluez.GattCharacteristic1.UUID = "00001534-1212-efde-1523-785feabcd123" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0022: org.bluez.GattCharacteristic1.UUID = "00000004-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char002c: org.bluez.GattCharacteristic1.UUID = "00000007-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0030: org.bluez.GattCharacteristic1.UUID = "00000009-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0026: org.bluez.GattCharacteristic1.UUID = "00000005-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char002e: org.bluez.GattCharacteristic1.UUID = "00000008-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char001d: org.bluez.GattCharacteristic1.UUID = "00000001-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0024: org.bluez.GattCharacteristic1.UUID = "00000003-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0036: org.bluez.GattCharacteristic1.UUID = "0000000c-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0032: org.bluez.GattCharacteristic1.UUID = "0000000a-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0034: org.bluez.GattCharacteristic1.UUID = "0000000b-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char002a: org.bluez.GattCharacteristic1.UUID = "00000007-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0028: org.bluez.GattCharacteristic1.UUID = "00000006-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58\0"), interface: "org.bluez.Device1", changed: {"Appearance": Variant(194)} } [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service001c/char0020: org.bluez.GattCharacteristic1.UUID = "00000002-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service003d/char003e: org.bluez.GattCharacteristic1.UUID = "00010001-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service003d/char0044: org.bluez.GattCharacteristic1.UUID = "00010004-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service003d/char0040: org.bluez.GattCharacteristic1.UUID = "00010002-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service003d/char0042: org.bluez.GattCharacteristic1.UUID = "00010003-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char000b: org.bluez.GattCharacteristic1.UUID = "00002a29-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char000d: org.bluez.GattCharacteristic1.UUID = "00002a24-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char0015: org.bluez.GattCharacteristic1.UUID = "00002a28-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char0013: org.bluez.GattCharacteristic1.UUID = "00002a27-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char0011: org.bluez.GattCharacteristic1.UUID = "00002a26-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char000f: org.bluez.GattCharacteristic1.UUID = "00002a25-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0006/char0007: org.bluez.GattCharacteristic1.UUID = "00002a05-0000-1000-8000-00805f9b34fb" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060: org.bluez.GattCharacteristic1.UUID = "00030001-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0063: org.bluez.GattCharacteristic1.UUID = "00030002-78fc-48fe-8e23-433b3a1942d0" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0066/char0069: org.bluez.GattCharacteristic1.UUID = "adaf0200-4669-6c65-5472-616e73666572" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0066/char0067: org.bluez.GattCharacteristic1.UUID = "adaf0100-4669-6c65-5472-616e73666572" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0058/char0059: org.bluez.GattCharacteristic1.UUID = "00002a06-0000-1000-8000-00805f9b34fb" [INFO watchmate::ui] PineTime recognized [TRACE bluer::session] Adding event subscription for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58 with child_objects=false [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Alias = "InfiniTime" [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char0011: org.bluez.GattCharacteristic1.ReadValue ({"offset": Variant(0)},) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service000a/char0011: org.bluez.GattCharacteristic1.ReadValue (...) -> Ok(([49, 46, 49, 51, 46, 48],)) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055: org.bluez.GattCharacteristic1.ReadValue ({"offset": Variant(0)},) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055: org.bluez.GattCharacteristic1.ReadValue (...) -> Ok(([78],)) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c: org.bluez.GattCharacteristic1.ReadValue ({"offset": Variant(0)},) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c: org.bluez.GattCharacteristic1.ReadValue (...) -> Ok(([0, 0],)) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060: org.bluez.GattCharacteristic1.ReadValue ({"offset": Variant(0)},) [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060: org.bluez.GattCharacteristic1.ReadValue (...) -> Ok(([0, 0, 0, 0],)) [TRACE bluer::session] Starting new single session for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055 [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055: org.bluez.GattCharacteristic1.StartNotify () [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055: org.bluez.GattCharacteristic1.StartNotify (...) -> Ok(()) [TRACE bluer::session] Adding event subscription for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055 with child_objects=false [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service0054/char0055\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Notifying": Variant(true)} } [TRACE bluer::session] Starting new single session for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c: org.bluez.GattCharacteristic1.StartNotify () [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c: org.bluez.GattCharacteristic1.StartNotify (...) -> Ok(()) [TRACE bluer::session] Adding event subscription for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c with child_objects=false [TRACE bluer::session] Starting new single session for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060 [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060: org.bluez.GattCharacteristic1.StartNotify () [TRACE bluer::gatt::remote] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060: org.bluez.GattCharacteristic1.StartNotify (...) -> Ok(()) [TRACE bluer::session] Adding event subscription for /org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005f/char0060 with child_objects=false [INFO watchmate::ui::notifications] Notification session started [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 89])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 88])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 86])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 84])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 83])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 82])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 81])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 80])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 81])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 82])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 83])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 84])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 83])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 84])} } [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0/dev_E8_1D_8B_83_FC_58/service005b/char005c\0"), interface: "org.bluez.GattCharacteristic1", changed: {"Value": Variant([0, 0])} } [INFO watchmate::ui::devices] Discovery started [TRACE bluer::session] Starting new single session for /org/bluez/hci0 [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.SetDiscoveryFilter ({"Transport": Variant("auto"), "DuplicateData": Variant(false), "UUIDs": Variant([]), "Discoverable": Variant(false)},) [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.SetDiscoveryFilter (...) -> Ok(()) [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.StartDiscovery () [TRACE bluer::adapter] /org/bluez/hci0: org.bluez.Adapter1.StartDiscovery (...) -> Ok(()) [TRACE bluer::session] Adding event subscription for /org/bluez/hci0 with child_objects=true [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0\0"), interface: "org.bluez.Adapter1", changed: {"Discovering": Variant(true)} } [TRACE bluer::device] /org/bluez/hci0/dev_2C_E0_32_DB_8C_FA: org.bluez.Device1.Name = "Soundcore Life Q20" [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Name = "InfiniTime" [TRACE bluer::device] /org/bluez/hci0/dev_B8_EF_8B_5A_0E_8E: org.bluez.Device1.Name = "Onn TWS In-Ear" [TRACE bluer::device] /org/bluez/hci0/dev_DF_B3_5C_7C_CB_D2: org.bluez.Device1.Name = "Tesla Coil 10" [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Connected = true [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.Alias = "InfiniTime" [TRACE bluer::device] /org/bluez/hci0/dev_E8_1D_8B_83_FC_58: org.bluez.Device1.RSSI = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_63_2C_2B_23_5E_E5\0"), interfaces: {"org.bluez.Device1", "org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::device] /org/bluez/hci0/dev_63_2C_2B_23_5E_E5: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_72_53_97_B2_D7_1B\0"), interfaces: {"org.freedesktop.DBus.Properties", "org.freedesktop.DBus.Introspectable", "org.bluez.Device1"} } [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_C5_C1_35_26_DA_49\0"), interfaces: {"org.freedesktop.DBus.Properties", "org.bluez.Device1", "org.freedesktop.DBus.Introspectable"} } [TRACE bluer::device] /org/bluez/hci0/dev_C5_C1_35_26_DA_49: org.bluez.Device1.Name = None [TRACE bluer::device] /org/bluez/hci0/dev_72_53_97_B2_D7_1B: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_1D_89_39_99_00_77\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.freedesktop.DBus.Properties", "org.bluez.Device1"} } [TRACE bluer::device] /org/bluez/hci0/dev_1D_89_39_99_00_77: org.bluez.Device1.Name = None [TRACE bluer::session] Event: ObjectAdded { object: Path("/org/bluez/hci0/dev_78_07_7F_02_02_C3\0"), interfaces: {"org.freedesktop.DBus.Introspectable", "org.bluez.Device1", "org.freedesktop.DBus.Properties"} } [TRACE bluer::device] /org/bluez/hci0/dev_78_07_7F_02_02_C3: org.bluez.Device1.Name = None [TRACE bluer::gatt::local] Unregistering application at /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0\0"), interface: "org.bluez.Adapter1", changed: {"UUIDs": Variant(["0000110e-0000-1000-8000-00805f9b34fb", "0000111f-0000-1000-8000-00805f9b34fb", "00001200-0000-1000-8000-00805f9b34fb", "0000110b-0000-1000-8000-00805f9b34fb", "0000110a-0000-1000-8000-00805f9b34fb", "0000110c-0000-1000-8000-00805f9b34fb", "00001800-0000-1000-8000-00805f9b34fb", "00001801-0000-1000-8000-00805f9b34fb", "0000180a-0000-1000-8000-00805f9b34fb", "0000111e-0000-1000-8000-00805f9b34fb"])} } [TRACE bluer::gatt::local] Unpublishing /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0/char0 [TRACE bluer::gatt::local] Unpublishing /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c/service0 [TRACE bluer::gatt::local] Unpublishing /org/bluez/bluer/gatt/app/2c8400cc71d5400abe0b6a4a2cf61a9c [TRACE bluer::session] Event: PropertiesChanged { object: Path("/org/bluez/hci0\0"), interface: "org.bluez.Adapter1", changed: {"UUIDs": Variant(["0000110e-0000-1000-8000-00805f9b34fb", "0000111f-0000-1000-8000-00805f9b34fb", "00001200-0000-1000-8000-00805f9b34fb", "0000110b-0000-1000-8000-00805f9b34fb", "0000110a-0000-1000-8000-00805f9b34fb", "0000110c-0000-1000-8000-00805f9b34fb", "00001800-0000-1000-8000-00805f9b34fb", "00001801-0000-1000-8000-00805f9b34fb", "0000180a-0000-1000-8000-00805f9b34fb", "0000111e-0000-1000-8000-00805f9b34fb"])} }

azymohliad commented 1 year ago

Thanks. Well, if the issue doesn't reproduce anymore than there's nothing to look for in the logs (I should've mentioned that).

Idk why it's listing devices that aren't turned on

Bluez just remembers the devices it previously connected to and always have them on the global list of devices, that's expected. Kinda the same as you'd see previously paired devices in the Settings app, even if they are off.

I'd close the issue for now then? If you spot it again feel free to reopen

MadameMalady commented 1 year ago

Sounds good, thanks for walking me through getting the logs and stuff still