From 112344061752c5503c63fc797140087be6e9f77c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Damian=20Kr=C3=B3lik?= <66667989+Damian-Nordic@users.noreply.github.com> Date: Mon, 11 Apr 2022 09:16:06 +0200 Subject: [PATCH] [nrfconnect] Support nRF52840 Dongle in all-clusters-app (#17215) * [nrfconnect] Support nRF52840 Dongle in all-clusters-app The dongle doesn't have external flash, so only build configurations without the DFU are supported. Also, due to flash size limitations (nR52840 dongle reserves some flash for an immutable bootloader), shell commands must have been disabled, too. By the way, make fixes in lighting-app which in theory already had the support for the nRF52840 Dongle, but it didn't work due to various issues. Signed-off-by: Damian Krolik * Add new targets to build_examples.py * Fix build * Revert accidentally committed change --- .../nrfconnect/CMakeLists.txt | 4 ++ .../all-clusters-app/nrfconnect/README.md | 41 +++++++++++++++--- .../boards/nrf52840dongle_nrf52840.conf | 43 +++++++++++++++++++ .../boards/nrf52840dongle_nrf52840.overlay | 28 ++++++++++++ .../all-clusters-app/nrfconnect/main/main.cpp | 40 ++++++++++++++++- .../pm_static_nrf52840dongle_nrf52840.yml | 8 ++++ .../lighting-app/nrfconnect/CMakeLists.txt | 2 +- .../boards/nrf52840dongle_nrf52840.overlay | 8 ++-- .../nrf52840dongle_nrf52840_no_dfu.conf | 24 ++++++++--- .../lighting-app/nrfconnect/main/main.cpp | 35 ++++++++++++--- ..._static_nrf52840dongle_nrf52840_no_dfu.yml | 8 ++++ scripts/build/build/targets.py | 4 +- scripts/build/builders/nrf.py | 15 +++++-- .../testdata/all_targets_except_host.txt | 3 ++ .../build/testdata/build_all_except_host.txt | 24 +++++++++++ .../glob_star_targets_except_host.txt | 3 ++ 16 files changed, 260 insertions(+), 30 deletions(-) create mode 100644 examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.conf create mode 100644 examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay create mode 100644 examples/all-clusters-app/nrfconnect/pm_static_nrf52840dongle_nrf52840.yml create mode 100644 examples/lighting-app/nrfconnect/pm_static_nrf52840dongle_nrf52840_no_dfu.yml diff --git a/examples/all-clusters-app/nrfconnect/CMakeLists.txt b/examples/all-clusters-app/nrfconnect/CMakeLists.txt index aa1d64716f67da..7be0cb1b8d3458 100644 --- a/examples/all-clusters-app/nrfconnect/CMakeLists.txt +++ b/examples/all-clusters-app/nrfconnect/CMakeLists.txt @@ -69,3 +69,7 @@ chip_configure_data_model(app if(CONFIG_CHIP_OTA_REQUESTOR) target_sources(app PRIVATE ${NRFCONNECT_COMMON}/util/OTAUtil.cpp) endif() + +if (CONFIG_SHELL AND BOARD STREQUAL "nrf52840dongle_nrf52840") + target_sources(app PRIVATE ${NRFCONNECT_COMMON}/util/DFUTrigger.cpp) +endif() diff --git a/examples/all-clusters-app/nrfconnect/README.md b/examples/all-clusters-app/nrfconnect/README.md index 0b21af970bb412..f2b0657e1faa52 100644 --- a/examples/all-clusters-app/nrfconnect/README.md +++ b/examples/all-clusters-app/nrfconnect/README.md @@ -37,6 +37,8 @@ into an existing Matter network and can be controlled by this network. - [Configuring the example](#configuring-the-example) - [Example build types](#example-build-types) - [Flashing and debugging](#flashing-and-debugging) + - [Flashing on the development kits](#nrfdks_flashing) + - [Flashing on the nRF52840 Dongle](#nrf52840dongle_flashing) - [Testing the example](#testing-the-example) - [Testing using CHIPTool](#testing-using-chiptool) @@ -98,10 +100,11 @@ more information. The example supports building and running on the following devices: -| Hardware platform | Build target | Platform image | -| ----------------------------------------------------------------------------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | -| [nRF52840 DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF52840-DK) | `nrf52840dk_nrf52840` |
nRF52840 DKnRF52840 DK
| -| [nRF5340 DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF5340-DK) | `nrf5340dk_nrf5340_cpuapp` |
nRF5340 DKnRF5340 DK
| +| Hardware platform | Build target | Platform image | +| ------------------------------------------------------------------------------------------------- | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [nRF52840 DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF52840-DK) | `nrf52840dk_nrf52840` |
nRF52840 DKnRF52840 DK
| +| [nRF5340 DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF5340-DK) | `nrf5340dk_nrf5340_cpuapp` |
nRF5340 DKnRF5340 DK
| +| [nRF52840 Dongle](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF52840-Dongle) | `nrf52840dongle_nrf52840` |
nRF52840 DonglenRF52840 Dongle
|
@@ -113,6 +116,15 @@ This section lists the User Interface elements that you can use to control and monitor the state of the device. These correspond to PCB components on the platform image. +> **Note**: +> +> The following Device UI elements are missing on the nRF52840 Dongle: **Button +> 2**, **Button 3**, **Button 4**, **SEGGER J-Link USB port**, and **NFC port +> with antenna attached**. You can collect logs from the nRF52840 Dongle using +> the **nRF USB port** instead of the **SEGGER J-Link USB port**. +> Functionalities associated with the remaining missing elements are +> inaccessible. + **LED 1** shows the overall state of the device and its connectivity. The following states are possible: @@ -381,9 +393,11 @@ depending on the selected board: command-line shell. - release -- Release version of the application - can be used to enable only the necessary application functionalities to optimize its performance. It - has Device Firmware Upgrade feature enabled. + has Device Firmware Upgrade feature enabled. It can be used only for the + nRF52840 DK and nRF5340 DK, as only those platforms support the DFU. - dfu -- Debug version of the application with Device Firmware Upgrade feature - support. + support. It can be used only for the nRF52840 DK and nRF5340 DK, as only + those platforms support the DFU. For more information, see the [Configuring nRF Connect SDK examples](../../../docs/guides/nrfconnect_examples_configuration.md) @@ -395,6 +409,13 @@ page. ## Flashing and debugging +The flashing and debugging procedure is different for the development kits and +the nRF52840 Dongle. + + + +### Flashing on the development kits + To flash the application to the device, use the west tool and run the following command from the example directory: @@ -408,6 +429,14 @@ directory: $ west debug + + +### Flashing on the nRF52840 Dongle + +Visit +[Programming and Debugging nRF52840 Dongle](https://docs.zephyrproject.org/latest/boards/arm/nrf52840dongle_nrf52840/doc/index.html#programming-and-debugging) +to read more about flashing on the nRF52840 Dongle. +
## Testing the example diff --git a/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.conf b/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.conf new file mode 100644 index 00000000000000..dc8c38ed741291 --- /dev/null +++ b/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.conf @@ -0,0 +1,43 @@ +# +# Copyright (c) 2022 Project CHIP Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# Configure logging over USB +# - do enable shell to reduce flash usage +# - disable CDC ACM logs as it may lead to infinite loop when CDC ACM is used as the log backend +CONFIG_USB_DEVICE_STACK=y +CONFIG_CONSOLE=y +CONFIG_UART_CONSOLE=y +CONFIG_LOG_BACKEND_UART=y +CONFIG_SHELL_LOG_BACKEND=n +CONFIG_UART_LINE_CTRL=y +CONFIG_USB_CDC_ACM_LOG_LEVEL_OFF=y + +# The minimal logging mode does not work properly with the USB CDC device, so use the deferred mode +CONFIG_LOG_MODE_MINIMAL=n +CONFIG_LOG2_MODE_DEFERRED=y +CONFIG_LOG_BUFFER_SIZE=8192 + +# Reduce the code size as the dongle reserves some space for MBR and Open Bootloader +CONFIG_ASSERT_VERBOSE=n +CONFIG_SHELL=n +CONFIG_OPENTHREAD_SHELL=n +CONFIG_MATTER_LOG_LEVEL_INF=y + +# Use partition manager to configure the settings partition not to overlap with Open Bootloader +CONFIG_PM_SINGLE_IMAGE=y + +# Enable CHIP pairing automatically on application start. +CONFIG_CHIP_ENABLE_PAIRING_AUTOSTART=y diff --git a/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay b/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay new file mode 100644 index 00000000000000..848566b5f43702 --- /dev/null +++ b/examples/all-clusters-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2021 Project CHIP Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http: //www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + / { + chosen { + zephyr,console = &cdc_acm_uart0; + }; +}; + +&zephyr_udc0 { + cdc_acm_uart0: cdc_acm_uart0 { + compatible = "zephyr,cdc-acm-uart"; + label = "CDC_ACM_0"; + }; +}; diff --git a/examples/all-clusters-app/nrfconnect/main/main.cpp b/examples/all-clusters-app/nrfconnect/main/main.cpp index bb67947911cad1..8f71ca55e41070 100644 --- a/examples/all-clusters-app/nrfconnect/main/main.cpp +++ b/examples/all-clusters-app/nrfconnect/main/main.cpp @@ -19,13 +19,51 @@ #include +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) +#include +#include +#endif + LOG_MODULE_REGISTER(app, CONFIG_MATTER_LOG_LEVEL); using namespace ::chip; +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) +static int InitUSB() +{ + int err = usb_enable(nullptr); + + if (err) + { + LOG_ERR("Failed to initialize USB device"); + return err; + } + + const struct device * dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_console)); + uint32_t dtr = 0; + + while (!dtr) + { + uart_line_ctrl_get(dev, UART_LINE_CTRL_DTR, &dtr); + k_sleep(K_MSEC(100)); + } + + return 0; +} +#endif + int main() { - CHIP_ERROR err = AppTask::Instance().StartApp(); + CHIP_ERROR err = CHIP_NO_ERROR; + +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) + err = System::MapErrorZephyr(InitUSB()); +#endif + + if (err == CHIP_NO_ERROR) + { + err = AppTask::Instance().StartApp(); + } LOG_ERR("Exited with code %" CHIP_ERROR_FORMAT, err.Format()); return err == CHIP_NO_ERROR ? EXIT_SUCCESS : EXIT_FAILURE; diff --git a/examples/all-clusters-app/nrfconnect/pm_static_nrf52840dongle_nrf52840.yml b/examples/all-clusters-app/nrfconnect/pm_static_nrf52840dongle_nrf52840.yml new file mode 100644 index 00000000000000..ad0f9426169e9d --- /dev/null +++ b/examples/all-clusters-app/nrfconnect/pm_static_nrf52840dongle_nrf52840.yml @@ -0,0 +1,8 @@ +settings_storage: + address: 0xd8000 + size: 0x8000 + region: flash_primary +open_bootloader: + address: 0xe0000 + size: 0x20000 + region: flash_primary diff --git a/examples/lighting-app/nrfconnect/CMakeLists.txt b/examples/lighting-app/nrfconnect/CMakeLists.txt index d3684e4d7b8199..934b0baca23b39 100644 --- a/examples/lighting-app/nrfconnect/CMakeLists.txt +++ b/examples/lighting-app/nrfconnect/CMakeLists.txt @@ -78,7 +78,7 @@ if(CONFIG_MCUMGR_SMP_BT) target_sources(app PRIVATE ${NRFCONNECT_COMMON}/util/DFUOverSMP.cpp) endif() -if (BOARD STREQUAL "nrf52840dongle_nrf52840") +if (CONFIG_SHELL AND BOARD STREQUAL "nrf52840dongle_nrf52840") target_sources(app PRIVATE ${NRFCONNECT_COMMON}/util/DFUTrigger.cpp) endif() diff --git a/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay b/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay index 5ccdd5561121ca..b9290884c459f3 100644 --- a/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay +++ b/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840.overlay @@ -5,7 +5,7 @@ * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http: //www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -14,9 +14,9 @@ * limitations under the License. */ -/ { - chosen { - zephyr,shell-uart = &cdc_acm_uart0; + / { + chosen { + zephyr,console = &cdc_acm_uart0; }; }; diff --git a/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840_no_dfu.conf b/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840_no_dfu.conf index ccf3ef33664471..1525056853f5bd 100644 --- a/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840_no_dfu.conf +++ b/examples/lighting-app/nrfconnect/boards/nrf52840dongle_nrf52840_no_dfu.conf @@ -14,14 +14,26 @@ # limitations under the License. # -# Configure shell and logging over USB +# Configure logging over USB +# - do enable shell to reduce flash usage +# - disable CDC ACM logs as it may lead to infinite loop when CDC ACM is used as the log backend CONFIG_USB_DEVICE_STACK=y -CONFIG_UART_INTERRUPT_DRIVEN=y +CONFIG_CONSOLE=y +CONFIG_UART_CONSOLE=y +CONFIG_LOG_BACKEND_UART=y +CONFIG_SHELL_LOG_BACKEND=n CONFIG_UART_LINE_CTRL=y -CONFIG_SHELL_BACKEND_SERIAL_INIT_PRIORITY=51 +CONFIG_USB_CDC_ACM_LOG_LEVEL_OFF=y # The minimal logging mode does not work properly with the USB CDC device, so use the deferred mode CONFIG_LOG_MODE_MINIMAL=n -CONFIG_LOG_MODE_DEFERRED=y -CONFIG_LOG_STRDUP_MAX_STRING=128 -CONFIG_LOG_STRDUP_BUF_COUNT=24 +CONFIG_LOG2_MODE_DEFERRED=y +CONFIG_LOG_BUFFER_SIZE=8192 + +# Reduce the code size as the dongle reserves some space for MBR and Open Bootloader +CONFIG_ASSERT_VERBOSE=n +CONFIG_SHELL=n +CONFIG_OPENTHREAD_SHELL=n + +# Use partition manager to configure the settings partition not to overlap with Open Bootloader +CONFIG_PM_SINGLE_IMAGE=y diff --git a/examples/lighting-app/nrfconnect/main/main.cpp b/examples/lighting-app/nrfconnect/main/main.cpp index 1e9668b977bcd8..0b718e25fa2e84 100644 --- a/examples/lighting-app/nrfconnect/main/main.cpp +++ b/examples/lighting-app/nrfconnect/main/main.cpp @@ -26,7 +26,8 @@ #include "Rpc.h" #endif -#ifdef CONFIG_USB_DEVICE_STACK +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) +#include #include #endif @@ -34,6 +35,30 @@ LOG_MODULE_REGISTER(app, CONFIG_MATTER_LOG_LEVEL); using namespace ::chip; +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) +static int InitUSB() +{ + int err = usb_enable(nullptr); + + if (err) + { + LOG_ERR("Failed to initialize USB device"); + return err; + } + + const struct device * dev = DEVICE_DT_GET(DT_CHOSEN(zephyr_console)); + uint32_t dtr = 0; + + while (!dtr) + { + uart_line_ctrl_get(dev, UART_LINE_CTRL_DTR, &dtr); + k_sleep(K_MSEC(100)); + } + + return 0; +} +#endif + int main() { CHIP_ERROR err = CHIP_NO_ERROR; @@ -42,12 +67,8 @@ int main() rpc::Init(); #endif -#ifdef CONFIG_USB_DEVICE_STACK - err = System::MapErrorZephyr(usb_enable(nullptr)); - if (err != CHIP_NO_ERROR) - { - LOG_ERR("Failed to initialize USB device"); - } +#if DT_NODE_HAS_COMPAT(DT_CHOSEN(zephyr_console), zephyr_cdc_acm_uart) + err = System::MapErrorZephyr(InitUSB()); #endif if (err == CHIP_NO_ERROR) diff --git a/examples/lighting-app/nrfconnect/pm_static_nrf52840dongle_nrf52840_no_dfu.yml b/examples/lighting-app/nrfconnect/pm_static_nrf52840dongle_nrf52840_no_dfu.yml new file mode 100644 index 00000000000000..ad0f9426169e9d --- /dev/null +++ b/examples/lighting-app/nrfconnect/pm_static_nrf52840dongle_nrf52840_no_dfu.yml @@ -0,0 +1,8 @@ +settings_storage: + address: 0xd8000 + size: 0x8000 + region: flash_primary +open_bootloader: + address: 0xe0000 + size: 0x20000 + region: flash_primary diff --git a/scripts/build/build/targets.py b/scripts/build/build/targets.py index e17d1e13e6a814..fccafc88af41f9 100644 --- a/scripts/build/build/targets.py +++ b/scripts/build/build/targets.py @@ -382,10 +382,12 @@ def NrfTargets(): target.Extend('nrf52840dk', board=NrfBoard.NRF52840DK), ] - # Enable nrf52840dongle for lighting app only + # Enable nrf52840dongle for all-clusters and lighting app only + yield target.Extend('nrf52840dongle-all-clusters', board=NrfBoard.NRF52840DONGLE, app=NrfApp.ALL_CLUSTERS) yield target.Extend('nrf52840dongle-light', board=NrfBoard.NRF52840DONGLE, app=NrfApp.LIGHT) for target in targets: + yield target.Extend('all-clusters', app=NrfApp.ALL_CLUSTERS) yield target.Extend('lock', app=NrfApp.LOCK) yield target.Extend('light', app=NrfApp.LIGHT) yield target.Extend('shell', app=NrfApp.SHELL) diff --git a/scripts/build/builders/nrf.py b/scripts/build/builders/nrf.py index 4bfb80961ab8e6..a5a05a2c58abe9 100644 --- a/scripts/build/builders/nrf.py +++ b/scripts/build/builders/nrf.py @@ -21,6 +21,7 @@ class NrfApp(Enum): + ALL_CLUSTERS = auto() LIGHT = auto() LOCK = auto() SHELL = auto() @@ -29,7 +30,9 @@ class NrfApp(Enum): UNIT_TESTS = auto() def AppPath(self): - if self == NrfApp.LIGHT: + if self == NrfApp.ALL_CLUSTERS: + return 'examples/all-clusters-app' + elif self == NrfApp.LIGHT: return 'examples/lighting-app' elif self == NrfApp.LOCK: return 'examples/lock-app' @@ -45,7 +48,9 @@ def AppPath(self): raise Exception('Unknown app type: %r' % self) def AppNamePrefix(self): - if self == NrfApp.LIGHT: + if self == NrfApp.ALL_CLUSTERS: + return 'chip-nrf-all-clusters-example' + elif self == NrfApp.LIGHT: return 'chip-nrf-lighting-example' elif self == NrfApp.LOCK: return 'chip-nrf-lock-example' @@ -61,7 +66,9 @@ def AppNamePrefix(self): raise Exception('Unknown app type: %r' % self) def _FlashBundlePrefix(self): - if self == NrfApp.LIGHT: + if self == NrfApp.ALL_CLUSTERS: + return 'chip-nrfconnect-all-clusters-example' + elif self == NrfApp.LIGHT: return 'chip-nrfconnect-lighting-example' elif self == NrfApp.LOCK: return 'chip-nrfconnect-lock-example' @@ -148,7 +155,7 @@ def generate(self): if self.enable_rpcs: flags.append("-DOVERLAY_CONFIG=rpc.overlay") - if self.board == NrfBoard.NRF52840DONGLE: + if self.board == NrfBoard.NRF52840DONGLE and self.app != NrfApp.ALL_CLUSTERS: flags.append("-DCONF_FILE=prj_no_dfu.conf") build_flags = " -- " + " ".join(flags) if len(flags) > 0 else "" diff --git a/scripts/build/testdata/all_targets_except_host.txt b/scripts/build/testdata/all_targets_except_host.txt index a25205367182fa..e98006e8cc4320 100644 --- a/scripts/build/testdata/all_targets_except_host.txt +++ b/scripts/build/testdata/all_targets_except_host.txt @@ -173,13 +173,16 @@ mbed-CY8CPROTO_062_4343W-shell-debug (NOGLOB: Compile only for debugging purpose mbed-CY8CPROTO_062_4343W-shell-develop (NOGLOB: Compile only for debugging purpose - https://os.mbed.com/docs/mbed-os/latest/program-setup/build-profiles-and-rules.html) mbed-CY8CPROTO_062_4343W-shell-release nrf-native-posix-64-tests +nrf-nrf52840dk-all-clusters nrf-nrf52840dk-light nrf-nrf52840dk-light-rpc nrf-nrf52840dk-lock nrf-nrf52840dk-pump nrf-nrf52840dk-pump-controller nrf-nrf52840dk-shell +nrf-nrf52840dongle-all-clusters nrf-nrf52840dongle-light +nrf-nrf5340dk-all-clusters nrf-nrf5340dk-light nrf-nrf5340dk-light-rpc (NOGLOB: Compile failure due to pw_build args not forwarded to proto compiler. https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/66760) nrf-nrf5340dk-lock diff --git a/scripts/build/testdata/build_all_except_host.txt b/scripts/build/testdata/build_all_except_host.txt index 47f3ad2bcc53ad..2288e77a73b7a1 100644 --- a/scripts/build/testdata/build_all_except_host.txt +++ b/scripts/build/testdata/build_all_except_host.txt @@ -818,6 +818,11 @@ bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; west build --cmake-only -d {out}/nrf-native-posix-64-tests -b native_posix_64 {root}/src/test_driver/nrfconnect' +# Generating nrf-nrf52840dk-all-clusters +bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; +export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; +west build --cmake-only -d {out}/nrf-nrf52840dk-all-clusters -b nrf52840dk_nrf52840 {root}/examples/all-clusters-app/nrfconnect' + # Generating nrf-nrf52840dk-light bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; @@ -848,11 +853,21 @@ bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; west build --cmake-only -d {out}/nrf-nrf52840dk-shell -b nrf52840dk_nrf52840 {root}/examples/shell/nrfconnect' +# Generating nrf-nrf52840dongle-all-clusters +bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; +export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; +west build --cmake-only -d {out}/nrf-nrf52840dongle-all-clusters -b nrf52840dongle_nrf52840 {root}/examples/all-clusters-app/nrfconnect' + # Generating nrf-nrf52840dongle-light bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; west build --cmake-only -d {out}/nrf-nrf52840dongle-light -b nrf52840dongle_nrf52840 {root}/examples/lighting-app/nrfconnect -- -DCONF_FILE=prj_no_dfu.conf' +# Generating nrf-nrf5340dk-all-clusters +bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; +export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; +west build --cmake-only -d {out}/nrf-nrf5340dk-all-clusters -b nrf5340dk_nrf5340_cpuapp {root}/examples/all-clusters-app/nrfconnect' + # Generating nrf-nrf5340dk-light bash -c 'source "$ZEPHYR_BASE/zephyr-env.sh"; export GNUARMEMB_TOOLCHAIN_PATH="$PW_ARM_CIPD_INSTALL_DIR"; @@ -1725,6 +1740,9 @@ ninja -C {out}/nrf-native-posix-64-tests # Run Tests nrf-native-posix-64-tests ctest --build-nocmake -V --output-on-failure --test-dir {out}/nrf-native-posix-64-tests +# Building nrf-nrf52840dk-all-clusters +ninja -C {out}/nrf-nrf52840dk-all-clusters + # Building nrf-nrf52840dk-light ninja -C {out}/nrf-nrf52840dk-light @@ -1743,9 +1761,15 @@ ninja -C {out}/nrf-nrf52840dk-pump-controller # Building nrf-nrf52840dk-shell ninja -C {out}/nrf-nrf52840dk-shell +# Building nrf-nrf52840dongle-all-clusters +ninja -C {out}/nrf-nrf52840dongle-all-clusters + # Building nrf-nrf52840dongle-light ninja -C {out}/nrf-nrf52840dongle-light +# Building nrf-nrf5340dk-all-clusters +ninja -C {out}/nrf-nrf5340dk-all-clusters + # Building nrf-nrf5340dk-light ninja -C {out}/nrf-nrf5340dk-light diff --git a/scripts/build/testdata/glob_star_targets_except_host.txt b/scripts/build/testdata/glob_star_targets_except_host.txt index b28e45f29b39e9..3a33331cd5332b 100644 --- a/scripts/build/testdata/glob_star_targets_except_host.txt +++ b/scripts/build/testdata/glob_star_targets_except_host.txt @@ -55,13 +55,16 @@ mbed-CY8CPROTO_062_4343W-lock-release mbed-CY8CPROTO_062_4343W-pigweed-release mbed-CY8CPROTO_062_4343W-shell-release nrf-native-posix-64-tests +nrf-nrf52840dk-all-clusters nrf-nrf52840dk-light nrf-nrf52840dk-light-rpc nrf-nrf52840dk-lock nrf-nrf52840dk-pump nrf-nrf52840dk-pump-controller nrf-nrf52840dk-shell +nrf-nrf52840dongle-all-clusters nrf-nrf52840dongle-light +nrf-nrf5340dk-all-clusters nrf-nrf5340dk-light nrf-nrf5340dk-lock nrf-nrf5340dk-pump