USB-TMC isn’t all it’s cracked up to be

Why can’t anything be as easy as it looks?

I’ve spent the past two days trying to get my Tek TDS2024B to talk to a Linux box via a homebrew USB-TMC driver library. Based on the USB-TMC spec, I’m doing everything by the book — and in fact, I can get the scope to respond to a GET_CAPABILITIES control request. Problem is, as soon as I try and send a command over the Bulk endpoint, it times out.

Urgh. I’m going to spend a few minutes reading through some libusb sample code, then if I still can’t get it going I’ll try and finish reverse-engineering the nasty binary serial protocol the HM8130-3 signal generator uses.