On Mon, Jun 07, 2021 at 01:44:03PM -0700, David Frey wrote: > On Mon, Jun 7, 2021 at 11:02 AM David Frey <dpfrey@xxxxxxxxx> wrote: > > > > I made a bit of progress. I found that CP210xManufacturing.dll was > > bundled with Simplicity Studio and in the same folder as the DLL was > > inspect_usbxpress.exe. It looks like that tool is able to report the > > firmware version of the device. In the output below, the first run is > > against the device that I am able to program successfully on any > > kernel and that shows firmware 1.0.6. The second run is against a > > device that I can't program and it shows firmware version 1.0.4. I > > recall reading some information that 1.0.6 is A02 and that 1.0.4 is > > A01, but I think there might have been another firmware revision > > that's also A01 (maybe 1.0.2?). I can't find the source of this > > information anymore. I'm going to try to figure out how to use > > wireshark to capture USB traffic now. The firmware revisions were listed here: https://www.silabs.com/community/interface/knowledge-base.entry.html/2020/03/31/how_to_determinecp2102nrevisiona01vsa02-DCJI Apparently both 1.0.2 and 1.0.4 is A01, while 1.0.8 is A2. Not sure what to make of 1.0.6, but at least it works. > > C:\SiliconLabs\SimplicityStudio\v5\developer\adapter_packs\inspect_usbxpress>.\inspect_usbxpress.exe > > -slist > > serial_no = > > deviceCount = 1 > > device (0) { > > SoftIndex = 0 > > adapterLabel = CP2102N USB to UART Bridge Controller (ID:0) > > SerialNo = 1017bfe99d98e8118ea47540c3e5cfbd > > Vid = 0 > > Pid = 0 > > PartNumber = 32 > > BoardID = > > BoardCount = 0 > > FirmwareVersion = 1.0.6 > > Name = cp2102N version 1.0.6 > > Type = CP210x > > Family = USBXpress > > Locked = 1 > > } > > > > C:\SiliconLabs\SimplicityStudio\v5\developer\adapter_packs\inspect_usbxpress>.\inspect_usbxpress.exe > > -slist > > serial_no = > > deviceCount = 1 > > device (0) { > > SoftIndex = 0 > > adapterLabel = CP2102N USB to UART Bridge Controller (ID:0) > > SerialNo = f06e721e74e1ea11bd9ddc2d9a583cc7 > > Vid = 0 > > Pid = 0 > > PartNumber = 32 > > BoardID = > > BoardCount = 0 > > FirmwareVersion = 1.0.4 > > Name = cp2102N version 1.0.4 > > Type = CP210x > > Family = USBXpress > > Locked = 1 > > } > > I configured wireshark on Windows to capture the USB traffic and I ran > the inspect_usbxpress.exe. I believe the request/response where the > firmware version is provided is in packets 38/39 in the attached > trace. Perhaps the mailing list will strip the trace, so I will > describe it a bit. > > Setup packet: > bmRequestType: 0xC0 (device-to-host, vendor, device recipient) > bRequest: 255 > wValue: 0x0010 > wIndex: 0 > wLength: 3 > > Response Data: {0x01, 0x00, 0x04} > > When I captured the trace for the other device, the response data was > {0x01, 0x00, 0x06} indicating firmware version 1.0.6. > > Let me know if there is any other information I can provide. Excellent, nice job! That's the missing piece we needed. I'll cook up a patch. Johan