<?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>BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/42421/ble-mesh3-0-merge-cilent-and-provisioner-firmware</link><description>Hello , 
 Que 1 :I want to Merge Client and Provisioner Firmware is possible..? 
 Que 2:Multiple provisioner can i define in same moudle. 
 Que 3:BLE MESH Network ,How many Provisioner work in same network..? 
 Regard&amp;#39;s 
 Nikunj</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 29 Jan 2019 15:20:15 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/42421/ble-mesh3-0-merge-cilent-and-provisioner-firmware" /><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/168518?ContentTypeID=1</link><pubDate>Tue, 29 Jan 2019 15:20:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:647476bc-1763-4caf-b83a-31597884ba98</guid><dc:creator>Mttrinh</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I assume you get this error code from access_model_reliable_publish() function? You will get this error code(NRF_ERROR_INVALID_PARAM) as a return code if your model is not bound to an application key, publish address not set or wrong opcode. Can you check that your parameters are correct?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/168384?ContentTypeID=1</link><pubDate>Tue, 29 Jan 2019 07:36:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7eb5a87-ed92-436a-b48a-0ed251d56674</guid><dc:creator>Nikunj Patel</dc:creator><description>&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/800x500/__key/communityserver-discussions-components-files/4/pastedimage1548747292934v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;m_model_pool[handle].model_info.publish_appkey_handle&amp;nbsp; = 0xFFFF&lt;br /&gt;m_model_pool[handle].model_info.publish_address_handle = 0xFFFF so I got an error 7 how to resolve this Error.&lt;/p&gt;
&lt;p&gt;Please reply me ASAP&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/168352?ContentTypeID=1</link><pubDate>Tue, 29 Jan 2019 03:28:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8a030559-252a-407a-8526-3f39fb01b8a5</guid><dc:creator>Nikunj Patel</dc:creator><description>&lt;p&gt;Hello Mttrinh,&lt;/p&gt;
&lt;p&gt;I have add client functionality in&amp;nbsp; provisioner FW. Device Successfully Configure in Mesh network But when I send Msg to the server function return Error Code 7(&lt;code style="background-color:#ffffff;color:#11171a;font-family:monospace, serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;NRF_ERROR_INVALID_PARAM&lt;/code&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;)&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#007000;font-family:&amp;#39;GT Eesti&amp;#39;,Helvetica,Arial,sans-serif;font-size:medium;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;I have seen in MESH_SDK_1.1&lt;/span&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;pre class="ui-code" data-mode="text"&gt;if (access_flash_config_load())  //Recover access layer configuration from flash.//All models have to be added before this function is called.  
    {                               
        m_configured_devices = configured_devices_count_get();
        __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;m_configured_devices:%d\n&amp;quot;,m_configured_devices);
    }
    else
    {
        /* Bind the keys to the health client. */
        ERROR_CHECK(access_model_application_bind(m_health_client.model_handle, m_appkey_handle));
        ERROR_CHECK(access_model_publish_application_set(m_health_client.model_handle, m_appkey_handle));//health client
        __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;access_model_publish_application_set\n&amp;quot;);

        /* Bind the keys to the Simple OnOff clients. */
        for (uint32_t i = 0; i &amp;lt; SERVER_COUNT; ++i)
        {
            ERROR_CHECK(access_model_application_bind(m_clients[i].model_handle, m_appkey_handle));//Bind appkey with Model Handle
            ERROR_CHECK(access_model_publish_application_set(m_clients[i].model_handle, m_appkey_handle));//publish Appkey With model
        }
        __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;access_model_publish_application_set All Server\n&amp;quot;);
        ERROR_CHECK(access_model_application_bind(m_clients[GROUP_CLIENT_INDEX].model_handle, m_appkey_handle));
        ERROR_CHECK(access_model_publish_application_set(m_clients[GROUP_CLIENT_INDEX].model_handle, m_appkey_handle));//Client Group

        ERROR_CHECK(access_model_publish_address_set(m_clients[GROUP_CLIENT_INDEX].model_handle, m_group_handle));
        access_flash_config_store();//Store the current state of access layer - information related to element and model configuration - in non volatile memory. 
         __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;access_flash_config_store current state\n&amp;quot;);
    }&lt;/pre&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;In BLE MESH_3.0&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;/* Binds the local models correctly with the desired keys */
