Well, I'm sure there is more than one icom owner reading this thread... waiting... can he do it? Save me $200 on a rotary encoder???
Ha, success! I'll admit to coding micros for 42yrs but all this USB stuff is new to me. So this is a yuuuge accomplishment for me. Wireshark and Tdd.exe were key, so thank you.
I don't know what I am going to do yet with the code. My vision is an STM32F767 with touch screen and rotary encoder. The touch screen is for external buttons that activate the prerecorded CW and voice files on the radio. Used with the RS-BA1 software on a PC the button combinations are endless but the real need is the encoder as the RS-BA1 software is tough to tune without it, unless you find the key combinations which I found yesterday, finally.
Anyway, I have the RS-BA1 recognizing my HID device and responding to my reports to move the tuning dial. Now I have to code up the encoder and buttons which is easy considering all these structures that had to be coded for USB enumeration.
Now I have to figure out if: 1) I make a product; 2) publish in QST or QEX; 3) Just say heck with it and keep it for myself. Not to sound like a jerk it's just that I've found some of the people on the icom forums to be really against hacks, mods, etc. I point to all the flack I took by mentioning that I made a slightly heavier knob for my radio. Then the poor guy that made the heatsink clips for the ADCs, you would have thought he painted over the Mona Lisa with a roller! That's the reason I haven't mentioned this on that forum.
For a low cost encoder, I can pick up an STM32f4 disco board for like $15 plus a high quality encoder for about 25 and for less than $50, have pretty much all the important functionality of the RC28 which is over $225 in the states (unless you buy from Japan off ebay).
Anyway, thanks for the help. I'll post as I move along and build the encoder enclosure and touch screen. You might remember I have a complete CNC shop in my basement so I want to make sure the encoder is heavy, solid, and smooth turning.
Jerry