Skip to content

Commit bc3851f

Browse files
committed
modules: Align watchdog configuration and naming
Align how each module configures watchdog timeouts and the naming of options and variables. Add build asserts where missing to ensure that message processing time is shorter than the watchdog timeout. Signed-off-by: Jan Tore Guggedal <jantore.guggedal@nordicsemi.no>
1 parent 334d8f1 commit bc3851f

15 files changed

+155
-51
lines changed

app/src/modules/app/Kconfig.app

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ config APP_MODULE_THREAD_STACK_SIZE
1717
default 3200
1818

1919
config APP_MODULE_WATCHDOG_TIMEOUT_SECONDS
20-
int "Watchdog timeout seconds"
20+
int "Watchdog timeout"
2121
default 330
2222

2323
config APP_MODULE_EXEC_TIME_SECONDS_MAX

app/src/modules/battery/Kconfig.battery

+15-5
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,24 @@ config APP_BATTERY_THREAD_STACK_SIZE
1616
default 1536
1717

1818
config APP_BATTERY_WATCHDOG_TIMEOUT_SECONDS
19-
int "Watchdog timeout seconds"
19+
int "Watchdog timeout"
2020
default 120
21-
22-
config APP_BATTERY_EXEC_TIME_SECONDS_MAX
23-
int "Maximum execution time seconds"
21+
help
22+
Timeout in seconds for the battery module watchdog.
23+
The timeout given in this option covers both:
24+
* Waiting for an incoming message in zbus_sub_wait_msg().
25+
* Time spent processing the message, defined by
26+
CONFIG_APP_BATTERY_MSG_PROCESSING_TIMEOUT_SECONDS.
27+
Ensure that this value exceeds CONFIG_APP_BATTERY_MSG_PROCESSING_TIMEOUT_SECONDS.
28+
A small difference between the two can mean more frequent watchdog feeds, which increases
29+
power consumption.
30+
31+
config APP_BATTERY_MSG_PROCESSING_TIMEOUT_SECONDS
32+
int "Maximum message processing time"
2433
default 3
2534
help
26-
Maximum time allowed for a single execution of the module thread loop.
35+
Maximum time allowed for processing a single message in the the module's state machine.
36+
The value must be smaller than CONFIG_APP_BATTERY_WATCHDOG_TIMEOUT_SECONDS.
2737

2838
module = APP_BATTERY
2939
module-str = Battery

app/src/modules/battery/battery.c

+6-4
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ ZBUS_CHAN_ADD_OBS(BATTERY_CHAN, battery, 0);
4141
#define MAX_MSG_SIZE sizeof(struct battery_msg)
4242

4343
BUILD_ASSERT(CONFIG_APP_BATTERY_WATCHDOG_TIMEOUT_SECONDS >
44-
CONFIG_APP_BATTERY_EXEC_TIME_SECONDS_MAX,
45-
"Watchdog timeout must be greater than maximum execution time");
44+
CONFIG_APP_BATTERY_MSG_PROCESSING_TIMEOUT_SECONDS,
45+
"Watchdog timeout must be greater than maximum message processing time");
4646

4747
/* nPM1300 register bitmasks */
4848

