Skip to content

jainaneesh/bbb-embedded-router

Repository files navigation

Embedded Linux Router (BeagleBone Black)

Custom Yocto-based embedded Linux router designed for multi-interface networking, system-level debugging, and board bring-up.

🚀 Highlights

  • Board bring-up with custom Device Tree configuration
  • Linux networking (interfaces, bridging, routing)
  • CPSW / Ethernet path debugging
  • Custom Yocto image (bbb-router-image)
  • System-level configuration and validation

🧠 Why This Project

This project addresses the need for a reliable and reproducible development network setup using an embedded Linux router.

Built on the BeagleBone Black, it enables controlled communication between development machines while exposing and debugging networking behavior across hardware interfaces and the Linux stack.

⚙️ Architecture

flowchart LR

    subgraph EXT[External Systems]
        L[Developer Laptop]
        Y[Yocto Build Host]
        S[Server / Lab Host]
        SD[SD Card]
    end

    subgraph BBBSYS[BeagleBone Black - Embedded Router]
        direction TB
        DT[Linux Kernel + Device Tree]
        NET[Linux Networking Stack]
        CFG[systemd + Network Config]
        DBG[Debugging + Validation]
        DT --> NET --> CFG --> DBG
    end

    L -->|USB Ethernet| R[BBB Router]
    Y -->|Build Image| SD
    SD -->|Boot Media| R
    S <-->|RJ45 Ethernet| R
    R -->|Forwarding / Routing| S
Loading

🔎 System Flow

  • Yocto build host generates the BBB router image
  • Image is written to SD card and booted on BeagleBone Black
  • Kernel and Device Tree initialize hardware and interfaces
  • Linux networking stack handles USB and RJ45 data paths
  • systemd applies interface, bridge, and routing configuration
  • Validation is performed through logs, dmesg, and network tests

📸 Sample Output

🔹 Connectivity Test (Laptop → BBB)

Ping BBB

Laptop successfully reaching BBB router over configured network.


🔹 Routing Validation (Laptop → Server via BBB)

Ping Server

Traffic routed through BBB (USB ↔ RJ45 path validated).


🔹 Remote Access (SSH into Server)

SSH BBB

Remote shell access into server over configured interface.


🔹 IP Link (Links on BBB)

IP LINK

BBB all the interfaces are up.


🔹 Ethernet (Interface stats on BBB)

ETHERNET STATS

BBB ethernet interface stats.


🔹 Ethernet over USB (Interface stats on BBB)

ETHERNET OVER USB STATS

BBB ethernet over USB interface stats.


About

Yocto-based embedded Linux router on BeagleBone Black. Implements USB ↔ RJ45 data path with bridging and routing. Interfaces brought up, packet flow debugged, and connectivity validated via ping and SSH. Designed as a foundation for lab networking setups.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors