def write(self, data, report_id=0):
        """
        Writes data to the HID device on its endpoint.

        Parameters:
            data: data to send on the HID endpoint
            report_id: the report ID to use.

        Returns:
            The number of bytes written including the report ID.
        """

        if not self._is_open:
            raise HIDException("HIDDevice not open")

        write_data = bytearray([report_id]) + bytearray(data)
        cdata = ffi.new("const unsigned char[]", bytes(write_data))
        num_written = hidapi.hid_write(self._device, cdata, len(write_data))
        if num_written < 0:
            raise HIDException("Failed to write to HID device: " + str(num_written))
        else:
            return num_written
def write ( self , data , report_id = 0 ) : if not self . _is_open : raise HIDException ( "HIDDevice not open" ) write_data = bytearray ( [ report_id ] ) + bytearray ( data ) cdata = ffi . new ( "const unsigned char[]" , bytes ( write_data ) ) num_written = hidapi . hid_write ( self . _device , cdata , len ( write_data ) ) if num_written < 0 : raise HIDException ( "Failed to write to HID device: " + str ( num_written ) ) else : return num_written
Writes data to the HID device on its endpoint.

        Parameters:
            data: data to send on the HID endpoint
            report_id: the report ID to use.

        Returns:
            The number of bytes written including the report ID.