printf functions in API mode for S3b 900HP giving trash

I am utilizing the printf() function to debug my application software deployed to a Freescale programmable S3B 900HP, and lately it has been spitting out garbage when observing the terminal. (have tried RealTerm and XCTU)

My PC is talking to both systems via separate COM ports.

S3B Monitor = XBIB USB, COM16
S3B Transmitter = Grove USB, programmed w XBIB, COM21

This is what is shown on the Transmitter serial port after xbee_disc_discover_nodes() is executed from the code:


And the very standard sys_app_banner():

…%)ÕA­·²=¯V‚Nm…€“²·¡S[¸.U¨Ò…uŠÑɲ±î’‚>&¦ªÂÁ5a`­˜˜+$¦ ¶ÁA …uòÕå³
µË¤‚Âá**AÝ@†«;9îVëçAu ˜¼……@åUÑí¯º


It never even registers/is observed on the Monitor side. Usually it comes out just fine. The trash thing is a recent development. I have tried formatting in ASCII, Ansi, Hex(space), Hex+ASCII, etc. So really this is happening at the Transmitter and not so much the Monitor.

I am beginning to wonder if this is a result of how the Ember and Freescale serial ports are configured locally, considering the interactions between the two when using the programmable variant in API mode. I can’t imagine it being anything else considering the error occurs directly at calls to the UART device level code.

An update to this issue.

Since baud rate is clock derived, I am assuming that me clocking the processor down to 16 MHz (to reduce power) had been what the issue was, because all of my serial terminal output looks great now. My baud rate was originally set to 115,200.