Zephyr 是否支持通过 802.15.4 发送非 IP 流量?
Does Zephyr support sending non-IP traffic over 802.15.4?
我有一个 IoT 应用程序,它要求我在没有任何更高级别协议的情况下发送 802.15.4 数据包。我们有一个用本机 C 实现的小数据包规范,所以我只需要向数据包添加有效负载并通过无线电发送它(永远不会有数据包拆分)。我们当前的硬件对无线电接口进行非常低级别的控制,并(部分)为此目的实现 802.15.4,但我正在尝试使用 Zephyr 在 nRF5340DK 上展示相同的功能。
查看 Zephyr 文档,我只看到支持通过 BSD 套接字发送或使用卸载驱动程序绕过 L2 并直接与无线电通话。如果驱动程序中已经存在,我宁愿不实施整个 L2 规范。
我的应用程序有什么方法可以更直接地控制 L2 数据包吗?
这个问题的简单答案是“否”。 L2 802.15.4 实现是 6LoWPAN,因此它与 IPv6 相关联。一位北欧开发人员建议我,他们的 Zigbee 实施采用了与我需要的方法类似的方法,但我需要为我的目的重新发明轮子 https://github.com/nrfconnect/sdk-nrf/blob/main/subsys/zigbee/osif/zb_nrf_transceiver.c
我有一个 IoT 应用程序,它要求我在没有任何更高级别协议的情况下发送 802.15.4 数据包。我们有一个用本机 C 实现的小数据包规范,所以我只需要向数据包添加有效负载并通过无线电发送它(永远不会有数据包拆分)。我们当前的硬件对无线电接口进行非常低级别的控制,并(部分)为此目的实现 802.15.4,但我正在尝试使用 Zephyr 在 nRF5340DK 上展示相同的功能。
查看 Zephyr 文档,我只看到支持通过 BSD 套接字发送或使用卸载驱动程序绕过 L2 并直接与无线电通话。如果驱动程序中已经存在,我宁愿不实施整个 L2 规范。
我的应用程序有什么方法可以更直接地控制 L2 数据包吗?
这个问题的简单答案是“否”。 L2 802.15.4 实现是 6LoWPAN,因此它与 IPv6 相关联。一位北欧开发人员建议我,他们的 Zigbee 实施采用了与我需要的方法类似的方法,但我需要为我的目的重新发明轮子 https://github.com/nrfconnect/sdk-nrf/blob/main/subsys/zigbee/osif/zb_nrf_transceiver.c