APRX клиент в радиолюбительскую APRS на базе D-Link Dir-620
Приветствую всех! Отдельная благодарность тем, кто попросил меня осветить этот вопрос.
Планирую сделать несколько статей, посвященных APRS, в котором рассмотрим:
1) Установку стационарных клиентов (а возможно даже и попробуем сделать свой локальный сервер) на базе ОС Windows, Linux;
2) Подключение радиостанции;
3) Установку мобильного клиента.
В сегодняшней статье (проба пера) рассмотрим установку легкого клиента на роутер Dir-620…
Итак, что такое APRS?
APRS (Automatic Packet Reporting System) — это специальный вариант пакетной радиосвязи, протокол которого был зарегистрирован в 1992 году Бобом Брунинга (WB4APR). Сейчас им пользуются более 7000 радиолюбителей в мире. С помощью этого протокола информацию о местонахождении объекта или о любых его измеряемых физических параметрах можно при помощи технических устройств передать на большие расстояния. При помощи специального программного обеспечения информацию можно визуализировать и обрабатывать.
Немного информации можно глянуть на Википедии, более подробно можно почитать на русскоязычном форуме.
Рассмотрим установку и простую настройку APRX шлюза на D-Link Dir-620 прошитого в Keenetic.
Как прошить роутер и как собрать нужные пакеты, описывать не буду — уже это не раз освещалось на Хабре (глянуть можно в моей предыдущей статье).
Для запуска клиента, необходимо отредактировать конфиг под свои данные:
#vi /etc/aprx.conf
Мой конфиг:
#задаем свой позывной
mycall *******
#задаем сервер
login *******
server rotate.ap**.n** 14580
#задаем логирование
pidfile /media/DISK_A1/system/var/run/aprx.pid
rflog /media/DISK_A1/system/var/log/aprx/aprx-rf.log
aprxlog /media/DISK_A1/system/var/log/aprx/aprx.log
#задаем маяк с интервалом 20мин, который передает координаты станции и комментарий
beaconmode aprsis
cycle-size 20m
beacon symbol «R&» lat «4925.57N» lon «03203.98E» comment «DE UR3CKR — APRX on OPENWRT»
Более подробный конфиг по всем параметрам расписан на сайте автора.
Запускаем:
#/usr/sbin/aprx -f /etc/aprx.conf
Смотреть станции удобно на Google Maps APRS
» alt=«image»/>
В дальнейшем есть желание прикрутить к роутеру usb-звуковую карту и укв-радиостанцию и попробовать входить в сеть через радиоэфир.
Что такое APRS? И зачем он радиолюбителям?
Мир меняется, высокие технологии все больше входят в нашу жизнь. Спутниковые системы слежения, навигация, GPS — есть почти в каждом мобильном устройстве. Все чаще оснащаются им и радиостанции. И если рядовой обыватель побаивается что о его передвижениях станет кому-то известно, то радиолюбителям, наоборот, было бы хорошо, сообщить корреспонденту свои координаты. И тут возникает идея — А что если создать систему, виртуальную карту, на которой в реальном времени будут отображаться все работающие радиолюбители, базовые станции, автомобили с мобильными рациями, их передвижения, точное расстояние от одной станции до другой. А так-же частоты, диапазон на котором радиолюбитель в данный момент слушает эфир, вид его модуляции. И все это прикрутить к интернету.
Татам-м-м! Встречайте, это и есть система APRS. И она работает без малого уже тридцать лет.
В интернете информация о системе APRS и о том как ей пользоваться представлена весьма скудно.
Рассмотрим различный способы взаимодействия с системой.
1. Это когда мы просто наблюдатели. Для этого даже рация не нужна. Открываем в интернете сайт — АПРС.ФИ и в режиме реального времени наблюдаем за теми станциями , которые отображаются на карте. Как видим к радиолюбительскому позывному через тире добавляется цифра. Это SSID. Не будем перечислять все, лишь уточним, что -7 это носимая радиостанция, -9 это станция в автомобиле.
Смотрите какая станция находится недалеко от вас, кликаете на нее. Смотрите частоту на которой она передает и принимает и по старинке вызываете ее голосом. Это не совсем интересно. Тем более, что многие станции работают в автоматическом режиме и оператор за ними не следит.
2. Здесь нам потребуется радиостанция с поддержкой aprs, но не обязательно покупать дорогую фирменную радиостанцию, можно подключить самый обычный Baofeng через специальный кабель к мобильному телефону и установить на телефоне специальное приложение. На станции нужно установить частоту 144.800 мГц (скорость 1200 бод) или 432.500 мГц (скорость 9600 бод).
После того, как вы установите приложение и соедините телефон со станцией. Можете отправить посылку в эфир. Ваша станция перейдет на передачу и отправит короткое цифровое сообщение. В него можно включить несколько строк текста. Так же можно настроить автоматическую отправку таких сообщений в эфир. Но не рекомендуется делать это слишком часто. Одной посылки в пять -десять минут будет достаточно.
Как только ваш сигнал отправленный в эфир услышит один из ближайших APRS узлов, ваш позывной вместе с вашим коротким сообщением появится на карте, а в ответ вы получите сообщение. Поздравляю, связь установлена! Примеры на фото.
Есть еще очень интересного в протоколе связи APRS — можно построить цифровой маяк, интернет шлюз или точку доступа. Я думаю, что на первый раз информации достаточно. Так же прошу строго меня не судить за вышеизложенное. Возможно я сам чего-то немного недопонимаю. Если так, то прошу поправить меня в комментариях.
Тема: APRS на базе маршрутизаторов
APRS на базе маршрутизаторов
Вот решил создать тему, посвященную созданию компонент инфраструктуры APRS на базе обычных серийных маршрутизаторов, которые есть сейчас практически у каждого дома, поэтому, думаю, это будет интересно не только мне одному.
Для экспериментов был выбран маршрутизатор Asus RT-N16 (http://www.asus.com/Networking/RTN16/) по двум причинам: 1) это самый дешевый маршрутизатор с двумя USB 2.0 портами из найденных мной; два порта нужны для того, чтобы без внешних USB-хабов можно было одновременно подключить и флешку с нужным софтом, и радиостанцию; 2) его операционная системы — AsusWRT — построена на базе широко известной ОС для маршрутизаторов OpenWRT и интерфейсной надстройки над ней под названием TomatoUSB. Так что никакие пляски с бубном по вкорячиванию OpenWRT/DD-WRT/TomatoUSB просто не нужны. Кроме того, Asus выкладывает все исходные тексты и готовые средства кросс-компиляции для своей AsusWRT, что, безусловно, облегчает задачу.
Для реализации самого APRS был выбран софт aprx 2.07 (http://wiki.ham.fi/Aprx.en) как реализующий весь необходимый мне функционал (digipeater+Rx/Tx iGate), не требующий при этом от ОС ничего, кроме стандартной библиотеки для языка C и вследствие этого занимающий скромные размеры в оперативной памяти (у меня получилось меньше одного 1Мб).
В качестве радиостанции на начальном этапе использовался Kenwood TH-D72, подключавшийся сразу к маршрутизатору по USB. И здесь сразу возник ряд проблем:
1. В TH-D72 используется USBSerial чип CP2102 от Silicon Labs (http://www.silabs.com/products/inter. rt-bridge.aspx). В AsusWRT есть драйверы только для PL2303 от Prolific и FT232 от FTDI. Драйвера для CP210x там нет, поэтому пришлось его компилировать и подгружать дополнительно с флешки.
2. После того, как я это сделал, и TH-D72 выдала первый пакет в эфир, маршрутизатор просто умер. Есть сильное подозрение, что из-за, что корпус USB-разъема соединен с корпусом самой радиостанции, включая резьбу антенного разъема. Т.е., вероятно, маршрутизатор не выдержал работы в качестве противовеса для антенны портативки в момент излучения ею в эфир 5 ватт.
3. Для гальванической развязки был куплен специальный адаптер USB2ISO (http://electronics-shop.dk/isolated_. m?currency=EUR). Со своей задачей он справился — новый маршрутизатор, полученный взамен старого по гарантии, не сгорел после передачи первого пакета. Однако станцию перестала принимать какие-либо пакеты. Кроме того, у ней стал часто открываться шумодав с помехами. Как выяснилось, помехи создавал этот адаптер — когда я подошел к нему с Yaesu VX-8R, она стала вести себя точно также. При отключении этого адаптера прием нормализовался. Чтобы избежать повторного выхода маршрутизатора из строя, был куплен отдельный кабель USB Amini USB B с двумя ферритами, и после феррита у разъема mini USB были аккуратно сняты оплетка и экран, чтобы гальванически развязать массы маршрутизатора и радиостанции. После этого связка RT-N16+TH-D72 успешно заработала без причинения вреда друг другу.
Итак, в приложении к этому сообщению — скомпилированная aprx 2.07 с дополнительными скриптами для автозапуска при вставлении флешки/загрузке маршрутизатора.
Что нужно сделать:
1. Распаковать приложенный архив в корень какой-нибудь флешки. Желательно, что флешка была отформатирована в файловой системе ext3. Во всяком случае, все экперименты я делал с ней. Для этого необязательно иметь комп с Linux’ом — все это можно сделать и на самом RT-N16, утилита mkfs.ext3 в нем есть.
2. Запустить с флешки скрипт aprx/nvram_autorun.sh — он устанавливает два параметра маршрутизатора для автоматического запуска крипта .autorun из корня флешки при монтировании/размонтировании.
3. Подредактировать файл конфигурации aprx/etc/aprx.conf.in. Точнее, это не сам файл конфигурации, а шаблон для скрипта .autorun, который поменяет в нем переменную @basedir@ на реальную директорию, куда окажется подмонтированной флешка и уже с эти новым файлов конфигурации и запустит aprx. Подробная документация относительно конфигурации aprx доступна на http://wiki.ham.fi/Aprx.en.
4. После этого извлечь и вставить заново флешку, либо набрать «/.autorun start» (без кавычек), где — директория, куда подмонтировалась ваша флешка.
5. Скрипт .autorun также загружает драйвер для USBSerial чипов CP2101/2102, который находится в файле aprx/lib/cp2101.ko.
В заключение могу добавить, что сам готовый софт должен работать не только на маршрутизаторах Asus с ОС AsusWRT, но вообще на всех маршрутизаторах под Linux’ом с процессорами архитектуры MIPS Little Endian, использующих библиотеку uClibc (http://www.uclibc.org/). Так что желающие могут поэкспериментировать . У меня же в ближайших планах — запуск связки Asus RT-N16+Alinco DR-135TMK3/EJ-41U. Посмотрим, что сгорит на этот раз
Вложения
- aprx.2.07.AsusWRT.zip (232.2 Кб, Просмотров: 230)