Создание собственного API сокета для отправки пакетов UDP через LoRaWAN

Я строю сеть LoRa, где сервер и конечное устройство должны обмениваться данными, используя протокол, который обычно передает данные через UDP. В связи с тем, что эти два протокола действуют совершенно по-разному, мне нужно найти способ объединить эти два протокола.

Одно решение, которое я нашел, - это создать собственный API сокетов, который обеспечивает функции send, receive, bind, .... Но здесь я на самом деле борюсь.

В каком объеме мне нужно написать свой сокет? Достаточно ли просто редактировать функции и полагаться на другие заданные параметры, такие как семейства адресов? Или я должен определить свой собственный AF и если да, то где / как это достигается.

Я с нетерпением жду ваших ответов / идей.

1 ответ

Согласно спецификации LoRaWAN и моему ограниченному опыту, LoRaWAN не подходит для такой ситуации. Если вы все еще хотите использовать UDP-пакеты по LoRaWAN, вот несколько советов по вашему вопросу.

  1. В каком объеме мне нужно написать свой сокет?

Вы можете использовать функцию sendUnconfirm, так как эта функция не требует подтверждения от шлюза. И порт в LoRaWAN может играть роль связывания в UDP-сокете.

  1. Достаточно ли просто редактировать функции и полагаться на другие заданные параметры, такие как семейства адресов?

Сервер LoRaWAN имеет свои особенности и структуру. Обычно сервер LoRaWAN состоит из package_forwarder, сервера LoRaWAN и сервера приложений LoRaWAN. Вы можете использовать эти функции для создания собственного приложения на сервере приложений LoRaWAN. Это может сэкономить вам много времени.

Настоятельно рекомендуется прочитать спецификацию LoRaWAN (получить ее здесь) и TTN LoRaWAN wiki, чтобы помочь вам лучше понять LoRaWAN.

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