I've got a project that I'm going to want to do DFU through the UART, and in order to transfer files in a follow-on activity, I want SMP running in the application. Therefore the smp_srv sample.
In my development and test activities, I'm using a nRF52840 DK.
I started with the SMP in MCUboot as described in the blog devzone.nordicsemi.com/.../device-firmware-update-dfu-with-mcuboot-bootloader, except I baselined on hello_world rather than blinky, modified to echo input via console_getline. In this case, the serial port for the bootloader is the USB CDC ACM feature. This works. I've also gotten it to work through the main UART port. Great.
Following instructions at SMP server (docs.nordicsemi.com/.../README.html).
I want to start with the USB CDC ACM approach, because that's how I started (successfully) with the precursor project above.
"west build -b nrf52840dk_nrf52840 /c/ncs/v2.6.0/zephyr/samples/subsys/mgmt/mcumgr/smp_svr -- -DEXTRA_CONF_FILE=overlay-cdc.conf -DDTC_OVERLAY_FILE=usb.overlay"
(I already have to specify the path to the source tree, unless I'm going to build it inside the SDK structure.)
It builds, but build/zephyr/.config does not have the symbols set in overlay-cdc.conf. This happens whether or not I append the full path on the overlay filenames.
So let's copy the smp_svr project to my local folder and do a "normal" west build.
"west build -b nrf52840dk_nrf52840 -- -DEXTRA_CONF_FILE=overlay-cdc.conf -DDTC_OVERLAY_FILE=usb.overlay"
Once again, build/zephyr/.config does not have, e.g., CONFIG_USB_DEVICE_STACK=y per the overlay_cdc.conf file.
In the MCUBoot SMP article which I used for the (successful) hello_world project, the command to build is
"west build -b nrf52840dk_nrf52840 --pristine -- -Dmcuboot_OVERLAY_CONFIG=[Absolute Path]\usb_cdc_acm_log_recovery.conf"
If I try adding the full path to the overlay file names, again, it builds fine, but the overlay-cdc.conf symbols are not set.
I can flash the resulting bin file, and MCUboot finds the image and runs it, with the appropriate messages showing up on the terminal attached to the main UART port. But no new COM port for the USB shows up. Because the project refused to configure for it.
What am I doing wrong?