<?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>Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/88752/sending-i2s-data-via-ble-using-queue</link><description>Hi, 
 I am writing an application that reads data from the I2S interface, adds it to a queue and sends it via BLE (the code I have implemented so far is added at the end of this post). 
 In a previous thread ( https://devzone.nordicsemi.com/f/nordic-q</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 09 Aug 2022 08:00:51 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/88752/sending-i2s-data-via-ble-using-queue" /><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/380751?ContentTypeID=1</link><pubDate>Tue, 09 Aug 2022 08:00:51 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:25340a58-e35d-4036-bcbb-fe5636481629</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;You are welcome. Yes, You can open new case.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Kazi Afroza Sultana&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/379136?ContentTypeID=1</link><pubDate>Thu, 28 Jul 2022 12:59:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a414f1d3-0a77-43bb-8304-acf167206fa0</guid><dc:creator>Moritz_S</dc:creator><description>&lt;p&gt;Hi Kazi,&lt;/p&gt;
&lt;p&gt;thank you for the reply and your offer about looking at my project. I have solved the problem which is stated above. The problem was&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;NRF_QUEUE_DEF(uint8_t, m_queue, 3072, NRF_QUEUE_MODE_OVERFLOW);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;It seems the buffer was full very often and appending partially new data, but not all of them (i.e. dropping one part of the data, while keeping another part) led to corrupted data. Changing it to &lt;span style="background-color:#999999;"&gt;NRF_QUEUE_MODE_NO_OVERFLOW&lt;/span&gt; improved the program a lot. Finally, I realized that&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;#define I2S_DATA_BLOCK_WORDS    256&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;also has an influence on how fast the buffer gets filled up. In between I was using &lt;span style="background-color:#999999;"&gt;I2S_DATA_BLOCK_WORDS 1024&lt;/span&gt;, which led to the buffer being full all the time. Currently, I&amp;#39;m at 64, but I&amp;#39;m still experimenting which setting is the best.&lt;/p&gt;
&lt;p&gt;In the meantime I&amp;#39;m facing a new issue. Now my data handler is not called as often as it should be. This leads to ending up with significantly less samples as I&amp;#39;m expecting. But I guess I will open another thread regarding this after my holiday and link the question here. I will also close this thread then!&lt;/p&gt;
&lt;p&gt;Thanks a lot for your support!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/377117?ContentTypeID=1</link><pubDate>Fri, 15 Jul 2022 08:49:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dea5af81-0dce-4e1c-8288-cfce7268c27f</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello Moritz,&lt;/p&gt;
&lt;p&gt;Yes, You can send your full project so that we can look at.&lt;/p&gt;
&lt;p&gt;Since it is summer vacation, it may take a bit time to reply. I will be in vacation for next 2 week. Sorry for this inconvenience.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Kazi Afroza Sultana&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/375709?ContentTypeID=1</link><pubDate>Wed, 06 Jul 2022 09:16:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:31ab7c93-b011-4b0c-82ba-85b46c90b80f</guid><dc:creator>Moritz_S</dc:creator><description>&lt;p&gt;Hi, thank you for your response.&lt;/p&gt;
&lt;p&gt;1. this is solved. I used nrf_drv_i2s_start() similarly to the i2s example, but since i do continuous i2s transfer (without stopping the i2s at the end of each loop), I cannot call nrf_drv_i2s_start() at the beginning of each loop (which I did initially). this problem is solved now.&lt;/p&gt;
&lt;p&gt;2. also solved now.&lt;/p&gt;
&lt;p&gt;3. mp_block_to check is declared as &lt;pre class="ui-code" data-mode="c_cpp"&gt;static uint32_t const * volatile mp_block_to_check = NULL;&lt;/pre&gt; in your i2s example. I used it in exactly the same way as in the example.&lt;/p&gt;
&lt;p&gt;4. Thank you, I will keep the activity in the data handler as low as possible.&lt;/p&gt;
&lt;p&gt;There is no error related to mp_block_to_check or the data_handler. This was a general question: Imagine I have a loop that iterates over an array of data and while I&amp;#39;m doing that, the i2s interrupt calls the data_handler() which is writing to that array. In that case, the data in the array would be overwritten by the data_handler() even if my loop is still iterating over the array?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;In fact my code is executed without errors now. Now, I&amp;#39;m facing the problem that the data I&amp;#39;m expecting is not received correctly. Could be a hardware issue or caused by the data_handler overwriting the data in mp_block_to_check. Hence, my question above. If you want, I can share my project, so you get a better understanding?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;Moritz&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/375579?ContentTypeID=1</link><pubDate>Tue, 05 Jul 2022 13:35:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7b61c5c1-9e94-4360-8154-455295bc8782</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1. Within the endless loop in my main function, i2s_start() will be called in every iteration, which could already be enough reason to cause the application to crash.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Have you looked at the I2S example in the SDK? Could you please tell us how your start_i2s() function works. It may be something similar to the nrf_drv_is2_start () used in the main loop of that i2s example. What does the return of this function, anything other than NRF_SUCCESS ?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. nrf_queue_read will return NRF_ERROR_NOT_FOUND the first time it is called, since there is no data available yet. This needs to be handled.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;As you said there is no data so nrf_queue_read() function can return an error. We do not have this function in I2S example, so this is something you have to handle yourself.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. in my data_handler() I access the volatile pointer mp_block_to_check without assigning any value to it. I missed &amp;#39;mp_block_to_check = p_released-&amp;gt;p_rx_buffer;&amp;#39;, like it is also done in the i2s example of the SDK.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;what is this pointer mp_block_to_check and what is the use of it? We do not have something in I2S example.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4. This is rather a question to you&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/members/kazi-afroza-sultana"&gt;Kazi Afroza Sultana&lt;/a&gt;&amp;nbsp;: If I understood correctly, the data_handler is called by the i2s driver when new data is available. So, if I have a loop in the data_handler (like in the one I have above), blocking the data_handler, could this cause trouble the next time the i2s driver calls the data handler? I assumed, yes, and removed any unnecessary code from the data handler.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Inside the data handler, when you are blocking new interrupts, you should spend as little time as possible inside the handler. The factors impact here are the size of buffers and the time it would take it to fill up an trigger a new interrupt.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;And, another question: when the data_handler writes new data to mp_block_to_check, it overwrites all the data in the variable, even if I&amp;#39;m still processing parts of that data, correct?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Could you please tell a bit details about this error?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Kazi Afroza Sultana&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/374227?ContentTypeID=1</link><pubDate>Sat, 25 Jun 2022 12:20:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:73e9bf36-e606-4b02-80ff-23cef3dd41a4</guid><dc:creator>Moritz_S</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;thanks for the link. I wasn&amp;#39;t aware of this article. However, I&amp;#39;m using the the Debug build configuration from the beginning. After reading the article, I also defined the DEBUG flag in the project options (in the common build configuration -&amp;gt; Preprocessor -&amp;gt; Preprocessor Definitions). However, this did not result in any error being printed to the debug console of SES. Also my NRF_LOG_INFO and NRF_LOG_DEBUG were not printed (at least most of them). Even if this is not the topic of this post, I would like to understand why (NRF_LOG_BACKEND_RTT_ENABLED&amp;nbsp; is set to 1 in sdk_config.h)?&lt;/p&gt;
&lt;p&gt;Back to programming: There were multiple errors in the code I posted above. I will highlight the main ones for anybody else who will read this post.&lt;/p&gt;
&lt;p&gt;1. Within the endless loop in my main function, i2s_start() will be called in every iteration, which could already be enough reason to cause the application to crash.&lt;/p&gt;
&lt;p&gt;2. nrf_queue_read will return NRF_ERROR_NOT_FOUND the first time it is called, since there is no data available yet. This needs to be handled.&lt;/p&gt;
&lt;p&gt;3. in my data_handler() I access the volatile pointer mp_block_to_check without assigning any value to it. I missed &amp;#39;mp_block_to_check = p_released-&amp;gt;p_rx_buffer;&amp;#39;, like it is also done in the i2s example of the SDK.&lt;/p&gt;
&lt;p&gt;4. This is rather a question to you &lt;a href="https://devzone.nordicsemi.com/members/kazi-afroza-sultana"&gt;Kazi Afroza Sultana&lt;/a&gt; : If I understood correctly, the data_handler is called by the i2s driver when new data is available. So, if I have a loop in the data_handler (like in the one I have above), blocking the data_handler, could this cause trouble the next time the i2s driver calls the data handler? I assumed, yes, and removed any unnecessary code from the data handler.&lt;/p&gt;
&lt;p&gt;And, another question: when the data_handler writes new data to mp_block_to_check, it overwrites all the data in the variable, even if I&amp;#39;m still processing parts of that data, correct?&lt;/p&gt;
&lt;p&gt;Many questions, I hope I have expressed myself clear enough. If not, let me know &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;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/373369?ContentTypeID=1</link><pubDate>Tue, 21 Jun 2022 08:26:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e72b2756-704b-427c-a2bb-2d2ef8a0302d</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;You an look at this blog post&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/an-introduction-to-error-handling-in-nrf5-projects"&gt;(+) An introduction to error handling in nRF5 projects - Blogs - Nordic Blog - Nordic DevZone (nordicsemi.com)&lt;/a&gt;&amp;nbsp;. It is a bit old but still relevant for debugging on segger.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You said that you application causes the application to run into an error while all 4 LEDs on your nRf52 DK are on. So, I guess APP_ERROR_CHECK() has been called with an error code. You should make sure you do a debug build (most SES example projects lets you select &amp;#39;&amp;#39;Debug&amp;#39;&amp;#39; from the build target from drop down menue. Then if you use logging, the log should state which error code was detected in which file at which line. From that point you know, were you should look further. If you do not use logging you can put a breakpoint in the error handler and check with a debugger.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Best Regars,&lt;/p&gt;
&lt;p&gt;Kazi Afroza Sultana&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/372704?ContentTypeID=1</link><pubDate>Thu, 16 Jun 2022 06:46:11 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4da72ed3-8608-4aa1-b9a8-a6607ac3f361</guid><dc:creator>Moritz_S</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I found the option to Build -&amp;gt; Show Build Log in Segger emStudio. I&amp;#39;m posting the content of the log below. Is that what you were asking for? Did you also see my update below? Could you provide any hints how to solve this?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Building &amp;#39;ble_app_template_pca10040_s132&amp;#39; from solution &amp;#39;ble_app_template_pca10040_s132&amp;#39; in configuration &amp;#39;Debug&amp;#39;
1&amp;gt; Assembling &amp;#39;thumb_crt0.s&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_log_backend_rtt.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_log_backend_serial.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_log_backend_uart.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_log_default_backends.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_log_frontend.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_log_str_formatter.c&amp;#39;
1&amp;gt; Compiling &amp;#39;app_button.c&amp;#39;
2&amp;gt; Compiling &amp;#39;app_error.c&amp;#39;
1&amp;gt; Compiling &amp;#39;app_error_handler_gcc.c&amp;#39;
2&amp;gt; Compiling &amp;#39;app_error_weak.c&amp;#39;
1&amp;gt; Compiling &amp;#39;app_scheduler.c&amp;#39;
1&amp;gt; Compiling &amp;#39;app_timer2.c&amp;#39;
1&amp;gt; Compiling &amp;#39;app_util_platform.c&amp;#39;
2&amp;gt; Compiling &amp;#39;crc16.c&amp;#39;
1&amp;gt; Compiling &amp;#39;drv_rtc.c&amp;#39;
1&amp;gt; Compiling &amp;#39;fds.c&amp;#39;
2&amp;gt; Compiling &amp;#39;hardfault_implementation.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_assert.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_atfifo.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_atflags.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_atomic.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_balloc.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_fprintf.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_fprintf_format.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_fstorage.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_fstorage_sd.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_memobj.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_pwr_mgmt.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_ringbuf.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_section_iter.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_sortlist.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_strerror.c&amp;#39;
2&amp;gt; Compiling &amp;#39;sensorsim.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_queue.c&amp;#39;
2&amp;gt; Assembling &amp;#39;ses_startup_nrf52.s&amp;#39;
2&amp;gt; Assembling &amp;#39;ses_startup_nrf_common.s&amp;#39;
1&amp;gt; Compiling &amp;#39;system_nrf52.c&amp;#39;
2&amp;gt; Compiling &amp;#39;boards.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_drv_clock.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_drv_uart.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrfx_atomic.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrfx_clock.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrfx_gpiote.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrfx_prs.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrfx_uart.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrfx_uarte.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrfx_i2s.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrfx_twi.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_drv_twi.c&amp;#39;
2&amp;gt; Compiling &amp;#39;bsp.c&amp;#39;
2&amp;gt; Compiling &amp;#39;bsp_btn_ble.c&amp;#39;
1&amp;gt; Compiling &amp;#39;main.c&amp;#39;
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c: In function ‘notification_timeout_handler’:
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c:266:45: warning: passing argument 2 of ‘ble_aas_value_update’ from incompatible pointer type [-Wincompatible-pointer-types]
1&amp;gt; In file included from /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c:94:
1&amp;gt; ./ble_aas.h:99:60: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘uint8_t (*)[244]’ {aka ‘unsigned char (*)[244]’}
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c: In function ‘main’:
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c:1067:53: warning: passing argument 2 of ‘ble_aas_value_update’ from incompatible pointer type [-Wincompatible-pointer-types]
1&amp;gt; In file included from /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/main.c:94:
1&amp;gt; ./ble_aas.h:99:60: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘uint8_t (*)[244]’ {aka ‘unsigned char (*)[244]’}
1&amp;gt; Compiling &amp;#39;ble_aas.c&amp;#39;
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/pca10040/s132/ses/ble_aas.c: In function ‘on_write’:
1&amp;gt; /home/engineer/nRF-Dev/nRF5_SDK_17.1.0_ddde560/examples/ble_peripheral/surag_sense/pca10040/s132/ses/ble_aas.c:134:43: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
1&amp;gt; Compiling &amp;#39;utils.c&amp;#39;
2&amp;gt; Compiling &amp;#39;SEGGER_RTT.c&amp;#39;
1&amp;gt; Compiling &amp;#39;SEGGER_RTT_Syscalls_SES.c&amp;#39;
2&amp;gt; Compiling &amp;#39;SEGGER_RTT_printf.c&amp;#39;
1&amp;gt; Compiling &amp;#39;auth_status_tracker.c&amp;#39;
1&amp;gt; Compiling &amp;#39;ble_advdata.c&amp;#39;
2&amp;gt; Compiling &amp;#39;ble_advertising.c&amp;#39;
2&amp;gt; Compiling &amp;#39;ble_conn_params.c&amp;#39;
1&amp;gt; Compiling &amp;#39;ble_conn_state.c&amp;#39;
2&amp;gt; Compiling &amp;#39;ble_srv_common.c&amp;#39;
2&amp;gt; Compiling &amp;#39;gatt_cache_manager.c&amp;#39;
2&amp;gt; Compiling &amp;#39;gatts_cache_manager.c&amp;#39;
2&amp;gt; Compiling &amp;#39;id_manager.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_ble_gatt.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_ble_qwr.c&amp;#39;
1&amp;gt; Compiling &amp;#39;peer_data_storage.c&amp;#39;
1&amp;gt; Compiling &amp;#39;peer_database.c&amp;#39;
2&amp;gt; Compiling &amp;#39;peer_id.c&amp;#39;
2&amp;gt; Compiling &amp;#39;peer_manager.c&amp;#39;
2&amp;gt; Compiling &amp;#39;peer_manager_handler.c&amp;#39;
1&amp;gt; Compiling &amp;#39;pm_buffer.c&amp;#39;
1&amp;gt; Compiling &amp;#39;security_dispatcher.c&amp;#39;
1&amp;gt; Compiling &amp;#39;security_manager.c&amp;#39;
2&amp;gt; Compiling &amp;#39;utf.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_sdh.c&amp;#39;
1&amp;gt; Compiling &amp;#39;nrf_sdh_ble.c&amp;#39;
2&amp;gt; Compiling &amp;#39;nrf_sdh_soc.c&amp;#39;
1&amp;gt; Generating linker script &amp;#39;ble_app_template_pca10040_s132.ld&amp;#39;
1&amp;gt; Linking ble_app_template_pca10040_s132.elf
Build complete
&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/372055?ContentTypeID=1</link><pubDate>Mon, 13 Jun 2022 09:07:41 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0fa66833-e836-4532-aba8-cfc19668bba8</guid><dc:creator>Moritz_S</dc:creator><description>&lt;p&gt;Hi Kazi, thank you for your reply. I&amp;#39;m quite new to Segger emStudio and programming the nRF - is there a tutorial on how to debug into the preprocessor symbols and where can I access the proprocessor logs? I didn&amp;#39;t find any information about that on the internet.&lt;/p&gt;
&lt;p&gt;For clarification: the nRF is advertising and I can connect to it. The problem starts when I enable notifications and the code, thereby, enters the if-clause in line 46 in my main function (i2s_transfer becomes true).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/371885?ContentTypeID=1</link><pubDate>Fri, 10 Jun 2022 12:19:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:255cbf0f-2114-4f8c-9655-31f04c523d5e</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&amp;nbsp;Could you please debug into the preprocessor symbols and check the log to see where the error is?&amp;nbsp; You can send the log to us.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thanks.&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;Kazi Afroza Sultana&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Sending I2S data via BLE using queue</title><link>https://devzone.nordicsemi.com/thread/371786?ContentTypeID=1</link><pubDate>Fri, 10 Jun 2022 08:03:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:98fae27b-cef1-4767-b054-d2893b6fe39e</guid><dc:creator>Kazi Afroza Sultana</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;I have been looking at your case. I will get back to you later.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;
&lt;p&gt;Best Regards,&lt;/p&gt;
&lt;p&gt;Kazi Afroza Sultana&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>