Does Twister support running multi-device BabbleSim tests through the BSim harness? #114791
Unanswered
isimeonov14
asked this question in
Q&A
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
I am developing Bluetooth tests using BabbleSim with Zephyr, specifically with multiple simulated devices such as a BLE central and peripheral running on nrf5340bsim.
Currently, the applications can be built and executed using the scripts and helpers under:
tests/bsim/
For example, the Bluetooth tests use the BSim test harness, start multiple device executables, start bs_2G4_phy_v1, assign device indexes and a shared simulation ID, and determine the result through the bstests framework.
I would like to know whether this workflow is already integrated with Twister.
More specifically:
Can Twister build and run a complete multi-device BabbleSim scenario automatically?
Can a single Twister test definition describe multiple Zephyr applications, such as a central and a peripheral?
Does Twister automatically start and coordinate the BabbleSim PHY and all required device processes?
Is the existing bsim harness supported directly by Twister, or are the scripts under tests/bsim/ still the intended way to run these tests?
Can the Twister configuration specify the device indexes, simulation ID, number of devices, timeout, and individual test IDs?
Is there an existing test in the Zephyr repository that demonstrates the recommended integration?
If this is not currently supported, is integration between Twister and the BSim multi-device harness planned?
My objective is to run a production-like BLE scenario in CI where:
one nrf5340bsim application acts as a BLE peripheral;
another nrf5340bsim application acts as a BLE central;
both communicate through BabbleSim;
the test produces a normal Twister pass/fail result;
logs and optionally a packet capture are retained as test artifacts.
I would appreciate clarification on whether this is already implemented and, if so, which test harness, YAML configuration, or repository example should be used as the reference.
All reactions