Skip to content

Commit 53986be

Browse files
committed
samples: sensor: bme680: Extend upstream sample
Add sample that reuses source code from "original" sample that existing in the upstream Zephyr. Extend sample with configurations that rely on internal shields pca63565 and pca63566. Remove Twister alt-config for upstream sample. Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
1 parent 7e02f62 commit 53986be

File tree

7 files changed

+70
-2
lines changed

7 files changed

+70
-2
lines changed

CODEOWNERS

+1-1
Original file line numberDiff line numberDiff line change
@@ -530,6 +530,7 @@
530530
/samples/nrf_rpc/ @nrfconnect/ncs-si-muffin
531531
/samples/sensor/accel_polling/ @nrfconnect/ncs-low-level-test
532532
/samples/sensor/bh1749/ @nrfconnect/ncs-cia
533+
/samples/sensor/bme680/ @nrfconnect/ncs-low-level-test
533534
/samples/sensor/bme68x_iaq/ @nrfconnect/ncs-cia
534535
/samples/sensor/qdec/ @nrfconnect/ncs-low-level-test
535536
/samples/subsys/settings/ @nrfconnect/ncs-low-level-test
@@ -705,7 +706,6 @@
705706
/scripts/partition_manager/*.rst @nrfconnect/ncs-aurora-doc
706707
/scripts/shell/ble_console/**/*.rst @nrfconnect/ncs-doc-leads
707708
/scripts/west_commands/sbom/*.rst @nrfconnect/ncs-si-muffin-doc
708-
/scripts/twister/alt/zephyr/samples/sensor/ @nrfconnect/ncs-low-level-test
709709
/scripts/twister/alt/zephyr/tests/drivers/ @nrfconnect/ncs-low-level-test
710710

711711
# Share

samples/sensor/bme680/CMakeLists.txt

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
#
2+
# Copyright (c) 2018 Bosch Sensortec GmbH
3+
#
4+
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
#
6+
7+
cmake_minimum_required(VERSION 3.20.0)
8+
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
9+
project(bme680)
10+
11+
FILE(GLOB app_sources src/*.c)
12+
target_sources(app PRIVATE ${app_sources})

samples/sensor/bme680/README.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
This sample extends the same-named Zephyr sample to verify it with Nordic development kits.
2+
3+
Source code and basic configuration files can be found in the corresponding folder structure in zephyr/samples/sensor/bme680.

samples/sensor/bme680/prj.conf

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
CONFIG_STDOUT_CONSOLE=y
2+
CONFIG_I2C=y
3+
CONFIG_SENSOR=y

scripts/twister/alt/zephyr/samples/sensor/bme680/sample.yaml samples/sensor/bme680/sample.yaml

+3-1
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ common:
66
- drivers
77
- i2c
88
- sensors
9+
- ci_samples_sensor
10+
- ci_samples_sensor_bme680
911
harness: console
1012

1113
tests:
@@ -82,5 +84,5 @@ tests:
8284
.]*$"
8385
extra_args:
8486
- SHIELD=pca63565
85-
- vpr_launcher_DTC_OVERLAY_FILE="../../../../nrf/boards/shields/pca63565/boards/nrf54l15dk_nrf54l15_vpr_launcher.overlay"
87+
- vpr_launcher_DTC_OVERLAY_FILE="${ZEPHYR_NRF_MODULE_DIR}/boards/shields/pca63565/boards/nrf54l15dk_nrf54l15_vpr_launcher.overlay"
8688
platform_allow: nrf54l15dk/nrf54l15/cpuflpr

samples/sensor/bme680/src/main.c

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*
2+
* Copyright (c) 2018 Bosch Sensortec GmbH
3+
*
4+
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5+
*/
6+
7+
#include <zephyr/kernel.h>
8+
#include <zephyr/device.h>
9+
#include <zephyr/drivers/sensor.h>
10+
#include <stdio.h>
11+
12+
int main(void)
13+
{
14+
const struct device *const dev = DEVICE_DT_GET_ONE(bosch_bme680);
15+
struct sensor_value temp, press, humidity, gas_res;
16+
17+
if (!device_is_ready(dev)) {
18+
printk("sensor: device not ready.\n");
19+
return 0;
20+
}
21+
22+
printf("Device %p name is %s\n", dev, dev->name);
23+
24+
#ifndef CONFIG_COVERAGE
25+
while (1) {
26+
#else
27+
for (int i = 0; i < 5; i++) {
28+
#endif
29+
k_sleep(K_MSEC(3000));
30+
31+
sensor_sample_fetch(dev);
32+
sensor_channel_get(dev, SENSOR_CHAN_AMBIENT_TEMP, &temp);
33+
sensor_channel_get(dev, SENSOR_CHAN_PRESS, &press);
34+
sensor_channel_get(dev, SENSOR_CHAN_HUMIDITY, &humidity);
35+
sensor_channel_get(dev, SENSOR_CHAN_GAS_RES, &gas_res);
36+
37+
printf("T: %d.%06d; P: %d.%06d; H: %d.%06d; G: %d.%06d\n",
38+
temp.val1, temp.val2, press.val1, press.val2,
39+
humidity.val1, humidity.val2, gas_res.val1,
40+
gas_res.val2);
41+
}
42+
return 0;
43+
}

scripts/ci/tags.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -1523,6 +1523,11 @@ ci_samples_sensor_accel_polling:
15231523
- nrf/samples/sensor/accel_polling/
15241524
- zephyr/samples/sensor/accel_polling/
15251525

1526+
ci_samples_sensor_bme680:
1527+
files:
1528+
- nrf/samples/sensor/bme680/
1529+
- zephyr/samples/sensor/bme680/
1530+
15261531
ci_samples_sensor_qdec:
15271532
files:
15281533
- nrf/samples/sensor/qdec/

0 commit comments

Comments
 (0)