I've tried to use this library. At first it didn't recognize my device, then after some debugging I noticed that my device has a product ID, 5800 (0x16A8) that is different from the one expected by the library, 5806 (0x16AE).
Changing this value on the constant CC2531_USB_DESCRIPTOR got me passed the initial error, but it then fails to initialize the self.ident variable with usb.core.USBError: [Errno 32] Pipe error.
Maybe the values for CC253xEMK.DIR_IN and CC253xEMK.GET_IDENT should also be changed, but I don't know to which values.
Here is a print of the value returned by usb.core.find()
USB device: DEVICE ID 0451:16a8 on Bus 002 Address 001 =================
bLength : 0x12 (18 bytes)
bDescriptorType : 0x1 Device
bcdUSB : 0x200 USB 2.0
bDeviceClass : 0x2 Communications Device
bDeviceSubClass : 0x0
bDeviceProtocol : 0x0
bMaxPacketSize0 : 0x20 (32 bytes)
idVendor : 0x0451
idProduct : 0x16a8
bcdDevice : 0x9 Device 0.09
iManufacturer : 0x1 Texas Instruments
iProduct : 0x2 TI CC2531 USB CDC
iSerialNumber : 0x3 __0X00124B0009EA72A6
bNumConfigurations : 0x1
CONFIGURATION 1: 50 mA ===================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x2 Configuration
wTotalLength : 0x43 (67 bytes)
bNumInterfaces : 0x2
bConfigurationValue : 0x1
iConfiguration : 0x0
bmAttributes : 0x80 Bus Powered
bMaxPower : 0x19 (50 mA)
INTERFACE 0: CDC Communication =========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x0
bAlternateSetting : 0x0
bNumEndpoints : 0x1
bInterfaceClass : 0x2 CDC Communication
bInterfaceSubClass : 0x2
bInterfaceProtocol : 0x1
iInterface : 0x0
ENDPOINT 0x82: Interrupt IN ==========================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x82 IN
bmAttributes : 0x3 Interrupt
wMaxPacketSize : 0x40 (64 bytes)
bInterval : 0x40
INTERFACE 1: CDC Data ==================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x1
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0xa CDC Data
bInterfaceSubClass : 0x0
bInterfaceProtocol : 0x0
iInterface : 0x0
ENDPOINT 0x84: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x84 IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x40 (64 bytes)
bInterval : 0x0
ENDPOINT 0x4: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x4 OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x40 (64 bytes)
bInterval : 0x0
Is it possible to get the correct values for CC253xEMK.DIR_IN and CC253xEMK.GET_IDENT from this print?
I've tried to use this library. At first it didn't recognize my device, then after some debugging I noticed that my device has a product ID, 5800 (
0x16A8) that is different from the one expected by the library, 5806 (0x16AE).Changing this value on the constant
CC2531_USB_DESCRIPTORgot me passed the initial error, but it then fails to initialize theself.identvariable withusb.core.USBError: [Errno 32] Pipe error.Maybe the values for
CC253xEMK.DIR_INandCC253xEMK.GET_IDENTshould also be changed, but I don't know to which values.Here is a print of the value returned by
usb.core.find()Is it possible to get the correct values for
CC253xEMK.DIR_INandCC253xEMK.GET_IDENTfrom this print?