@@ -234,8 +234,10 @@ static void battery_task(void)
234234
{
235235
int err;
236236
int task_wdt_id;
237-
const uint32_t wdt_timeout_ms = (CONFIG_APP_BATTERY_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
238-
const uint32_t execution_time_ms = (CONFIG_APP_BATTERY_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
237+
const uint32_t wdt_timeout_ms =
238+
(CONFIG_APP_BATTERY_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
239+
const uint32_t execution_time_ms =
240+
(CONFIG_APP_BATTERY_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
239241
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
240242

241243
LOG_DBG("Battery module task started");

app/src/modules/cloud/Kconfig.cloud

+16-5
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,25 @@ config APP_CLOUD_POLL_INTERVAL_SECONDS
6868
Interval in seconds between polling nRF Cloud CoAP.
6969

7070
config APP_CLOUD_WATCHDOG_TIMEOUT_SECONDS
71-
int "Watchdog timeout seconds"
71+
int "Watchdog timeout"
7272
default 180
73-
74-
config APP_CLOUD_EXEC_TIME_SECONDS_MAX
75-
int "Maximum execution time seconds"
73+
help
74+
Timeout in seconds for the cloud module watchdog.
75+
The timeout given in this option covers both:
76+
* Waiting for an incoming message in zbus_sub_wait_msg().
77+
* Time spent processing the message, defined by
78+
CONFIG_APP_CLOUD_MSG_PROCESSING_TIMEOUT_SECONDS.
79+
Ensure that this value exceeds CONFIG_APP_CLOUD_MSG_PROCESSING_TIMEOUT_SECONDS.
80+
A small difference between the two can mean more frequent watchdog feeds, which increases
81+
power consumption.
82+
83+
84+
config APP_CLOUD_MSG_PROCESSING_TIMEOUT_SECONDS
85+
int "Maximum message processing time"
7686
default 120
7787
help
78-
Maximum time allowed for a single execution of the module's thread loop.
88+
Maximum time allowed for processing a single message in the the module's state machine.
89+
The value must be smaller than CONFIG_APP_CLOUD_WATCHDOG_TIMEOUT_SECONDS.
7990

8091
module = APP_CLOUD
8192
module-str = Cloud

app/src/modules/cloud/cloud_module.c

+4-3
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ LOG_MODULE_REGISTER(cloud, CONFIG_APP_CLOUD_LOG_LEVEL);
5353
MAX(BAT_MSG_SIZE, ENV_MSG_SIZE))))
5454

5555
BUILD_ASSERT(CONFIG_APP_CLOUD_WATCHDOG_TIMEOUT_SECONDS >
56-
CONFIG_APP_CLOUD_EXEC_TIME_SECONDS_MAX,
57-
"Watchdog timeout must be greater than maximum execution time");
56+
CONFIG_APP_CLOUD_MSG_PROCESSING_TIMEOUT_SECONDS,
57+
"Watchdog timeout must be greater than maximum message processing time");
5858

5959
/* Register subscriber */
6060
ZBUS_MSG_SUBSCRIBER_DEFINE(cloud);
@@ -663,7 +663,8 @@ static void cloud_module_thread(void)
663663
int err;
664664
int task_wdt_id;
665665
const uint32_t wdt_timeout_ms = (CONFIG_APP_CLOUD_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
666-
const uint32_t execution_time_ms = (CONFIG_APP_CLOUD_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
666+
const uint32_t execution_time_ms =
667+
(CONFIG_APP_CLOUD_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
667668
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
668669

669670
LOG_DBG("cloud module task started");

app/src/modules/environmental/Kconfig.environmental

+14-4
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,24 @@ config APP_ENVIRONMENTAL_THREAD_STACK_SIZE
1616
default 1280
1717

1818
config APP_ENVIRONMENTAL_WATCHDOG_TIMEOUT_SECONDS
19-
int "Watchdog timeout seconds"
19+
int "Watchdog timeout"
2020
default 120
21+
help
22+
Timeout in seconds for the environmental module watchdog.
23+
The timeout given in this option covers both:
24+
* Waiting for an incoming message in zbus_sub_wait_msg().
25+
* Time spent processing the message, defined by
26+
CONFIG_APP_ENVIRONMENTAL_MSG_PROCESSING_TIMEOUT_SECONDS.
27+
Ensure that this value exceeds CONFIG_APP_ENVIRONMENTAL_MSG_PROCESSING_TIMEOUT_SECONDS.
28+
A small difference between the two can mean more frequent watchdog feeds, which increases
29+
power consumption.
2130

22-
config APP_ENVIRONMENTAL_EXEC_TIME_SECONDS_MAX
23-
int "Maximum execution time seconds"
31+
config APP_ENVIRONMENTAL_MSG_PROCESSING_TIMEOUT_SECONDS
32+
int "Maximum message processing time"
2433
default 3
2534
help
26-
Maximum time allowed for a single execution of the module's thread loop.
35+
Maximum time allowed for processing a single message in the the module's state machine.
36+
The value must be smaller than CONFIG_APP_ENVIRONMENTAL_WATCHDOG_TIMEOUT_SECONDS.
2737

2838
module = APP_ENVIRONMENTAL
2939
module-str = ENVIRONMENTAL

app/src/modules/environmental/environmental.c

+6-4
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ ZBUS_CHAN_ADD_OBS(ENVIRONMENTAL_CHAN, environmental, 0);
3838
#define MAX_MSG_SIZE sizeof(struct environmental_msg)
3939

4040
BUILD_ASSERT(CONFIG_APP_ENVIRONMENTAL_WATCHDOG_TIMEOUT_SECONDS >
41-
CONFIG_APP_ENVIRONMENTAL_EXEC_TIME_SECONDS_MAX,
42-
"Watchdog timeout must be greater than maximum execution time");
41+
CONFIG_APP_ENVIRONMENTAL_MSG_PROCESSING_TIMEOUT_SECONDS,
42+
"Watchdog timeout must be greater than maximum message processing time");
4343

4444
static const struct device *const sensor_dev = DEVICE_DT_GET(DT_NODELABEL(bme680));
4545

@@ -148,8 +148,10 @@ static void environmental_task(void)
148148
{
149149
int err;
150150
int task_wdt_id;
151-
const uint32_t wdt_timeout_ms = (CONFIG_APP_ENVIRONMENTAL_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
152-
const uint32_t execution_time_ms = (CONFIG_APP_ENVIRONMENTAL_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
151+
const uint32_t wdt_timeout_ms =
152+
(CONFIG_APP_ENVIRONMENTAL_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
153+
const uint32_t execution_time_ms =
154+
(CONFIG_APP_ENVIRONMENTAL_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
153155
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
154156

155157
LOG_DBG("Environmental module task started");

app/src/modules/fota/Kconfig.fota

+14-4
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,24 @@ config APP_FOTA_THREAD_STACK_SIZE
1414
default 2500
1515

1616
config APP_FOTA_WATCHDOG_TIMEOUT_SECONDS
17-
int "Watchdog timeout seconds"
17+
int "Watchdog timeout"
1818
default 210
19+
help
20+
Timeout in seconds for the FOTA module watchdog.
21+
The timeout given in this option covers both:
22+
* Waiting for an incoming message in zbus_sub_wait_msg().
23+
* Time spent processing the message, defined by
24+
CONFIG_APP_FOTA_MSG_PROCESSING_TIMEOUT_SECONDS.
25+
Ensure that this value exceeds CONFIG_APP_FOTA_MSG_PROCESSING_TIMEOUT_SECONDS.
26+
A small difference between the two can mean more frequent watchdog feeds, which increases
27+
power consumption.
1928

20-
config APP_FOTA_EXEC_TIME_SECONDS_MAX
21-
int "Maximum execution time seconds"
29+
config APP_FOTA_MSG_PROCESSING_TIMEOUT_SECONDS
30+
int "Maximum message processing time"
2231
default 180
2332
help
24-
Watchdog timeout in seconds for a state machine run.
33+
Maximum time allowed for processing a single message in the the module's state machine.
34+
The value must be smaller than CONFIG_APP_FOTA_WATCHDOG_TIMEOUT_SECONDS.
2535

2636
if APP_FOTA
2737

app/src/modules/fota/fota.c

+6-1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@
2424
/* Register log module */
2525
LOG_MODULE_REGISTER(fota, CONFIG_APP_FOTA_LOG_LEVEL);
2626

27+
BUILD_ASSERT(CONFIG_APP_FOTA_WATCHDOG_TIMEOUT_SECONDS >
28+
CONFIG_APP_FOTA_MSG_PROCESSING_TIMEOUT_SECONDS,
29+
"Watchdog timeout must be greater than maximum message processing time");
30+
2731
/* Register message subscriber - will be called everytime a channel that the module listens on
2832
* receives a new message.
2933
*/
@@ -431,7 +435,8 @@ static void fota_task(void)
431435
int err;
432436
int task_wdt_id;
433437
const uint32_t wdt_timeout_ms = (CONFIG_APP_FOTA_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
434-
const uint32_t execution_time_ms = (CONFIG_APP_FOTA_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
438+
const uint32_t execution_time_ms =
439+
(CONFIG_APP_FOTA_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
435440
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
436441

437442
LOG_DBG("FOTA module task started");

app/src/modules/location/Kconfig.location

+15-3
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,24 @@ config APP_LOCATION_THREAD_STACK_SIZE
1212
default 2048
1313

1414
config APP_LOCATION_WATCHDOG_TIMEOUT_SECONDS
15-
int "Watchdog timeout seconds"
15+
int "Watchdog timeout"
1616
default 120
17+
help
18+
Timeout in seconds for the location module watchdog.
19+
The timeout given in this option covers both:
20+
* Waiting for an incoming message in zbus_sub_wait_msg().
21+
* Time spent processing the message, defined by
22+
CONFIG_APP_LOCATION_MSG_PROCESSING_TIMEOUT_SECONDS.
23+
Ensure that this value exceeds CONFIG_APP_LOCATION_MSG_PROCESSING_TIMEOUT_SECONDS.
24+
A small difference between the two can mean more frequent watchdog feeds, which increases
25+
power consumption.
1726

18-
config APP_LOCATION_ZBUS_TIMEOUT_SECONDS
19-
int "Wait for zbus timeout seconds"
27+
config APP_LOCATION_MSG_PROCESSING_TIMEOUT_SECONDS
28+
int "Maximum message processing time"
2029
default 60
30+
help
31+
Maximum time allowed for processing a single message in the the module's state machine.
32+
The value must be smaller than CONFIG_APP_LOCATION_WATCHDOG_TIMEOUT_SECONDS.
2133

2234
module = APP_LOCATION
2335
module-str = Location

app/src/modules/location/location.c

+8-5
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
LOG_MODULE_REGISTER(location_module, CONFIG_APP_LOCATION_LOG_LEVEL);
2626

2727
BUILD_ASSERT(CONFIG_APP_LOCATION_WATCHDOG_TIMEOUT_SECONDS >
28-
CONFIG_APP_LOCATION_ZBUS_TIMEOUT_SECONDS,
29-
"Watchdog timeout must be greater than trigger timeout");
28+
CONFIG_APP_LOCATION_MSG_PROCESSING_TIMEOUT_SECONDS,
29+
"Watchdog timeout must be greater than maximum message processing time");
3030

3131
/* Define channels provided by this module */
3232
ZBUS_CHAN_DEFINE(LOCATION_CHAN,
@@ -179,8 +179,11 @@ void location_task(void)
179179
int err = 0;
180180
const struct zbus_channel *chan;
181181
int task_wdt_id;
182-
const uint32_t wdt_timeout_ms = (CONFIG_APP_LOCATION_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
183-
const k_timeout_t zbus_timeout = K_SECONDS(CONFIG_APP_LOCATION_ZBUS_TIMEOUT_SECONDS);
182+
const uint32_t wdt_timeout_ms =
183+
(CONFIG_APP_LOCATION_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
184+
const uint32_t execution_time_ms =
185+
(CONFIG_APP_LOCATION_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
186+
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
184187
uint8_t msg_buf[MAX_MSG_SIZE];
185188

186189
LOG_DBG("Location module task started");
@@ -209,7 +212,7 @@ void location_task(void)
209212
return;
210213
}
211214

212-
err = zbus_sub_wait_msg(&location, &chan, &msg_buf, zbus_timeout);
215+
err = zbus_sub_wait_msg(&location, &chan, &msg_buf, zbus_wait_ms);
213216
if (err == -ENOMSG) {
214217
continue;
215218
} else if (err) {

app/src/modules/network/Kconfig.network

+14-4
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,24 @@ config APP_NETWORK_THREAD_STACK_SIZE
1212
default 2048
1313

1414
config APP_NETWORK_WATCHDOG_TIMEOUT_SECONDS
15-
int "Watchdog timeout seconds"
15+
int "Watchdog timeout"
1616
default 600
17+
help
18+
Timeout in seconds for the network module watchdog.
19+
The timeout given in this option covers both:
20+
* Waiting for an incoming message in zbus_sub_wait_msg().
21+
* Time spent processing the message, defined by
22+
CONFIG_APP_NETWORK__MSG_PROCESSING_TIMEOUT_SECONDS.
23+
Ensure that this value exceeds CONFIG_APP_NETWORK__MSG_PROCESSING_TIMEOUT_SECONDS.
24+
A small difference between the two can mean more frequent watchdog feeds, which increases
25+
power consumption.
1726

18-
config APP_NETWORK_EXEC_TIME_SECONDS_MAX
19-
int "Maximum execution time seconds"
27+
config APP_NETWORK_MSG_PROCESSING_TIMEOUT_SECONDS
28+
int "Maximum message processing time"
2029
default 570
2130
help
22-
Maximum time allowed for a single execution of the module's thread loop.
31+
Maximum time allowed for processing a single message in the the module's state machine.
32+
The value must be smaller than CONFIG_APP_NETWORK__WATCHDOG_TIMEOUT_SECONDS.
2333

2434
config APP_NETWORK_SEARCH_NETWORK_ON_STARTUP
2535
bool "Search for network on startup"

app/src/modules/network/network.c

+15-2
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,10 @@
2222
/* Register log module */
2323
LOG_MODULE_REGISTER(network, CONFIG_APP_NETWORK_LOG_LEVEL);
2424

25+
BUILD_ASSERT(CONFIG_APP_NETWORK_WATCHDOG_TIMEOUT_SECONDS >
26+
CONFIG_APP_NETWORK_MSG_PROCESSING_TIMEOUT_SECONDS,
27+
"Watchdog timeout must be greater than maximum message processing time");
28+
2529
/* Define channels provided by this module */
2630
ZBUS_CHAN_DEFINE(NETWORK_CHAN,
2731
struct network_msg,
@@ -569,8 +573,10 @@ static void network_module_thread(void)
569573
{
570574
int err;
571575
int task_wdt_id;
572-
const uint32_t wdt_timeout_ms = (CONFIG_APP_NETWORK_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
573-
const uint32_t execution_time_ms = (CONFIG_APP_NETWORK_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
576+
const uint32_t wdt_timeout_ms =
577+
(CONFIG_APP_NETWORK_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
578+
const uint32_t execution_time_ms =
579+
(CONFIG_APP_NETWORK_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
574580
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
575581

576582
task_wdt_id = task_wdt_add(wdt_timeout_ms, network_wdt_callback, (void *)k_current_get());
@@ -595,6 +601,13 @@ static void network_module_thread(void)
595601
return;
596602
}
597603

604+
err = task_wdt_feed(task_wdt_id);
605+
if (err) {
606+
LOG_ERR("task_wdt_feed, error: %d", err);
607+
SEND_FATAL_ERROR();
608+
return;
609+
}
610+
598611
err = STATE_RUN(network_state);
599612
if (err) {
600613
LOG_ERR("handle_message, error: %d", err);

app/src/modules/shell/Kconfig.shell

+15-5
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,24 @@ config APP_SHELL_THREAD_STACK_SIZE
2222
default 1024
2323

2424
config APP_SHELL_WATCHDOG_TIMEOUT_SECONDS
25-
int "Watchdog timeout seconds"
25+
int "Watchdog timeout"
2626
default 120
27-
28-
config APP_SHELL_EXEC_TIME_SECONDS_MAX
29-
int "Maximum execution time seconds"
27+
help
28+
Timeout in seconds for the shell module watchdog.
29+
The timeout given in this option covers both:
30+
* Waiting for an incoming message in zbus_sub_wait_msg().
31+
* Time spent processing the message, defined by
32+
CONFIG_APP_SHELL_MSG_PROCESSING_TIMEOUT_SECONDS.
33+
Ensure that this value exceeds CONFIG_APP_SHELL_MSG_PROCESSING_TIMEOUT_SECONDS.
34+
A small difference between the two can mean more frequent watchdog feeds, which increases
35+
power consumption.
36+
37+
config APP_SHELL_MSG_PROCESSING_TIMEOUT_SECONDS
38+
int "Maximum message processing time"
3039
default 3
3140
help
32-
Maximum time allowed for a single execution of the module thread loop.
41+
Maximum time allowed for processing a single message in the the module's state machine.
42+
The value must be smaller than CONFIG_APP_SHELL_WATCHDOG_TIMEOUT_SECONDS.
3343

3444
config APP_SHELL_UART_PM_ENABLE
3545
bool "Enable UART power management feature"

app/src/modules/shell/shell.c

+6-1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@
2626

2727
LOG_MODULE_REGISTER(shell, CONFIG_APP_SHELL_LOG_LEVEL);
2828

29+
BUILD_ASSERT(CONFIG_APP_SHELL_WATCHDOG_TIMEOUT_SECONDS >
30+
CONFIG_APP_SHELL_MSG_PROCESSING_TIMEOUT_SECONDS,
31+
"Watchdog timeout must be greater than maximum message processing time");
32+
2933
#define PAYLOAD_MSG_TEMPLATE \
3034
"{\""NRF_CLOUD_JSON_MSG_TYPE_KEY"\":\""NRF_CLOUD_JSON_MSG_TYPE_VAL_DATA"\"," \
3135
"\""NRF_CLOUD_JSON_APPID_KEY"\":\"%s\"," \
@@ -282,7 +286,8 @@ static void shell_task(void)
282286
const struct zbus_channel *chan;
283287
int task_wdt_id;
284288
const uint32_t wdt_timeout_ms = (CONFIG_APP_SHELL_WATCHDOG_TIMEOUT_SECONDS * MSEC_PER_SEC);
285-
const uint32_t execution_time_ms = (CONFIG_APP_SHELL_EXEC_TIME_SECONDS_MAX * MSEC_PER_SEC);
289+
const uint32_t execution_time_ms =
290+
(CONFIG_APP_SHELL_MSG_PROCESSING_TIMEOUT_SECONDS * MSEC_PER_SEC);
286291
const k_timeout_t zbus_wait_ms = K_MSEC(wdt_timeout_ms - execution_time_ms);
287292
uint8_t msg_buf[MAX_MSG_SIZE];
288293

0 commit comments

Comments
 (0)