Добрый день, коллеги!
Уже год как являюсь счастливым обладателем метостанции Oregon Scientific WMR200.

Есть ряд проектов (Weewx, wfrog итп), которые позволяют считывать показания станции через USB порт и выводить их в виде таблиц и графиков на сайте, а так же подключать станцию к популярным погодным сервисам.

Соответственно родилась идея подключить метеостанцию к моему роутеру RT-N56U для круглосутчного сбора исторических данных и визуализации их через интернет для собственных нужд и для любопытных знакомых

Первый подход к weewx и wfrog оказался неуспешным, поскольку среди зависимостей там встречались пакеты, которые не входят ни в optware ни в entware (сейчас деталей уже не упомню всех), а так же требовалась компиляция, в которой я не силен. Помимо этого указанные проекты, хотя и заявляли поддержку моей метеостанции, но я так и не понял, как там подключить мои дополнительные датчики ( например датчик ультафиолета).

Однако, некторое время назад я наткнулся на проект Oregon Scientific WMR100/200/WMRS200/I300/I600/RMS300/RMS600 USB Station Logger/Reader, который как раз заточен под станции Oregon Scientific. Чем привлек мое внимание, помимо вышесказанного:

- судя по всему создан русскими разработчиками
- позволяет корректировать погрешность датчиков,
- позволяет сохранять данные в различных метрических стандартах,
- компактный (подходит для установки на роутерах),
- умеет работать демоном, использовать syslog,
- данные пишет в различных форматах удобных для обработки.
- для построения визуальных графиков использует rrd-tool.
- поддерживает события (alarm), при наступлении исполняет скрипт.


WMR для работы требут следующие библиотеки:

*libusb*,
*libhid*,
*libsqlite3*
*rrd-toots* (опционально)
Есть еще непонятка с которой я не разобрался (цитата из readme):
You'll need to setup the udev rules (see udev/README).
This is due to how libhid accesses the USB ports.
Что такое udev я так и не понял ни каталогов ни файлов, содержащию строку udev в назавании я на роутере не нашел....

Тем не менее я попробовал скомпилировать WMR у себя на роутере.
Сетап следующий:
- роутер RT-N56U
- прошивка - 3.4.3.6-064 (Padavan & N56U project community)
- optware (поскольку как я слышал в entware нет buildroot)
- установлены пакеты buildroot optware-devel libusb libhid
- пакета libsqlite3 в optware я не нашел, однако решил рискнуть скомпилировать без него

попробовал скомпилировать, однако столкнулся с ошибкой:

[admin@RT-N56U wmr-oregon-0.4]$ make clean ; make all ; make install
compile for i686 Linux
compile for i686 Linux
gcc -I/usr/local/include -I/usr/include -I/usr/include -I/usr/local/lib/_include_ -DLANG_ENG -DGENTOO_HACK -DLINUX -c -o src/wmr_alarm.o src/wmr_alarm.c

gcc: can't handle reloc type 47
make: *** [src/wmr_alarm.o] Error 1
install -b -o admin -g admin ./libwmr-alarm.so /opt/lib/wmr
cannot stat `./libwmr-alarm.so': No such file or directory
make: *** [install-shared] Error 1
На чем собственно и застрял....

Посему прошу уважаемых гуру помочь мне скомпилировать данный проект на моем роутере или сделать соотвествующий(е) пакет(ы) для репозитория.

При необходимости готов перейти на entware.

Так же в распоряжении есть роутер RT-N66U - готов попробовать и на нем.

Со своей стороны торжественно клянусь в случае успеха написать и опубликовать инструкцию по установке и настройке.

PS: 2Модератор - не совсем уверен в той ли ветке опубликовал запрос, если что не так - прошу поправить.

PPS: Если есть вопросы по самой метеостанции - готов рассказать что знаю