Skip to content

Add SocketCAN gs_usb kernel driver support for USB CAN adapters #2508

@alexpalyan

Description

@alexpalyan

Is your feature request related to a problem? Please describe.

OrbStack recently added USB passthrough support, which works great. I can successfully attach a CANable (candleLight firmware) USB CAN adapter to a Linux machine and it appears in lsusb:

Bus 001 Device 002: ID 1d50:606f OpenMoko, Inc. Geschwister Schneider CAN adapter

However, the Linux kernel shipped with OrbStack does not include the gs_usb driver:

modprobe: FATAL: Module gs_usb not found in directory /lib/modules/7.0.11-orbstack-...

As a result, SocketCAN interfaces such as can0 cannot be created, making CANable and other candleLight/gs_usb-compatible adapters unusable with standard Linux CAN tooling (can-utils, isotpdump, isotpsend, etc.).

Describe the solution you'd like

Please enable SocketCAN USB adapter support by including the Linux gs_usb driver (CONFIG_CAN_GS_USB) in the OrbStack kernel.

This would allow USB CAN adapters based on candleLight firmware (CANable, CANable 2.0, MKS CANable, etc.) to work out of the box with standard Linux SocketCAN tools.

Describe alternatives you've considered

Current alternatives are:

  • Running a full Linux VM (UTM/QEMU) with a kernel that includes gs_usb
  • Using userspace USB access libraries (libusb, python-can, gs_usb) instead of SocketCAN
  • Using adapters that expose a serial (slcan) interface

These workarounds are less convenient than native SocketCAN support.

Additional context

The USB passthrough feature itself works correctly. The device is detected by the guest OS and visible in dmesg:

usb 1-1: New USB device found, idVendor=1d50, idProduct=606f
usb 1-1: Product: canable2 gs_usb
usb 1-1: Manufacturer: canable.io

Only the kernel-side gs_usb driver appears to be missing.

This would also benefit automotive diagnostics, reverse engineering, and embedded development workflows that rely on SocketCAN.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions