<?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>Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/61174/configuration-changes-from-nrf52832-dk-to-bl654pa-module</link><description>Hi Guys 
 I recently made my own PCB for a project. On the PCB I am using a Laird BL654PA Module with external antenna. All the I/O&amp;#39;s work great but im struggling with the BLE on the chip. 
 I&amp;#39;m trying to run the ble_beacon example which works fine on</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 14 May 2020 08:45:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/61174/configuration-changes-from-nrf52832-dk-to-bl654pa-module" /><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/249859?ContentTypeID=1</link><pubDate>Thu, 14 May 2020 08:45:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ecedf287-cd55-43c6-ad01-2913df950f82</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Michael,&lt;/p&gt;
&lt;p&gt;I&amp;#39;m not sure why it would help to re-program it several times, but glad to hear that it works now. You can adjust the TX power by calling &lt;span style="font-family:monospace;font-size:15px;left:99.4px;top:264.546px;"&gt;&lt;/span&gt;&lt;span style="font-family:monospace;font-size:15px;left:180.433px;top:264.546px;"&gt;sd_ble_gap_tx_power_set&lt;/span&gt;&lt;span style="font-family:monospace;font-size:15px;left:387.483px;top:264.546px;"&gt;(&lt;/span&gt;&lt;span style="font-family:monospace;font-size:15px;left:396.483px;top:264.546px;"&gt;BLE_GAP_TX_POWER_ROLE_ADV&lt;/span&gt;&lt;span style="font-family:monospace;font-size:15px;left:621.517px;top:264.546px;"&gt;, 0, &lt;/span&gt;&lt;span style="font-family:monospace;font-size:15px;left:666.517px;top:264.546px;"&gt;&amp;lt;TXPOWER&amp;gt;&lt;/span&gt;) after enabling the Softdevice. The default is 0 dBm.&lt;/p&gt;
&lt;p&gt;For the beacon example, you can call advertising stop to stop all BLE activity. It is not necessary to disable the Softdevice, etc. There is also a beginners&amp;#39; guide on BLE advertising here that you may be interested in&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/nordic/short-range-guides/b/bluetooth-low-energy/posts/ble-advertising-a-beginners-tutorial"&gt;https://devzone.nordicsemi.com/nordic/short-range-guides/b/bluetooth-low-energy/posts/ble-advertising-a-beginners-tutorial&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/249258?ContentTypeID=1</link><pubDate>Mon, 11 May 2020 15:27:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:57519648-59e9-4bc8-bd1a-f0f13d997ffa</guid><dc:creator>michael_sensor</dc:creator><description>&lt;p&gt;UPDATE:&lt;/p&gt;
&lt;p&gt;it woks now. after several times erasing and flashing it seems to work now. with this code&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void pa_lna_assist(uint32_t gpio_pa_pin, uint32_t gpio_lna_pin)
{
    ret_code_t err_code;

    static const uint32_t gpio_toggle_ch = 0;
    static const uint32_t ppi_set_ch = 0;
    static const uint32_t ppi_clr_ch = 1;
    
    // Configure SoftDevice PA/LNA assist
    ble_opt_t opt;
    memset(&amp;amp;opt, 0, sizeof(ble_opt_t));
	
    // Common PA/LNA config
    opt.common_opt.pa_lna.gpiote_ch_id  = gpio_toggle_ch;        // GPIOTE channel
    opt.common_opt.pa_lna.ppi_ch_id_clr = ppi_clr_ch;            // PPI channel for pin clearing
    opt.common_opt.pa_lna.ppi_ch_id_set = ppi_set_ch;            // PPI channel for pin setting
	
    // PA config
    opt.common_opt.pa_lna.pa_cfg.active_high = 1;                // Set the pin to be active high
    opt.common_opt.pa_lna.pa_cfg.enable      = 1;                // Enable toggling
    opt.common_opt.pa_lna.pa_cfg.gpio_pin    = gpio_pa_pin;      // The GPIO pin to toggle
  
    // LNA config
    opt.common_opt.pa_lna.lna_cfg.active_high  = 1;              // Set the pin to be active high
    opt.common_opt.pa_lna.lna_cfg.enable       = 1;              // Enable toggling
    opt.common_opt.pa_lna.lna_cfg.gpio_pin     = gpio_lna_pin;   // The GPIO pin to toggle

    err_code = sd_ble_opt_set(BLE_COMMON_OPT_PA_LNA, &amp;amp;opt);
    APP_ERROR_CHECK(err_code);
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;and this is the function call:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;pa_lna_assist(NRF_GPIO_PIN_MAP(1,2),NRF_GPIO_PIN_MAP(1,4));&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I am happy that it worked and the chip is not damaged. But I still don&amp;#39;t know how to set tx power and I also dont know how to deactivate the ble again.&lt;/p&gt;
&lt;p&gt;Is there a guide with simple explanations?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;kind Regards&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Michael&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/249249?ContentTypeID=1</link><pubDate>Mon, 11 May 2020 14:58:46 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3926c13f-7380-4f72-89ed-daecf1ad55d6</guid><dc:creator>michael_sensor</dc:creator><description>&lt;p&gt;Hello it&amp;#39;s me again...&lt;/p&gt;
&lt;p&gt;As I am not a very experienced programmer, the&lt;a href="https://connectivity-staging.s3.us-east-2.amazonaws.com/2020-04/CS-AN-NordicSDKBasedAppDevelopment%20v1_1.pdf"&gt; guide&lt;/a&gt;&amp;nbsp;which you suggested to me was somehow to advanced and I was not able to understand how I have to extend the example code fron the ble_app_beacon or ble_app_blinky.&lt;/p&gt;
&lt;p&gt;But I looked for similar posts in the forum and I found this post&amp;nbsp;(&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/37594/pa-lna-support-in-s140"&gt;PA_LNA Support S140&lt;/a&gt;). I copied the function and the function call into the example und flashed the soft device and the code to the board even though I was not completely understanding the code (shame on me).&lt;/p&gt;
&lt;p&gt;Now the current consumtion of my BL654PA is around 100mA which made me curious and I hope I did not destroy the chp &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f61e.svg" title="Disappointed"&gt;&amp;#x1f61e;&lt;/span&gt; Also when I erase the chip it still draws 100mA... this matches the current consumption of the data sheet at maximum tx power. but I am still not able to see the chip on my phone.&lt;/p&gt;
&lt;p&gt;Normal example (without BLE) still work on the chip..&lt;/p&gt;
&lt;p&gt;What am I doing wrong? Was it a bad approach to copy the code from &lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/37594/pa-lna-support-in-s140"&gt;this post&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;kind regards&lt;/p&gt;
&lt;p&gt;Michael&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/249137?ContentTypeID=1</link><pubDate>Mon, 11 May 2020 09:26:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:57b28ba5-7e7d-4deb-b222-941a860c845c</guid><dc:creator>michael_sensor</dc:creator><description>&lt;p&gt;thanks for your answer! I will have a look at this guide.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks a lot!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/249097?ContentTypeID=1</link><pubDate>Mon, 11 May 2020 07:49:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9816f38f-09af-4da1-abea-1f498951695a</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;You may try to select&amp;nbsp; &amp;quot;Debug&amp;quot;&amp;nbsp; instead of the default &amp;quot;Release&amp;quot; configuration in the drop-down menu in the top left corner of SES. This will make the project a bit more debug friendly. However, your debug log already shows that the initialization completed successfully. So I took a closer look at the module you are using, and I see now that it integrates an external Skyworks PA/LNA. This means you have to implement additional control logic in the application code for the radio signals to reach the antenna port. Please take a look at the &lt;a href="https://connectivity-staging.s3.us-east-2.amazonaws.com/2020-04/CS-AN-NordicSDKBasedAppDevelopment%20v1_1.pdf"&gt;&amp;quot;Nordic SDK Based App Development&amp;quot;&lt;/a&gt; guide from Laird for more details.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/248998?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 14:16:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:34613bbb-4ef7-4394-afc0-5b20e091dc05</guid><dc:creator>michael_sensor</dc:creator><description>&lt;p&gt;Before I am flashing the S140 and the code I always do a full chip erase in CMD window with n&lt;em&gt;rfjprog --family nRF52 --eraseall&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Somehow I am not able to set a breakpoint in the main next to&amp;nbsp;&lt;em&gt;idle_state_handle()&lt;/em&gt;;&amp;nbsp;&lt;em&gt;&lt;/em&gt;But i set a breakpoint in the function itself and after i click run on the top left it seems like it reaches the funcion. The LOG output also says&lt;/p&gt;
&lt;p&gt;00&amp;gt; &amp;lt;info&amp;gt; app_timer: RTC: initialized.&lt;br /&gt;00&amp;gt; &lt;br /&gt;00&amp;gt; &amp;lt;info&amp;gt; app: Beacon example started.&lt;br /&gt;00&amp;gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;but i still cant find the device on my phone... are there some settings to enable the external antenna?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/248969?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 13:18:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:46e76c9d-608c-4748-9f29-9f36601510f7</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;You&amp;#39;re using the correct settings, thanks for confirming. I suggest you start by placing a breakpoint at idle_state_handle() in main to see if the program gets that far. Also, some modules ship with a bootloader pre-programmed in flash, not sure if it is the case for this particular module, but it may prevent the main app from booting. So you may want to try to erase the chip before you start debugging.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/248961?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 13:00:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6b579ed3-ec17-4b41-bcc7-b09c561de5ab</guid><dc:creator>michael_sensor</dc:creator><description>&lt;p&gt;This is my code section (sdk_config.h), it matches yours exactly in my opinion... &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f615.svg" title="Confused"&gt;&amp;#x1f615;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;// &amp;lt;h&amp;gt; Clock - SoftDevice clock configuration

//==========================================================
// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_SRC_RC 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_SRC_XTAL 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_SRC_SYNTH 

#ifndef NRF_SDH_CLOCK_LF_SRC
#define NRF_SDH_CLOCK_LF_SRC 0
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
#ifndef NRF_SDH_CLOCK_LF_RC_CTIV
#define NRF_SDH_CLOCK_LF_RC_CTIV 16
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
// &amp;lt;i&amp;gt; How often (in number of calibration intervals) the RC oscillator shall be calibrated
// &amp;lt;i&amp;gt;  if the temperature has not changed.

#ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
#define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_ACCURACY  - External clock accuracy used in the LL to compute timing.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_ACCURACY_250_PPM 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_ACCURACY_500_PPM 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_ACCURACY_150_PPM 
// &amp;lt;3=&amp;gt; NRF_CLOCK_LF_ACCURACY_100_PPM 
// &amp;lt;4=&amp;gt; NRF_CLOCK_LF_ACCURACY_75_PPM 
// &amp;lt;5=&amp;gt; NRF_CLOCK_LF_ACCURACY_50_PPM 
// &amp;lt;6=&amp;gt; NRF_CLOCK_LF_ACCURACY_30_PPM 
// &amp;lt;7=&amp;gt; NRF_CLOCK_LF_ACCURACY_20_PPM 
// &amp;lt;8=&amp;gt; NRF_CLOCK_LF_ACCURACY_10_PPM 
// &amp;lt;9=&amp;gt; NRF_CLOCK_LF_ACCURACY_5_PPM 
// &amp;lt;10=&amp;gt; NRF_CLOCK_LF_ACCURACY_2_PPM 
// &amp;lt;11=&amp;gt; NRF_CLOCK_LF_ACCURACY_1_PPM 

#ifndef NRF_SDH_CLOCK_LF_ACCURACY
#define NRF_SDH_CLOCK_LF_ACCURACY 1
#endif&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Okey, as I am not very experienced, where should I set breakpoints in the example?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thanks and kind regards&lt;/p&gt;
&lt;p&gt;Michael&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Configuration changes from nRF52832-DK to BL654PA module</title><link>https://devzone.nordicsemi.com/thread/248914?ContentTypeID=1</link><pubDate>Fri, 08 May 2020 11:54:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b9619b7f-e8f0-4106-8cfe-93b77a1e8d1c</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi Michael,&lt;/p&gt;
&lt;p&gt;The most common reason for code failing to run on custom boards is wrong clock settings so could you just double again check that you have the following clock settings in sdk_config.h&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;// &amp;lt;h&amp;gt; Clock - SoftDevice clock configuration

//==========================================================
// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_SRC  - SoftDevice clock source.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_SRC_RC 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_SRC_XTAL 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_SRC_SYNTH 

#ifndef NRF_SDH_CLOCK_LF_SRC
#define NRF_SDH_CLOCK_LF_SRC 0
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_CTIV - SoftDevice calibration timer interval. 
#ifndef NRF_SDH_CLOCK_LF_RC_CTIV
#define NRF_SDH_CLOCK_LF_RC_CTIV 16
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_RC_TEMP_CTIV - SoftDevice calibration timer interval under constant temperature. 
// &amp;lt;i&amp;gt; How often (in number of calibration intervals) the RC oscillator shall be calibrated
// &amp;lt;i&amp;gt;  if the temperature has not changed.

#ifndef NRF_SDH_CLOCK_LF_RC_TEMP_CTIV
#define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
#endif

// &amp;lt;o&amp;gt; NRF_SDH_CLOCK_LF_ACCURACY  - External clock accuracy used in the LL to compute timing.
 
// &amp;lt;0=&amp;gt; NRF_CLOCK_LF_ACCURACY_250_PPM 
// &amp;lt;1=&amp;gt; NRF_CLOCK_LF_ACCURACY_500_PPM 
// &amp;lt;2=&amp;gt; NRF_CLOCK_LF_ACCURACY_150_PPM 
// &amp;lt;3=&amp;gt; NRF_CLOCK_LF_ACCURACY_100_PPM 
// &amp;lt;4=&amp;gt; NRF_CLOCK_LF_ACCURACY_75_PPM 
// &amp;lt;5=&amp;gt; NRF_CLOCK_LF_ACCURACY_50_PPM 
// &amp;lt;6=&amp;gt; NRF_CLOCK_LF_ACCURACY_30_PPM 
// &amp;lt;7=&amp;gt; NRF_CLOCK_LF_ACCURACY_20_PPM 
// &amp;lt;8=&amp;gt; NRF_CLOCK_LF_ACCURACY_10_PPM 
// &amp;lt;9=&amp;gt; NRF_CLOCK_LF_ACCURACY_5_PPM 
// &amp;lt;10=&amp;gt; NRF_CLOCK_LF_ACCURACY_2_PPM 
// &amp;lt;11=&amp;gt; NRF_CLOCK_LF_ACCURACY_1_PPM 

#ifndef NRF_SDH_CLOCK_LF_ACCURACY
#define NRF_SDH_CLOCK_LF_ACCURACY 1
#endif

// &amp;lt;/h&amp;gt; &lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;It would also be good if you can try to debug the code in Segger embedded studio or similliar and try to find out if the program gets stuck somewhere.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Vidar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>