一.摘要
本文在ble mesh框架的基础,来讲述了一条数据在mesh协议栈中的发送流程,欢迎交流与指正。
二.ble mesh框架
三.发送流程
以light-swtich为例,如果我们需要发送自定义数据,我们只需要把自定义数据收发模型移植到模型层上,就能实现自定义数据收发了,下面我们来看一下自定义数据在协议栈的流程
发送数据 :从应用层 按键中断 开始 (一条路径)
app_onoff_status_publish-->generic_onoff_server_status_publish-->status_send-->access_model_publish-->packet_alloc_and_tx-->packet_tx-->nrf_mesh_packet_send-->
transport_tx-->upper_transport_tx-->unsegmented_packet_tx-->network_packet_send-->core_tx_packet_send-->packet_send--> advertiser_packet_send-->schedule_broadcast-->broadcast_send-->bearer_handler_action_enqueue 到达承载层
接收数据 :
AD_LISTENER(m_mesh_packet_listener) = {
.ad_type = AD_TYPE_MESH,
.adv_packet_type = BLE_PACKET_TYPE_ADV_NONCONN_IND,
.handler = packet_in,
}; 从pakect_in进去,依次到达模型层。
四.后续
后面会学习下接入层的主要函数