[Weekly Updates] Update Beagle-Tester for mainline testing.

Hi everyone!
I’m excited to be working on the project “Update Beagle-Tester for mainline testing” as part of Google Summer of Code 2025, under the mentorship of @RobertCNelson , @lorforlinux, @jkridner, @Anuj_Deshpande , @Vedant_Paranjape , @KumarAbhishek

This thread will serve as a weekly log of my progress throughout the summer. Each post will include:

:white_check_mark: Accomplishments
:hammer_and_wrench: Resolutions to blockers
:warning: Ongoing blockers
:date: Plans for the week

I’ll be sharing detailed updates, ideas, and learnings as I go. Your suggestions, thoughts, and feedback are more than welcome!

Looking forward to a meaningful and productive summer with the BeagleBoard community! :dog::computer:

1 Like

Week 1 Update:

:white_check_mark: Accomplishments

  • Uploaded the project introduction video: Here
  • Ported the DTS file for the OLED-C Click on PocketBeagle. Code
  • Configured the DTS to load on boot via boot/firmware/extlinux/extlinux.conf
  • Started work on automatic detection of Click ID and corresponding test selection.

:warning: Ongoing Blockers

  • Facing issues with automatic detection of Click boards without EEPROM/ClickID. Boards with EEPROM can be detected using manifest files Those without ClickID need to be manually selected.

:date: Plans for the Week

  • Complete the implementation of ClickID-based detection to automate driver loading and test selection.

Week 2-3 Update
:white_check_mark: Accomplishments

  • Defined barcode formats: MKB001 for auto-detection, MKBXXXXXXX for specific Clicks
  • Wrote clickid_detect.cpp to scan I2C and read ClickID EEPROM
  • Created simulate_clickid.sh using i2c-stub for EEPROM emulation
  • Modified beagle-tester.c to support auto-detection and dispatch logic
  • Implemented dispatch table in click_dispatch.c for modular test execution
  • Added example test: rtc5click_test.c
  • Updated folder structure to separate src/, include/, click_tests/
  • Updated Makefile to support C and C++ builds
  • Verified workflow for auto and manual test execution
  • Ensured clean and scalable architecture for adding new Click board tests

:date: Plans for the Week

  • Planned logging, driver loading, regression tests, and HDMI validation as next steps
    Edit: Link to Git
1 Like

Week 4 Update

:white_check_mark: Accomplishments

  • Integrated a new HDMI validation test into the beagle-tester framework to verify HDMI signal via frame color detection.
  • Developed hdmi_test.cpp using OpenCV and V4L2 to capture frames from /dev/video0 and detect red, green, or blue activity.
  • Enabled manual invocation using beagle-tester HDMITEST and automatic execution during the standard board test flow (after USB and network tests).
  • Restricted test to HDMI-capable boards (e.g., BeagleBone Black, xM, X15), while automatically skipping it on boards like Blue or PocketBeagle.
  • Updated the build system and documentation, with proper Makefile integration and usage instructions for reproducibility and deployment.

:date: Plans for the Week
Plan to integrate Mongoose webserver next into the beagle-tester to publish test results.

Link to PR

1 Like