Доступ к основному адресу узла публикации ESP-BLE-MESH в ESP-IDF

У меня есть простая сетка BLE (с использованием ESP-BLE-MESH от Espressif), состоящая из двух узлов; один содержит 3 общих элемента onoff server, публикуемых в группу, и один содержит один универсальный onoff клиент, подписанный на эту группу. Каждый узел представляет собой небольшую плату разработки ESP32 со встроенным светодиодом RGB. Я программирую на C, используя расширение ESP-IDF для Visual Studio Code.

Я хочу, чтобы 3 сервера onoff управляли R, G и B светодиода соответственно, но все, что мне нужно, чтобы отличить сервер от других, — это адрес его элемента, который является первичным адресом узла + некоторое смещение. Я хочу получить это смещение, чтобы определить, какие из R, G и B переключаются, но я не могу понять, как получить доступ к основному адресу публикующего узла, чтобы решить эту проблему. Я просмотрел документацию и попробовал каждого члена esp_ble_mesh_generic_client_cb_param_t структура передается в example_ble_mesh_generic_client_cb функции, спускаясь в такие кроличьи норы, как param->params->model->pub->publish_addr, но безуспешно. Возможно ли то, чего я пытаюсь достичь?

Используемый серверный и клиентский код: узел ble mesh

0 ответов

Другие вопросы по тегам