How to configure the xbee api mode in UART for 3.3v logic MCUs?

Hi I’m programming a pi pico to send a transmit request for a simple Hello World. The frame I am using is this:
7E 00 19 10 01 00 00 00 00 00 00 FF FF FF FE 00 00 48 65 6C 6C 6F 20 57 6F 72 6C 64 D7

Using serial.write() on the arduino uno I was able to easily send this frame to the coordinator but on the pico when I used uart_putc() or uart_putc_raw() it was unable to send.

I added the ACK request and then added a uart_getc() statement after my transmission while uart_is_readable() is true and it receives the same frame back. The only other way I have simulated the same thing is shorting tx and rx. This also happens when and switch the tx and rx wires on the xbee so it din and dout are internally connected.

Has anyone experienced this? Is there any specific configuration needed for 3.3v logic? I noticed there are pull up and down resistors is the default settings fine?

Any advice would be greatly apperated.

I ended up switching to SPI and I got it to work. No idea why UART failed.