<?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>How to read from a characteristic which does not have a notify characteristic property?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/112749/how-to-read-from-a-characteristic-which-does-not-have-a-notify-characteristic-property</link><description>Hi, 
 I am not sure how to read from a characteristic which doesnt have notify property in them. I started looking into nrf_ble_gq_item_add() But I am not sure on what parameters to pass to this function to read from my characterstic. 
 Is there any example</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 05 Aug 2024 09:39:09 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/112749/how-to-read-from-a-characteristic-which-does-not-have-a-notify-characteristic-property" /><item><title>RE: How to read from a characteristic which does not have a notify characteristic property?</title><link>https://devzone.nordicsemi.com/thread/496928?ContentTypeID=1</link><pubDate>Mon, 05 Aug 2024 09:39:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d87e1f49-acf0-473e-91e3-432bd0b77d7d</guid><dc:creator>VinayakaKS</dc:creator><description>&lt;p&gt;I used a&amp;nbsp;NRF_BLE_GQ_REQ_GATTC_READ for the gattc request and it started working.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Thank you,&lt;/p&gt;
&lt;p&gt;Vinayaka KS&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to read from a characteristic which does not have a notify characteristic property?</title><link>https://devzone.nordicsemi.com/thread/492360?ContentTypeID=1</link><pubDate>Fri, 05 Jul 2024 06:35:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f0cd7a8e-5561-4c29-b41e-f6e28fffc911</guid><dc:creator>VinayakaKS</dc:creator><description>&lt;p&gt;I will have a look into this function, and check if I can read.&lt;/p&gt;
&lt;p&gt;Thanks for the info.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Regards,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Vinayaka&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to read from a characteristic which does not have a notify characteristic property?</title><link>https://devzone.nordicsemi.com/thread/492221?ContentTypeID=1</link><pubDate>Thu, 04 Jul 2024 11:14:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cc2ceb70-c872-4dc9-bdd7-5f2b7c018134</guid><dc:creator>Vidar Berg</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span&gt;Vinayaka,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;You can use&amp;nbsp;&lt;a href="https://docs.nordicsemi.com/bundle/s140_api/page/group___b_l_e___g_a_t_t_c___f_u_n_c_t_i_o_n_s.html#ga813daa5810a1d2ed31d2d6fe49d3ef11"&gt;sd_ble_gattc_read&lt;/a&gt;() as illustrated by the message sequence chart &amp;quot;&lt;a href="https://docs.nordicsemi.com/bundle/s140_api/page/group___b_l_e___g_a_t_t_c___v_a_l_u_e___r_e_a_d___m_s_c.html"&gt;GATTC Characteristic or Descriptor Value Read&lt;/a&gt;&amp;quot;. There aren&amp;#39;t any GATT client implementations in the SDK that use this function. Grepping through the SDK only gave me the following results:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;pre class="ui-code" data-mode="text"&gt;examples/ble_central_and_peripheral/experimental/ble_app_interactive/cli_m.c:    err_code = sd_ble_gattc_read(conn_handle, val_handle, 0);
examples/ble_central_and_peripheral/experimental/ble_app_interactive/ble_m.c:                err_code = sd_ble_gattc_read(conn_handle, p_service[i].handle_range.start_handle, 0);
examples/ble_central_and_peripheral/experimental/ble_app_interactive/ble_m.c:                err_code = sd_ble_gattc_read(conn_handle, m_srv_char.char_data[i].decl_handle, 0);
examples/ble_central_and_peripheral/experimental/ble_app_interactive/ble_m.c:                err_code = sd_ble_gattc_read(conn_handle, mp_device_srv[conn_handle]-&amp;gt;services[i].handle_range.start_handle, 0);
examples/ble_central_and_peripheral/experimental/ble_app_interactive/ble_m.c:                err_code = sd_ble_gattc_read(conn_handle, m_srv_char.char_data[i].decl_handle, 0);
components/ble/nrf_ble_gq/nrf_ble_gq.c:                err_code = sd_ble_gattc_read(conn_handle,
components/ble/nrf_ble_gq/nrf_ble_gq.c:            err_code = sd_ble_gattc_read(conn_handle,
components/ble/peer_manager/gatt_cache_manager.c:                    ret_code_t err_code = sd_ble_gattc_read(conn_handle, *(uint16_t*)p_val-&amp;gt;handle_value, 0);
components/serialization/application/codecs/ble/middleware/app_mw_ble_gattc.c:/**@brief Command response callback function for @ref sd_ble_gattc_read BLE command.
components/serialization/application/codecs/ble/middleware/app_mw_ble_gattc.c:#ifndef _sd_ble_gattc_read
components/serialization/application/codecs/ble/middleware/app_mw_ble_gattc.c:#define _sd_ble_gattc_read sd_ble_gattc_read
components/serialization/application/codecs/ble/middleware/app_mw_ble_gattc.c:uint32_t _sd_ble_gattc_read(uint16_t conn_handle,
components/serialization/connectivity/codecs/ble/middleware/conn_mw_ble_gattc.c:    sd_err_code = sd_ble_gattc_read(conn_handle, handle, offset);
&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The key thing is to find the attribute handle value you want to read from. This is found during the Service discovery procedure.&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;Vidar&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>