<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/102044/nrf5340-esb-ota</link><description>Hello, 
 I have tested the smp_svr with hci_rpmsg Bluetooth OTA feature and I have successfully uploaded the firmware which worked with the old device manager Android app. I would like to use 2 nrf5340 with ESB protocol. What would be a good starting</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 22 Nov 2023 14:23:51 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/102044/nrf5340-esb-ota" /><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/456961?ContentTypeID=1</link><pubDate>Wed, 22 Nov 2023 14:23:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8ac79923-f6fc-4b3d-8b81-ae8fb90a3274</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;I will continue helping in this case.&lt;/p&gt;
&lt;p&gt;After thinking a bit about this case I realized that what makes this case different from BLE is that ESB runs only on the network core.&lt;/p&gt;
&lt;p&gt;So for BLE, DFU works in two steps: First we move the new image to mcuboot_secondary and tag it to swap. Then we reboot and MCUboot will find this and swap it into mcuboot_primary. &lt;br /&gt;For the nRF5340, there is another step: We need to move the network core image into mcuboot_secondary1, then it will be swapped into the network core. The reason for this is that the application core can not write to network core flash.&lt;/p&gt;
&lt;p&gt;In other words, as long as the update goes into the correct place in flash, we do not care about where in flash it goes to.&lt;br /&gt;You can send the binary files in any way you want.&lt;/p&gt;
&lt;p&gt;We have the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/services/device_mgmt/smp_protocol.html"&gt;mcumgr library&lt;/a&gt; to make this easier for us in zephyr. However, this assumes that the images are received in the application core, as is done with BLE.&lt;/p&gt;
&lt;p&gt;So as I see it, you have two choices: Either make a ESB variant of the hci_rpmsg used by BLE, and implement some kind of ESB host in the application core. Then you could simply add ESB as a transport for mcumgr. &lt;/p&gt;
&lt;p&gt;Alternatively, you can send the data in whatever way you want to the application core, and then write the updates to the correct slots with our &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/libraries/dfu/dfu_target.html#dfu-target"&gt;DFU target library&lt;/a&gt;, which does not care about transport.&lt;/p&gt;
&lt;p&gt;Did I understand your issue correctly?&lt;/p&gt;
&lt;p&gt;Bonus: A colleague of mine created&amp;nbsp; &lt;a href="https://github.com/jori-nordic/sdk-nrf/tree/7beb39a141e62e7b04a02e6076a840f16b823810/samples/esb/prx"&gt;this sample&lt;/a&gt; a while ago. Maybe it can serve as some inspiration to how you can communicate between cores with ESB?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/456290?ContentTypeID=1</link><pubDate>Sun, 19 Nov 2023 17:46:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d02cf6c-b77f-4e80-a9d5-1669efccb26e</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t exactly need to know what the IPC service does and how it connects to the app core but that pipeline is what send the firmware from the netcore to the app core that handles reflashing. I am only interested on how to packet the firmware data and put it into the ipc service. I am using the SMP server sample with bluetooth overlay as guidance but that example is only viable of the client sending over the data has the packets already assembled in a way that the server understands them as &amp;quot;firmware upgrade&amp;quot;. Lets say I have one nrf5340 running stock smp server example code with the bluetooth overlay, and for the other nrf5340 I want it to be acting as the client sending over the firmware. Hypothetical if I program the client with simple bluetooth code that is able to connect to the server nrf5340 with the stock sample code. I then on the client side send over VCOM (cpunet) the raw .bin file to the net core and being connected to the smp server via bluetooth I am sending raw binary packets. When the server receives those how will it now that these bluetooth packets are now for updating the firmware for the app core on the server side? This is what I am trying to understand on how to make these packets so the server can understand what I will send from the client nrf5340 to the server nrf5340.&lt;br /&gt;&lt;br /&gt;Thank you for the github repo on the bootloader samples in there I found sample of the &amp;quot;client_smp/smp_client_ble&amp;quot; repo showing off exactly what I am after, but it is based on the nrf52840 chipset. In the client codebase when sending the data over the packets are formed using zcbor functions:&lt;br /&gt;&lt;img style="max-height:627px;max-width:627px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/1254x1254/__key/communityserver-discussions-components-files/4/pastedimage1700414836236v1.png" /&gt;&lt;br /&gt;&lt;br /&gt;Now because the nrf52840 is a single core chip the radio functions are running on the same core as the smp server, my questions here is if there is another step of encoding/packetizing being done on the nrf5340 IPC as the data moves between cores and if the appcore needs to unpack what come from netcore and then sends the packet further along to the smp server, or is this all the magic behind it?&lt;/p&gt;
&lt;p&gt;Looking that the question of my initial ticket I have written down my goal quite poorly but what I am trying to achieve is OTA capabilities between two nrf5340 chipsets using ESB. We can stick with bluetooth for now to test the binary movement from one nrf5340 to the other one being actually flashed with the new binary, mcuboot recognizing it and being able to boot into the new firmware.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Domen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/455530?ContentTypeID=1</link><pubDate>Tue, 14 Nov 2023 13:25:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:618d3581-4f63-4992-bf3c-0e1c234a4704</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi again&lt;/p&gt;
&lt;p&gt;You&amp;#39;re overcomplicating things quite a bit as you won&amp;#39;t need to jump into the IPC service and specify what the APP and NET core does. The SMP server sample with a Bluetooth LE overlay would be the recommended way to go forward, documentation available here:&amp;nbsp;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/README.html"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/samples/subsys/mgmt/mcumgr/smp_svr/README.html&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Alternatively, the bootloader samples from my colleague Sigurd here with some additional insight of how it works in NCS is available in his Github repo:&amp;nbsp;&lt;a href="https://github.com/hellesvik-nordic/samples_for_nrf_connect_sdk/tree/main/bootloader_samples"&gt;https://github.com/hellesvik-nordic/samples_for_nrf_connect_sdk/tree/main/bootloader_samples&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The IPC service and doing it in this much of a low-level will be a lot of unnecessary hard work, sweat and tears I think.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/455361?ContentTypeID=1</link><pubDate>Mon, 13 Nov 2023 14:57:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:59a396bf-c606-4672-a287-a3aa4fd5932c</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hey Simon,&lt;/p&gt;
&lt;p&gt;thank you for your information. What I am after here is the understanding of the application core writing to flash or rather how to packetize the binary app_update.bin when received by the network core into a structure which is then sent over IPC to the app core, where the app core then writes onto flash. From the documentation you have sent it says that the application core cannot access the flash of the network core, I assume that the network core cannot access the applications core&amp;#39;s flash either. So my question is when I received the binary data in the network core I want to sent this now to the app core, assuming this transfer is being done in the IPC_service, how do I need to structure the binary data and packetize it so when I send it over to the app core that it flashes the new binary?&lt;br /&gt;&lt;br /&gt;In my previous post the second image is a printout of what is being sent through the IPC service. Infont of the packets sent is I assume a command and padding of sorts following the data. When I initiate the firmware update through bluetooth with the device manager android app, you can distinguish that the data sent is the binary file. What I would like to do is use the ESB example for the network core, open the same IPC service, packetize the gotten binary as it needs to be and send it to the app core. I am just stuck at the stage understanding on how to make this packets for the app core to decipher that the sent data is the binary update.&lt;br /&gt;&lt;br /&gt;I am assuming this is the procedure of writing the binary data gotten from the network core that updates the app core. If it is different in fact, please let me know how it is done.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Domen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/455330?ContentTypeID=1</link><pubDate>Mon, 13 Nov 2023 14:18:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dc2194b9-f5b1-47ab-8ebe-3263d6f7ebdb</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi Domen&lt;/p&gt;
&lt;p&gt;I think you&amp;#39;re on a bit lower level here than what you need to be in NCS. We have a library for specifically sending DFU images to the NET core on the nRF5340 &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/libraries/dfu/pcd.html"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not very familiar with the IPC service I&amp;#39;m afraid, but I think that the secondary partition for the NET core image is configured in the shared RAM between the NET and APP cores. So the NET core will take care of swapping the NET core&amp;#39;s image in this case, and that would be why you don&amp;#39;t see mentions of the IPC in the mgmt.c.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/455147?ContentTypeID=1</link><pubDate>Fri, 10 Nov 2023 14:41:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5fcc985-7b50-420b-8e8b-a7dc1af31114</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hello Simon,&lt;/p&gt;
&lt;p&gt;I see, thank you for the references. With the smp_svr sample and included hci_rpmsg the hci_rpmsg opens up the IPC service like how it is described in the .dts file on the shared memory. From what I understand some task in the application core opens the same instance and they start communicating through that medium. The application task that communicates through IPC I assume is writing to flash. But the packets are formed in a certain way so that the task knows if that is for being written to flash or any other commands based on the packet. In the smp_svr main.c there isn&amp;#39;t anything that shows opening any IPC service so I assume the task is initialized prior with the configs and runs in the back. When I list the tasks the kernel can show it looks like this:&lt;br /&gt;&lt;img style="max-height:203px;max-width:564px;" height="203" src="https://devzone.nordicsemi.com/resized-image/__size/1128x406/__key/communityserver-discussions-components-files/4/pastedimage1699626720738v1.png" width="564" alt=" " /&gt;&lt;br /&gt;Looking into mcumgr smp in your github under nrfconnect/sdk-zephyr/subsys/mgmt/mcumgr/mgmt/src/mgmt.c I thought that is the task that communicates with the network core and flashes things but looks like some other task is responsible for that. Now my question is which task/thread/project in this sample project is writing to the flash with the information from the network core? And if you maybe have documentation or API on how this packets are structured for the app IPC task to write to flash. From the log of what is send to the ipc_service_send function in the hci_rpmsg you get information like this:&lt;br /&gt;&lt;img style="max-height:245px;max-width:523px;" height="245" src="https://devzone.nordicsemi.com/resized-image/__size/1046x490/__key/communityserver-discussions-components-files/4/pastedimage1699627172300v2.png" width="523" alt=" " /&gt;&lt;br /&gt;And it looks like there is a structure behind the data packets with commands infront with the following data. I would then structure the same packets from the information that I get from ESB and send it through the same IPC process.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Domen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/455102?ContentTypeID=1</link><pubDate>Fri, 10 Nov 2023 11:41:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d68dcb95-8cbe-44fd-8290-b83cb18e13f9</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi Domen&lt;/p&gt;
&lt;p&gt;The IPC service and its API is well described in the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/zephyr/services/ipc/ipc_service/ipc_service.html#ipc-service"&gt;Zephyr project documentation here&lt;/a&gt;, and you can either use the&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/libraries/shell/shell_ipc.html"&gt; IPC service shell transport&lt;/a&gt; o&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/drivers/uart_ipc.html"&gt;r IPC UART driver &lt;/a&gt;to send data over UART to another processor. Let me know if you run into any problems.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/454885?ContentTypeID=1</link><pubDate>Thu, 09 Nov 2023 11:41:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:87dc45dc-b9d1-41e0-a133-2ca75f71cfbf</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Alright if I use ESB+BLE sample as is for the CPUNET core of the NRF5340 I still need to convey the ESB data to the secondary image slot via the ipc_service. Can you guide me on any documentation on how to interface via the &amp;quot;ipc_service_send&amp;quot; function that the hci_rpmsg is using? I would need information now on how the ipc_service works and how I need to packetize the data for the new binary to be stored in the flash and that the bootloader &amp;quot;sees&amp;quot; a new secondary image.&lt;br /&gt;&lt;br /&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Domen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/452798?ContentTypeID=1</link><pubDate>Fri, 27 Oct 2023 13:19:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b94cf466-f018-4e2a-b135-9084e35dab7a</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi again&lt;/p&gt;
&lt;p&gt;After a bit of digging around researching your issue I found/was made aware of &lt;a href="https://github.com/jori-nordic/sdk-nrf/tree/7beb39a141e62e7b04a02e6076a840f16b823810/samples/esb/prx"&gt;this GitHub sample&lt;/a&gt; by one of our devs that have passed by me. It is an ESB + BLE sample for the nRF5340 that should build/run as is. Can you take a look at that, as these prj.conf snippets don&amp;#39;t tell me much, and the ESB expert here on tech support is currently busy, so what specifics we can help with are a bit limited at the time being unfortunately.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/452556?ContentTypeID=1</link><pubDate>Thu, 26 Oct 2023 12:37:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:03f811b5-61ca-422b-8750-ba45a313d965</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I am modifying the hci_rpmsg project that gets called from smp_svr as child image. I am trying to build only the hci_rpmsg project now for the nrf5340_cpunet core but with the included files from the github the build always fails based on missing configs. I modified the prj.conf of the hci_rpmsg project like this:&lt;/p&gt;
&lt;div style="background-color:#1f1f1f;color:#cccccc;font-family:Consolas, &amp;#39;Courier New&amp;#39;, monospace;font-size:14px;font-weight:normal;line-height:19px;white-space:pre;"&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_IPC_SERVICE&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_MBOX&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_HEAP_MEM_POOL_SIZE&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=8192&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_MAIN_STACK_SIZE&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=512&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=512&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT_HCI&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT_HCI_RAW&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=n&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;#CONFIG_BT_HCI_RAW_RESERVE=1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;#CONFIG_BT_MAX_CONN=16&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT_RPC_STACK&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=y&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;#CONFIG_BT_HCI_HOST=y&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT_MAX_PAIRED&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=2&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# Workaround: Unable to allocate command buffer when using K_NO_WAIT since&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# Host number of completed commands does not follow normal flow control.&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#569cd6;"&gt;CONFIG_BT_BUF_CMD_TX_COUNT&lt;/span&gt;&lt;span style="color:#cccccc;"&gt;=10&lt;/span&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# Enable and adjust the below value as necessary&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# CONFIG_BT_BUF_EVT_RX_COUNT=16&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# CONFIG_BT_BUF_EVT_RX_SIZE=255&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# CONFIG_BT_BUF_ACL_RX_SIZE=255&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# CONFIG_BT_BUF_ACL_TX_SIZE=251&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span style="color:#6a9955;"&gt;# CONFIG_BT_BUF_CMD_TX_SIZE=255&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Some of the old things like CONFIG_BT_HCI_RAW I had to disable as CONFIG_BT_MAX_PAIRED has dependencies on CONFIG_BT_HCI_HOST that has dependencies on !CONFIG_BT_HCI_RAW. I have added the ones that had dependencies form others. But the problem now is BT_MAX_PAIRED still isn&amp;#39;t assignable because BT_CONN isn&amp;#39;t set. BT_CONN cannot be user set and is dependent on CONFIG_BT and CONFIG_BT_HCI which are both set and yet the system gives me back that CONFIG_BT_CONN=n. Picture from nRF Kconfig GUI:&lt;br /&gt;&lt;img style="max-height:240px;max-width:800px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/1600x480/__key/communityserver-discussions-components-files/4/4341.config.png" /&gt;&lt;/p&gt;
&lt;p&gt;I would like to use the smp_svr + hci_rpmsg as it is a good starting point on porting the transmission protocol from bluetooth to ESB and just reverse engineer the packets and how to send the binary over ESB and keep the stack that writes the packets into the bootloader. If you have any other better suggestion on how to solve this or another angle please let me know.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Domen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/451936?ContentTypeID=1</link><pubDate>Tue, 24 Oct 2023 10:42:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f5d7ab6d-7a76-458d-ae84-4617fbba7f8b</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;How does your config file look here? The error messages seem to be struggling to find&amp;nbsp;&lt;span&gt;CONFIG_BT_MAX_PAIRED&amp;nbsp;which should be enabled in the configs of the Bluetooth Host controller. I think starting out with a Bluetooth sample and adding ESB features will be easier than adding the overlay-bt.conf altogether on your end. Have you made sure that the NET core has the Bluetooth controller enabled in its configs as well (should be done in the child image).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Simon&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/451597?ContentTypeID=1</link><pubDate>Sun, 22 Oct 2023 19:08:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:30d79dae-9362-4cd4-a4d4-8ee2ef0a3667</guid><dc:creator>Domziy</dc:creator><description>&lt;p&gt;Hello, I am trying to implement your colleagues ESB+BT example on the nrf5340 but I get undeclared config errors even though it is configured in the project. I am using the same sample code smp_svr with the overlay-bt.conf in the build configuration. I have modified the hci_rpmsg CMakeLists.txt in the SDK with the one used in the ESB+BT example of including the c file sources and library directories. When the source files and directory is included I get the error of: &lt;br /&gt;=== child image b0n - CPUNET (inherited) end ===&lt;br /&gt;&lt;br /&gt;CMake Warning at C:/ncs/v2.4.2/nrf/subsys/bootloader/cmake/debug_keys.cmake:36 (message):&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --------------------------------------------------------------&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --- WARNING: Using generated NSIB public/private key-pair. ---&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --- It should not be used for production.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ---&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --- See CONFIG_SB_SIGNING_KEY_FILE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ---&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --------------------------------------------------------------&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&lt;br /&gt;Call Stack (most recent call first):&lt;br /&gt;&amp;nbsp; C:/ncs/v2.4.2/nrf/subsys/bootloader/cmake/provision_hex.cmake:37 (include)&lt;br /&gt;&amp;nbsp; C:/ncs/v2.4.2/nrf/subsys/CMakeLists.txt:17 (include)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- libmetal version: 1.3.0 (C:/ncs/v2.4.2/zephyr/samples/bluetooth/hci_rpmsg)&lt;br /&gt;-- Build type: &amp;nbsp;&lt;br /&gt;-- Host:&amp;nbsp;&amp;nbsp;&amp;nbsp; Windows/AMD64&lt;br /&gt;-- Target:&amp;nbsp; Generic/arm&lt;br /&gt;-- Machine: arm&lt;br /&gt;-- open-amp version: 1.3.0 (C:/ncs/v2.4.2/modules/lib/open-amp/open-amp)&lt;br /&gt;-- Host:&amp;nbsp;&amp;nbsp;&amp;nbsp; Windows/AMD64&lt;br /&gt;-- Target:&amp;nbsp; Generic/arm&lt;br /&gt;-- Machine: arm&lt;br /&gt;-- C_FLAGS :&amp;nbsp; -Wall -Wextra&lt;br /&gt;CMake Warning at ../../../CMakeLists.txt:839 (message):&lt;br /&gt;&amp;nbsp; No SOURCES given to Zephyr library: lib__libc__common&lt;br /&gt;&lt;br /&gt;&amp;nbsp; Excluding target from build.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- Configuring done&lt;br /&gt;-- Generating done&lt;br /&gt;-- Build files have been written to: C:/Ntest/smp_svr/build/hci_rpmsg&lt;br /&gt;[0/244] Performing build step for &amp;#39;b0n_subimage&amp;#39;&lt;br /&gt;[1/29] Generating misc/generated/syscalls.json, misc/generated/struct_tags.json&lt;br /&gt;[2/29] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.2/nrf/subsys/partition_manager/flash_map_partition_manager.c.obj&lt;br /&gt;[3/29] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto_oberon_hash.c.obj&lt;br /&gt;[4/29] Building C object CMakeFiles/app.dir/src/main.c.obj&lt;br /&gt;[5/29] Building C object modules/nrf/subsys/bootloader/bl_boot/CMakeFiles/..__nrf__subsys__bootloader__bl_boot.dir/bl_boot.c.obj&lt;br /&gt;[6/29] Generating linker_zephyr_pre0.cmd&lt;br /&gt;[7/29] Generating linker_zephyr_pre1.cmd&lt;br /&gt;[8/29] Building C object modules/nrf/subsys/bootloader/bl_crypto/CMakeFiles/..__nrf__subsys__bootloader__bl_crypto.dir/bl_crypto.c.obj&lt;br /&gt;[9/29] Building C object modules/nrf/subsys/bootloader/bl_storage/CMakeFiles/..__nrf__subsys__bootloader__bl_storage.dir/bl_storage.c.obj&lt;br /&gt;[10/29] Building C object modules/nrf/subsys/pcd/CMakeFiles/..__nrf__subsys__pcd.dir/src/pcd.c.obj&lt;br /&gt;[11/29] Building C object modules/nrf/subsys/bootloader/bl_validation/CMakeFiles/..__nrf__subsys__bootloader__bl_validation.dir/bl_validation.c.obj&lt;br /&gt;[12/29] Building C object modules/nrf/subsys/fw_info/CMakeFiles/..__nrf__subsys__fw_info.dir/fw_info.c.obj&lt;br /&gt;[13/29] Linking C static library app\libapp.a&lt;br /&gt;[14/29] Linking C static library modules\nrf\subsys\bootloader\bl_boot\lib..__nrf__subsys__bootloader__bl_boot.a&lt;br /&gt;[15/29] Linking C static library modules\nrf\subsys\bootloader\bl_crypto\lib..__nrf__subsys__bootloader__bl_crypto.a&lt;br /&gt;[16/29] Linking C static library modules\nrf\subsys\bootloader\bl_storage\lib..__nrf__subsys__bootloader__bl_storage.a&lt;br /&gt;[17/29] Linking C static library modules\nrf\subsys\pcd\lib..__nrf__subsys__pcd.a&lt;br /&gt;[18/29] Linking C static library modules\nrf\subsys\fw_info\lib..__nrf__subsys__fw_info.a&lt;br /&gt;[19/29] Linking C static library modules\nrf\subsys\bootloader\bl_validation\lib..__nrf__subsys__bootloader__bl_validation.a&lt;br /&gt;[20/29] Linking C static library zephyr\libzephyr.a&lt;br /&gt;[21/29] Linking C executable zephyr\zephyr_pre0.elf&lt;br /&gt;&lt;br /&gt;[22/29] Generating dev_handles.c&lt;br /&gt;[23/29] Building C object zephyr/CMakeFiles/zephyr_pre1.dir/dev_handles.c.obj&lt;br /&gt;[24/29] Linking C executable zephyr\zephyr_pre1.elf&lt;br /&gt;&lt;br /&gt;[25/29] Generating linker.cmd&lt;br /&gt;[26/29] Generating isr_tables.c, isrList.bin&lt;br /&gt;[27/29] Building C object zephyr/CMakeFiles/zephyr_final.dir/dev_handles.c.obj&lt;br /&gt;[28/29] Building C object zephyr/CMakeFiles/zephyr_final.dir/isr_tables.c.obj&lt;br /&gt;[29/29] Linking C executable zephyr\zephyr.elf&lt;br /&gt;Memory region&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used Size&amp;nbsp; Region Size&amp;nbsp; %age Used&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FLASH:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 23530 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 34176 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 68.85%&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3456 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 64 KB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5.27%&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SRAM1:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 GB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 64 KB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00%&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IDT_LIST:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 GB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 KB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00%&lt;br /&gt;[18/244] Building C object zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.2/nrf/subsys/bluetooth/services/lbs.c.obj&lt;br /&gt;FAILED: zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.2/nrf/subsys/bluetooth/services/lbs.c.obj &lt;br /&gt;C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -DEXT_API_MAGIC=0x281ee6de,0xb845acea,13570 -DFIRMWARE_INFO_MAGIC=0x281ee6de,0x8fcebb4c,13570 -DKERNEL -DNRF5340_XXAA_NETWORK -DUSE_PARTITION_MANAGER=1 -DVALIDATION_INFO_MAGIC=0x281ee6de,0x86518483,79106 -DVALIDATION_POINTER_MAGIC=0x281ee6de,0x6919b47e,79106 -D__PROGRAM_START -D__ZEPHYR__=1 -IC:/ncs/v2.4.2/zephyr/kernel/include -IC:/ncs/v2.4.2/zephyr/arch/arm/include -IC:/ncs/v2.4.2/nrf/drivers/mpsl/clock_control -IC:/ncs/v2.4.2/zephyr/include -Izephyr/include/generated -IC:/ncs/v2.4.2/zephyr/soc/arm/nordic_nrf/nrf53 -IC:/ncs/v2.4.2/zephyr/soc/arm/nordic_nrf/common/. -IC:/ncs/v2.4.2/zephyr/subsys/bluetooth -IC:/ncs/v2.4.2/nrf/include -IC:/ncs/v2.4.2/nrf/lib/multithreading_lock/. -IC:/ncs/v2.4.2/nrf/subsys/bluetooth/controller/. -IC:/ncs/v2.4.2/nrf/tests/include -IC:/ncs/v2.4.2/modules/hal/cmsis/CMSIS/Core/Include -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx/drivers/include -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx/mdk -IC:/ncs/v2.4.2/zephyr/modules/hal_nordic/nrfx/. -Imodules/libmetal/libmetal/lib/include -IC:/ncs/v2.4.2/modules/lib/open-amp/open-amp/lib/include -IC:/ncs/v2.4.2/modules/crypto/tinycrypt/lib/include -IC:/ncs/v2.4.2/nrfxlib/mpsl/include -IC:/ncs/v2.4.2/nrfxlib/mpsl/include/protocol -IC:/ncs/v2.4.2/nrfxlib/softdevice_controller/include -isystem C:/ncs/v2.4.2/zephyr/lib/libc/minimal/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include-fixed -fno-strict-aliasing -Os -imacros C:/Ntest/smp_svr/build/hci_rpmsg/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m33+nodsp -mthumb -mabi=aapcs --sysroot=C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi -imacros C:/ncs/v2.4.2/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=C:/ncs/v2.4.2/zephyr/samples/bluetooth/hci_rpmsg=CMAKE_SOURCE_DIR -fmacro-prefix-map=C:/ncs/v2.4.2/zephyr=ZEPHYR_BASE -fmacro-prefix-map=C:/ncs/v2.4.2=WEST_TOPDIR -ffunction-sections -fdata-sections -std=c99 -nostdinc -MD -MT zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.2/nrf/subsys/bluetooth/services/lbs.c.obj -MF zephyr\CMakeFiles\zephyr.dir\C_\ncs\v2.4.2\nrf\subsys\bluetooth\services\lbs.c.obj.d -o zephyr/CMakeFiles/zephyr.dir/C_/ncs/v2.4.2/nrf/subsys/bluetooth/services/lbs.c.obj -c C:/ncs/v2.4.2/nrf/subsys/bluetooth/services/lbs.c&lt;br /&gt;In file included from C:\ncs\v2.4.2\nrf\subsys\bluetooth\services\lbs.c:23:&lt;br /&gt;C:\ncs\v2.4.2\zephyr\include\zephyr\bluetooth\gatt.h:727:34: error: &amp;#39;CONFIG_BT_MAX_PAIRED&amp;#39; undeclared here (not in a function); did you mean &amp;#39;CONFIG_BT_MAX_CONN&amp;#39;?&lt;br /&gt;&amp;nbsp; 727 |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #define BT_GATT_CCC_MAX (CONFIG_BT_MAX_PAIRED + CONFIG_BT_MAX_CONN)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^~~~~~~~~~~~~~~~~~~~&lt;br /&gt;C:\ncs\v2.4.2\zephyr\include\zephyr\bluetooth\gatt.h:745:36: note: in expansion of macro &amp;#39;BT_GATT_CCC_MAX&amp;#39;&lt;br /&gt;&amp;nbsp; 745 |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct bt_gatt_ccc_cfg cfg[BT_GATT_CCC_MAX];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^~~~~~~~~~~~~~~&lt;br /&gt;[19/244] Building C object CMakeFiles/app.dir/C_/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_bt_lbs.c.obj&lt;br /&gt;FAILED: CMakeFiles/app.dir/C_/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_bt_lbs.c.obj &lt;br /&gt;C:\ncs\toolchains\31f4403e35\opt\zephyr-sdk\arm-zephyr-eabi\bin\arm-zephyr-eabi-gcc.exe -DEXT_API_MAGIC=0x281ee6de,0xb845acea,13570 -DFIRMWARE_INFO_MAGIC=0x281ee6de,0x8fcebb4c,13570 -DKERNEL -DNRF5340_XXAA_NETWORK -DUSE_PARTITION_MANAGER=1 -DVALIDATION_INFO_MAGIC=0x281ee6de,0x86518483,79106 -DVALIDATION_POINTER_MAGIC=0x281ee6de,0x6919b47e,79106 -D__PROGRAM_START -D__ZEPHYR__=1 -IC:/Ntest/ncs-esb-ble-mpsl-demo-master/common -IC:/ncs/v2.4.2/nrf/drivers/mpsl/clock_control -IC:/ncs/v2.4.2/zephyr/include -Izephyr/include/generated -IC:/ncs/v2.4.2/zephyr/soc/arm/nordic_nrf/nrf53 -IC:/ncs/v2.4.2/zephyr/soc/arm/nordic_nrf/common/. -IC:/ncs/v2.4.2/zephyr/subsys/bluetooth -IC:/ncs/v2.4.2/nrf/include -IC:/ncs/v2.4.2/nrf/lib/multithreading_lock/. -IC:/ncs/v2.4.2/nrf/subsys/bluetooth/controller/. -IC:/ncs/v2.4.2/nrf/tests/include -IC:/ncs/v2.4.2/modules/hal/cmsis/CMSIS/Core/Include -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx/drivers/include -IC:/ncs/v2.4.2/modules/hal/nordic/nrfx/mdk -IC:/ncs/v2.4.2/zephyr/modules/hal_nordic/nrfx/. -Imodules/libmetal/libmetal/lib/include -IC:/ncs/v2.4.2/modules/lib/open-amp/open-amp/lib/include -IC:/ncs/v2.4.2/modules/crypto/tinycrypt/lib/include -IC:/ncs/v2.4.2/nrfxlib/mpsl/include -IC:/ncs/v2.4.2/nrfxlib/mpsl/include/protocol -IC:/ncs/v2.4.2/nrfxlib/softdevice_controller/include -isystem C:/ncs/v2.4.2/zephyr/lib/libc/minimal/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include -isystem c:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/bin/../lib/gcc/arm-zephyr-eabi/12.2.0/include-fixed -fno-strict-aliasing -Os -imacros C:/Ntest/smp_svr/build/hci_rpmsg/zephyr/include/generated/autoconf.h -ffreestanding -fno-common -g -gdwarf-4 -fdiagnostics-color=always -mcpu=cortex-m33+nodsp -mthumb -mabi=aapcs --sysroot=C:/ncs/toolchains/31f4403e35/opt/zephyr-sdk/arm-zephyr-eabi/arm-zephyr-eabi -imacros C:/ncs/v2.4.2/zephyr/include/zephyr/toolchain/zephyr_stdint.h -Wall -Wformat -Wformat-security -Wno-format-zero-length -Wno-pointer-sign -Wpointer-arith -Wexpansion-to-defined -Wno-unused-but-set-variable -Werror=implicit-int -fno-pic -fno-pie -fno-asynchronous-unwind-tables -fno-reorder-functions --param=min-pagesize=0 -fno-defer-pop -fmacro-prefix-map=C:/ncs/v2.4.2/zephyr/samples/bluetooth/hci_rpmsg=CMAKE_SOURCE_DIR -fmacro-prefix-map=C:/ncs/v2.4.2/zephyr=ZEPHYR_BASE -fmacro-prefix-map=C:/ncs/v2.4.2=WEST_TOPDIR -ffunction-sections -fdata-sections -std=c99 -nostdinc -MD -MT CMakeFiles/app.dir/C_/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_bt_lbs.c.obj -MF CMakeFiles\app.dir\C_\Ntest\ncs-esb-ble-mpsl-demo-master\common\app_bt_lbs.c.obj.d -o CMakeFiles/app.dir/C_/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_bt_lbs.c.obj -c C:/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_bt_lbs.c&lt;br /&gt;In file included from C:\Ntest\ncs-esb-ble-mpsl-demo-master\common\app_bt_lbs.c:8:&lt;br /&gt;C:\ncs\v2.4.2\zephyr\include\zephyr\bluetooth\gatt.h:727:34: error: &amp;#39;CONFIG_BT_MAX_PAIRED&amp;#39; undeclared here (not in a function); did you mean &amp;#39;CONFIG_BT_MAX_CONN&amp;#39;?&lt;br /&gt;&amp;nbsp; 727 |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #define BT_GATT_CCC_MAX (CONFIG_BT_MAX_PAIRED + CONFIG_BT_MAX_CONN)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^~~~~~~~~~~~~~~~~~~~&lt;br /&gt;C:\ncs\v2.4.2\zephyr\include\zephyr\bluetooth\gatt.h:745:36: note: in expansion of macro &amp;#39;BT_GATT_CCC_MAX&amp;#39;&lt;br /&gt;&amp;nbsp; 745 |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; struct bt_gatt_ccc_cfg cfg[BT_GATT_CCC_MAX];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^~~~~~~~~~~~~~~&lt;br /&gt;[36/244] Building C object CMakeFiles/app.dir/C_/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_timeslot.c.obj&lt;br /&gt;C:/Ntest/ncs-esb-ble-mpsl-demo-master/common/app_timeslot.c: In function &amp;#39;mpsl_timeslot_callback&amp;#39;:&lt;br /&gt;C:\Ntest\ncs-esb-ble-mpsl-demo-master\common\app_timeslot.c:155:43: warning: implicit declaration of function &amp;#39;RADIO_IRQHandler&amp;#39; [-Wimplicit-function-declaration]&lt;br /&gt;&amp;nbsp; 155 |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(m_in_timeslot) RADIO_IRQHandler();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ^~~~~~~~~~~~~~~~&lt;br /&gt;[42/244] Building C object zephyr/CMakeFiles/zephyr.dir/lib/os/onoff.c.obj&lt;br /&gt;ninja: build stopped: subcommand failed.&lt;br /&gt;[38/54] Linking C executable zephyr\zephyr.elf&lt;br /&gt;Memory region&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Used Size&amp;nbsp; Region Size&amp;nbsp; %age Used&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FLASH:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 162336 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 474624 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 34.20%&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 56892 B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 440 KB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12.63%&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IDT_LIST:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 GB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2 KB&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.00%&lt;br /&gt;[40/54] Generating zephyr/mcuboot_primary.hex&lt;br /&gt;FAILED: modules/nrf/samples/hci_rpmsg_subimage-prefix/src/hci_rpmsg_subimage-stamp/hci_rpmsg_subimage-build hci_rpmsg/zephyr/zephyr.hex hci_rpmsg/zephyr/zephyr.elf hci_rpmsg/zephyr/merged_CPUNET.hex &lt;br /&gt;cmd.exe /C &amp;quot;cd /D C:\Ntest\smp_svr\build\hci_rpmsg &amp;amp;&amp;amp; C:\ncs\toolchains\31f4403e35\opt\bin\cmake.exe --build . --&amp;quot;&lt;br /&gt;ninja: build stopped: subcommand failed.&lt;br /&gt;FATAL ERROR: command exited with status 1: &amp;#39;C:\ncs\toolchains\31f4403e35\opt\bin\cmake.EXE&amp;#39; --build &amp;#39;c:\Ntest\smp_svr\build&amp;#39;&lt;/p&gt;
&lt;p&gt;If I go to the line of &amp;quot;#define BT_GATT_CCC_MAX (CONFIG_BT_MAX_PAIRED + CONFIG_BT_MAX_CONN)&amp;quot; for example and check if it is finding it through ctrl+click it can find it at the &amp;quot;C:/ncs/v2.4.2/zephyr/subsys/bluetooth/host/kconfig and hovering over it showing value 0.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Even if I include the &amp;quot;CONFIG_BT_MAX_PAIRED&amp;quot; into the &amp;quot;hci_rpmsg.conf&amp;quot; in the smp_svr child image folder or directly in the hci_rpmsg prj.conf the error still persists and says that it cannot be set anyway as the default prj.conf of hci_rpmsg project has the CONFIG_BT_HCI_RAW=y but for the CONFIG_BT_MAX_PAIRED you need to enable CONFIG_BT_HCI_HOST which has a dependeny on !BT_HCI_RAW so I don&amp;#39;t know what to do at this point and where the error comes from.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5340 ESB OTA</title><link>https://devzone.nordicsemi.com/thread/437472?ContentTypeID=1</link><pubDate>Thu, 20 Jul 2023 12:38:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ffe36da3-9b55-40e1-a6ce-d7da9818a4cd</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;DFU over ESB is not very straight forward, so I would recommend using ESB + BLE in the same application perhaps to do DFU OTA with BLE, and then have the application run with ESB. My colleague Torbjørn made an example that shows how to run BLE and ESB concurrently using the MPSL interface &lt;a href="https://github.com/too1/ncs-esb-ble-mpsl-demo"&gt;here&lt;/a&gt;. Alternatively the UART bootloader is an option as well if you don&amp;#39;t need to do the DFU over the air.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>