Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tests: nrf_auraconfig: Create BSIM tester #18898

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

alexsven
Copy link
Contributor

  • Use generic broadcast_sink sample from Zephyr as base
  • Add a struct to contain all values to compare
  • Store adv_name and broadcast_name
  • Parse BASEs and populate struct
  • Add shell interface for setting expected values
  • Create function for comparing dut with expected
  • Compare all values and print success or fail
  • Add BSIM related files
  • OCT-3162

tests: nrf_auraconfig: Integrate with BSIM

  • Create a tester main for the nrf_auraconfig sample
  • Parse arguments and send to correct device
  • Add log level to le_audio_tx to suppress warnings
  • OCT-3193

- Use generic broadcast_sink sample from Zephyr as base
- Add a struct to contain all values to compare
- Store adv_name and broadcast_name
- Parse BASEs and populate struct
- Add shell interface for setting expected values
- Create function for comparing dut with expected
- Compare all values and print success or fail
- Add BSIM related files
- OCT-3162

tests: nrf_auraconfig: Integrate with BSIM

- Create a tester main for the nrf_auraconfig sample
- Parse arguments and send to correct device
- Add log level to le_audio_tx to suppress warnings
- OCT-3193
@alexsven alexsven requested review from a team as code owners November 14, 2024 13:55
@alexsven alexsven requested review from koffes, rick1082 and gWacey and removed request for a team November 14, 2024 13:55
@github-actions github-actions bot added the changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added. label Nov 14, 2024
@NordicBuilder
Copy link
Contributor

NordicBuilder commented Nov 14, 2024

CI Information

To view the history of this post, clich the 'edited' button above
Build number: 1

Inputs:

Sources:

sdk-nrf: PR head: 12c1e3983969e852700ba355ba041c830deb09be

more details

sdk-nrf:

PR head: 12c1e3983969e852700ba355ba041c830deb09be
merge base: 5736ed32b74b48cda6179cdf3710a2705f682c23
target head (main): 95987240d21a43fcb2711eb81909ceb2e622f916
Diff

Github labels

Enabled Name Description
ci-disabled Disable the ci execution
ci-all-test Run all of ci, no test spec filtering will be done
ci-force-downstream Force execution of downstream even if twister fails
ci-run-twister Force run twister
ci-run-zephyr-twister Force run zephyr twister
List of changed files detected by CI (32)
applications
│  ├── nrf5340_audio
│  │  ├── src
│  │  │  ├── audio
│  │  │  │  │ Kconfig
│  │  │  ├── bluetooth
│  │  │  │  ├── Kconfig
│  │  │  │  ├── bt_management
│  │  │  │  │  │ bt_mgmt.c
│  │  │  │  ├── bt_stream
│  │  │  │  │  ├── bt_le_audio_tx
│  │  │  │  │  │  │ bt_le_audio_tx.c
│  │  │  ├── modules
│  │  │  │  │ audio_sync_timer.c
samples
│  ├── bluetooth
│  │  ├── nrf_auraconfig
│  │  │  ├── include
│  │  │  │  ├── nrf_auraconfig.h
│  │  │  │  │ presets.h
│  │  │  ├── prj.conf
│  │  │  ├── src
│  │  │  │  ├── main.c
│  │  │  │  │ nrf_auraconfig.c
tests
│  ├── bluetooth
│  │  ├── bsim
│  │  │  ├── nrf_auraconfig
│  │  │  │  ├── CMakeLists.txt
│  │  │  │  ├── Kconfig
│  │  │  │  ├── Kconfig.sysbuild
│  │  │  │  ├── README.txt
│  │  │  │  ├── compile.sh
│  │  │  │  ├── nrf_auraconfig_simulation.sh
│  │  │  │  ├── prj.conf
│  │  │  │  ├── src
│  │  │  │  │  ├── audio_sync_timer_mock.c
│  │  │  │  │  │ main.c
│  │  │  │  ├── sysbuild.cmake
│  │  │  │  ├── sysbuild
│  │  │  │  │  ├── ipc_radio
│  │  │  │  │  │  │ prj.conf
│  │  │  │  ├── tester
│  │  │  │  │  ├── CMakeLists.txt
│  │  │  │  │  ├── Kconfig
│  │  │  │  │  ├── Kconfig.sysbuild
│  │  │  │  │  ├── README.txt
│  │  │  │  │  ├── include
│  │  │  │  │  │  │ nac_test.h
│  │  │  │  │  ├── prj.conf
│  │  │  │  │  ├── src
│  │  │  │  │  │  ├── main.c
│  │  │  │  │  │  │ nrf_auraconfig_test.c
│  │  │  │  │  ├── sysbuild.cmake
│  │  │  │  │  ├── sysbuild
│  │  │  │  │  │  ├── ipc_radio
│  │  │  │  │  │  │  │ prj.conf
│  │  │  │  ├── tests
│  │  │  │  │  │ usecase_0_test.sh

