I'm using gpio pins 32(TX) and 33(RX) and want to establish serial communications with a peripheral board. From what I've read so far the above pins should have a secondary function for serial communications. I've added

to the end of /boot/config.txt file in the hopes that everything will work fine. I've conducted some tests and found that by adding this line all that happened when I tried using /dev/ttyS0 that appeared as a result of it was that I was getting garbage on UART0 (/dev/ttyAMA0) gpio pins 14 and 15. Then I added

to 32 and 33 instead of 14 and 15 in the hopes to get UART 1 working this way. I compiled it and moved to /boot/overlays/. Then I added it to /boot/config.txt . I am now able to communicate with UART 1 but unfortunately all I'm getting on the serial port is garbage. Is this the right to go about it at all ?

Also just to get some confusion out of the way when I research the internetz about it:

If I understand correctly UART 1 on pins 32, 33 is called PL011
The native (default) UART 0 on 14. 15 is called mini-UART

to 32 and 33 instead of 14 and 15 in the hopes to get UART 1 working this way. I compiled it and moved to /boot/overlays/. Then I added it to /boot/config.txt . I am now able to communicate with UART 1 but unfortunately all I'm getting on the serial port is garbage. Is this the right to go about it at all ?

Also just to get some confusion out of the way when I research the internetz about it:

If I understand correctly UART 1 on pins 32, 33 is called PL011
The native (default) UART 0 on 14. 15 is called mini-UART

is this right ?

Just to double check - you are using the correct (and matching) voltages on your source and destination? The Pi UART is 3v3 IIRC- make sure whatever is on the other end is also 3v3 or you are using a converter (MAX232 rings a bell). Getting the voltages wrong does result in garbled messages.

Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
"My grief counseller just died, luckily, he was so good, I didn't care."

The UART1 depends on the system clock which can be changed by the "ondemand" governor. So the only way I found to get UART1 working reliably is to disable the governor. Here is my config, also with some explanations: