<?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>Use Dongle as Client</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/96182/use-dongle-as-client</link><description>Hi Nordic Team 
 I tried to get the USB Dongle PCA10049 to connect on a other device (PCA10056) over custom UUID and Custom characteristics. 
 I used the Example from Dev Zone Case ID 284737 as starting point. 
 With the serial app (Serial Bluetooth Terminal</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 08 Feb 2023 08:03:10 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/96182/use-dongle-as-client" /><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/408748?ContentTypeID=1</link><pubDate>Wed, 08 Feb 2023 08:03:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2ee0b759-f0d8-4f30-8098-e58a6e8f4ef1</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;We have a message sequence chart describing &lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s140.api.v7.3.0/group___b_l_e___g_a_t_t_c___c_h_a_r___d_i_s_c___m_s_c.html"&gt;characteristic discovery on the GATT client here&lt;/a&gt; that should be helpful. You can see the &lt;strong&gt;characteristics_discover()&lt;/strong&gt; function in our &lt;strong&gt;ble_db_discovery.c&lt;/strong&gt; file for reference of how it&amp;#39;s used in the discovery module.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/408740?ContentTypeID=1</link><pubDate>Wed, 08 Feb 2023 07:24:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b72b28c0-d762-476b-8a2d-bc993ce4b12f</guid><dc:creator>Simsim</dc:creator><description>&lt;p&gt;Hi Simon&lt;/p&gt;
&lt;p&gt;I had sucess.&lt;/p&gt;
&lt;p&gt;I had to discover the Characteristic UUID as well right?-&amp;gt; Will be found and adressed automaticly by the discovery module&lt;/p&gt;
&lt;p&gt;Do i have to add the second UUID to the scan response telegram as well? Not needed Service UUID is sufficent.&lt;/p&gt;
&lt;p&gt;ble_nus_c.c&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;uint32_t ble_nus_c_init(ble_nus_c_t * p_ble_nus_c, ble_nus_c_init_t * p_ble_nus_c_init)
{
    uint32_t      err_code;
    ble_uuid_t    uart_uuid;
    ble_uuid_t    char_uuid;
    ble_uuid128_t nus_base_uuid = NUS_BASE_UUID;//UUID for Service
    ble_uuid128_t second_char_uuid = CHAR_UUID; // UUID for Character
   

    VERIFY_PARAM_NOT_NULL(p_ble_nus_c);
    VERIFY_PARAM_NOT_NULL(p_ble_nus_c_init);
    VERIFY_PARAM_NOT_NULL(p_ble_nus_c_init-&amp;gt;p_gatt_queue);

    err_code = sd_ble_uuid_vs_add(&amp;amp;nus_base_uuid, &amp;amp;p_ble_nus_c-&amp;gt;uuid_type);
    VERIFY_SUCCESS(err_code);



    uart_uuid.type = p_ble_nus_c-&amp;gt;uuid_type;
    uart_uuid.uuid = BLE_UUID_NUS_SERVICE;

    p_ble_nus_c-&amp;gt;conn_handle           = BLE_CONN_HANDLE_INVALID;
    p_ble_nus_c-&amp;gt;evt_handler           = p_ble_nus_c_init-&amp;gt;evt_handler;
    p_ble_nus_c-&amp;gt;error_handler         = p_ble_nus_c_init-&amp;gt;error_handler;
    p_ble_nus_c-&amp;gt;handles.nus_tx_handle = BLE_GATT_HANDLE_INVALID;
    p_ble_nus_c-&amp;gt;handles.nus_rx_handle = BLE_GATT_HANDLE_INVALID;
    p_ble_nus_c-&amp;gt;p_gatt_queue          = p_ble_nus_c_init-&amp;gt;p_gatt_queue;

    uint8_t type; 
    err_code = sd_ble_uuid_vs_add(&amp;amp;second_char_uuid, &amp;amp;type); // char UUID add
    VERIFY_SUCCESS(err_code);

    char_uuid.type = type;
    char_uuid.uuid = BLE_UUID_NUS_RX_CHARACTERISTIC;

   // ble_db_discovery_evt_register(&amp;amp;char_uuid); // Do not add for dicovery only Services

    return ble_db_discovery_evt_register(&amp;amp;uart_uuid);&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Kind regards&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/408439?ContentTypeID=1</link><pubDate>Tue, 07 Feb 2023 07:32:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d0af12b-d737-4e40-826d-eaff67699263</guid><dc:creator>Simsim</dc:creator><description>&lt;p&gt;Hi Simon&lt;/p&gt;
&lt;p&gt;The CDC-ACM helped me not a lot, this side is Working as expected. I did some Testing with the Plain BLE-UART server and could make it running till the point where i change the UUID from the Characteristic. As log it is the same as the Base UUID it works.&lt;/p&gt;
&lt;p&gt;Question:&lt;/p&gt;
&lt;p&gt;I had to discover the Characteristic UUID as well right?&lt;/p&gt;
&lt;p&gt;Do i have to add the second UUID to the scan response telegram as well?&lt;/p&gt;
&lt;p&gt;Can you give me a hint where to add the second vs_uuid to discover,&amp;nbsp;sd_ble_uuid_vs_add() is called aftre the base UUID,&amp;nbsp; uuid_type is 0x03. Base UUID is 0x02&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/407835?ContentTypeID=1</link><pubDate>Thu, 02 Feb 2023 15:27:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:880c534f-cc64-4c4f-9def-8e9ed3d72528</guid><dc:creator>Simsim</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;The firmware running on the Server Side is based on the nrf Mesh Dimming server(Softdevice 140), the Gatt Modells are modified to have the Custom UUID and Services. Softdevice 140&lt;/p&gt;
&lt;p&gt;The service i try to discover is a plain GATT service, write, notify.&lt;/p&gt;
&lt;p&gt;Snipping of the NRF Connect for Desktop&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:240px;max-width:320px;" alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/4/GATT_5F00_Settings.JPG" /&gt;&lt;/p&gt;
&lt;p&gt;I will have a look on the CDC_ACM example.&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/407753?ContentTypeID=1</link><pubDate>Thu, 02 Feb 2023 12:17:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1186cb79-7213-40d9-95bd-852aa736aa4d</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;What firmware is running on the server side (nRF52840 DK) here? There seem to be some mentions to Bluetooth Mesh here, which a &amp;quot;regular&amp;quot; BLE application (like the CDC_ACM example project) won&amp;#39;t be able to communicate properly with without having some Mesh firmware as well. A phone usually has a stack for both BLE and Bluetooth Mesh by default which would explain why it&amp;#39;s able to communicate with it as expected. Is the service you&amp;#39;re trying to discover a Mesh service by any chance?&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/407508?ContentTypeID=1</link><pubDate>Wed, 01 Feb 2023 11:19:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f89fdf6-caa8-41c7-857c-ed46614e2a1b</guid><dc:creator>Simsim</dc:creator><description>&lt;p&gt;Hi Simon&lt;/p&gt;
&lt;p&gt;Thanks for the answer, i logged both sides to see whats happening.&lt;/p&gt;
&lt;p&gt;USB Dongle:&lt;/p&gt;
&lt;p&gt;I added the Characteristc UUID as well on the discovery List, with no further success(as expected).&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;info&amp;gt; app_timer: RTC: initialized.
&amp;lt;info&amp;gt; app: USBD BLE UART example started.
&amp;lt;debug&amp;gt; nrf_sdh_ble: RAM starts at 0x20002AE8
&amp;lt;debug&amp;gt; nrf_sdh_ble: RAM start location can be adjusted to 0x20002A48.
&amp;lt;debug&amp;gt; nrf_sdh_ble: RAM size for application can be adjusted to 0x3D5B8.
&amp;lt;info&amp;gt; app: Initializing Nordic UART Service Client.
&amp;lt;debug&amp;gt; ble_scan: Added filter on UUID 498B
&amp;lt;debug&amp;gt; ble_scan: Scanning
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1D.
&amp;lt;debug&amp;gt; ble_scan: Connecting
&amp;lt;debug&amp;gt; ble_scan: Connection status: 0
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x10.
&amp;lt;debug&amp;gt; nrf_ble_gatt: Requesting to update ATT MTU to 247 bytes on connection 0x0.
&amp;lt;debug&amp;gt; nrf_ble_gatt: Updating data length to 251 on connection 0x0.
&amp;lt;info&amp;gt; app: Connecting to target 6314D2F8FDCC
&amp;lt;debug&amp;gt; nrf_ble_gq: Registering connection handle: 0x0000
&amp;lt;debug&amp;gt; ble_db_disc: Starting discovery of service with UUID 0x498B on connection handle 0x0.
&amp;lt;debug&amp;gt; nrf_ble_gq: Adding item to the request queue
&amp;lt;debug&amp;gt; nrf_ble_gq: GATTC Primary Services Discovery Request
&amp;lt;debug&amp;gt; nrf_ble_gq: SD is currently busy. The GATT request procedure will be attempted                       again later.
&amp;lt;debug&amp;gt; nrf_ble_gq: Processing the request queue...
&amp;lt;debug&amp;gt; nrf_ble_gq: GATTC Primary Service Discovery Request
&amp;lt;debug&amp;gt; nrf_ble_gq: SD is currently busy. The GATT request procedure will be attempted                           again later.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x3A.
&amp;lt;debug&amp;gt; nrf_ble_gatt: ATT MTU updated to 69 bytes on connection 0x0 (response).
&amp;lt;info&amp;gt; app: ATT MTU exchange completed.
&amp;lt;info&amp;gt; app: Ble NUS max data length set to 0x42(66)
&amp;lt;debug&amp;gt; nrf_ble_gq: Processing the request queue...
&amp;lt;debug&amp;gt; nrf_ble_gq: GATTC Primary Service Discovery Request
&amp;lt;debug&amp;gt; nrf_ble_gq: SD GATT procedure (2) succeeded on connection handle: 0.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x24.
&amp;lt;debug&amp;gt; nrf_ble_gatt: Data length updated to 73 on connection 0x0.
&amp;lt;debug&amp;gt; nrf_ble_gatt: max_rx_octets: 73
&amp;lt;debug&amp;gt; nrf_ble_gatt: max_tx_octets: 73
&amp;lt;debug&amp;gt; nrf_ble_gatt: max_rx_time: 2120
&amp;lt;debug&amp;gt; nrf_ble_gatt: max_tx_time: 2120
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x30.
&amp;lt;debug&amp;gt; ble_db_disc: Service UUID 0x498B not found.
&amp;lt;debug&amp;gt; ble_db_disc: Starting discovery of service with UUID 0xCFBB on connection handle 0x0.
&amp;lt;debug&amp;gt; nrf_ble_gq: Adding item to the request queue
&amp;lt;debug&amp;gt; nrf_ble_gq: GATTC Primary Services Discovery Request
&amp;lt;debug&amp;gt; nrf_ble_gq: SD GATT procedure (2) succeeded on connection handle: 0.
&amp;lt;debug&amp;gt; nrf_ble_gq: Processing the request queue...
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x1F.
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x30.
&amp;lt;debug&amp;gt; ble_db_disc: Service UUID 0xCFBB not found.
&amp;lt;debug&amp;gt; nrf_ble_gq: Processing the request queue...
&amp;lt;debug&amp;gt; nrf_sdh_ble: BLE event: 0x12.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Server:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;t:          0&amp;gt;, main.c,  691, ----- Control -----
&amp;lt;t:      11921&amp;gt;, main.c,  567, Initializing and adding models
&amp;lt;t:      11924&amp;gt;, main.c,  365, App Client Model handle: 2 
&amp;lt;t:      11928&amp;gt;, main.c,  371, App Level Model handle: 3
&amp;lt;t:      11931&amp;gt;, main.c,  377, App DTT Model handle: 4
&amp;lt;t:      11935&amp;gt;, main.c,  384, App Scene Model handle: 6, Element index: 0
&amp;lt;t:      11953&amp;gt;, main.c,  733, Loaded flash Parameters 
&amp;lt;t:      17182&amp;gt;, mesh_app_utils.c,   66, Device UUID (raw): 407843200FBC4045A314D2F8FD8CAD20
&amp;lt;t:      17185&amp;gt;, mesh_app_utils.c,   67, Device UUID : 40784320-0FBC-4045-A314-D2F8FD8CAD20
&amp;lt;t:      17204&amp;gt;, main.c,  771, 
		-------------------------------------------------------------
		 RTT 1) Set the Signal on T1 equal for Testig purpose        
		 RTT 2) Set the Signal on T2 equal for Testig purpose        
		 RTT 3) Send Mesh Telegram from this Node ID          
		 RTT 4) Clear all the states to reset the node.              
		-------------------------------------------------------------
