APRS & PACKET RADIO UKRAINE

Група у Telegram, посилання t.me/APRS_UA

Група створена для розвитку мережі APRS та технологій радіоаматорського пакетного зв'язку.
У групі не проводяться політичні дискусії та комерційна діяльність.
Бажано вказати своє ім'я та позивний сигнал.

Автор Тема: Bash APRS Beacon (простой скрипт для посылки APRS-IS пакетов)  (Прочитано 122 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн UT3UQZ

Как-то задумалось мне, что хочу отправлять aprs пакеты прямо из консоли чтобы сделать маяк домашний. Оставлять телефон с ARPSDroid - не вариант, иногда хочется с собой поносить и отправлять пакеты в движении. И на неделе было решено сделать простой perl или bash скрипт для этого. В сети есть примеры на господи упаси php и python, но все эти варианты меня не удовлетворяли.
Документации по APRS достаточно, но толком я не нашел, какие пакеты надо слать, вернее, какого формата. За то описана система координат, двух сеток символов (глифов) и то, как символ выбирается. Подробнее об этом есть по ссылке http://wa8lmf.net/aprs/APRS_symbols.htm
Существует так же aprsc - сервер на С, но к нему так же нет документации на тему клиентской части (ну ещё бы)
Что я сделал:
  • С помощью товарища R6HACN который любезно согласился "поснифать" трафик APRSDroid программой Wireshark (можно было это делать чем угодно в принципе) увидел какие данные отправляет "клиент"
  • Методом проб и ошибок начал реплицировать эти данные и отправлять их на сервер, попутно наблюдая свои "сырые пакеты" на сайте aprs.fi в разделе "raw packets"
И готово!

Сам скрипт - https://gitlab.com/-/snippets/2179034

Для изменения координатов советую воспользоваться своими координатами и записать их в необходимом формате, который расписан в этом документе (на странице 23-24) http://www.aprs.org/doc/APRS101.PDF

Для автоматизации по крону советую http://cronmaker.com/ - выбираете время и просто копируете строку в crontab.
Как пользоваться кроном - google в помощь или я предлагаю вот эту статью на английском (простая) https://ostechnix.com/a-beginners-guide-to-cron-jobs/

Как ещё один вариант автоматизации - сессия в tmux.
Создаём сессию, запускаем простой скрипт, который будет выполнять aprs.sh (ну или даже просто редактируем aprs.sh для такой же отправки простым циклом подобного вида). Мой маленький скрипт для автоматизации https://gitlab.com/-/snippets/2179383
Таким образом всё так же работает и без крона, хоть и считаю это "оверхедом"

Кто могет в шелл - пожалуйста, меняйте что хотите, как хотите, пишите новые идеи.

Буду рад вашим отзывам, вопросам, предложениям.

Скриншоты прилагаются
 
непосредственный процесс "сниффа" и отправки идентичных пакетов серверу
 
запуск скрипта
 
 

73 de OE/UT3UQZ!
« Последнее редактирование: Сентябрь 23, 2021, 00:16:31 от UT3UQZ »
 
Пользователи, которые поблагодарили этот пост: SA7BOA

 

SimplePortal 2.3.7 © 2008-2021, SimplePortal