Outputs:

Toolchain

Version: b44b7a08c9
Build docker image: docker-dtr.nordicsemi.no/sw-production/ncs-build:b44b7a08c9_912848a074

Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped; ⚠️ Quarantine

  • ◻️ Toolchain - Skipped: existing toolchain is used
  • ✅ Build twister
    • sdk-nrf test count: 435
  • ✅ Integration tests
    • ✅ test-sdk-audio
    • ✅ test-fw-nrfconnect-ble_samples
Disabled integration tests
    • desktop52_verification
    • doc-internal
    • test_ble_nrf_config
    • test-fw-nrfconnect-ble_mesh
    • test-fw-nrfconnect-boot
    • test-fw-nrfconnect-chip
    • test-fw-nrfconnect-fem
    • test-fw-nrfconnect-nfc
    • test-fw-nrfconnect-nrf-iot_cloud
    • test-fw-nrfconnect-nrf-iot_libmodem-nrf
    • test-fw-nrfconnect-nrf-iot_lwm2m
    • test-fw-nrfconnect-nrf-iot_mosh
    • test-fw-nrfconnect-nrf-iot_nrf_provisioning
    • test-fw-nrfconnect-nrf-iot_positioning
    • test-fw-nrfconnect-nrf-iot_samples
    • test-fw-nrfconnect-nrf-iot_serial_lte_modem
    • test-fw-nrfconnect-nrf-iot_thingy91
    • test-fw-nrfconnect-nrf-iot_zephyr_lwm2m
    • test-fw-nrfconnect-nrf_crypto
    • test-fw-nrfconnect-ps
    • test-fw-nrfconnect-rpc
    • test-fw-nrfconnect-rs
    • test-fw-nrfconnect-tfm
    • test-fw-nrfconnect-thread
    • test-fw-nrfconnect-zigbee
    • test-low-level
    • test-sdk-dfu
    • test-sdk-find-my
    • test-sdk-mcuboot
    • test-sdk-pmic-samples
    • test-sdk-sidewalk
    • test-sdk-wifi

Note: This message is automatically posted and updated by the CI

config SW_CODEC_NONE
bool "None"
help
Choose this if no sw codec is needed.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Choose this if no sw codec is needed.
Choose this if no software (SW) codec is needed.

@@ -157,7 +157,7 @@ static int audio_sync_timer_init(void)
return -ENODEV;
}

IRQ_CONNECT(RTC0_IRQn, IRQ_PRIO_LOWEST, nrfx_rtc_0_irq_handler, NULL, 0);
IRQ_CONNECT(RTC0_IRQn, IRQ_PRIO_LOWEST, nrfx_isr, nrfx_rtc_0_irq_handler, 0);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would like an explanation of this change.

{.use_case = PERSONAL_MULTI_LANGUAGE, .name = "Personal multi-language"},
};
/* Main function */
int nrf_auraconfig(void);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

consider

Suggested change
int nrf_auraconfig(void);
int nrf_auraconfig_main(void);

What is the standard naming convention?

@@ -0,0 +1,176 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file looks like a clean copy-paste?

return ret;
}

(void)nrf_auraconfig();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I may see this later, but why is there no err check?

#include "nac_test.h"

#define SEM_TIMEOUT K_SECONDS(60)
#define BROADCAST_ASSISTANT_TIMEOUT K_SECONDS(120) /* 2 minutes */
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
#define BROADCAST_ASSISTANT_TIMEOUT K_SECONDS(120) /* 2 minutes */
#define BROADCAST_ASSISTANT_TIMEOUT K_SECONDS(120) /* 2 minutes */
``` Butter on lard as they say :)

CONFIG_BT_CTLR_ADV_ISO_STREAM_COUNT=2

# Support two links as a central, or one link as a peripheral
CONFIG_BT_MAX_CONN=3
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No conns here at all.


# To present the audio at the right point in time, we need the controller and
# audio clock to be synchronized
CONFIG_MPSL_TRIGGER_IPC_TASK_ON_RTC_START=y
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can these be removed?

SCRIPT_NAME=$(basename "$0")

${SCRIPT_DIR}/../nrf_auraconfig_simulation.sh ${SCRIPT_NAME} \
"nac" "usecase" "0"\
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need a walkthrough here.

@@ -0,0 +1,1169 @@
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the last file I will need to go through. Will publish the comments I have for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog-entry-required Update changelog before merge. Remove label if entry is not needed or already added.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants