- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
in the board with code Mesh_Snip_213043MESH.mesh_vendor_specific_app I can print in WICED Peripheral UART the message sent by provision_client app as shown in the image
I added the line: WICED_BT_TRACE ("Dato:% B \ n", p_data);
but
I want to print the reply message in WICED Peripheral UART on the card with the code provision_client app
I added the line: WICED_BT_TRACE ("Reply message:% B \ n", p_data);
in the function: wiced_bool_t mesh_vendor_client_message_handler (wiced_bt_mesh_event_t * p_event, uint8_t * p_data, uint16_t data_len)
but the reply message does not print correctly: ("123456789101")
the image shows the code and the message in the terminal
in the terminal it shows the message ( "00 04 20 00 c1 03"):
Reply message: 00 04 20 00 c1 03
mesh_vendor_client_message_handler: company_id: 0131 opcode: 2 model_id: ffff
ignored
You can check, the reply massage does not enter the function: void mesh_vendor_client_process_data in the board with the code provision_client app
please
help me
in my work we want to buy 3000 CYBT-213043-MESH but because we cannot solve this problem we cannot buy
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Currently, vendor model handler is not enabled by the ClientControl in the mesh_provision_client app. Our software team will be releasing a fix for this in the next BTSDK release. You can try below workaround to solve this problem and proceed with your development work.
Also, please find the attached Clientcontrol.exe with the below fix.
Workaround
MeshClientControl source code is available in the BTSDK.
- Please open BTSDKClientControl.sln in Visual studio, make below changes and rebuild the code.
- Go to BT-SDK\wiced_btsdk\tools\btsdk-host-apps-mesh\VS_ClientControl\LightControl.cpp.
- Search for the function "void network_opened(uint8_t status)"
- Change the line if (pSheet->m_active_page == 1 && theApp.bMeshPerfMode) to if (pSheet->m_active_page == 1 )
- Rebuild the code for debug.
"
void network_opened(uint8_t status)
{
Log(L"Network opened");
CClientDialog* pSheet = (CClientDialog*)theApp.m_pMainWnd;
#ifndef NO_LIGHT_CONTROL
if (pSheet->m_active_page == 1) //modified
{
CLightControl* pDlg = &pSheet->pageLight;
if (pDlg)
pDlg->PostMessage(WM_MESH_ADD_VENDOR_MODEL, (WPARAM)0, (LPARAM)0);
}
#endif
}
"
Thanks,
-Dheeraj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I doubt, the mesh_provision_client does not receives any data from the reply message.
Let me do some experiments to figure out the actual issue. I will get back to you soon.
Thanks,
-Dheeraj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Currently, vendor model handler is not enabled by the ClientControl in the mesh_provision_client app. Our software team will be releasing a fix for this in the next BTSDK release. You can try below workaround to solve this problem and proceed with your development work.
Also, please find the attached Clientcontrol.exe with the below fix.
Workaround
MeshClientControl source code is available in the BTSDK.
- Please open BTSDKClientControl.sln in Visual studio, make below changes and rebuild the code.
- Go to BT-SDK\wiced_btsdk\tools\btsdk-host-apps-mesh\VS_ClientControl\LightControl.cpp.
- Search for the function "void network_opened(uint8_t status)"
- Change the line if (pSheet->m_active_page == 1 && theApp.bMeshPerfMode) to if (pSheet->m_active_page == 1 )
- Rebuild the code for debug.
"
void network_opened(uint8_t status)
{
Log(L"Network opened");
CClientDialog* pSheet = (CClientDialog*)theApp.m_pMainWnd;
#ifndef NO_LIGHT_CONTROL
if (pSheet->m_active_page == 1) //modified
{
CLightControl* pDlg = &pSheet->pageLight;
if (pDlg)
pDlg->PostMessage(WM_MESH_ADD_VENDOR_MODEL, (WPARAM)0, (LPARAM)0);
}
#endif
}
"
Thanks,
-Dheeraj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you very much, you are very helpful
I can print in UART the reply massage ("0x670x650x740x730x740x6c" or any message) with the card with code Mesh_Snip_213043MESH.mesh_provision_client / mesh_vendor_client.c
Thank you very much
the next thing i want to do
i want the board that has the code: Mesh_Snip_213043MESH.mesh_provision_client / mesh_vendor_client.c, send the data: "0x670x650x740x730x740x6c" to the board with the code Mesh_Snip_213043MESH.mesh_vendor_
but now without using the windows Mesh Control Client app
I want to know if another microcontroller can send the same data frame sent by the Mesh Control Client app to the WICED HCI port? or
Is the other option possible? : modify the Mesh_Snip_213043MESH.mesh_provision_client / mesh_vendor_client.c code so that it sends this data (0x670x650x740x730x740x6c) without using the Mesh Control Client app
Please
Can you tell me how can I do this?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI,
Please refer WICED-HCI-Control-Protocol.pdf if you want to use external host MCU to communicate with Cypress WICED device via HCI UART. Cypress MeshClientControl is a sample helper application which uses WICED HCI Control Protocol.
Please refer hci_control_api.h to get list of HCI commands.
Otherwise you can also hard code the data to be send in the application, and publish it by detecting interrupts. But I don't think you wanted to send some hard coded value always.
Since you have created another thread for this issue, lets discuss it over there. I need to send and receive messages with the BLE MESH, but without using the app Client Control Mesh
Thanks,
-Dheeraj