The CCP API for the Call Control Profile works on top of the
TBS API, and will eventually replace parts of the TBS API.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
A broadcast tests with various BASEs that use a vendor
specific (VS) codec. This tests that we support
non-LC3 codecs on both broadcast sources and sinks
in various configurations.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Split the default broadcast source test so that the reconfigure and
metadata update is not done in the generic test. This makes
the test simpler and easier to modify.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
BSIM tests that enabled CONFIG_BT_CTLR_TEST=y now require
-RealEncryption to pass the Controller's in-system unit test
of ECB module.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Due to adding subgroup count and streams per subgroup
arguments to the broadcast_source test, fix the sink
test that was not ported due to being merged for change
in a different PR.
Relates to commit 01e8d0e3e0 ("tests: Bluetooth: BAP:
Add subgroup and stream args to broadcast_source").
Fixes commit 303d0b786f ("tests: Bluetooth: BAP: Add
test to test invalid bcode").
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Add 4 new tests for BAP broadcast:
1) One subgroup with one stream per subgroup
2) One subgroup with two streams per subgroup
3) Two subgroups with one stream per subgroup
4) Two subgroup with two streams per subgroup
To support these, the number of broadcast streams and data paths
was updated to be up to 4.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Add subgroup count and streams per subgroup arguments to the
broadcast_source test. This will allow us to run multiple
test setups using the same build and test case.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Fixes build failure, correct the variable is using for
k_sem_take in function test_sink_encrypted_incorrect_code
Fixes#83388
Signed-off-by: Cong Nguyen Huu <cong.nguyenhuu@nxp.com>
Check that the GATT settings added when bonding to a peer and
subscribing to a CCC are correctly deleted when calling `bt_unpair`.
Testing hooks have been added in the Bluetooth settings abstraction
layer to know which key are being added/deleted.
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
Expand test_sink_encrypted_incorrect_code to retry the sync with
the correct broadcast code after failing the initial sync
with the incorrect broadcast code.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Calling `net_buf_reserve` removed any previous reservation, which
includes the reservation by hci_ipc to hold the H4 type byte. This
resulted in a out-of-bounds net_buf_push in hci_ipc.
This commit also enables asserts in hci_ipc in the audio bsim test,
which reveal the out-of-bounds write.
Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
Since now Mbed TLS automatically selects ENTROPY_GENERATOR (or the
test generator, depending on the platform) we can remove this dependency
from all BT related tests and samples.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Test covering multiple single link central devices
connecting to single multilink peripheral device.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Test covering single multilink central device connecting to
multiple single link peripheral devices.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Update central multilink sample to use continuous scanning
to speed up connection setup.
Update peripheral identity sample to be configurable for
bsim testing as multiple devices with configurable count
of supported connections.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Several tests were using K_FOREVER when allocating the
buffer for TX in the system workqueue, which is illegal behavior.
The solution chosen was to create a TX thread to handle TX,
similar to the solution used in the audio shell and some
sample applications.
This way we can continue to use K_FOREVER when allocting buffers
and it will always be done in a round-robin fashion while
TXing as much as possible, by always enqueuing all the buffers
with mock data.
Since this works for all streams (both broadcast and unicast),
it was obvious to use the same implementation for all tests,
and thus cleaning up the tests a bit and more them more similar.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Some bluetooth host tests can be run on nrf5340bsim/nrf5340/cpunet.
This commit enables building and running these tests.
Signed-off-by: Artur Dobrynin <artur.dobrynin@nordicsemi.no>
Currently different test cases within the same folder are using largely the
same config files with only subtle variations. It is better instead to have
a base config file with general configuration, aided by overlay files for
specific cases.
Signed-off-by: Artur Dobrynin <artur.dobrynin@nordicsemi.no>
Bluetooth host bsim tests are compiled with shell scripts, but it is
possible to use twister, which supports compilation (but not running
at the moment). Compiling with twister requires fewer shell scripts,
provides cleaner interface and more flexible configuration.
Signed-off-by: Artur Dobrynin <artur.dobrynin@nordicsemi.no>
These callbacks are trigger for changes that affect the entire
broadcast sink, such as the BIG synced and terminated events.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
These callbacks are trigger for changes that affect the entire
broadcast source, such as the BIG started and terminated events.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
These callbacks are trigger for changes that affect the entire
broadcast source, such as the BIG started and terminated events.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
This reverts commit 18119e8f6e.
Audio tests are enabled back, but change to random number
seed is retained for the multiple identity test.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
Remove a duplicated advertising set in the CAP acceptor babblesim
test. The advertising set is configured in test_start_adv.
The BSIM test for the CAP acceptor used legacy instead
of extended advertising.
This also adds the required advertising data and validation
on the CAP initiator and CAP commander.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
So when building with twister we get the same executable name
as with compile.sh
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This test was starting to rot: BOARD should have been replaced
with BOARD_TS. Let's also remove a few duplicate checks
and definitions.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Default the Minimum encryption key size to 16.
Key with reduced size is easier to brut force.
Disable LE legacy pairing by default since it's not secure.
These defaults should suite majority of newly developed applications.
It's better to use sensible more secure defaults,
so applications that really need less secure option consciously change it,
not the other way around.
This may help to prevent downgrade attacks.
Signed-off-by: Sergey Korotkov <sergey.korotkov@nordicsemi.no>
Deprecate BT_CTLR, and add a new HAS_BT_CTLR as a virtual option which
specific users (like BT_LL_SW_SPLIT) select. This also means that we can
remove all places that were forcefully enabling the BT_CTLR option, and
instead we now depend on devicetree to get some local LL HCI driver
enabled which in turn also enables the HAS_BT_CTLR option.
Signed-off-by: Johan Hedberg <johan.hedberg@silabs.com>
Removed implying of NVS by the NET_L2_OPENTHREAD, and from now a
platform can choose between ZMS and NVS as a settings backend.
NET_L2_OPENTHREAD still requires NVS or ZMS backend so the config
depends on one of those.
Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
This adds a test that checks that the Subnet Bridge behaves correctly
when one or more of the involved subnets are undergoing the Key Refresh
Procedure.
Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
This introduces a global variable controlling the number of remote nodes
used in a given test case. This allows removal of the `TEST_TYPE_...`
enums and further tests in the future that can use different remote node
counts.
This also cleans up the test source by extracting common tester
initialization to separate functions, avoiding repetition.
Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
This commit comments out some test AC cases that are failing in bsim.
These will be investigated in PR #82199.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
This commit fixes
tests/bsim/bluetooth/ll/multiple_id/tests_scripts/multiple.sh.
The reason is that this test seems to depend on random number
sequence in order to have the proper scheduling.
It also fixes some AC tests by commenting out failing test
cases. The reason of the failure is still unknown and needs
to be investigated in future work.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Increase the number of key slots in the PSA Crypto core
for some tests using more keys than the default (16).
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Since the TinyCrypt library is being deprecated in Zephyr, this
commit set TinyCrypt usage in BT mesh as deprecated and it sets
Mbed TLS PSA Crypto API as the default option (when TF-M is not
available).
Tests are also updated in this commit.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
This commit sets PSA Crypto API as the default library to perform
ECC-DH in HCI, replacing TinyCrypt (which is being deprecated).
Therefore the symbol BT_TINYCRYPT_ECC is renamed as BT_SEND_ECC_EMULATION.
References in samples/tests are also fixed.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
CONFIG_BT_USE_PSA_API was used in BT crypto/host modules to select
PSA crypto API over TinyCrypt (which was the default until now).
Since TinyCrypt is being deprecated and PSA crypto API is the new
standard library for crypto operations, CONFIG_BT_USE_PSA_API is
no more needed.
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Because the number of ACL RX buffers must be at least the number of
maximum connections plus one, increasing `CONFIG_BT_MAX_CONN` could
inadvertently lead to a build failure if the number of ACL RX buffers is
not also increased. This dependency may not be obvious to users.
To address this issue, this commit deprecates the
`CONFIG_BT_BUF_RX_COUNT` Kconfig symbol and computes the value in
`buf.h` using the new `BT_BUF_RX_COUNT` define. Note that the default
value and the minimum range value have been changed to 0 to "disable"
the option.
Additionally, to allow users to increase the number of ACL RX buffers,
this commit introduces the new `CONFIG_BT_BUF_RX_COUNT_EXTRA` Kconfig
symbol. The value of this symbol will be added to the computed value of
`BT_BUF_RX_COUNT`.
The configurations of tests and samples have been updated to reflect
these changes.
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
Enable some high reliability CAP tests by increasing ISO Tx
buffer counts in the Controller to sufficiently generate
number of complete when multiple SDUs are transmitted in
single ISO interval with use of pre-transmissions.
Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>