PocketBeagle2 with Techlab cape USB-to-serial

I discovered BeagleBoard watching an Intro to U-boot video, in which the presenter demoed interacting with the U-Boot shell on a PocketBeagle using the USB-to-serial port on a TechLab cape.

Now, I’m attempting to access the U-Boot shell on a PocketBeagle2 connected to a TechLab Cape using it USB-to-serial. The device registers on my Debian desktop as /dev/ttyUSB0, and I can start a screen session. After doing so and pushing the reset button on the cape, I get the beginnings of a boot sequence, but it hangs at ‘Starting ATF on ARM64 core…’

U-Boot SPL 2025.10-00001-g4e0b6294a118 (Oct 14 2025 - 23:40:30 +0000)
SYSFW ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
Changed A53 CPU frequency to 1400000000Hz (T grade) in DT
SPL initial stack usage: 13432 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Starting ATF on ARM64 core...

I’m using the latest ‘workshop’ image I could find using the bb-imager utility.

alex@bb2:~$ cat /etc/dogtag 
BeagleBoard.org Debian Trixie IOT Image 2025-10-15

I have no problem booting and logging in over the USB-C connection with screen after the board boots (/dev/ttyACM0 on my machine), but would like to figure out the UART access from the cape.

At this point I know that I don’t know much more than I do, but am trying to review the k3-am62-pocketbeagle2-techlab-cape.dtso file thinking the issue might be somewhere with the TechLab cape device tree. I see entries for hardware used in the example code (seven segment displays, RGB LED, buttons, buzzer). I also see entries for what I understand to be SPI and I2C, but don’t see one for UART. I’m not sure that I’m looking in the right place, or how to add a UART entry if I am.

I certainly would appreciate any guidance on how to get this working.

thanks,

So, this was an issue with the original PocketBeagle, users wanted direct access to the serial port on the PocketBeagle header… For PocketBeagle 2, we moved the main debug uart to the side of the PocketBeagle 2 and you can access it thru the rpi 3 pin jst header..

As of last week, we finally figured out the last piece of U-Boot SPL 2025.10 debug, it’s now fully moved to the rpi 3 pin jst header.. So you can use the uart on the techlab as you wish as a normal usart and not stuck as a linux/debug/usart..

sudo apt update ; sudo apt-get dist-upgrade -y
sudo /opt/u-boot/bb-u-boot-pocketbeagle2/install.sh

Regards,

1 Like

Thank you, Robert.

Unfortunately, after the dist-upgrade and executing sudo /opt/u-boot/bb-u-boot-pocketbeagle2/install.sh, I now get no visible output from the screen session established on the microUSB connection. I can get the previous output from the stuck boot sequence back by reinstalling the binaries in bb-u-boot-pocketbeagle2-mainline.

I did end up getting the rpi 3 pin JST connector and I am able to successfully access the u-boot shell that way, though. Thanks.

No, that’s exactly what is expected… You can now use that uart for your own use case.