2.2 KiB
2.2 KiB
Demo Walkthrough: High-Speed Tracing
This demo traces a Timer.Counter signal at 100 Hz, tests execution control, and verifies
signal forcing. It works with either transport — choose the option that matches your setup.
1. Build and Launch the Test Environment
source env.sh
make -f Makefile.gcc
./Build/x86-linux/Test/Integration/IntegrationTests
The integration test starts a MARTe2 application with DebugService or WebDebugService
already configured and waits for client interaction.
2. Connect a Client
Option A — Web Browser (WebDebugService)
Open http://localhost:8090 in any browser. The UI appears instantly with the live
object tree already loaded.
Option B — Rust GUI (DebugService)
cd Tools/gui_client
cargo run --release
3. Explore the Tree
- In the Application Tree, expand
Root → App → Data → Timer. - Click Info (web UI) or ℹ Info (Rust GUI) on the
Timernode. - Verify the config panel shows
SleepTime: 10000(100 Hz cycle).
4. Activate Trace
- Locate the
Countersignal underTimer. - Click Trace (web UI) or 📈 Trace (Rust GUI).
- The real-time plot begins with a monotonically increasing counter.
- Confirm telemetry is flowing:
- Web UI:
{"type":"trace",…}events appear in the browser DevTools Network tab. - Rust GUI: The UDP Packets counter in the top bar increments rapidly.
- Web UI:
5. Test Execution Control
- Click Pause (⏸).
- Observe that the plot freezes and the counter holds steady.
- Click Step with count = 5.
- The counter advances exactly 5 units then stops.
- Click Resume (▶) to continue normal execution.
6. Test Signal Forcing
- Locate
Root.App.Data.DDB.Counter. - Click Force and enter
99999. - Observe the oscilloscope plot jump to and hold at
99999. - Click Unforce to release — the counter resumes its normal value.
7. Test a Breakpoint
- Click Break on
Root.App.Data.DDB.Counter. - Set operator
>and threshold500. - Wait for the counter to exceed 500 — the application pauses automatically.
- The status shows PAUSED at the GAM that triggered the break.
- Click Break OFF then Resume to continue.