Add bsim test for resuming push & pull mode transfer on the BLOB client
after BLOB server has been suspended during initial attempt.
Signed-off-by: Anders Storrø <anders.storro@nordicsemi.no>
This updates some of the defaults in the mesh shell's config to allow
various Mesh 1.1 models to be used in the shell.
EPA provisioning and DFU requires much larger multisegment messages,
therefore support for maximum sized message is enabled by default and
stack sizes are increased working values.
Additionally, log buffer is increased and thread sleep time is reduced
to avoid dropping of useful logs.
Signed-off-by: Omkar Kulkarni <omkar.kulkarni@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Adds conditional support for the BLOB and DFU models in the mesh shell.
Additionally creates a dummy BLOB stream for testing.
Co-authored-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Co-authored-by: Anders Storrø <anders.storro@nordicsemi.no>
Co-authored-by: Ludvig Samuelsen Jordet <ludvig.jordet@nordicsemi.no>
Co-authored-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
Co-authored-by: Mia Koen <mia.koen@nordicsemi.no>
Signed-off-by: Trond Einar Snekvik <Trond.Einar.Snekvik@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Implementation of the enhanced provisioning authentication (EPA)
that is based on SHA256 and HMAC security algorithms.
OOB authentication mandates EPA usage.
Co-authored-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Add ability to run bsim mesh for both ble mesh versions
v1.0.1 and v1.1
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
Signed-off-by: Pavel Vasilyev <pavel.vasilyev@nordicsemi.no>
Default config should have all bells and whistles enabled to minimize
number of overlays needed in autopts.
Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
When possible re-use the already allocated RX node for notifications.
Store (retain) RX node and Link element on RX if NTF could occur.
Pass link element to LLCP (ull_cp_rx()) together with RX node.
New RX node type RETAIN introduced to signal retention
When no RX node is available allocate one and hold off TX on procedures
until such time that a node is available for NTF.
In case waiting for NTF buffer avail is needed, allocate and store TX
node to use for TX once NTF becomes available.
CIS Established (incl. timeout handling) is now handled entirely as a
specific event driven by ull_conn_iso - ie removal of procedure check
of cis->established and cis->expire, as this is doubling mechanism
in the conn_iso context.
Unit test and helpers updated to handle new node type.
Function ull_cp_release_ntf() was used only in unit test, so moved to
helper context.
Updating release_ntf to handle the fact that with piggy-backing in test
context the node used for NTF can be from two different memory pools
Signed-off-by: Erik Brockhoff <erbr@oticon.com>
nrf51 has been discontinued. There is no reason to support
ble mesh tests for nrf51 DK platform. As alternative support
of nrf52840 has been added if there wasn't before.
Also, microbit lacks significant amount of RAM (about 800 bytes)
to build mesh test.
Signed-off-by: Aleksandr Khromykh <aleksandr.khromykh@nordicsemi.no>
This drops using the environmental part when referencing ZEPHYR_BASE
as the environment value does not have to be set and, in most cases,
is no longer set at all.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Move the volume controller test steps into smaller functions for more
reusability and easier to expand with invalid test steps.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Move the volume renderer test steps into smaller functions for more
reusability and easier to expand with invalid test steps.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The number of connections for the tx_buffer_alloc needs to be at least 3
For one of the tests it was set to default 1, which leads to unspecified
behaviour.
This is fixed by setting the maximum nr. of connections to 4
Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
Adds REQUIRED to samples and tests for finding the zephyr package
to align all samples and tests with the same call and parameters.
Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
Since there is no way for the client to read or get notified about
the state, we insert a delay between each operation to allow the
server to handle the alerts before getting a new alert request.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Prevent race condtions between the stack and the low-priority thread by
calculating the hash (and acting on it, e.g. for marking peers
change-aware, sending SC indications, etc) in the settings_load() context.
Fixes#54773
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
`ATT_PENDING_SENT` wasn't cleared when L2CAP reported an error when sending
the packet. This resulted in the channel being unusable for ever, since we
only clear that bit on a response (that will never be sent).
Found when setting `CONFIG_SYS_CLOCK_TICKS_PER_SEC=32768` in the
`notify_multiple` test. The kicker was the bug didn't manifest when EATT
wasn't enabled:
- we were queuing two unsubscribes back to back in the test
- on UATT we have to wait for a req-rsp pair before enqueuing a new one
- on UATT we only have one channel anyways
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
In ull_llcp* some functions used in unittesting did not have
the llcp_ prefix
Although this is not a big issue since they are only used when
testing the module this commit adds the prefix so that we
have a more consistent naming
Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
Update unittests for the following areas/controll procedures
- API
- collision handling
- invalid PDUs
- unsupported procedures
- buffer allocation
- TX queue
- Data Length Update
- PHY update
- Encryption
- Ping
- Version
- Channel map update
- Min. used channels
- Connection update
- SCA
- Terminate connection
- CTE request
- CIS create
- CIS terminate
Also moved the internal API tests from the ull_llcp* files
to the proper unittest C-file
Unused files are removed
Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>
This commit separates each test by layer level.
Obviously the tests will run the whole stack, but they should be separated
by which component/layer they intend on testing.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Add tests to check the following aspects of the Bluetooth privacy feature:
- On device privacy mode, scanner shall accept advertising packets from
peer with any address type. That, even if they have previously exchanged
IRK;
- After devices have exchanged IRK, they must correctly resolve RPA.
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
Add a test for the cryptographic function CCM.
The tests data are from the
[RFC3610](https://www.rfc-editor.org/rfc/rfc3610).
Signed-off-by: Théo Battrel <theo.battrel@nordicsemi.no>
Expand the CAP tests to also have a test case for CAP
acceptor and CAP initiator broadcast, which is heavily
inspired from the BAP broadcast tests.
The tests only tests that a broadcast source can be created
with the CAP API and that the metadata is correct.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Some tests may be unstable because of missing data from BTP frames.
Enabling Flow Control fixes the issue, but seems to work reliably
only along with UARTE.
Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
Updates EDTT to newest version and adds the new test cases
Update _controller_tests_inner.sh to support using packet inspection
and the new low-level device feature in EDTT
Build configs for the BSim test apps updated to support extended
advertising
Signed-off-by: Troels Nilsson <trnn@demant.com>
This adds two tests to ensure the resolvable
private address is rotated for the peripheral
and central after their respective timeout.
Signed-off-by: Alexandre Dauphinais <alexandre.dauphinais@nordicsemi.no>
Even if the tests are not run in parallel
do not reuse sim_ids as that overwrites the result data
preventing re-running in check mode, and inspecting
the test results.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Reproduce #54470.
- client connects
- client writes to CF & CCC
- client bonds
- server reboots
After this, we would expect to have the CCC and CF values be correctly
restored from settings but they are not.
Additionally add the same test with BT_PRIVACY=y, which shows that the
feature is broken with that config (fixed in a subsequent commit).
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
This test is designed to check the soundness of GATT caching across
reboots.
It will fail if the fixes for #54173 and #54172 are not present.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
Added a bsim_bt host test to test the handling of periodic adv
report data received across multiple packets
Signed-off-by: Pierce Lowe <pierce.lowe@nordicsemi.no>
Zero initialize has_param in BSIM test.
Also, specify all bt_has_register_param members in hap_ha sample.
Signed-off-by: Lars Knudsen <larsgk@gmail.com>
Instead of setting the stream_cnt based on the number
of streams configurer, we use the number of streams actually
added to the group, and then configure that amount.
This should ensure that we do not try to configure any
streams that we have not already added to the group.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Expands the unicast audio babblesim tests up until
the start procedure (which is not yet supported by the
babblesim). This increases the test coverage of the unicast
implemetations.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The unicast client will now actually create the CIG in the
test regardless of the `CONFIG_BT_CTLR_CENTRAL_ISO` value.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Due to recent refactoring following unittests are failing:
tests/bluetooth/df/*
tests/bluetooth/ctrl_user_ext
This commit fixes these by adding the include files containing the
missing type definitions
Signed-off-by: Andries Kruithof <andries.kruithof@nordicsemi.no>