<?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 discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/31305/how-to-discover-ble-services-at-connected-ble-peripheral-without-adding-services-to-softdevice</link><description>hi, 
 i am doing a project where i am using a pca10040 board as central device and a another pca10040 board as peripheral device. 
 i am able to connect peripheral device using device address and found available primary or secondary services on connected</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 17 Apr 2018 07:05:06 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/31305/how-to-discover-ble-services-at-connected-ble-peripheral-without-adding-services-to-softdevice" /><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/128565?ContentTypeID=1</link><pubDate>Tue, 17 Apr 2018 07:05:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:41ba677b-d442-48b1-9e18-190213095e71</guid><dc:creator>nikunj8086</dc:creator><description>&lt;p&gt;hi&amp;nbsp;H&amp;aring;kon Alseth,&lt;/p&gt;
&lt;p&gt;i have 2 question that,&lt;/p&gt;
&lt;p&gt;1. now i want to know what is data length sent by ble peripheral service characteristic which has only notification attribute, without enabling notification.&lt;/p&gt;
&lt;p&gt;2. how to discover custom characteristics within primary service.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;ie. nordic thingy 52 has dfu service 0xFE59 which is a primary service and it&amp;#39;s characteristic has secondary type UUID so i am not able to discover it unless i register 128-bit base uuid into softdevice.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/125907?ContentTypeID=1</link><pubDate>Mon, 26 Mar 2018 07:45:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:702e8d4b-93b4-4400-8904-45e522b571fa</guid><dc:creator>nikunj8086</dc:creator><description>[quote userid="2115" url="~/f/nordic-q-a/31305/how-to-discover-ble-services-at-connected-ble-peripheral-without-adding-services-to-softdevice/124514"]Is there a specific reason why you want to perform generic service discovery of any device on your central? Normally you want to connect to a peripheral that supports your services.[/quote]
&lt;p&gt;actually i don&amp;#39;t know my self it&amp;#39;s my costumer&amp;#39;s requirement&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;but any way thanks for your response it was really helpful to me.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/124514?ContentTypeID=1</link><pubDate>Thu, 15 Mar 2018 08:37:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:71cb0777-9ff3-4699-aee6-16e71b063ab9</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This is the softdevice API call to discover primary services on a peripheral:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v5.0.0/group___b_l_e___g_a_t_t_c___f_u_n_c_t_i_o_n_s.html?cp=2_3_1_1_0_2_2_2_8#gaa778ccc1990e05fffa4aaf304c95e614"&gt;http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v5.0.0/group___b_l_e___g_a_t_t_c___f_u_n_c_t_i_o_n_s.html?cp=2_3_1_1_0_2_2_2_8#gaa778ccc1990e05fffa4aaf304c95e614&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;In order to discover all services (even unmapped UUIDs), you need to provide&amp;nbsp;&lt;em&gt;p_srvc_uuid&lt;/em&gt;&amp;nbsp; = NULL, If you are discovering unmapped 128 bit UUIDs, there is a note:&lt;/p&gt;
&lt;p&gt;If any of the discovered services have 128-bit UUIDs which are not present in the table provided to ble_vs_uuids_assign, a UUID structure with type&amp;nbsp;&lt;a href="http://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v5.0.0/group___b_l_e___u_u_i_d___t_y_p_e_s.html#ga0dfc5e26324c8cd7226f3941acbf5b7e"&gt;BLE_UUID_TYPE_UNKNOWN&lt;/a&gt;&amp;nbsp;will be received in the corresponding event.&lt;/p&gt;
&lt;p&gt;The problem is that the db_discovery library does not allow you to pass NULL as the p_srvc_uuid, so you will have to create your own library/logic for discovering all services on a device.&lt;/p&gt;
&lt;p&gt;You can discover all standardized 16-bit UUID services, like battery service, device information service, and other services listed here on bluetooth.org:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://www.bluetooth.com/specifications/gatt/services"&gt;https://www.bluetooth.com/specifications/gatt/services&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can use nrf connect for&amp;nbsp;the PC platform to do this instead of creating a specific firmware that does generic service discovery on any bluetooth LE device.&lt;/p&gt;
&lt;p&gt;Is there a specific reason why you want to perform generic service discovery of any device on your central? Normally you want to connect to a peripheral that supports your services.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/124331?ContentTypeID=1</link><pubDate>Wed, 14 Mar 2018 10:02:39 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2186894e-b7bd-4b71-8f6b-347b4c4235ae</guid><dc:creator>nikunj8086</dc:creator><description>[quote userid="2115" url="~/f/nordic-q-a/31305/how-to-discover-ble-services-at-connected-ble-peripheral-without-adding-services-to-softdevice/124133"]Please see our tutorials for more information:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/tutorials/"&gt;https://devzone.nordicsemi.com/tutorials/&lt;/a&gt;, more specifically this section:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/tutorials/b/bluetooth-low-energy"&gt;https://devzone.nordicsemi.com/tutorials/b/bluetooth-low-energy&lt;/a&gt;[/quote]
&lt;p&gt;in this tutorial it says that i have to use event register using&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;return ble_db_discovery_evt_register(&amp;amp;uart_uuid, db_discover_evt_handler);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;but in my case i don&amp;#39;t know which service uuid is available on ble peripheral.&lt;/p&gt;
&lt;p&gt;and i want to find list of available services on ble peripheral.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/124270?ContentTypeID=1</link><pubDate>Wed, 14 Mar 2018 06:13:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:febb2351-0c58-4ad1-a987-479fadf2c86d</guid><dc:creator>nikunj8086</dc:creator><description>&lt;p&gt;hi,&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;a class="internal-link view-user-profile" href="https://devzone.nordicsemi.com/members/hkn"&gt;H&amp;aring;kon Alseth&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;thanks for your response,&lt;/p&gt;
&lt;p&gt;actually i am&amp;nbsp;trying to replicate nrf connect mobile app in ble centeal device so that my central device can discoer all the services available in peripheral device.&lt;/p&gt;
&lt;p&gt;so i did service discovery in sdk14.2.0&amp;nbsp; ble_app_uart_c example.and&amp;nbsp;ble_app_hrs_c example.&lt;/p&gt;
&lt;p&gt;so first in&amp;nbsp;ble_app_hrs_c example i have put a break-point at &amp;quot;BLE_HRS_C_EVT_DISCOVERY_COMPLETE&amp;quot;&lt;/p&gt;
&lt;p&gt;and in &amp;quot;m_db_disc&amp;quot; i am able to see only heart rate service (0x180d) and battery service(0x180f) but not device info service (0x180A) and other flags with in&amp;nbsp;m_db_disc like discovery in progrss is true and discovery pendi is false.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;in second&amp;nbsp;&lt;span&gt;ble_app_uart_c i have used for costom service dscovery.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;so i added costom base uuid of nordic thingy 52 and started service discovery again i only recived forst service 0x0100 not any other service.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;please let me know where i am getting wrong.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;thanks&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: how to discover ble services at connected ble peripheral without adding services to softdevice</title><link>https://devzone.nordicsemi.com/thread/124133?ContentTypeID=1</link><pubDate>Tue, 13 Mar 2018 11:00:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:cd66469a-01e1-4ba0-9ba3-f09b1d098f7e</guid><dc:creator>H&amp;#229;kon Alseth</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;When you connect to a peripheral, you do a service discovery, which provides you the whole list of available services and characteristics.&lt;/p&gt;
&lt;p&gt;If a peripheral has any CCCDs (client characteristic configuration descriptor), then it means that the peripheral supports notification/indication, meaning that it can send data to the central once permissions for this is granted. Please see our tutorials for more information:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/tutorials/"&gt;https://devzone.nordicsemi.com/tutorials/&lt;/a&gt;, more specifically this section:&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/tutorials/b/bluetooth-low-energy"&gt;https://devzone.nordicsemi.com/tutorials/b/bluetooth-low-energy&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Håkon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>