Skip to content

[Bug]: #375

Description

@chernandezosma

Pre-flight checklist

  • I searched existing issues and this is not a duplicate.
  • I am on the latest release or a recent master build.
  • I quit Logi Options+ before running OpenLogi (the two apps fight over HID++ access and only one can own a receiver at a time).

Which part of OpenLogi?

GUI (desktop app)

OpenLogi version

0.6.19

Operating system

Linux

OS version & architecture

Kubuntu 26.04 LTS (Resolute Raccoon) x86_64

Device model

Logitech G502 HERO (USB), Logitech G915 Wireless RGB Mechanical Keyboard (USB + Bluetooth + Logi Bolt)

How is the device connected?

Logi Bolt receiver

Affected area(s)

  • Device discovery / detection
  • Button remapping
  • DPI control
  • SmartShift
  • Per-application profiles
  • Battery status
  • Settings / configuration (TOML)
  • Auto-update
  • Menu bar / tray
  • Other

What happened?

The OpenLogi GUI crashes within milliseconds of launch with a RefCell already borrowed panic in the GPUI X11 event loop. The window briefly appears and then disappears.

Steps to reproduce

  1. Install openlogi v0.6.19 via .deb package
  2. Enable the systemd user agent: systemctl --user enable --now openlogi-agent.service
  3. Launch the GUI: openlogi-gui or openlogi

Diagnostics report

