Node USB
    Preparing search index...

    Class Device

    Represents a USB device.

    Hierarchy

    • ExtendedDevice
      • Device
    Index

    Constructors

    Properties

    _bosDescriptor?: BosDescriptor
    busNumber: number

    Integer USB device number

    deviceAddress: number

    Integer USB device address

    deviceDescriptor: DeviceDescriptor

    Object with properties for the fields of the device descriptor.

    interfaces: Interface[] | undefined

    List of Interface objects for the interfaces of the default configuration of the device.

    portNumbers: number[]

    Array containing the USB device port numbers, or undefined if not supported on this platform.

    Accessors

    • get parent(): usb.Device

      Contains the parent of the device, such as a hub. If there is no parent this property is set to null.

      Returns usb.Device

    • get timeout(): number

      Timeout in milliseconds to use for control transfers.

      Returns number

    • set timeout(value: number): void

      Parameters

      • value: number

      Returns void

    Methods

    • Parameters

      • addr: number

      Returns boolean

    • Parameters

      • enable: number

      Returns void

    • Close the device.

      The device must be open to use this method.

      Parameters

      Returns void

    • Perform a control transfer with libusb_control_transfer.

      Parameter data_or_length can be an integer length for an IN transfer, or a Buffer for an OUT transfer. The type must match the direction specified in the MSB of bmRequestType.

      The data parameter of the callback is actual transferred for OUT transfers, or will be passed a Buffer for IN transfers.

      The device must be open to use this method.

      Parameters

      • this: usb.Device
      • bmRequestType: number
      • bRequest: number
      • wValue: number
      • wIndex: number
      • data_or_length: number | Buffer<ArrayBufferLike>
      • Optionalcallback: (
            error: usb.LibUSBException | undefined,
            buffer: number | Buffer<ArrayBufferLike> | undefined,
        ) => void

      Returns usb.Device

    • Retrieve a list of Capability objects for the Binary Object Store capabilities of the device.

      The device must be open to use this method.

      Parameters

      Returns void

    • Perform a control transfer to retrieve a string descriptor

      The device must be open to use this method.

      Parameters

      Returns void

    • Open the device.

      Parameters

      • this: usb.Device
      • defaultConfig: boolean = true

      Returns void

    • Enable/disable libusb's automatic kernel driver detachment When this is enabled libusb will automatically detach the kernel driver on an interface when claiming the interface, and attach it when releasing the interface

      The device must be open to use this method.

      Parameters

      • enable: boolean

      Returns void

    • Set the device configuration to something other than the default (0). To use this, first call .open(false) (which tells it not to auto configure), then before claiming an interface, call this method.

      The device must be open to use this method.

      Parameters

      Returns void