module

HIDComposite

HID Composite Module for USB Gadget functionality (Keyboard + Mouse + Mass Storage)

Constants

Log = ::Log.for(self)

Class methods

cleanup_all_gadgets
Source
disable_ecm_interface

Bring down ECM/usb0 and kill dnsmasq

Source
dnsmasq_pid

Class method for dnsmasq PID

Source
ecm_actual_status

Returns a hash with the actual ECM/ethernet status from the system, not just internal state

Source
ecm_enabled

Class method for ECM enabled state

Source
enable_ecm_interface

Bring up ECM/usb0 and start dnsmasq (idempotent)

Source
ethernet_ifname

Class method for ethernet interface name

Source
setup_usb_composite_gadget(vendor_id : String = "0x16c0", product_id : String = "0x048a", manufacturer : String = "Gadget", product : String = "KV KVM Composite", serial : String = "fedcba9876543212", enable_mass_storage : Bool = false, storage_file : String | Nil = nil, enable_ecm : Bool = false, enable_mouse : Bool = true)
Source