Built-In Test (BIT) SDK¶
Overview¶
The Built-In Test (BIT) SDK is a comprehensive testing solution for Linux embedded systems, similar in architecture to GStreamer's plugin-based framework. BIT provides automated hardware validation, continuous health monitoring, and manufacturing test capabilities.
Architecture¶
BIT follows a dynamic plugin architecture inspired by GStreamer:
- Plugin-Based Tests: Each test is a shared library (
.sofile) loaded at runtime - Inspection Tool:
bit-inspectworks likegst-inspectto discover and examine available tests - Dynamic Discovery: Tests are automatically discovered from the plugin directory
- Extensible: Add new tests by dropping plugins in the standard location
This design allows you to: - Deploy only the tests relevant to your hardware - Add custom tests without recompiling the framework - Inspect test capabilities and configuration before running - Update individual tests independently
Components¶
- bit-manager: Main test orchestrator that loads test plugins, schedules execution, manages logging, and publishes results
- bit-learn: Interactive configuration generator that detects your hardware and creates TOML config files with sensible defaults
- bit-inspect: Test inspection tool that lists available tests and displays detailed information about each test's configuration and capabilities (similar to GStreamer's
gst-inspecttool) - bit-monitor-cli: Command-line monitor that subscribes to test results over Zenoh and displays real-time pass/fail status
- bit-monitor-gui: Qt6-based graphical monitor with color-coded status displays for PBIT, CBIT, and FBIT test results
Test Types¶
PBIT (Power-On Built-In Test)
Hardware validation tests run once at system startup to verify components are present and functional.
CBIT (Continuous Built-In Test)
Ongoing system health monitoring at configurable intervals to detect degradation over time.
FBIT (Factory Built-In Test)
Manufacturing and production validation tests for quality assurance.
Key Features¶
- Zero-Configuration Start:
bit-learnauto-detects hardware and generates configs - Hardware Discovery: Auto-detects CPUs, disks, network interfaces, USB/PCI devices, sensors
- Systemd Integration: Runs as a native systemd service with journal logging
- Real-Time Monitoring: Subscribe to test results via Zenoh messaging
- Extensible: Write custom tests for your specific hardware needs
Quick Start¶
Install the Debian package:
# Install the package
sudo dpkg -i bit-manager_*.deb
# Generate configuration for your system
sudo bit-learn
# Enable and start the service
sudo systemctl enable --now bit_manager
View results:
# Check service status
sudo systemctl status bit_manager
# Follow logs in real-time
sudo journalctl -u bit_manager -f
Documentation¶
- Installation & Setup: Install via .deb, configure, and run tests
- Configuration Reference: Customize test settings
- User Guide: Learn all execution modes and tools
- Test Reference: Detailed documentation for each test
- Development: Create custom tests for your hardware
System Requirements¶
- Linux kernel 4.4 or later
- systemd (recommended for service integration)
- Hardware permissions for certain tests (CAN, GPIO, serial ports require root or capabilities)
License¶
Copyright © 2025 Astute Systems PTY LTD. See LICENSE file for details.