diff --git a/esphome/components/zephyr_mcumgr/ota/__init__.py b/esphome/components/zephyr_mcumgr/ota/__init__.py index f9a32d80e0..1a11bab889 100644 --- a/esphome/components/zephyr_mcumgr/ota/__init__.py +++ b/esphome/components/zephyr_mcumgr/ota/__init__.py @@ -128,7 +128,7 @@ async def to_code(config): zephyr_add_prj_conf("MCUMGR_GRP_OS_MCUMGR_PARAMS", True) zephyr_add_prj_conf("NCS_SAMPLE_MCUMGR_BT_OTA_DFU_SPEEDUP", True) - if config[CONF_HARDWARE_UART]: + if CONF_HARDWARE_UART in config: cdc_id = UARTS[config[CONF_HARDWARE_UART]][1] if cdc_id >= 0: zephyr_add_cdc_acm(config, cdc_id) diff --git a/esphome/components/zephyr_shell/__init__.py b/esphome/components/zephyr_shell/__init__.py new file mode 100644 index 0000000000..7a9ba19b15 --- /dev/null +++ b/esphome/components/zephyr_shell/__init__.py @@ -0,0 +1,31 @@ +import esphome.config_validation as cv +from esphome.components.zephyr import zephyr_add_prj_conf, zephyr_add_overlay + +CONFIG_SCHEMA = cv.Schema({}) + + +async def to_code(config): + zephyr_add_prj_conf("SHELL", True) + # zephyr_ble_server + zephyr_add_prj_conf("BT_SHELL", True) + # ota + zephyr_add_prj_conf("MCUBOOT_SHELL", True) + # i2c + zephyr_add_prj_conf("I2C_SHELL", True) + # zigbee + zephyr_add_prj_conf("ZIGBEE_SHELL", True) + # select uart for shell + zephyr_add_overlay( + """ +/ { + chosen { + zephyr,shell-uart = &cdc_acm_uart1; + }; +}; +&zephyr_udc0 { + cdc_acm_uart1: cdc_acm_uart1 { + compatible = "zephyr,cdc-acm-uart"; + }; +}; +""" + )