4.1.9. BeagleBadge Getting Started

4.1.9.1. Overview

The BeagleBadge is a compact development platform from BeagleBoard powered by the TI AM62L SoC. Designed for portable and low-power applications, it features a built-in CC33xx chip supporting WI-FI and Bluetooth applications, multiple low power modes, and an integrated fuel gauge for battery power monitoring. The board provides a rich interface including an e-paper connector, DSI connector, Grove expansion, seven-segment displays, and an RGB LED. Fully supported in TI sources, the BeagleBadge offers flexible boot options (OSPI, UART, SD, USB-DFU). It supports Zephyr or Linux (with Armbian or Arago distributions), making it an ideal open source solution for modern IoT and HMI projects.

4.1.9.2. Boot Flow

BeagleBadge has a TI AM62L SoC, refer to AM62Lx Boot Flow for more details on AM62L boot flow.

4.1.9.3. Applications

  • Deep Sleep Low Power mode as low as 350mW power draw

  • RTC only mode with 3-5mW power draw

  • E-Paper display support with tinyDRM

  • Battery-powered with fuel gauge monitoring

4.1.9.4. Low level sources

Component

Branch

Source File

U-Boot

ti-u-boot-2025.01

configs/am62lx_beaglebadge_defconfig

Linux Kernel

ti-linux-6.12.y

arch/arm64/boot/dts/ti/k3-am62l3-beaglebadge.dts

4.1.9.5. Supported Distributions

Component

Branch

Armbian

2025.12-beaglebadge

Arago

Scarthgap

4.1.9.6. Building for BeagleBadge

$ git clone https://git.ti.com/git/arago-project/oe-layersetup.git tisdk
$ cd tisdk
$ ./oe-layertool-setup.sh -f configs/arago-scarthgap-config.txt
$ cd build
$ . conf/setenv
$ export MACHINE=beaglebadge-ti
$ ARAGO_SYSVINIT=1 bitbake -k tisdk-tiny-image

For more information on building Arago for BeagleBadge, go here.

Note

Yocto: Due to the 256MB size of LPDDR on BeagleBadge, there may be limited free memory (about 17-20MB) for developing applications with the default, TI-provided Arago distribution image. Switching to sysVinit for init system instead of systemd can help reduce the memory footprint further. Please go here for a comparison of both init systems.

To build Armbian for BeagleBadge, refer to Debian SDK user manual found here.

4.1.9.7. Booting BeagleBadge

BeagleBadge supports four boot modes with the following configuration:

Button Select Pressed

Primary boot mode

Backup boot mode

Yes

SD boot

USB-DFU boot

No

OSPI boot

UART boot

In the following instructions, assume /dev/ttyUSB0 is the serial port enumerated on host machine from BeagleBadge USB C connection.

4.1.9.7.1. SD boot

  1. Flash SD card with Debian or Arago image

  2. Insert Micro SD card

  3. Press & hold Select until step 5

  4. Connect USB C cable

  5. Connect to /dev/ttyUSB0 on host machine

4.1.9.7.2. OSPI boot

  1. Boot via SD boot and stop at u-boot prompt

  2. Flash OSPI

    => sf probe
    SF: Detected is25wx256 with page size 256 Bytes, erase size 4 KiB, total 32 MiB
    => fatload mmc 1 ${loadaddr} tiboot3.bin
    221296 bytes read in 11 ms (19.2 MiB/s)
    => sf update ${loadaddr} 0 ${filesize}
    device 0 offset 0x0, size 0x36070
    SF: 221296 bytes @ 0x0 Written: OK
    => fatload mmc 1 ${loadaddr} tispl.bin
    1464080 bytes read in 62 ms (22.5 MiB/s)
    => sf update ${loadaddr} 0x80000 ${filesize}
    device 0 offset 0x80000, size 0x165710
    SF: 1464080 bytes @ 0x80000 Written: OK
    => fatload mmc 1 ${loadaddr} u-boot.img
    1314747 bytes read in 57 ms (22 MiB/s)
    => sf update ${loadaddr} 0x280000 ${filesize}
    device 0 offset 0x280000, size 0x140fbb
    SF: 1314747 bytes @ 0x280000 Written: OK
    
  3. Cold reset the board by disconnecting and reconnecting USB C cable.

  4. Reconnect to /dev/ttyUSB0 on host machine

4.1.9.7.3. UART boot

  1. Connect USB C cable

  2. Connect to /dev/ttyUSB0 on host machine

  3. Run the following instructions on host machine:

    $ sb --xmodem tiboot3.bin > /dev/ttyUSB0 < /dev/ttyUSB0
    $ sb --xmodem tispl.bin > /dev/ttyUSB0 < /dev/ttyUSB0
    $ sb --ymodem u-boot.img > /dev/ttyUSB0 < /dev/ttyUSB0
    

4.1.9.7.4. USB-DFU boot

  1. Press & hold Select until step 4

  2. Connect USB C cable

  3. Connect to /dev/ttyUSB0 on host machine

  4. Send boot loader binaries from host MACHINE

    $ sudo -E -S dfu-util -R -a bootloader -D  tiboot3.bin
    $ sudo -E -S dfu-util -R -a bootloader -D  tispl.bin
    $ sudo -E -S dfu-util -R -a u-boot.img -D u-boot.img
    

Any of the above boot methods can be used to boot to u-boot prompt, from here, loading the rootfs is generic and can be loaded from SD card, OSPI flash, or USB DFU as is discussed in other sections of this documentation.