&amp;lt;t:      17289&amp;gt;, app_level.c,  295, SET: Level: 0  delay: 0  tt: 0  req-delta: 0  trans-type: 0
&amp;lt;t:      17294&amp;gt;, main.c,  293, command: 0 
&amp;lt;t:      17296&amp;gt;, main.c,  338, Transition time: 0, Target level: 0, Transition type: 0
&amp;lt;t:     596545&amp;gt;, mesh_gatt.c,  834, GATT connencted UNprovisioned 
&amp;lt;t:     596550&amp;gt;, mesh_gatt.c,  616, New MTU: 66
&amp;lt;t:     608340&amp;gt;, ble_softdevice_support.c,  104, Successfully updated connection parameters&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Server when Connected with Mobilephone and Serial APP Send &amp;quot;123456BEEF&amp;quot;:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;t:          0&amp;gt;, main.c,  691, ----- Control -----
&amp;lt;t:      11165&amp;gt;, main.c,  567, Initializing and adding models
&amp;lt;t:      11168&amp;gt;, main.c,  365, App Client Model handle: 2 
&amp;lt;t:      11171&amp;gt;, main.c,  371, App Level Model handle: 3
&amp;lt;t:      11175&amp;gt;, main.c,  377, App DTT Model handle: 4
&amp;lt;t:      11179&amp;gt;, main.c,  384, App Scene Model handle: 6, Element index: 0
&amp;lt;t:      11197&amp;gt;, main.c,  733, Loaded flash Parameters 
&amp;lt;t:      16419&amp;gt;, mesh_app_utils.c,   66, Device UUID (raw): 407843200FBC4045A314D2F8FD8CAD20
&amp;lt;t:      16422&amp;gt;, mesh_app_utils.c,   67, Device UUID : 40784320-0FBC-4045-A314-D2F8FD8CAD20
&amp;lt;t:      16439&amp;gt;, main.c,  771, 
		-------------------------------------------------------------
		 RTT 1) Set the Signal on T1 equal for Testig purpose        
		 RTT 2) Set the Signal on T2 equal for Testig purpose        
		 RTT 3) Send Mesh Telegram from this Node ID          
		 RTT 4) Clear all the states to reset the node.              
		-------------------------------------------------------------
