<?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>Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/112301/question-about-ncs-dtm-and-ble-stack-option</link><description>I would like to develop DTM and normal BLE stack operation in single firmware by NCS. Basically i will check a GPIO, go DTM test mode if GPIO short to High, go normal BLE stack if GPIO short to GND. 
 However, it seems no way to achieve that. 
 If i set</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 28 Jun 2024 13:23:35 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/112301/question-about-ncs-dtm-and-ble-stack-option" /><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/491355?ContentTypeID=1</link><pubDate>Fri, 28 Jun 2024 13:23:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5cc49a63-7a83-4325-b51c-39208d6f3ef7</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Yes, it should be possible to disable the bt_stack() with bt_disable() if you are on SDK v2.6.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490450?ContentTypeID=1</link><pubDate>Tue, 25 Jun 2024 02:56:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7803dcee-7af3-4dd3-9edb-bc0a6c08d6ef</guid><dc:creator>WFKwok</dc:creator><description>&lt;p&gt;By the way, I have seen another post (2 years ago).&lt;br /&gt;&lt;a id="i1" href="https://devzone.nordicsemi.com/f/nordic-q-a/93656/shutting-down-ble-host-stack-using-bt_disable"&gt;https://devzone.nordicsemi.com/f/nordic-q-a/93656/shutting-down-ble-host-stack-using-bt_disable&lt;/a&gt;&lt;br /&gt;You have replied that&amp;nbsp;&lt;span&gt;&amp;nbsp;&amp;quot;it&amp;#39;s not possible to disable the bt stack. So you would need to execute a soft reset to enter DTM mode.&amp;quot;&lt;br /&gt;&lt;br /&gt;So, how about now for the latest NCS?&lt;br /&gt;Is it possible to disable the BT stack to start the DTM without power reset?&lt;br /&gt;Or if not, as you mentioned, which kind of soft reset is feasible to achieve that?&lt;br /&gt;&lt;/span&gt;&lt;span&gt;As i know, take BT stack-&amp;gt;DFU as example, there is internal flag to indicate to enter DFU after soft reset.&lt;br /&gt;So is there any flag I can use for indication/checking right now for &amp;quot;BT stack -&amp;gt; soft reset -&amp;gt; DFU&amp;quot;?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thanks a lot.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490282?ContentTypeID=1</link><pubDate>Mon, 24 Jun 2024 12:27:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3e59388f-c689-469a-989e-6c5fcf4a2404</guid><dc:creator>WFKwok</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;Thanks for your attachment and highly appreciated.&lt;br /&gt;I have run the codes and it really works for DTM.&lt;/p&gt;
