Hello! I'm working on a project that requires linking an ADRV9361-Z7035 to a microcomputer using UART via the user I/O pins on the ADRV1CRR-BOB. I can't use the USB-UART for this, unfortunately, due to constraints on the computer I am connecting to, it has to be just two wires, so I am trying to set up a UART on the pins I can solder to.
The short version of my question is: How do I enable a UART on the user I/O pins of the ADRV1CRR-BOB, and how do I figure out where on the board it is?
After some research, my impression was that I simply had to enable the additional serial device in the device tree file and then locate the relevant pins on the board. In the device tree file I found two serial devices, the enabled USB-UART and a disabled serial:
serial@e0000000 {
compatible = "xlnx,xuartps\0cdns,uart-r1p8";
status = "disabled";
clocks = <0x02 0x17 0x02 0x28>;
clock-names = "uart_clk\0pclk";
reg = <0xe0000000 0x1000>;
interrupts = <0x00 0x1b 0x04>;
};
serial@e0001000 {
compatible = "xlnx,xuartps\0cdns,uart-r1p8";
status = "okay";
clocks = <0x02 0x18 0x02 0x29>;
clock-names = "uart_clk\0pclk";
reg = <0xe0001000 0x1000>;
interrupts = <0x00 0x32 0x04>;
};
I changed the satus of serial@e0000000 to "okay", converted it back into a .dtb, and the new serial device shows up as TTYPS1 (TTYPS0 is the USB-UART). I then had to figure out what pins it was on, so I set up a Python script to repeatedly transmit a test message over TTYPS1. The script successfully recognizes the port as valid.
In my research I was led to believe that the UART would probably be located on two of the twelve (ten accessible, two are taken up by the USB UART) PS_MIO pins (10, 11, 12, 13, 14, 15, 46, 47, 0, and 51). I hooked the board up to an oscilliscope/logic analyzer and searched those pins for the repeated signal, but I did not find anything. I tried several configuration changes, but I was unable to get it working.
I may have made a bad assumption, it is possible that the pins lie somewhere else. Checking all 150+ is something I'm going to try, but I thought to first try looking it up instead of guessing. After some research, I have been led to believe that the reg section is correlated to a pin or group of pins in some way. However, I have been unable to progress further than that, I have no idea how to trace this number back to specific pins, something I can understand.
I currently believe the issue is that I don't know which pins are being assigned here, but it could also be trying to use a physical port, or getting stuck earlier. I could be barking up the wrong tree entirely for all I know. For all I know, I might be using the oscilliscope incorrectly, or maybe it doesn't transmit if nothing is soldered there. I don't know how it would detect that, but I can't rule much out at this point.
Any help is very much appreciated.