I can confirm that the thr22 uses the USB port with a serial USB connector to use rs232 commands. I can also confirm that the MSC-400 works with the thr22. Although there are about 6 keys that are buggy. They are: up, down, left, right, ch +, ch -. I'll explain.
Up & down: within menus or guide when pressed it will just go up or down non stop at a fast rate and won't do it one line at a time. And it never stops.
Left and right: works mostly but on some system menu screens it does much the same as the up and down. But works well in the guide.
Missing or unknown serial commands: thumbs up, thumbs down, swap, clear, live tv. But I use exit as live tv and mostly works.
Ch + & -: works on changing channels. But when used in systems menus to go page up and down a screen at a time does not work like usual.
The solution: I had to use IR for the buggy/missing keys. So I'm now using both IR and rs232 for the thr22. On top of that I couldn't find thr22 codes in URC database for ID 3 & 4. So the IR buttons had to be learned from the remote.
Additionally just wanted to comment in using more than 6 rs232 on the MSC-400. You can use multiple devices on 1 rs232 port on the MSC-400. You can use a "y" splitter but it must be a 4 connector "y" splitter which is hard to find. It's easier if you make your own rs232 cables for your msc-400. The caveats are as follows: all devices on the single port need to use the same settings such as baud/parity/stop bits for all devices you will share with that port. Additionally, you cannot put two of the same device on each port such as directv receivers. They have to have different serial commands. Much like IR when you send a command to the device, it will ignore it if it doesn't recognize the command. I use my serial port 7 for my 4x4 hdmi monoprice switch. And port 8 is used for a 4x2 hdmi monoprice switch. They both have identical serial commands so they can't share a port with each other. I also have a thr22 on ports 7 & 8 shared with the hdmi switches. The thr22's both use identical commands as well so they can't share a port. But since the commands are different from the hdmi switch they can share a port since the baud settings are identical. When a command is sent on port 7 for the hdmi switch it is sent to both the switch and the thr22 but the thr22 ignores it since it isn't a valid command for it. However the switch accepts the same command received but accepts it as a recognized command.