&amp;lt;t:      16826&amp;gt;, app_level.c,  295, SET: Level: 0  delay: 0  tt: 0  req-delta: 0  trans-type: 0
&amp;lt;t:      16831&amp;gt;, main.c,  293, command: 0 
&amp;lt;t:      16833&amp;gt;, main.c,  338, Transition time: 0, Target level: 0, Transition type: 0
&amp;lt;t:    3899567&amp;gt;, mesh_gatt.c,  834, GATT connencted UNprovisioned 
&amp;lt;t:    3924723&amp;gt;, ble_softdevice_support.c,  104, Successfully updated connection parameters
&amp;lt;t:    3990664&amp;gt;, ble_softdevice_support.c,  104, Successfully updated connection parameters
&amp;lt;t:    4029167&amp;gt;, mesh_gatt.c,  839, GATT disonnencted UNprovisioned 
&amp;lt;t:    4431815&amp;gt;, mesh_gatt.c,  834, GATT connencted UNprovisioned 
&amp;lt;t:    4459813&amp;gt;, ble_softdevice_support.c,  104, Successfully updated connection parameters
&amp;lt;t:    4526616&amp;gt;, ble_softdevice_support.c,  104, Successfully updated connection parameters
&amp;lt;t:    5083484&amp;gt;, mesh_gatt.c,  616, New MTU: 66
&amp;lt;t:    5107820&amp;gt;, mesh_gatt.c,  867, GATT write UNprovisioned 
&amp;lt;t:    5789036&amp;gt;, mesh_gatt.c,  867, GATT write UNprovisioned 
&amp;lt;t:    5789043&amp;gt;, mesh_gatt.c,  484, Received Data (raw): 123456BEEF
&amp;lt;t:    5789046&amp;gt;, mesh_gatt.c,  495, Reply Data    (raw): F4ED03200000D300&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I used also the nRF Sniffer running wireshark but there is not realy something to see in both cases Mobile-Server or Dongle to server just advertising, last Message is Connect_IND in both cases. then silence till disconnect.&lt;/p&gt;
&lt;p&gt;What happend after &amp;quot;connected&amp;quot; would be Interesting.&lt;/p&gt;
&lt;p&gt;Kind regards&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Use Dongle as Client</title><link>https://devzone.nordicsemi.com/thread/407376?ContentTypeID=1</link><pubDate>Tue, 31 Jan 2023 14:20:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4e2efacc-71a5-4676-bb4f-99d31b07ac9f</guid><dc:creator>Simonr</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;Can you also provide the log from the peripheral side so we can take a look there as well. Have you added the service in the peripheral project as well? It just seems like the application requests a discovery with &amp;quot;&lt;strong&gt;Starting discovery of service with UUID 0x498B&lt;/strong&gt;&amp;quot; , and then don&amp;#39;t find the service UUID. Another thing that might be helpful is if you could take a sniffer trace of the connection so we can see what exactly is happening on the air. You can use a dedicated Bluetooth sniffer, like the&lt;a href="https://www.ellisys.com/products/btcompare.php"&gt; Ellisys devices&lt;/a&gt;, or a spare nRF52 DK/Dongle if you have one and the&lt;a href="https://www.nordicsemi.com/Products/Development-tools/nrf-sniffer-for-bluetooth-le"&gt; nRF Sniffer&lt;/a&gt; running on Wireshark.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Simon&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>