Added separate ota config file based on the prj file.

Parameters are based on the zigbee light switch example from nrf-connect toolkit.
clang-format with vs code.
This commit is contained in:
Ole Odendahl 2024-04-28 14:49:23 +02:00
parent a15bd37a1a
commit 61533da1b6
No known key found for this signature in database
GPG key ID: 116D1FA8CD50CD0B
2 changed files with 132 additions and 46 deletions

View file

@ -0,0 +1,89 @@
CONFIG_LOG=y
CONFIG_PWM=y
CONFIG_I2C=y
CONFIG_ADC=y
CONFIG_GPIO=y
CONFIG_USE_SEGGER_RTT=y
CONFIG_SEGGER_RTT_BUFFER_SIZE_UP=4096
CONFIG_NEWLIB_LIBC=y
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
CONFIG_SERIAL=n
CONFIG_HEAP_MEM_POOL_SIZE=2048
CONFIG_MAIN_THREAD_PRIORITY=7
CONFIG_ZIGBEE=y
CONFIG_ZIGBEE_APP_UTILS=y
CONFIG_ZIGBEE_ROLE_END_DEVICE=y
# This example requires more workqueue stack
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048
# Enable nRF ECB driver
CONFIG_CRYPTO=y
CONFIG_CRYPTO_NRF_ECB=y
CONFIG_CRYPTO_INIT_PRIORITY=80
# Networking
CONFIG_NET_IPV6=n
CONFIG_NET_IPV6_MLD=n
CONFIG_NET_IPV6_NBR_CACHE=n
CONFIG_NET_IPV6_RA_RDNSS=n
CONFIG_NET_IP_ADDR_CHECK=n
CONFIG_NET_UDP=n
##
## ZigBee Channel Selection
##
# Get Zigbee to scan every channel.
CONFIG_ZIGBEE_CHANNEL_SELECTION_MODE_MULTI=y
# By default only scans channel 11 (ZigBee2MQTT default) and 15 (ZHA default).
# Comment to scan all channels - this will make pairing consume more energy.
# CONFIG_ZIGBEE_CHANNEL_MASK=0x8800
# Uncomment to set a specific channel - this will make pairing more energy efficient.
# CONFIG_ZIGBEE_CHANNEL=15
# Enable API for powering down unused RAM parts.
# https://developer.nordicsemi.com/nRF_Connect_SDK/doc/1.7.1/nrf/ug_zigbee_configuring.html#power-saving-during-sleep
CONFIG_RAM_POWER_DOWN_LIBRARY=y
# LittleFS.
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_FLASH=y
CONFIG_FLASH_MAP=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FILE_SYSTEM=y
CONFIG_FILE_SYSTEM_LITTLEFS=y
CONFIG_WATCHDOG=y
CONFIG_HWINFO=y
CONFIG_ASSERT=y
# Uncomment for debug log level.
# CONFIG_LOG_DEFAULT_LEVEL=4
# Factory reset method selection. Only hardware revision 2.0.0+ has button SW1. Earlier
# revisions must select a different method. See Kconfig for options.
# CONFIG_PRST_ZB_FACTORY_RESET_VIA_SW1=y
# Disable factory reset.
# OTA update configuration. This is based on the zigbee light switch example from the nrf-connect toolkit.
CONFIG_ZIGBEE_FOTA=y
CONFIG_ZIGBEE_FOTA_ENDPOINT=5
CONFIG_MCUBOOT_IMGTOOL_SIGN_VERSION="1.0.0" # Increase this version for generating an update for the devices.
CONFIG_ZIGBEE_FOTA_COMMENT="b_parasite"
# Ensure an MCUboot-compatible binary is generated.
CONFIG_IMG_MANAGER=y
CONFIG_STREAM_FLASH=y
CONFIG_DFU_TARGET_MCUBOOT=y
CONFIG_IMG_ERASE_PROGRESSIVELY=y
CONFIG_ZIGBEE_FOTA_PROGRESS_EVT=y
# Increase the number of RX buffers
CONFIG_NRF_802154_RX_BUFFERS=32

View file

@ -17,9 +17,9 @@
#include <zigbee/zigbee_error_handler.h>
#if CONFIG_ZIGBEE_FOTA
#include <zigbee/zigbee_fota.h>
#include <zephyr/sys/reboot.h>
#include <zephyr/dfu/mcuboot.h>
#include <zephyr/sys/reboot.h>
#include <zigbee/zigbee_fota.h>
#endif
#include "debug_counters.h"
@ -134,8 +134,7 @@ ZBOSS_DECLARE_DEVICE_CTX_2_EP(
zigbee_fota_client_ep,
app_template_ep);
static void confirm_image(void)
{
static void confirm_image(void) {
if (!boot_is_img_confirmed()) {
int ret = boot_write_img_confirmed();
@ -147,8 +146,7 @@ static void confirm_image(void)
}
}
static void ota_evt_handler(const struct zigbee_fota_evt *evt)
{
static void ota_evt_handler(const struct zigbee_fota_evt *evt) {
switch (evt->id) {
case ZIGBEE_FOTA_EVT_PROGRESS:
// dk_set_led(OTA_ACTIVITY_LED, evt->dl.progress % 2);
@ -169,8 +167,7 @@ static void ota_evt_handler(const struct zigbee_fota_evt *evt)
}
}
static void zcl_device_cb(zb_bufid_t bufid)
{
static void zcl_device_cb(zb_bufid_t bufid) {
zb_zcl_device_callback_param_t *device_cb_param =
ZB_BUF_GET_PARAM(bufid, zb_zcl_device_callback_param_t);