<?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>Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/65160/problems-of-using-gpiote-and-ble-together</link><description>Hello. 
 
 I try to BLE and GPIOTE. 
 
 The reason for using GPIOTE is to read data from the temperature sensor. 
 
 And I want to sending data of temperature sensor by BLE. 
 
 When BLE and GPIOTE are used together, even BLE scan does not work. 
 
 I</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 31 Aug 2020 13:07:33 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/65160/problems-of-using-gpiote-and-ble-together" /><item><title>RE: Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/thread/267256?ContentTypeID=1</link><pubDate>Mon, 31 Aug 2020 13:07:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5984dac7-4cd9-4785-85a9-b185db95d29c</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I&amp;#39;m happy to help.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Just let me know if you have more questions &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/thread/267108?ContentTypeID=1</link><pubDate>Mon, 31 Aug 2020 01:14:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b9b1e314-468f-44a8-8553-43a8fa2e7807</guid><dc:creator>Daeho</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;First, Thank you for reply.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I will try it. Thank you for your help.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/thread/266687?ContentTypeID=1</link><pubDate>Thu, 27 Aug 2020 10:01:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:eadd5ad2-122f-4b69-a066-d71e4479bbb4</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;/p&gt;
&lt;p&gt;One potential problem is that you are accessing the PPI peripheral directly when using the SoftDevice.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The PPI is one of the peripherals that is controlled by the SoftDevice when it is enabled, and you have to access it through the sd_ppi functions rather than accessing the hardware directly.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can find the documentation for these functions &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v7.0.1/group___n_r_f___s_o_c___f_u_n_c_t_i_o_n_s.html?cp=4_7_3_1_2_7_2_26#gab1ca9bfe70cf943a6290516ddceb0a0f"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/thread/266343?ContentTypeID=1</link><pubDate>Wed, 26 Aug 2020 01:28:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:668993cf-120a-4854-beba-a3ffb4fa5899</guid><dc:creator>Daeho</dc:creator><description>&lt;p&gt;Hi, First, Thank you for reply.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I am using the priority of 2. And it was setting via the PPI.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;My approximate code is below.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;And I modified the priority to 6, 7, and 3. but I had the same problem.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Where should I modify it?&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;//Main part ----------------------------------------------------------------------------
int main(void)
{
  NRF_UICR -&amp;gt; NFCPINS = 0xFFFFFFFE;  //NFC pin disable
  gpioteInit(); //GPIOTE initialization
  uartInit(); //UART initialization
  twiInit();  //TWI initialization
  BLE.Init(); //BLE initialization

  NRF_GPIO -&amp;gt; DIRSET = PIN25; //PIN OUT mode
  NRF_GPIO -&amp;gt; OUTCLR = PIN25; //Turn on the Sensor part
  NRF_GPIO -&amp;gt; PIN_CNF[9] = 0x0C; //PIN INPUT PULL UP =&amp;gt; For temperature sensor

  writeData(Accel_address,CTRL_REG1,0xC0);  //active acceleration sensor
  writeData(Accel_address,CTRL_REG2,0x03);  //Output Data Rate 100Hz(=10ms)

  char ch[50];

  println(&amp;quot;&amp;gt;&amp;gt;&amp;gt; start BLE UART Example&amp;quot;);

  timer2Init(10); //Timer Interrupt initialization, period 10ms
  timer4Init(5); //Timer Interrupt initialization, period 5us

  while (1)
  {

  }

  return 0;
}




//GPIOTE Initialization ----------------------------------------------------------------------------
//PIN9, Falling edge, Channel 0, Interrupt 0

void gpioteInit()
{
  //Interrupt Set
  NRF_GPIOTE -&amp;gt; INTENSET = 0x80000001;  //IN[0] Set, Enable =&amp;gt; Write &amp;#39;1&amp;#39; to Enable interrupt for IN[0] event
  NRF_GPIOTE -&amp;gt; CONFIG[0] =  0x00020901;  //configuration of IN[0], Mode = Event, Pin 11, Falling edge
  NRF_GPIOTE -&amp;gt; TASKS_OUT[0] = 0x01;  //TASKS 0 set

  //PPI Set
  NRF_PPI -&amp;gt; TASKS_CHG[0].EN; //Enable channel group
  NRF_PPI -&amp;gt; CHEN = 1;  //CH0 Enable
  NRF_PPI -&amp;gt; CHENSET = 1; //CH0 Enable and Set
  NRF_PPI -&amp;gt; CH[0].EEP = NRF_GPIOTE -&amp;gt; EVENTS_IN[0]; //EVENTS_IN[0]; 0x001,
  NRF_PPI -&amp;gt; CH[0].TEP = NRF_GPIOTE -&amp;gt; TASKS_SET[0]; //0x000
  NRF_PPI -&amp;gt; FORK[0].TEP = NRF_GPIOTE -&amp;gt; TASKS_SET[0]; //0x000

  NVIC_SetPriority(GPIOTE_IRQn, 2);
  NVIC_EnableIRQ(GPIOTE_IRQn);

}

//GPIOTE Handler-------------------------------------------------------
void GPIOTE_IRQHandler(void)
{
  NRF_GPIOTE -&amp;gt; EVENTS_IN[0] = 0; //removed Events bit
  SensorCount++;  //temperature sensor data pulse count, Falling edge
  TimeCheck = 0;  //when falling edge, TimeCheck reset
}
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Problems of using GPIOTE and BLE together.</title><link>https://devzone.nordicsemi.com/thread/266204?ContentTypeID=1</link><pubDate>Tue, 25 Aug 2020 11:22:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4baf6ed7-46a4-405c-9996-667165087c9a</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;/p&gt;
&lt;p&gt;When using the BLE SoftDevice it is critical not to have any interrupts in the application running at priority 0, 1, 3 or 4. What priority is your GPIOTE interrupt running at?&lt;/p&gt;
&lt;p&gt;Are you using one of the SDK drivers for the GPIOTE, or are you interfacing directly to the hardware?&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>