void app_default_models_bind_setup(void)
{
    /* Bind health client to App key, and configure publication key */
    ERROR_CHECK(access_model_application_bind(m_dev_handles.m_health_client_instance.model_handle, m_dev_handles.m_appkey_handle));
    ERROR_CHECK(access_model_publish_application_set(m_dev_handles.m_health_client_instance.model_handle, m_dev_handles.m_appkey_handle));


    /* Bind self-config server to the self device key */
    ERROR_CHECK(config_server_bind(m_dev_handles.m_self_devkey_handle));
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:left;text-decoration:none;text-indent:0px;text-transform:none;white-space:normal;"&gt;Can you help me figure out what i am doing wrong?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:left;text-decoration:none;text-indent:0px;text-transform:none;white-space:normal;"&gt;Thanks&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;,Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:left;text-decoration:none;text-indent:0px;text-transform:none;white-space:normal;"&gt;Nikunj&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ffffff;color:#11171a;float:none;font-family:&amp;#39;GT Eesti&amp;#39;, Helvetica, Arial, sans-serif;font-size:14px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/167095?ContentTypeID=1</link><pubDate>Tue, 22 Jan 2019 13:00:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:da63d502-73a7-47da-b0bf-8c0f6616ccc9</guid><dc:creator>Mttrinh</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You can either add provisioner functionality to client firmware or the other way around. I suggest you have a look at the&amp;nbsp;&lt;span&gt;access_setup() function in the main file.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/166992?ContentTypeID=1</link><pubDate>Tue, 22 Jan 2019 04:48:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a21b16fb-a1a0-4de2-98e8-77c203605cdf</guid><dc:creator>Nikunj Patel</dc:creator><description>&lt;p&gt;Hello&lt;/p&gt;
&lt;p&gt;Reply me ASAP.. i Add Provisionor Functionality in Client Firmware ..?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/166700?ContentTypeID=1</link><pubDate>Mon, 21 Jan 2019 04:32:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:be5ce9fa-2e1c-465a-9bdd-3598ae59b84e</guid><dc:creator>Nikunj Patel</dc:creator><description>&lt;p&gt;i have seen BLE MESH V1.1 Example code but i can&amp;#39;t understand&amp;nbsp;can you give me guidance. How to client add&amp;nbsp;in network .i have add custom_data_client_Init successfully in Provisioner firmware,but i dont know how to assign address&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;I have seen In Provisioner Firmware check_network_state(); this function is start waiting for incoming beacon request and send invitation to client.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I seen in client Firmware mesh_provisionee_prov_start() this function&amp;nbsp;send Beacon request Provisioner.&lt;/p&gt;
&lt;p&gt;I want&amp;nbsp; both Provisonee and Provisionor Functionality in Provisioner Firmware so Please healp me which API to change And How to do that if you have document then suggest me.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;void models_init_cb(void)
{
  uint8_t status;

    __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;Initializing and adding models\n&amp;quot;);
    m_dev_handles.m_netkey_handle = DSM_HANDLE_INVALID;
    m_dev_handles.m_appkey_handle = DSM_HANDLE_INVALID;
    m_dev_handles.m_self_devkey_handle = DSM_HANDLE_INVALID;

    /* This app requires following models :
     * config client : To be able to configure other devices
     * health client : To be able to interact with other health servers */
    ERROR_CHECK(config_client_init(app_config_client_event_cb));
    ERROR_CHECK(health_client_init(&amp;amp;m_dev_handles.m_health_client_instance, 0, app_health_event_cb));

    m_clients.settings.p_callbacks = &amp;amp;client_cbs;
    m_clients.settings.timeout = 0;
    m_clients.settings.force_segmented = APP_CONFIG_FORCE_SEGMENTATION;
    m_clients.settings.transmic_size = APP_CONFIG_MIC_SIZE;

    ERROR_CHECK(custom_data_client_init(&amp;amp;m_clients,1));
    
}&lt;/pre&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Nikunj&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/165930?ContentTypeID=1</link><pubDate>Wed, 16 Jan 2019 11:24:30 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:67b3830e-0c17-4635-9ab7-9c7f015f5404</guid><dc:creator>Mttrinh</dc:creator><description>&lt;p&gt;I suggest you open a new ticket and include more details about the issue.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/165928?ContentTypeID=1</link><pubDate>Wed, 16 Jan 2019 11:21:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:614405e3-d76d-4df9-8c52-0e4f1c2f2b45</guid><dc:creator>Mttrinh</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Q1: Yes, it is possible to merge the client and provisioner example. This was done in earlier version of the Mesh SDK. Have a look at the light switch client example in &lt;a href="https://www.nordicsemi.com/Software-and-Tools/Software/nRF5-SDK-for-Mesh/Download#infotabs" rel="noopener noreferrer" target="_blank"&gt;Mesh SDK v1.0.1&lt;/a&gt;, it will give you an idea on how to do it.&lt;/p&gt;
&lt;p&gt;Q2: I&amp;#39;m not sure what you mean by this. Can you elaborate?&lt;/p&gt;
&lt;p&gt;Q3: Multiple Provisioners may be used, but the method to share cached data and coordinate across multiple Provisioners is implementation specific. There aren&amp;#39;t a specific number for how many provisioner you can have in a network. The limitation lies in the coordination between the Provisioners, so it is dependent on your implementation.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE MESH3.0 Merge Cilent and Provisioner Firmware.</title><link>https://devzone.nordicsemi.com/thread/165279?ContentTypeID=1</link><pubDate>Sat, 12 Jan 2019 06:19:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4a6d618a-c777-4040-80c1-38a4128c508b</guid><dc:creator>Nikunj Patel</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;&amp;nbsp;ERROR_CHECK(mesh_provisionee_prov_start(&amp;amp;prov_start_params));&lt;/p&gt;
&lt;p&gt;Above Function is use in client To start Beacon. if i add this function in Provisioner code&amp;nbsp;&amp;nbsp;i got an Error 0x0000010e.Please let me&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;static void start(void)
{
    rtt_input_enable(app_rtt_input_handler, RTT_INPUT_POLL_PERIOD_MS);
    __LOG(LOG_SRC_APP, LOG_LEVEL_INFO, &amp;quot;&amp;lt;start&amp;gt; \n&amp;quot;);

#if (!PERSISTENT_STORAGE)
    app_start();
#endif

      static const uint8_t static_auth_data[NRF_MESH_KEY_SIZE] = STATIC_AUTH_DATA;
      mesh_provisionee_start_params_t prov_start_params =
      {
          .p_static_data    = static_auth_data,
          .prov_complete_cb = provisioning_complete_cb,
          .prov_device_identification_start_cb = device_identification_start_cb,
          .prov_device_identification_stop_cb = NULL,
          .prov_abort_cb = provisioning_aborted_cb,
          .p_device_uri = NULL
      };
      ERROR_CHECK(mesh_provisionee_prov_start(&amp;amp;prov_start_params));


    ERROR_CHECK(nrf_mesh_enable());

    hal_led_mask_set(LEDS_MASK, LED_MASK_STATE_OFF);
    hal_led_blink_ms(LEDS_MASK, LED_BLINK_INTERVAL_MS, LED_BLINK_CNT_START);
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Thank&amp;#39;s&lt;/p&gt;
&lt;p&gt;Nikunj&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>