&lt;p&gt;One follow up example, how about if i start the normal BLE stack first, this will run the bt_enable().&lt;/p&gt;
&lt;p&gt;If i would like to switch to DTM test from normal BLE without power reset, i tried to call bt_disable() before i start the DTM part of code. However it doesn&amp;#39;t work. My nrf52832 DK cannot receive UART command and the nrf Connect at the PC side fail to start the DTM operation.&lt;/p&gt;
&lt;p&gt;So am i do something wrong? Or what should i do if i would switch the DTM from BLE without power reset?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you very much.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490123?ContentTypeID=1</link><pubDate>Sun, 23 Jun 2024 22:22:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:beae7fff-1bee-454f-9dc7-2107b26ab1b0</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Can you try the attachment? At least this seems to work with ncs v2.6.1 and CONFIG_BT=y.&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/0677.direct_5F00_test_5F00_mode.zip"&gt;devzone.nordicsemi.com/.../0677.direct_5F00_test_5F00_mode.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490115?ContentTypeID=1</link><pubDate>Sun, 23 Jun 2024 13:41:58 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2b940e8f-2fc4-453a-9e32-1029136528df</guid><dc:creator>WFKwok</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;Yes I did see the reply and had a try already.&lt;/p&gt;
&lt;p&gt;I have tried to add the config but still doesn&amp;#39;t work for the DTM mode.&lt;/p&gt;
&lt;p&gt;&lt;span&gt;DYNAMIC_DIRECT_INTERRUPTS=y&lt;/span&gt;&lt;br /&gt;&lt;span&gt;MPSL_DYNAMIC_INTERRUPTS=y&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;However that is a radio test example, not a DTM example.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Or do i need to add more config or other settings for DTM?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490082?ContentTypeID=1</link><pubDate>Sat, 22 Jun 2024 11:45:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b9215e99-4760-4fd9-8f5a-83d807d79e75</guid><dc:creator>Kenneth</dc:creator><description>[quote user="kme"]&lt;p&gt;After a bit of searching I could find this thread which I think solve your problem:&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/98030/radio-test-and-bt-exlusive-coexistense-in-same-firmware-image"&gt;Radio Test and BT exlusive coexistense in same firmware image&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;[/quote]
&lt;p&gt;Did you see this reply?&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490081?ContentTypeID=1</link><pubDate>Sat, 22 Jun 2024 11:35:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b4ebca79-d2b9-4c0e-a2a3-3d9d692db71a</guid><dc:creator>WFKwok</dc:creator><description>&lt;p&gt;Hi Kenneth,&lt;/p&gt;
&lt;p&gt;We have tried and done something like what you suggested but it doesn&amp;#39;t work.&lt;/p&gt;
&lt;p&gt;But the problem is how should we set CONFIG_BT in proj.conf?&lt;/p&gt;
&lt;p&gt;If we set CONFIG_BT=y, and the firmware boots int DTM mode. It doesn&amp;#39;t work to get &amp;quot;&lt;span&gt;HARD FAULT&amp;quot; error.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;If we set CONFIG_BT=n (or no CONFIG_BT), and the firmware boots int&amp;nbsp;BLE mode. It doesn&amp;#39;t work&amp;nbsp;as the BLE stack is not loaded in the firmware after build.&lt;/p&gt;
&lt;p&gt;What i am struggling now is how should we set to the proj.conf for CONFIG_BT.&lt;br /&gt;So we can really make the DTM and BLE mode combined in one firmware.&lt;/p&gt;
&lt;p&gt;Any further idea for that?&lt;/p&gt;
&lt;p&gt;Thank&amp;nbsp; you very much.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490079?ContentTypeID=1</link><pubDate>Sat, 22 Jun 2024 10:59:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:771d2f55-f6c5-4491-8ca4-e46af769d863</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;After a bit of searching I could find this thread which I think solve your problem:&lt;br /&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/98030/radio-test-and-bt-exlusive-coexistense-in-same-firmware-image"&gt;Radio Test and BT exlusive coexistense in same firmware image&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Question about NCS DTM and BLE stack option.</title><link>https://devzone.nordicsemi.com/thread/490077?ContentTypeID=1</link><pubDate>Sat, 22 Jun 2024 10:36:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f1077136-b6df-4d6e-8ea7-c228b1eb7537</guid><dc:creator>Kenneth</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I guess there are different ways of doing this, and simplest should be as you suggest, is to select whether to run DTM or BLE after a reset. For instance you can have test pin on the board, e.g. with pull-up, such that when it&amp;#39;s low on reset&amp;nbsp;the application&amp;nbsp;run DTM, else it will run BLE.&lt;/p&gt;
&lt;p&gt;So in start of main() you would simply do something like (example is outdated, check direct_test_mode.zip file instead):&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// Edit: Updated code.
// in prj.conf
// DYNAMIC_DIRECT_INTERRUPTS=y
// MPSL_DYNAMIC_INTERRUPTS=y

   void main(void) {
       // read pin to find if application should run DTM or BLE

       if (dtm_mode) {
           printk(&amp;quot;Booting into DTM mode\n&amp;quot;);
           err = mpsl_lib_uninit();
           dtm_init();
           // Enter DTM mode loop
           while (1) {
               dtm_cmd_process();
           }
       } else {
           printk(&amp;quot;Booting into BLE mode\n&amp;quot;);
           int err = bt_enable(NULL);
           // Normal BLE application logic here
       }
   }&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Or are you saying you have tried this but it doesn&amp;#39;t work?&lt;/p&gt;
&lt;p&gt;Kenneth&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>