2026-07-12T09:43:37.675738Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.675692622Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: SendRequest
2026-07-12T09:43:37.675844Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.675692622Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-07-12T09:43:37.675856Z  INFO RPC{rpc.deadline=2026-07-12T09:44:02.675852360Z otel.kind="client" otel.name=Agent.next_pairing rpc.trace_id=00}: tarpc::client: SendRequest
2026-07-12T09:43:37.676951Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.676945428Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: SendRequest
2026-07-12T09:43:37.677045Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.676945428Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-07-12T09:43:37.677053Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.677050484Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: SendRequest
2026-07-12T09:43:37.677091Z  INFO RPC{rpc.deadline=2026-07-12T09:43:47.677050484Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-07-12T09:43:37.712597Z  INFO gpui_linux::linux::x11::client: XInput version: 2.4, gesture support: true
2026-07-12T09:43:37.712793Z  INFO gpui_linux::linux::x11::client: x11: compositor present: true, gtk_frame_extents_supported: true
2026-07-12T09:43:37.714570Z  INFO gpui_linux::linux::x11::client: Using RandR scale factor: 1.6666666
2026-07-12T09:43:37.714968Z  INFO gpui_linux::linux::platform: Compositor GPU hint: vendor=0x10de, device=0x2488 (from dev 226:128)
2026-07-12T09:43:37.716637Z  INFO gpui_linux::linux::x11::window: Using Visual { id: 35, colormap: 0, depth: 32 }
2026-07-12T09:43:37.716645Z  INFO gpui_linux::linux::x11::window: Creating colormap 50331650
libEGL warning: pci id for fd 34: 10de:2488, driver (null)

pci id for fd 35: 10de:2488, driver (null)
pci id for fd 36: 10de:2488, driver (null)
libEGL warning: egl: failed to create dri2 screen
pci id for fd 35: 10de:2488, driver (null)
pci id for fd 36: 10de:2488, driver (null)
libEGL warning: egl: failed to create dri2 screen
2026-07-12T09:43:37.812077Z  INFO wgpu_hal::vulkan::adapter: Found 6 cooperative matrix configurations supported by wgpu
2026-07-12T09:43:37.812201Z  INFO wgpu_hal::vulkan::adapter: Found 2 cooperative matrix configurations supported by wgpu
2026-07-12T09:43:37.812945Z  INFO gpui_wgpu::wgpu_context: Found 3 GPU adapter(s):
2026-07-12T09:43:37.812950Z  INFO gpui_wgpu::wgpu_context:   - NVIDIA GeForce RTX 3070 (vendor=0x10de, device=0x2488, backend=Vulkan, type=DiscreteGpu)
2026-07-12T09:43:37.812953Z  INFO gpui_wgpu::wgpu_context:   - llvmpipe (LLVM 21.1.8, 256 bits) (vendor=0x10005, device=0x0000, backend=Vulkan, type=Cpu)
2026-07-12T09:43:37.812954Z  INFO gpui_wgpu::wgpu_context:   - llvmpipe (LLVM 21.1.8, 256 bits) (vendor=0x10005, device=0x0000, backend=Gl, type=Cpu)
2026-07-12T09:43:37.812957Z  INFO gpui_wgpu::wgpu_context: Testing adapter: NVIDIA GeForce RTX 3070 (Vulkan)...
2026-07-12T09:43:38.048978Z  INFO gpui_wgpu::wgpu_context: Selected GPU (passed configuration test): NVIDIA GeForce RTX 3070 (Vulkan)
2026-07-12T09:43:38.049027Z  INFO gpui_wgpu::wgpu_context: Selected GPU adapter: "NVIDIA GeForce RTX 3070" (Vulkan)
2026-07-12T09:43:38.194120Z  INFO openlogi_gui::app: initial device selected device_key=direct:046d:c33e:unit:3d1a9b8d display=Logitech G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD
2026-07-12T09:43:38.218477Z  INFO gpui_linux::linux::platform: activate is not implemented on Linux, ignoring the call
2026-07-12T09:43:38.218663Z  INFO gpui_linux::linux::x11::window: Using Visual { id: 35, colormap: 0, depth: 32 }
2026-07-12T09:43:38.218671Z  INFO gpui_linux::linux::x11::window: Creating colormap 50331654
2026-07-12T09:43:38.531584Z  INFO gpui_linux::linux::x11::client: Refreshing every 16ms
2026-07-12T09:43:38.531717Z  INFO gpui_linux::linux::x11::client: Refreshing every 16ms

thread 'main' (1224636) panicked at /home/runner/.cargo/git/checkouts/zed-a70e2ad075855582/eb2223c/crates/gpui_linux/src/linux/x11/client.rs:1529:23:
RefCell already borrowed
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

openlogi list output

2026-07-12T09:39:02.853379Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
2026-07-12T09:39:02.853475Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
2026-07-12T09:39:08.156207Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
2026-07-12T09:39:08.156328Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
2026-07-12T09:39:13.509136Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
2026-07-12T09:39:13.509244Z  WARN openlogi_hid::inventory: node probe keeps failing — dropping its channel to reopen next tick
Logitech G502 HERO Gaming Mouse (—, vid=046d pid=c08b)
  └─ slot 255 ● Logitech G502 HERO Gaming Mouse (mouse, wpid=?, battery=—)
          model_ids=[c08b,0000,0000] ext=00 serial=— unit_id=34394713 transports=usb

Logitech G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD (—, vid=046d pid=c33e)
  └─ slot 255 ● Logitech G915 WIRELESS RGB MECHANICAL GAMING KEYBOARD (keyboard, wpid=?, battery=—)
          model_ids=[b354,407c,c33e] ext=00 serial=— unit_id=3d1a9b8d transports=usb+equad+btle

Logs

2026-07-12T09:45:46.778678Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0002 matched=false
2026-07-12T09:45:46.778689Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0001 matched=false
2026-07-12T09:45:46.778691Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0xff00 usage_id=0x0001 matched=false
2026-07-12T09:45:46.778694Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0xff00 usage_id=0x0002 matched=true
2026-07-12T09:45:46.778696Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0002 matched=false
2026-07-12T09:45:46.778698Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0001 matched=false
2026-07-12T09:45:46.778700Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:46.778702Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000c usage_id=0x0036 matched=false
2026-07-12T09:45:46.778704Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000b usage_id=0x0005 matched=false
2026-07-12T09:45:46.778706Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0001 matched=false
2026-07-12T09:45:46.778708Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0xff00 matched=false
2026-07-12T09:45:46.778710Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0020 matched=false
2026-07-12T09:45:46.778712Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0024 matched=false
2026-07-12T09:45:46.778715Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0048 matched=false
2026-07-12T09:45:46.778716Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x002b matched=false
2026-07-12T09:45:46.778720Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0xff17 matched=false
2026-07-12T09:45:46.778740Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff43 usage_id=0x0202 matched=true
2026-07-12T09:45:46.778743Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0006 matched=false
2026-07-12T09:45:46.778745Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:46.778748Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0080 matched=false
2026-07-12T09:45:46.778750Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0xff00 usage_id=0x0001 matched=false
2026-07-12T09:45:46.778753Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0xff00 usage_id=0x0002 matched=true
2026-07-12T09:45:46.778755Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0006 matched=false
2026-07-12T09:45:46.778758Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:46.778760Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0080 matched=false
2026-07-12T09:45:46.778845Z DEBUG openlogi_hid::inventory: HID++ candidate interfaces count=3
2026-07-12T09:45:46.778971Z DEBUG openlogi_hid::transport: opened HID++ channel name=Logitech USB Receiver vid=046d
2026-07-12T09:45:46.779013Z DEBUG openlogi_hid::transport: opened HID++ channel name=Logitech G432 Gaming Headset vid=046d
2026-07-12T09:45:46.779060Z DEBUG openlogi_hid::transport: opened HID++ channel name=Logitech G502 HERO Gaming Mouse vid=046d
2026-07-12T09:45:46.780366Z DEBUG openlogi_hid::inventory::features: Device::new failed slot=255 error=UnsupportedProtocolVersion
2026-07-12T09:45:46.780372Z DEBUG openlogi_hid::inventory::probe: slot 0xff exposes no battery or config feature — likely a receiver secondary interface; skipping vid=046d pid=c547 has_model=false
2026-07-12T09:45:46.825531Z DEBUG openlogi_hid::inventory::probe: BT-direct / wired device recognised name=Logitech G502 HERO Gaming Mouse
2026-07-12T09:45:51.779475Z DEBUG openlogi_hid::inventory::features: Device::new failed slot=255 error=Channel(Timeout)
2026-07-12T09:45:51.779493Z DEBUG openlogi_hid::inventory::probe: slot 0xff exposes no battery or config feature — likely a receiver secondary interface; skipping vid=046d pid=0a9c has_model=false
2026-07-12T09:45:51.779511Z DEBUG openlogi_hid::inventory: one-shot enumerate saw an unhealthy node — retrying attempt=1
2026-07-12T09:45:52.081390Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0002 matched=false
2026-07-12T09:45:52.081402Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0001 matched=false
2026-07-12T09:45:52.081405Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0xff00 usage_id=0x0001 matched=false
2026-07-12T09:45:52.081407Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0xff00 usage_id=0x0002 matched=true
2026-07-12T09:45:52.081409Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0002 matched=false
2026-07-12T09:45:52.081412Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0001 matched=false
2026-07-12T09:45:52.081414Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:52.081416Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000c usage_id=0x0036 matched=false
2026-07-12T09:45:52.081418Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0x000b usage_id=0x0005 matched=false
2026-07-12T09:45:52.081420Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0001 matched=false
2026-07-12T09:45:52.081422Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0xff00 matched=false
2026-07-12T09:45:52.081424Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0020 matched=false
2026-07-12T09:45:52.081427Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0024 matched=false
2026-07-12T09:45:52.081429Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x0048 matched=false
2026-07-12T09:45:52.081431Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0x002b matched=false
2026-07-12T09:45:52.081433Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff99 usage_id=0xff17 matched=false
2026-07-12T09:45:52.081435Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G432 Gaming Headset pid=0a9c usage_page=0xff43 usage_id=0x0202 matched=true
2026-07-12T09:45:52.081437Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0006 matched=false
2026-07-12T09:45:52.081439Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:52.081441Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0x0001 usage_id=0x0080 matched=false
2026-07-12T09:45:52.081443Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0xff00 usage_id=0x0001 matched=false
2026-07-12T09:45:52.081446Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech G502 HERO Gaming Mouse pid=c08b usage_page=0xff00 usage_id=0x0002 matched=true
2026-07-12T09:45:52.081448Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0006 matched=false
2026-07-12T09:45:52.081450Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x000c usage_id=0x0001 matched=false
2026-07-12T09:45:52.081452Z DEBUG openlogi_hid::transport: logitech HID node name=Logitech USB Receiver pid=c547 usage_page=0x0001 usage_id=0x0080 matched=false
2026-07-12T09:45:52.081523Z DEBUG openlogi_hid::inventory: HID++ candidate interfaces count=3
2026-07-12T09:45:52.082025Z DEBUG openlogi_hid::inventory::probe: BT-direct / wired device recognised name=Logitech G502 HERO Gaming Mouse
2026-07-12T09:45:52.082357Z DEBUG openlogi_hid::inventory::features: Device::new failed slot=255 error=UnsupportedProtocolVersion
2026-07-12T09:45:52.082364Z DEBUG openlogi_hid::inventory::probe: slot 0xff exposes no battery or config feature — likely a receiver secondary interface; skipping vid=046d pid=c547 has_model=false

macOS permissions (if applicable)

  • OpenLogi has Accessibility permission (needed to remap buttons via the event tap).
  • OpenLogi has Input Monitoring permission (needed for Bluetooth-direct devices and capture).

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs: triageNeeds maintainer triagetype: bugSomething is broken or behaves incorrectly

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions