I'm trying to access the U-boot interface on a UniFi AP Pro so that I can attempt to roll it back to the OEM firmware for another project, as per these instructions I found on the AP Pro's Table of Hardware page.
I have an RS232-to-TTL adapter hooked up to the appropriate pins on the AP but the text is garbled up until the OpenWRT kernel boots. If I press a key to interrupt U-boot, I can tell it's going to the U-boot prompt and if I type slowly my text will transmit properly, however command output is still too garbled to read. I don't understand why it's garbled up until the kernel takes over. I am using 115200,8N1 and have also tried 38400 and 9600. Anyone have suggestions why it would do this?
I posted some pictures of the issue here
Any suggestions how to troubleshoot this would be appreciated. Or if anyone can point me in the direction of restoring the OEM firmware without going in through the serial port, I'll gladly try it. I already tried the "reset while powering on"+TFTP method but it doesn't work (same issue as the guy had on that first page I linked)
TFTP is the way to do this. TFTP will work if OpenWrt is installed. TFTP recovery starts in the bootloader without attempting to boot the installed OS at all.
Place an Ethernet switch in between the PoE adapter and the PC so the PC port stays up and configured while the router is booting. After the LED starts flashing there is a limited time (maybe 15 seconds) to do the TFTP put. If successful the traffic LEDs on the switch will blink a lot then the LED on the router will start to blink a different way. Leave the power on for several minutes to complete the flash.
I have no experience with the AP Pro, but I wonder if the serial port issue might be the same that is documented for the the AP AC (Pro) here: https://openwrt.org/toh/ubiquiti/unifiac#serial_console
Worth trying, maybe?
As for the recovery to OEM, I am a little surprised that console is necessary. The tftp recovery procedure is the same on the AP AC Pro, and in my experience it is reliable and simple as long as you observe the LED and use it to determine when to start the transfer. Whether OpenWrt is installed or not should not make any difference. The bootloader tftp recovery is so simple I've actually used it to do OpenWrt to OpenWrt recovery on the AP AC Pro, temporarily goting back to OEM and reinstalling OpenWrt. Much simpler than opening the glued box to solder a console header.
Of course, the AP Pro isn't exactly the same and there might be issues I don't understand. But tftp recovery of OEM firmware is a documented and supported feature from Ubiquity. It should work.
I finally figured it out! The serial port speed is 119200 not 115200. I kept trying other baud rates (9600, 38400, etc), but never to go above 115200. I kept thinking it was a speed mismatch but never thought to try higher rates.
I did try the "setenv" and "saveenv" commands from the AC Pro page but they didn't work on the AP Pro.
I tried the TFTP method a few times - the transfer is successful and after a few minutes the AP reboots but comes back up in OpenWRT. My issues sounds similar to what the guy described on this page.. So tonight I'll try his solution #3 - rewriting the jffs2 partition image