So, I bought a Bus Pirate and have finally got around to giving it a go.
I've got in, configured everythign to match my other, actually functional UART adapters but I invariably get junk/garbled output.
No combination of hardware/software troubleshooting fixes anything.
Do I have to buy the newer model to get functional UART?


UART definitely works... A newer firmware may have an auto baud rate feature.
Remember that the connection to the bus pirate is a different speed than the UART mode settings. So make sure your connection to the bus pirate is 115200, and that all the settings for UART mode match your serial adapter settings.
Have you tried a loop back test by connecting Rx to tx on the bus pirate?
Oho, it seems to work there.
The problem is a little strange, actually.
I've tried it on two devices now had similar, but different failures.
The first router displays garbage for the first few seconds then eventually starts producing cleartext.
If I reset the device it will immediately switch back to garbage output and remain that way.
The second router is always garbage output with nil change.
Any idea what I could be doing wrong?
If you get garbage it's likely a baud rate mismatch. I believe there is a macro for an autobaud feature somewhere. It would be in the wiki docs.
The first router displays garbage for the first few seconds then eventually starts producing cleartext.
If I reset the device it will immediately switch back to garbage output and remain that way.
Routers run Linux under the hood most of the time. I've seen cases where u-boot and the actual OS have different baud rates so it seems normal to have garbage at one point, then clear text. If you try different baud rates, I'm sure you'll discover the baud rate for u-boot.
Also as Ian said, Tera Term baud rate is for BP to PC communication. In order to sniff the traffic, you have to set the baud rate via the menu while setting up the UART mode, the ? section in my diagram down below:
PC <--115200 bps--> Bus Pirate <-- ? bps--> Router