PDA

Bekijk de volledige versie : Метеостанции Oregon Scientific + роутер (wmr, wview & etc.)



brightred
21-07-2013, 14:29
Добрый день, коллеги!
Уже год как являюсь счастливым обладателем метостанции Oregon Scientific WMR200 (http://oregonscientificstore.com/WMR200-Oregon-Scientific-Professional-Weather-Station-Center.product).

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

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

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

Однако, некторое время назад я наткнулся на проект Oregon Scientific WMR100/200/WMRS200/I300/I600/RMS300/RMS600 USB Station Logger/Reader (https://code.google.com/p/wmr/), который как раз заточен под станции 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: Если есть вопросы по самой метеостанции - готов рассказать что знаю

lly
21-07-2013, 18:33
Что такое udev я так и не понял ни каталогов ни файлов, содержащию строку udev в назавании я на роутере не нашел....
Система автоматического создания файлов устройств в /dev


Тем не менее я попробовал скомпилировать WMR у себя на роутере.
Дурацкое занятие - buildroot протух много лет назад...


попробовал скомпилировать, однако столкнулся с ошибкой:
Нужно или воспользоваться скриптом configure или вручную отредактировать Makefile + Makefile.inc
По умолчанию выставлена конфигурация под x86.

brightred
22-07-2013, 11:13
Нужно или воспользоваться скриптом configure или вручную отредактировать Makefile + Makefile.inc
По умолчанию выставлена конфигурация под x86.

Спасибо за ответ.
Попробовал в лоб вопользоваться скриптом configure - скрипт отработал, и даже дал сделать несколько выборов (однако не имеющих ничего общего с выбором платформы), однако компиляция все равно вываливается с ошибкой.

Коллеги, я правильно понял, что нужно полноценно погружаться в процесс кросс-компиляции?
Если так, то может подскажете с чего начать именно в контексте роутера RT-N56U с прошивкой от Padavan?

Хотя еще тешу себя надеждой, что кто-то из разобравшихся все таки скомпилирует данный пакет :)

lly
22-07-2013, 14:39
Попробовал в лоб вопользоваться скриптом configure - скрипт отработал, и даже дал сделать несколько выборов (однако не имеющих ничего общего с выбором платформы), однако компиляция все равно вываливается с ошибкой.
Значит только ручками править Makefile, увы.


Коллеги, я правильно понял, что нужно полноценно погружаться в процесс кросс-компиляции?
Лучше да, в buildroot протухло абсолютно всё. Единственный плюс - не надо читать про кросс-компиляцию.


Хотя еще тешу себя надеждой, что кто-то из разобравшихся все таки скомпилирует данный пакет :)
Под Optware - шансов 0.01%. Под Entware может кто и подсобит. Мне пока просто некогда :(

brightred
22-07-2013, 19:23
Спасибо, lly.




Под Optware - шансов 0.01%. Под Entware может кто и подсобит. Мне пока просто некогда :(

Да я на Optware и не настаиваю!

Если будет под Entware - тоже будет супер.

Будем подождать...

lly
23-07-2013, 16:54
Мда зависимость там получается тяжёлая :(


libhid (его нет в Entware) заброшен в 2007 и хочет протухшую libusb-0.1. Будет ли работать с libusb-0.1-compat - х.з., надо проверять. В идеале авторам бы перейти на HID backend в libusb 1.0, но...
libsqlite3 есть в Entware, должен подхватиться
На кросс-компиляцию Makefile в wmr не рассчитан, надо править ручками

ryzhov_al
23-07-2013, 17:30
Загляните в список (http://downloads.openwrt.org/snapshots/trunk/brcm47xx/packages/Packages) пакетов OpenWRT, там были пара пакетов для каких-то погодных станций. Если есть что-то подходящее, то можно будет собрать и нам.
Будем подождать...Подождать придётся неделю-две, пока вернусь из отпуска.

brightred
23-07-2013, 22:46
Загляните в список (http://downloads.openwrt.org/snapshots/trunk/brcm47xx/packages/Packages) пакетов OpenWRT, там были пара пакетов для каких-то погодных станций. Если есть что-то подходящее, то можно будет собрать и нам.

Посмотрел, вот что нашел:

1) WX200 / WM918 Weather Station Server - последнее обновление - 2004 год, мою станцию (WMR200) явно не поддерживает.

2) Wview - уже интереснее. В репозитории версия 5.19.0, последняя стабильная - 5.20.2. Заявлена поддержка большого количества станций (включая мою), однако как я говорил выше у меня не удалось заставить ее видеть дополнительные датчики. Так же по непонятным причинам Wview у меня зависала периодически, вобщем мой личный опыт скорее отрицательный. Однако сообществу возможно данный пакет будет интересен в силу большого числа поддерживаемых станций.

3) fowsr - модуль будет интересен владельцам метеостанций от компании Fine Offset Electronics Co., Ltd. Последний раз обновлялся в 2011 году. В репозитории находится актульная версия. Мою станцию не поддерживает. Однако сообществу возможно данный пакет так же будет интересен.

Вот собственно и все.


Подождать придётся неделю-две, пока вернусь из отпуска.

Не вопрос, спасибо, будем ждать! Удачно отдохнуть!

lly
24-07-2013, 14:55
brightred
Если есть желание поковыряться, то инфа по сборке ниже. К сожалению, я всё никак не найду время водрузить среду разработки Entware и всё компилирую только под наши прошивочные библиотеки(т.е. под N56U не пойдёт).

Пререквизиты: тулчейн Entware + пакеты libusb-1.0_1.0.9, libusb-compat_0.1.4, libsqlite3_3071201 + исходники libhid-0.2.16, wmr-oregon-0.4

К сожалению, ни libhid, ни wmr не рассчитаны на кросскомпиляцию вообще, посему надо править скрипты сборки:


правим libhid-0.2.16/configure - удаляем строчки содержащие установку LIBUSB_CFLAGS, LIBUSB_LIBS

--- a/configure
+++ b/configure
@@ -4846,9 +4846,6 @@
done


- LIBUSB_CFLAGS="`libusb-config --cflags`"
- LIBUSB_LIBS="`libusb-config --libs`"
-




правим wmr-oregon-0.4/configure:

--- a/configure
+++ b/configure
@@ -2,8 +2,8 @@
# Create compile configuration for Weather TXT/SQL/RRD/SNMP Logger

DEPEND="usb hid sqlite3"
-HPATH="/usr/local/lib/_include_ /usr/local/include /usr/include"
-LPATH="/usr/local/lib/_compile_ /usr/local/lib /usr/lib"
+HPATH=${HPATH:-"/usr/local/lib/_include_ /usr/local/include /usr/include"}
+LPATH=${LPATH:- "/usr/local/lib/_compile_ /usr/local/lib /usr/lib"}

echo ""
echo "Oregon Scientific WMR100/200/WMRS200/I300/I600/RMS600 USB protocol logger."

Заменяем wmr-oregon-0.4/Makefile на приложенный вариант



Собираем, предварительно поправив BUILDDIR на тот, где лежат собранные пакеты libusb, libsqlite3:

#!/bin/sh

BUILDDIR=/home/lly/Wl500/work
OPTINCDIR=$BUILDDIR/opt/include
OPTLIBDIR=$BUILDDIR/opt/lib

cd libhid-0.2.16
CFLAGS="-g -O2 -mips32 -fPIC" \
LIBUSB_CFLAGS="-I$OPTINCDIR" LIBUSB_LIBS="-L$OPTLIBDIR -lusb -lusb-1.0 -lpthread -Wl,-rpath=/opt/lib" \
./configure --host=mipsel-linux --prefix=/opt --disable-libtool-lock --enable-werror=no
make
make install DESTDIR=$BUILDDIR
cd ..

cd wmr-oregon-0.4
HPATH="$OPTINCDIR" LPATH="$OPTLIBDIR $BUILDDIR/opt/usr/lib" ./configure
make single CFLAGS="-g -O2 -mips32 -fPIC -I$OPTINCDIR" LDFLAGS="-L$OPTLIBDIR -lusb-1.0 -Wl,-rpath=/opt/lib"


P.S. метод "install" в wmr тоже требует доработки, но можно и ручками...
P.P.S. Надеюсь, команды "cd" в скрипте не требуют комментариев ;)

brightred
25-07-2013, 21:16
Спасибо за наводку, lly, на выходных займусь.



Если есть желание поковыряться, то инфа по сборке ниже. К сожалению, я всё никак не найду время водрузить среду разработки Entware и всё компилирую только под наши прошивочные библиотеки(т.е. под N56U не пойдёт).

Понял, значит будем ковырять N66U


Пререквизиты: тулчейн Entware + пакеты libusb-1.0_1.0.9, libusb-compat_0.1.4, libsqlite3_3071201 + исходники libhid-0.2.16, wmr-oregon-0.4

Я правильно понял, что нужно на N66U поставить пакеты Entware libusb-1.0_1.0.9, libusb-compat_0.1.4, libsqlite3_3071201, а потом перенести соотвествующие библиотеки на виртуалку, где у меня лежит тулчейн?

Или закинуть тулчейн на роутер и компилировать все уже на нем?

И еще, на всякий случай уточню - у меня на N66U прошивка от Мерлина (3.0.0.4.266.23) - надеюсь это не повлияет на процесс?

Спасибо!

lly
26-07-2013, 08:38
Понял, значит будем ковырять N66U
Видимо непонятно написал - это я к тому, что получившийся у меня бинарник будет корректно запускаться только на наших прошивках(uClibc из состава прошивки). Поэтому и не выкладываю.



Я правильно понял, что нужно на N66U поставить пакеты Entware libusb-1.0_1.0.9, libusb-compat_0.1.4, libsqlite3_3071201, а потом перенести соотвествующие библиотеки на виртуалку, где у меня лежит тулчейн?
Извиняюсь, обманул - в готовых пакетах нет заголовочных (.h) файлов. Скорее всего, придётся скачивать Entware и собирать эти пакеты. Но это просто - проставить "Y" в конфиг файле или воспользоваться интерфейсом конфигуратора.
Если где ошибся, пусть активисты Entware меня поправят.


Или закинуть тулчейн на роутер и компилировать все уже на нем?
Могу только повториться - native тулчейн под MIPS существует только для Optware, да и то кривой и протухший. Теоретически, для N66U и других роутеров с RAM >=256M можно собрать buildroot, но объём работ и последующих доводок "напильником по контуру" таков, что никто этим заниматься не будет.


И еще, на всякий случай уточню - у меня на N66U прошивка от Мерлина (3.0.0.4.266.23) - надеюсь это не повлияет на процесс?
Если используется Entware - нет.

brightred
27-07-2013, 16:33
Извиняюсь, обманул - в готовых пакетах нет заголовочных (.h) файлов. Скорее всего, придётся скачивать Entware и собирать эти пакеты. Но это просто - проставить "Y" в конфиг файле или воспользоваться интерфейсом конфигуратора.
Если где ошибся, пусть активисты Entware меня поправят.


Коллеги, нашел инструкцию по развертыванию среды компиляции Entware (https://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL) но она как я понял для роутеров ASUS WL-5xx RT-N1x Oleg's based custom firmware (https://code.google.com/p/wl500g/source/browse/#svn%2Ftoolchain).

Вопросы:

- как водрузить среду разработки Entware на Мерлиновский тулчейн (https://github.com/RMerl/asuswrt-merlin/wiki/Compile-Firmware-from-source-using-Ubuntu) и вообще, нужно ли это делать?

- или можно воспользоваться средой компиляции Entware (https://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL) и компилировать ibhid-0.2.16 и wmr-oregon-0.4 в ней согласно указаниям уважаемого lly?

lly
28-07-2013, 16:28
- как водрузить среду разработки Entware на Мерлиновский тулчейн (https://github.com/RMerl/asuswrt-merlin/wiki/Compile-Firmware-from-source-using-Ubuntu) и вообще, нужно ли это делать?

Не надо, Мерлиновский тулчейн нужен исключительно для сборки его прошивки.


- или можно воспользоваться средой компиляции Entware (https://code.google.com/p/wl500g-rep.../trunk/INSTALL) и компилировать ibhid-0.2.16 и wmr-oregon-0.4 в ней согласно указаниям уважаемого lly?
Либо "или" здесь лишнее, либо я не понял вопроса.

brightred
28-07-2013, 18:27
Либо "или" здесь лишнее, либо я не понял вопроса.

lly, спасибо!

Если я правильно понял ответ, то работаю в этой среде
https://code.google.com/p/wl500g-rep.../trunk/INSTALL

ОК, приступаю.

По мере поступления вестей с орбиты буду сообщать.

TReX
29-07-2013, 01:48
ОК, приступаю.

По мере поступления вестей с орбиты буду сообщать.

Кстати да, софт выбрали правильно, WMR200 прекрасно работает под Debian Wheezy с wview-5.20.2 :o

brightred
29-07-2013, 05:40
Кстати да, софт выбрали правильно, WMR200 прекрасно работает под Debian Wheezy с wview-5.20.2 :o
Интересно... Тогда два вопроса:
- есть ли опыт вывода в wview показаний дополнительных датчиков (например UV - датчика)
- не секрет, что wmr200 периодически временно теряет датчики.
В моих экспериментах факт потери датчика вешал wview, что лечилось
только перезапуском и было не очень удобно. Как с этим у Вас?


brightred

правим libhid-0.2.16/configure - удаляем строчки содержащие установку LIBUSB_CFLAGS, LIBUSB_LIBS
Приветствую, коллеги! Докладываю первые результаты.

Поправил configure как сказано выше. Запустил. Результат:

http://pastebin.com/zjBigstQ

Далее запускаю sudo make check и получаю кучу ошибок:

http://pastebin.com/mtcvCRPc

Здесь моя фантазия по поводу дальнейших шагов заканчивается :(
Прошу указать в каком направлении копать

TReX
29-07-2013, 08:55
Интересно...
Тогда два вопроса:
- есть ли опыт вывода в wview показаний дополнительных датчиков (например UV - датчика)
- не секрет, что wmr200 периодически временно теряет датчики. В моих экспериментах факт потери датчика вешал wview, что лечилось только перезапуском и было не очень удобно. Как с этим у Вас?

Ультрафиолетовый прекрасно видно, UV index, при его отсутствии будет по нулям, еще приятная фишечка Rose Day/Week/Year )
Из датчиков -
UVN800
THGR810
THWR800
плюс все стандартные, дистанция не более 10 метров от станции через одну капитальную стену, зависаний ни разу не наблюдал. У знакомых помогла подпайка дополнительной антенны во все блоки, из куска коаксиала делаем антенну "Slim cobra" - на длине кабеля 0,24 длины волны снят экран. Это излучающая часть антенны. На расстоянии 0,27 длины волны от излучающей части на экране выполнен высокочастотный дроссель (достаточно трех маленьких ферритовых колечек плотно надеваемых на кабель с проницаемостью 600HH ) поскольку диаграмма направленности в горизонтальной плоскости кольцевая, так что крепить антенну надо вертикально
9654

brightred
29-07-2013, 14:47
Коллеги, приветствую!

Данная тема появилась методом почкования от соседней темы:

Метеостанции Oregon Scientific + роутер (WMR Oregon Scientific USB Logger/Reader) (http://wl500g.info/showthread.php?31459-%D0%9C%D0%B5%D1%82%D0%B5%D0%BE%D1%81%D1%82%D0%B0%D 0%BD%D1%86%D0%B8%D0%B8-Oregon-Scientific-%D1%80%D0%BE%D1%83%D1%82%D0%B5%D1%80-(WMR-Oregon-Scientific-USB-Logger-Reader))

Изначально, я хотел ограничиться только компиляцией WMR-Oregon-Scientific-USB-Logger-Reader, но после весьма положительных комментариев (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(WMR-Oregon-Scientific-USB-Logger-Reader)&p=262027#post262027) уважаемого TReX, решил так же попробовать скомпилировать wview-5.20.2.

Вкратце про wview (http://www.wviewweather.com/)

Что это:


wview is a collection of unix daemons which interface with a supported weather station to retrieve archive records (if generated by the station) and current conditions. The stations currently supported are:

Davis Vantage Pro/Pro2/Vue (Serial, USB and IP)
Vaisala WXT510/WXT520
Texas Weather Instruments (All)
Oregon Scientific WMR-USB (WMR88/WMR88A/WMR100/WMR100N/WMR200/WMRS200)
Hideki, Nexus, Mebus, Irox, Honeywell, Cresta TE923, TE923W, TE821W, WXR810, DV928
Fine Offset WH1080/WH1081, Watson W-8681/WX-2008, National Geographic: 265 NE, Elecsa 6975/6976, Ambient Weather WS-1080/WS-1090/WS-2080, Tycon TP1080WC
La Crosse WS-2300/WS-2308/WS-2310/WS-2315
Oregon Scientific WMR918/WMR928NX/WMR968
Station Simulator
Virtual Station

Что может:

24x7x365 reliability.
Fast image and HTML/XML file generation.
Non-GUI, headless, lightweight (size and resources).
Embeddable - can be deployed on low-power embedded systems such as the Linksys NSLU2 or the SheevaPlug.
Multi-Lingual - HTML/XML templates, labels and text.
US (Imperial) or Metric Units - can be easily configured for metric or US units of measure.
SQLite Archive Storage - archive data is stored in an SQLite3 relational database.
Remote Upload - web pages and images can be transferred to a remote web host server via an ftp or secure ssh process included with wview.
Alarms - the wview alarm daemon wvalarmd can be enabled to deliver current conditions to TCP socket clients as a near real-time data feed engine. wvalarmd can also be configured to function as a weather data alarm generator to user specified scripts or binaries.
CWOP - can be configured to submit data to CWOP.
Wunderground - can be configured to submit data to Wunderground.
WeatherForYou - can be configured to submit data to WeatherForYou.
Awekas - can be configured to submit data to Awekas.
RSS Feeds - processes XML template files and includes a default weather data RSS feed template.


Пример странички, которую генерит wview:
http://www.weather.teel.ws/



Что сделал:

Развернул на виртуалке (Ubuntu 12.04.01) среду компиляции согласно https://code.google.com/p/wl500g-repo/source/browse/trunk/INSTALL

Дальше пошел по зависимостям:

libz - нет в Entware, я сделал смелое предположение, что подойдет zlib из Entware, прошу подтвердить/опровергнуть
libpng - есть в Entware
libreadline5-dev - я сделал смелое предположение, что подойдет libreadline из Entware, прошу подтвердить/опровергнуть
gawk - есть в Entware
libsqlite3 - есть в Entware
libsqlite3-dev - нет в Entware, чем заменить? или нужно компилировать?
sqlite3 - SQLite3 database command line utility - в Entware есть sqlite3-cli - думаю пойдет в качестве замены?
libgd2 - graphics drawing library - may require installation - http://www.boutell.com/gd - нет в Entware, есть libgd - 2.0.35-1 - думаю пойдет в качестве замены?
libusb-1.0-0-dev - в Entware есть libusb-1.0 + libusb-compat - 0.1.4-1 -надеюсь этого хватит?
radlib - rapid application development library - must be installed with SQLite support (--enable-sqlite) - http://www.radlib.teel.ws - нет в Entware
libssl - нет в Entware, есть libopenssl - пойдет в качестве замены? (опционально, нужен для libcurl )
libcurl - есть в Entware (опционально, нужен для связи с Weatherunderground)
sendmail - нет в Entware (опционально, для почтовых уведомлений)
sendEmail - нет в Entware (опционально, для почтовых уведомлений)
mysql-client - нет в Entware (опционально, для экспорта в MySQL)

Коллеги, в качестве следующего шага прошу указать, какие из зависимостей выше нужно компилировать.
Спасибо!

lly
29-07-2013, 15:53
Докладываю первые результаты.

Поправил configure как сказано выше.
Запустил.
Результат:

http://pastebin.com/zjBigstQ

Далее запускаю sudo make check и получаю кучу ошибок:

http://pastebin.com/mtcvCRPc

Здесь моя фантазия по поводу дальнейших шагов заканчивается :(

Прошу указать в каком направлении копать
autoconf (он же скрипт configure) неинтерактивный инструмент, посему при запуске без аргументов будет совсем не то, что ожидалось. С какими ключами собиралось - приведено в моём посте (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(WMR-Oregon-Scientific-USB-Logger-Reader)&p=261636#post261636)

Никаких "sudo make check" при кросс-компиляции и быть не может - как ты представляешь себе запуск MIPS бинарника на хосте x86? Чтобы автоматом выкачался эмулятор qemu, сам настроился и запустился? Так не бывает :rolleyes:

brightred
29-07-2013, 19:50
Ультрафиолетовый прекрасно видно, UV index, при его отсутствии будет по нулям, еще приятная фишечка Rose Day/Week/Year

TReX, спасибо, интересная информация.

У меня датчики висят через капитальную стену (хотя от основного блока их частично видно в окно) на расстоянии 6-8 метров
- все равно теряются периодически - думаю начать с того, чтобы заменить во всех датчиках батарейки :), потом будем думать насчет антенны.

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


autoconf (он же скрипт configure) неинтерактивный инструмент, посему при запуске без аргументов будет совсем не то, что ожидалось. С какими ключами собиралось - приведено в моём посте (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(WMR-Oregon-Scientific-USB-Logger-Reader)&p=261636#post261636)

Никаких "sudo make check" при кросс-компиляции и быть не может - как ты представляешь себе запуск MIPS бинарника на хосте x86? Чтобы автоматом выкачался эмулятор qemu, сам настроился и запустился? Так не бывает :rolleyes:
Понял, завтра попробую - отпишусь. Спасибо!

TReX
30-07-2013, 04:54
TReX, спасибо, интересная информация.

У меня датчики висят через капитальную стену (хотя от основного блока их частично видно в окно) на расстоянии 6-8 метров
- все равно теряются периодически - думаю начать с того, чтобы заменить во всех датчиках батарейки :), потом будем думать насчет антенны.


) батарейки в датчиках лучше использовать литиевые, соляные не выдерживают и одной зимы
С вкорячиванием системы сбора на роутер - одно но, как сервер умного дома даже топовый роутер слабоват, так что только отображение красивых картинок, получается очень дорогая и достаточно бесполезная игрушка)

brightred
30-07-2013, 12:18
) батарейки в датчиках лучше использовать литиевые, соляные не выдерживают и одной зимы
С вкорячиванием системы сбора на роутер - одно но, как сервер умного дома даже топовый роутер слабоват,
так что только отображение красивых картинок, получается очень дорогая и достаточно бесполезная игрушка)
Про умный дом я думал. Даже купил себе девайс отдельный (плюс несколько датчиков) для работы по технологии Z Wave - VeraLite (http://www.micasaverde.com/controllers/veralite/)называется (хотя сам девайс оказался сделанным на основе роутера - TP Link по-моему со специально допиленной прошивкой). Но дальше экспериментов дело пока не пошло - кажется мне сыроват он еще. Или руки у меня кривые....

А роутер именно как отображалку картинок я и задумывал - больше и не ожидаю ничего. Еще пару вопросов если можно:

1) Где лучше литивые батарейки раздобыть? Поход по магазинам ничего не дал - подозреваю есть где-то специальные места, где их продают :)
2) Существуют ли обновления прошивки WMR200 - может у меня не самая свежая. Поиск по сайту производителя ничего не дал.


Пререквизиты: тулчейн Entware + пакеты libusb-1.0_1.0.9, libusb-compat_0.1.4, libsqlite3_3071201 + исходники libhid-0.2.16, wmr-oregon-0.4
Приветствую. коллеги, отчитываюсь: Поправил файлы configure согласно указаниям выше.
Заменил makefile в wmr-oregon-0.4. Сделал скрипт для компиляции


root@sasha-VirtualBox:/media/sf_SHARED/WMR200# cat compile_wmr.sh

#!/bin/sh

BUILDDIR=/home/sasha
OPTINCDIR=$BUILDDIR/opt/include
OPTLIBDIR=$BUILDDIR/opt/lib

cd /home/sasha/WMR200

cd libhid-0.2.16
make clean # - это сделал потому что экспереминтировал с добавлением файлов в /home/sasha/WMR200/libhid-0.2.16/include - о чем чуть ниже
CFLAGS="-g -O2 -mips32 -fPIC"
LIBUSB_CFLAGS="-I$OPTINCDIR" LIBUSB_LIBS="-L$OPTLIBDIR -lusb -lusb-1.0 -lpthread -Wl,-rpath=/opt/lib"
./configure --host=mipsel-linux --prefix=/opt --disable-libtool-lock --enable-werror=no
make
make install DESTDIR=$BUILDDIR
cd ..

cd wmr-oregon-0.4
HPATH="$OPTINCDIR" LPATH="$OPTLIBDIR $BUILDDIR/opt/usr/lib"
./configure
make single CFLAGS="-g -O2 -mips32 -fPIC -I$OPTINCDIR" LDFLAGS="-L$OPTLIBDIR -lusb-1.0 -Wl,-rpath=/opt/lib"
после нескольких запусков скрипта увидел, что он ругается на остуствие файлов usb.h и linux/mod_devicetable.h, которые были мной скопированы из /opt/entware-toolchain/include/linux в /home/sasha/WMR200/libhid-0.2.16/include (собственно когда разбирался с этим я и добавил make clean в скрипте выше)

После этого скрипт жаловаться на отсуствие данных файлов перестал, но стал выдавать другие ошибки:
http://pastebin.com/Xga5N0Tu - начала вывода скрипта не вошло, но там вроде ошибок не было.

Прошу очередного направляющего импульса.

lly
30-07-2013, 13:26
после нескольких запусков скрипта увидел, что он ругается на остуствие файлов usb.h и linux/mod_devicetable.h, которые были мной скопированы из /opt/entware-toolchain/include/linux в /home/sasha/WMR200/libhid-0.2.16/include (собственно когда разбирался с этим я и добавил make clean в скрипте выше)

После этого скрипт жаловаться на отсуствие данных файлов перестал, но стал выдавать другие ошибки:

http://pastebin.com/Xga5N0Tu - начала вывода скрипта не вошло, но там вроде ошибок не было.


Прошу очередного направляющего импульса.

Первая ошибка - не читая лог configure бросаться что-то куда-то копировать. А он честно написал, что компилятор не найден:

checking for mipsel-linux-gcc... no
PATH к тулчейну кто будет прописывать?

Второе, usb.h относится к libusb, и никаким образом к ядру linux. Я полагал, что так как мы собираем не модуль ядра, а user-space приложение, это очевидно

checking usb.h usability... no
checking usb.h presence... no
checking for usb.h... no

в каталоге с собранным libusb надо сделать make install DESTDIR=/opt/entware-toolchain/ или прописать другой доступный каталог.
Аналогично, с libsqlite3.

P.S. Цитирование всего полотенца IMHO только замусоривает сообщение

dinky_samara
30-07-2013, 14:31
Здравия всем. Залезу в тему со своим вопросом.

У меня тоже погодная станция орегон WMR200. Подключена к роутеру D-link DIR 320 с прошивкой от энтузиастов.
У меня все завелось на Wfrog. Были некоторые ньюансы с модулями питон, в частности lxml никак не хотел ставится. Но я поборол.

Неудобство только одно - загружается страничка долго - не хватает то-ли проца, то-ли оперативки. С учетом того, что пропускная способность д-линка меня давно уже не устраивает решил обновить железку. Думаю RT-N16 или RT-N56U или RT-N66U взять. По деньгам возможность есть, но не знаю есть ли смысл. Инет у меня yota, выше 20 мбит в принципе быть не может.

lly если могу чем-то помочь с установкой wfrog - обращайтесь. Со сборкой других пакетов не помогу, компилятор не осиливаю ;)

brightred
31-07-2013, 11:14
Первая ошибка - не читая лог configure бросаться что-то куда-то копировать.
Приветствую, lly! Сделал как было велено.
Для простоты процесса сконцентрировался на компиляции libhid-0.2.16:

root@sasha-VirtualBox:~/WMR200# cat compile_wmr.sh
#!/bin/sh

BUILDDIR=/home/sasha
OPTINCDIR=$BUILDDIR/opt/include
OPTLIBDIR=$BUILDDIR/opt/lib
PATH=/opt/entware-toolchain/bin:$PATH

cd /home/sasha/WMR200

cd libhid-0.2.16
make clean
CFLAGS="-g -O2 -mips32 -fPIC"
LIBUSB_CFLAGS="-I$OPTINCDIR" LIBUSB_LIBS="-L$OPTLIBDIR -lusb -lusb-1.0 -lpthread -Wl,-rpath=/opt/lib"
./configure --host=mipsel-linux --prefix=/opt --disable-libtool-lock --enable-werror=no
make
make install DESTDIR=$BUILDDIR
cd ..
root@sasha-VirtualBox:~/WMR200#
configure теперь выдает

checking for mipsel-linux-gcc... mipsel-linux-gcc
checking usb.h usability... yes
checking usb.h presence... yes
checking for usb.h... yes
Однако при компиляции вываливается простыня ошибок:
pastebin (http://pastebin.com/GnjnTLki)
Коллеги, жду очередного направляющего импульса, спасибо.

Помимо этого есть еще предупреждение:

configure: WARNING: cannot find 'swig' program. You should look at http://www.swig.org
./configure: line 22454: echo "Error: SWIG is not installed. You should look at http://www.swig.org" ; false: No such file or directory
Вопрос - нужно ли дополнительно компилировать swig? (В Entware не нашел такого пакета)
Так же он ругается на остуствие doxygen, но судя по всему это касается подготовки документации, так что не критично.


Здравия всем. Залезу в тему со своим вопросом.
Думаю RT-N16 или RT-N56U или RT-N66U взять. По деньгам возможность есть, но не знаю есть ли смысл.
У меня все три модели есть:) По ощущениям RT-N66U явно пошустрее предшественников с точки зрения нагрузить чем-нибудь сверху
помимо непосредственно задач маршрутизации. Хотя как поведет себя питон не знаю - не пробовал. А так - вполне достойная железка.

lly
31-07-2013, 12:03
Коллеги, жду очередного направляющего импульса, спасибо.


In file included from ../include/usb.h:4:0,
from ../include/hid.h:5,
from linux.c:6:
/opt/entware-toolchain/lib/gcc/mipsel-linux-uclibc/4.6.3/../../../../mipsel-linux-uclibc/sys-include/linux/mod_devicetable.h:18:2: error: unknown type name '__u32'
Восстал из праха куда-то скопированный usb.h от ядра. Легко убедится, что в usb.h из libusb никаких mod_devicetable.h нет, и быть не может.

P.S. Чистить хвосты всегда сложнее чем их не допускать...

brightred
31-07-2013, 15:06
Восстал из праха куда-то скопированный usb.h от ядра. Легко убедится, что в usb.h из libusb никаких mod_devicetable.h нет, и быть не может.



Да, действительно!
Нашел подлеца и заменил на usb.h из libusb. Все скомпилировалось, спасибо!
Сегодня в ночи продолжу с WMR - доложу.


P.S. Чистить хвосты всегда сложнее чем их не допускать...

Ваша правда. Спасибо за терпение.

ryzhov_al
31-07-2013, 15:17
На всякий случай: я видел ваш реквест на сайте Entware, но уже неделю как занял выжидательную позицию.
Мне кажется, что вы сами можете успешно решить эту задачу.

Могу, конечно, выложить готовый пакет, но тогда вы ничему не научитесь.

TReX
31-07-2013, 18:46
Могу, конечно, выложить готовый пакет, но тогда вы ничему не научитесь.

А может не выложить а в репозитарий добавить? Орегоновские метеостанции у нас в России самые ходовые ) Даже на форуме уже у троих нашлись )

brightred
31-07-2013, 19:23
На всякий случай: я видел ваш реквест на сайте Entware, но уже неделю как занял выжидательную позицию.
Мне кажется, что вы сами можете успешно решить эту задачу.

Могу, конечно, выложить готовый пакет, но тогда вы ничему не научитесь.

О! Так Вы же в отпуске!

Про позицию я понял - в принципе разумно. Я тут паралельно пытаюсь (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(wmr-wview-amp-etc-)&p=262033#post262033) wview скомпилировать. Чуствую там тоже грабли припрятаны - если поможете добрым советом при случае буду благодарен :)

brightred
31-07-2013, 21:56
Коллеги, не в данную тему, но очень уж хочется похвастаться - недавно приехала моя новая станция Netatmo (http://www.netatmo.com/en-US/weather-station), смотрите какая красота

9660

То же самое на iphone/ipad

Не спрашивайте зачем мне две метеостанции - захотелось поиграться :)

А еще у нее есть датчики шума и уровня углекислоты - теперь сигналит на телефон когда в детсой слишком шумно или пора проветривать комнату.

С нашими роутерами из коробки не интегрируется :) - да наверное и не нужно :)

brightred
01-08-2013, 07:52
..... продолжу с WMR - доложу.

Докладываю - с wmr-04 получился epic fail.

configure поправил, Makefile заменил

Конфигурируем и компилируем при помощи скрипта:


sasha@sasha-VirtualBox:~/WMR200$ cat c_wmr.sh
#!/bin/sh

BUILDDIR=/home/sasha
OPTINCDIR=$BUILDDIR/opt/include
OPTLIBDIR=$BUILDDIR/opt/lib
PATH=/opt/entware-toolchain/bin:$PATH

cd /home/sasha/WMR200

CFLAGS="-g -O2 -mips32 -fPIC"
LIBUSB_CFLAGS="-I$OPTINCDIR" LIBUSB_LIBS="-L$OPTLIBDIR -lusb -lusb-1.0 -lpthread -Wl,-rpath=/opt/lib"
#./configure --host=mipsel-linux --prefix=/opt --disable-libtool-lock --enable-werror=no
#make
#make install DESTDIR=$BUILDDIR
#cd ..

cd wmr-oregon-0.4

HPATH="$OPTINCDIR /opt/entware-toolchain/lib"
LPATH="$OPTLIBDIR $BUILDDIR/opt/usr/lib"
./configure

make clean
make single CFLAGS="-g -O2 -mips32 -fPIC -I$OPTINCDIR" LDFLAGS="-L$OPTLIBDIR -lusb-1.0 -Wl,-rpath=/opt/lib"

cd ..

sasha@sasha-VirtualBox:~/WMR200$

в итоге получаем:

Pastebin (http://pastebin.com/1SZAKg1T)

Что не так?

lly
01-08-2013, 12:00
Коллеги, не в данную тему, но очень уж хочется похвастаться - недавно приехала моя новая станция Netatmo (http://www.netatmo.com/en-US/weather-station), смотрите какая красота
Это она отдаёт по http? Проводного Ethernet нет?
Вот если зима будет настоящей, увидим - умрёт ли outdoor датчик. У многих беспроводный датчик ниже -30 тупо отрубается.


С нашими роутерами из коробки не интегрируется :) - да наверное и не нужно :)
А это зависит от того есть ли у неё энергонезависимая память(flash?), насколько его хватит, и сколько outdoor/indoor датчиков может быть максимум.


Докладываю - с wmr-04 получился epic fail.

Что не так?
Во-первых, почему такая любовь везде пихать sudo? Рутовый шелл бывает весьма ограничен и может не понять всего авангарда сего скрипта...

Предлагаю для простоты заменить мега-интерактивный ./configure на:

echo "" >Makefile.inc
echo "/* create "`date`" */" > config.h
for i in ${HPATH}; do
echo "CFLAGS += -I$i " >>Makefile.inc
echo "#include \""${i}"\"" >> config.h
done
for i in ${LPATH}; do
echo "LIBS += -L$i " >>Makefile.inc
done

echo "CFLAGS += -DLANG_ENG" >>Makefile.inc
# echo "CFLAGS += -DLANG_RU_UTF8" >>Makefile.inc
# echo "CFLAGS += -DDEBUG" >>Makefile.inc

brightred
01-08-2013, 16:37
Это она отдаёт по http? Проводного Ethernet нет?
Вот если зима будет настоящей, увидим - умрёт ли outdoor датчик. У многих беспроводный датчик ниже -30 тупо отрубается.
[/CODE]

Там немного хитро. Основной блок работает по wifi с внешним миром. Связь с остальными датчиками - сугубо беспроводная (wifi или Bluetooth я так и не разобрался - в мануале явно не указано, но есть упоминание, что вроде основной блок можно конфигурить по bluetooth...)

В текущей версии прошивки поддерживается один внешний и до 4 внутренних датчиков. Стандартная поставка - база + 1 внешний + 1 внутренний. Я заказал еще пару внутренних - приедут - отпишусь что как.

Вообще тема количества и типов датчиков, как я понял, завист от прошивки. На форуме народ просит датчики ветра например.
Flash думаю присутствует, поскольку есть тема обновления прошивок :)

Outdoor блок висит рядом с датчиком ветра от Oregon Scientific - отчет показывает что его уровень сигнала - четыре палки из пяти (расстояние 6-8 метров через капитальную стену).

Скриншот сделан из веб морды по http(s), НО, доступ к вебморде через сайт netatmo, так что только что родилось предположение, что без интернета такую красивую картинку не получишь даже находясь рядом с базой - проверю сегодня :)

Насчет зимы - проверим, только вчера нашел где купить литиевые батарейки так что все будет зависеть только то железа самого датчика

TReX
01-08-2013, 20:40
Там немного хитро. Основной блок работает по wifi с внешним миром. Связь с остальными датчиками - сугубо беспроводная (wifi или Bluetooth я так и не разобрался - в мануале явно не указано, но есть упоминание, что вроде основной блок можно конфигурить по bluetooth...)

В текущей версии прошивки поддерживается один внешний и до 4 внутренних датчиков. Стандартная поставка - база + 1 внешний + 1 внутренний. Я заказал еще пару внутренних - приедут - отпишусь что как.


За такие деньги можно было бы купить три станции
Oregon Scientific
Anywhere Weather Kit LW301
В отличие от этой поделки они представляют из себя полноценную метеостанцию с выходом в интернет )
Плюс поддерживаются не только Яблоки но и Андроид )

lly
02-08-2013, 08:47
За такие деньги можно было бы купить три станции
Oregon Scientific
Anywhere Weather Kit LW301
В отличие от этой поделки они представляют из себя полноценную метеостанцию с выходом в интернет )

Насколько я вижу (http://www.oregons.ru/catalog/komplekt-pogodnykh-datchikov-s-peredachey-dannykh-v-internet-lw301/) та-же фигня:

Хранение данных в Интернете
Требуется подключение к Интернету через маршрутизатор
На ПК данные с датчиков можно просматривать на сайте www.osanywhereweather.com
Лично меня это(хранение данных у чужого дяди) не устраивает. Очень интересно какой интерес производителей?

brightred
02-08-2013, 11:01
Насколько я вижу (http://www.oregons.ru/catalog/komplekt-pogodnykh-datchikov-s-peredachey-dannykh-v-internet-lw301/) та-же фигня:

Лично меня это(хранение данных у чужого дяди) не устраивает. Очень интересно какой интерес производителей?

Точно не знаю, думаю это мода на тн "облака"... А может они краудсорсинговый проект про планетарную погоду мутят. Есть еще идея про мировую закулису - они хотят поработить весь мир через домашние метеостанции :)

Коллеги, не в плане рекламы, на на счет :


За такие деньги можно было бы купить три станции
Oregon Scientific
Anywhere Weather Kit LW301
Не соглашусь - Netatmo приехало из штатов меньше чем 200 баков с доставкой. Я к тому что если брать первую метеостанцию, то Oregon Scientific - очень даже хороший кандидат (что я собственно и сделал - по мне, так WMR200 - старая добрая ламповая классика, практически как Sico (http://a-teh.livejournal.com/31721.html) у Пелевина)

Netatmo же, это типа iPhone в пространстве метеостанций - минимум настроек, максимум няшек :)

lly
02-08-2013, 12:22
Точно не знаю, думаю это мода на тн "облака"... А может они краудсорсинговый проект про планетарную погоду мутят. Есть еще идея про мировую закулису - они хотят поработить весь мир через домашние метеостанции :)
Про мировую закулису не верю, а к планетарной погоде требуется еще и знание места расположения станции. Тут только вспоминается гугловский проект по локализации Wi-Fi.



Не соглашусь - Netatmo приехало из штатов меньше чем 200 баков с доставкой. Я к тому что если брать первую метеостанцию, то Oregon Scientific - очень даже хороший кандидат (что я собственно и сделал - по мне, так WMR200 - старая добрая ламповая классика, практически как Sico (http://a-teh.livejournal.com/31721.html) у Пелевина)
"ламповая классика" должна быть исключительно проводной, никаких вредных технологий! ;)


Согласен, единственный большой недостаток этой станции, а интерес производителей, простой - к метеостанции еще и их медецинские лялечки подключать в дальнейшем можно будет )
Насколько я знаю, производители медицинских датчиков с удалённым сбором данных мутят совершенно отдельный проект(платный естественно). И как тут они договорятся, да еще с учётом того, что если мед. данные уведут, то уже пахнет судом :confused:

TReX
02-08-2013, 12:29
Насколько я вижу (http://www.oregons.ru/catalog/komplekt-pogodnykh-datchikov-s-peredachey-dannykh-v-internet-lw301/) та-же фигня:

Лично меня это(хранение данных у чужого дяди) не устраивает. Очень интересно какой интерес производителей?

Согласен, единственный большой недостаток этой станции, а интерес производителей, простой - к метеостанции еще и их медецинские лялечки подключать в дальнейшем можно будет )


Не соглашусь - Netatmo приехало из штатов меньше чем 200 баков с доставкой. Я к тому что если брать первую метеостанцию, то Oregon Scientific - очень даже хороший кандидат (что я собственно и сделал - по мне, так WMR200 - старая добрая ламповая классика, практически как Sico (http://a-teh.livejournal.com/31721.html) у Пелевина)

Netatmo же, это типа iPhone в пространстве метеостанций - минимум настроек, максимум няшек :)

Если брать в штатах, то 302 Орегон опять же дешевле, функционал больше, ну вот зачем дома датчик CO2? нет у большинства ни колонок газовых ни котлов, да и с печками в городе напряженка, шумомер тоже для метеостанции очень "полезен" ))


Про мировую закулису не верю, а к планетарной погоде требуется еще и знание места расположения станции. Тут только вспоминается гугловский проект по локализации Wi-Fi.



"ламповая классика" должна быть исключительно проводной, никаких вредных технологий! ;)


Насколько я знаю, производители медицинских датчиков с удалённым сбором данных мутят совершенно отдельный проект(платный естественно). И как тут они договорятся, да еще с учётом того, что если мед. данные уведут, то уже пахнет судом :confused:

http://corporate.oregonscientific.com/template/lw301/LW301_LW302_proWeatherStation_faq.html
Q9. Why are there two USB ports on the main unit?
A. The Weather Sensor Receiver should be connected to either USB port. The other port can be used for future applications – such as gathering data from a non-weather device, e.g. health data from a blood pressure monitor, etc.

brightred
02-08-2013, 14:00
Если брать в штатах, то 302 Орегон опять же дешевле, функционал больше, ну вот зачем дома датчик CO2? нет у большинства ни колонок газовых ни котлов, да и с печками в городе напряженка, шумомер тоже для метеостанции очень "полезен" ))

Так я же и говорю - первая станция - Oregon Scentific, далее - сплошная вкусовщина. Но мне лично (и жене ) доставляет :)

Но WMR200 не брошу


Если брать в штатах, то 302 Орегон опять же дешевле, функционал больше, ну вот зачем дома датчик CO2? нет у большинства ни колонок газовых ни котлов, да и с печками в городе напряженка, шумомер тоже для метеостанции очень "полезен" ))

Повторюсь, вкусовщина.

Но если размышлять про датчики - можно спросить у сообщества - имеет смысл датчик CO2(у меня за месяц в детской два раза было превышение 1000 ppm ) ?

Коллеги, еще раз - я не агитирую за netatmo, просто поделился опытом шоппинга

Надеюсь вы меня поймете - это просто игрушки для "взрослых" мужчин



"ламповая классика" должна быть исключительно проводной, никаких вредных технологий! ;)


Не соглашусь. Лампы - беспроводные, не wifi конечно, но если бы сам в институте на лабах простейшую электронную лампу своими руками не делал- помолчал бы

lly
02-08-2013, 14:31
Но если размышлять про датчики - можно спросить у сообщества - имеет смысл датчик CO2(у меня за месяц в детской два раза было превышение 1000 ppm ) ?
Дико зависит от качества датчиков и их срока жизни. Дайверы владельцы ребризеров(аппаратов для подводного плавания с замкнутым циклом газообмена) тупо меняют датчики CO2 через XX часов работы, ибо жизнь дороже.
Надо искать datasheet на датчик, тогда можно о чём-то спорить...


Не соглашусь. Лампы - беспроводные, не wifi конечно, но если бы сам в институте на лабах простейшую электронную лампу своими руками не делал- помолчал бы
Лампа не питается от отдельной батарейки(про анодные сухие батареи давай не будем вспоминать). И, при грамотной конструкции, давать помехи в эфир не будет.

brightred
04-08-2013, 12:09
Надо искать datasheet на датчик, тогда можно о чём-то спорить...


Вот что есть в мануале:

How does the Netatmo station measure the CO2 concentration?
Your CO2 sensor measures CO2 by an optical process: the Station embeed a light bulb and an infrared
receiver. Light is emitted by the light bulb and partially absorbed by the CO2 contained in the ambient air. The
higher the CO2 level, the more light is absorbed. At the end the infrared receiver measures the amount of light
received and deduce the CO2 level from it. This method works regardless of the ambient light.

Не хочу спорить, но судя по мануалу применяется спектральный анализ. Исходя из общих соображений не могу пока сопоставить время жизни датчика и его функциональность

И еще, в поисках характеристик датчика углекислоты набрел на прекрасное:

Оба блока изготавливаются из цельного листа алюминия (http://www.macdigger.ru/iphone-ipod/netatmo-personalnaya-meteostanciya-dlya-polzovatelej-iphone-i-ipad.html)

Сразу вспомнил про паровоз, который изготавливается из цельного куска железа при помощи напильника :)

lly
04-08-2013, 14:26
Не хочу спорить, но судя по мануалу применяется спектральный анализ. Исходя из общих соображений не могу пока сопоставить время жизни датчика и его функциональность
Так чего спорить, только если на форуме найдётся серьёзный химик/физик-технолог который занимался темой датчиков газоанализа, ибо честно реализовывать полный спектроанализатор абсолютно нерентабельно. Да и, скорее всего, бессмысленно для домашних применений, так как точность 1-3% всех устраивает. Плюс вопрос автокалибровки...

Хорошая табличка http://www.co2meter.com/collections/sensor-comparison-chart и есть ветка обсуждения на хоботе (http://forum.ixbt.com/topic.cgi?id=47:11005)

Если там стоит K30, то у него заявленный срок службы >15лет. Но, так как блок питается от батареек, то IMHO технология датчика LED-NDIR. Кроме как препарировать, я не вижу другого варианта узнать правду...

P.S. wmr запустил?

brightred
10-08-2013, 11:32
Коллеги, приветствую!




Предлагаю для простоты заменить мега-интерактивный ./configure на:


Продолжаю полет.
Заменил ./configure на ./configure1 как было велено выше (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(wmr-wview-amp-etc-)&p=262086#post262086)

Модифицировал скрипт компиляции:



sasha@sasha-VirtualBox:~/WMR200$ cat c_wmr.sh

#!/bin/sh

BUILDDIR=/home/sasha
OPTINCDIR=$BUILDDIR/opt/include
OPTLIBDIR=$BUILDDIR/opt/lib
PATH=/opt/entware-toolchain/bin:$PATH

cd /home/sasha/WMR200

CFLAGS="-g -O2 -mips32 -fPIC"
LIBUSB_CFLAGS="-I$OPTINCDIR" LIBUSB_LIBS="-L$OPTLIBDIR -lusb -lusb-1.0 -lpthread -Wl,-rpath=/opt/lib"

cd wmr-oregon-0.4

HPATH="$OPTINCDIR /opt/entware-toolchain/lib"
LPATH="$OPTLIBDIR $BUILDDIR/opt/usr/lib"
./configure1

sudo make single CFLAGS="-g -O2 -mips32 -fPIC -I$OPTINCDIR" LDFLAGS="-L$OPTLIBDIR -lusb-1.0 -Wl,-rpath=/opt/lib"
cd ..

sasha@sasha-VirtualBox:~/WMR200$


Имею на выходе:


sasha@sasha-VirtualBox:~/WMR200$ ./c_wmr.sh

gcc -g -O2 -mips32 -fPIC -I/home/sasha/opt/include -c -o src/wmr.o src/wmr.c
cc1: error: unrecognized command line option ‘-mips32’
make: *** [src/wmr.o] Error 1

sasha@sasha-VirtualBox:~/WMR200$


Файла src/wmr.o не обнаружил. Поиск файла wmr.o по файловой структуре так же ничего не дал...

Прошу помощи..

SergNF
13-08-2013, 15:56
...Подключена к роутеру D-link DIR 320 с прошивкой от энтузиастов.
У меня все завелось на Wfrog. Были некоторые ньюансы с модулями питон, в частности lxml никак не хотел ставится. Но я поборол....

Прошу прощения и я за то, что влезаю в чужую тему.
Т.е. Вы скачали отсюда (http://code.google.com/p/wfrog/downloads/list) бинарники и они "пошли" на DIR'е?
Сейчас ищу в "шопах" совместимые метеостанции. Может быть, Вы уже выведали какая самая дешевая из навороченных и самая навороченная из дешевых?
Мне б только "цифирьки" с удаленных датчиков (1-2 remote outdoor temperature 5-10 метров как ни крути) транслировать на "большую землю" (через DIR, естественно). А уж на большой земле, как нибудь да и обработаю.
Спасибо.

ЗЫ. Посмотрел все совместимы метеостанции. Дааа. Печально. Хоть самому на arduino что-то мастерить.

dinky_samara
14-08-2013, 06:35
Прошу прощения и я за то, что влезаю в чужую тему.
Т.е. Вы скачали отсюда (http://code.google.com/p/wfrog/downloads/list) бинарники и они "пошли" на DIR'е?

Эти бинарники, еще питон и модули питона - на флешку. Потом подключил эту флешку соотвествующим образом к роутеру (на этом форуме был раньше мануал который я находил по слову DURAK). Более того - когда меня не устроила скорость работы DIR-320 я купил новый asus rt65-n. Прошил его, и эта же флешка снова в работе - ничего не менял из ПО. Там метров 80 - могу поделиться содержимым.


Сейчас ищу в "шопах" совместимые метеостанции. Может быть, Вы уже выведали какая самая дешевая из навороченных и самая навороченная из дешевых?
Мне б только "цифирьки" с удаленных датчиков (1-2 remote outdoor temperature 5-10 метров как ни крути) транслировать на "большую землю" (через DIR, естественно). А уж на большой земле, как нибудь да и обработаю.
Спасибо.

ЗЫ. Посмотрел все совместимы метеостанции. Дааа. Печально. Хоть самому на arduino что-то мастерить.
зависит от того, нужен ли вам роутер кроме самой метеостанции...

brightred
15-08-2013, 10:57
Коллеги, приветствую!
прошу скомпилировать пакет lxml (http://lxml.de/) для python.
Попытка установить его механизамами самого питона (easy_install) приводит к ошибке - требуются двевелоперские версии пактов libxml2 и libxslt (и я так подозреваю среды компиляции), которой в Entware нет.

Спасибо.

ryzhov_al
15-08-2013, 11:49
Добрый день.
Коллеги, приветствую!
прошу скомпилировать пакет lxml (http://lxml.de/) для python.Для какой софтины вам нужна эта библиотека?

brightred
15-08-2013, 12:17
Добрый день.Для какой софтины вам нужна эта библиотека?
Приветствую!

Да я все ковыряюсь с софтом к погодными станциям... Пока жду (http://wl500g.info/showthread.php?31459-%CC%E5%F2%E5%EE%F1%F2%E0%ED%F6%E8%E8-Oregon-Scientific-%F0%EE%F3%F2%E5%F0-(wmr-wview-amp-etc-)&p=262248#post262248) помощи при очередном шаге компиляции WMR, решил копнуть wfrog (https://code.google.com/p/wfrog/wiki/InstallationGuide).

Из всех зависимостей:


easy_install cheetah
easy_install lxml
easy_install pyusb
easy_install pyserial
easy_install pyyaml
easy_install pygooglechart


не встал только lxml. Ошибки - те что указал выше.

Спасибо!

ryzhov_al
18-08-2013, 14:58
По wmr-oregon 0.4. Сборка беспроблемная, но запуск тут же вызывает:

# wmrd
- WMR: (weather identifer shared memory) initialization failed

- ftok : No such file or directory

В этом (http://code.google.com/p/wmr/source/browse/trunk/src/wmr_util.c#36) месте, прямо при инициализации, в коде константа WMR_UTIL_C_TXT_1 = "(weather identifer shared memory) initialization failed". Удивительно, что при запуске под strace этой ошибки нет (http://pastebin.com/qWfnLYpB). Ч.д? Бросить потому, что в uClibc нет поддержки shared memory?

dinky_samara
19-08-2013, 09:17
Приветствую!

Из всех зависимостей:


не встал только lxml. Ошибки - те что указал выше.

Спасибо!

у меня он тоже таким методом не встал. я подсунул его руками - взял не помню откуда и положил к модулям питона.

brightred
19-08-2013, 17:55
у меня он тоже таким методом не встал. я подсунул его руками - взял не помню откуда и положил к модулям питона.
Приветствую! Здесь по подробнее если можно.... Я сам попытался руками подсунуть (даже на новой флешке optware
поставил с питоном 2.5 и оттуда попытался подсунуть что-то) но, либо лыжи не едут, либо что-то со мною....


По wmr-oregon 0.4. Сборка беспроблемная, но запуск тут же вызывает
Приветствую!
Думаю нужно спросить у сообщества - если я один такой уникальный с метеостанцией, то Вам решать.
А я бы скромно попросил перенести из Openwrt в Entware пакет wview. Я сам попытался скомпилировать,
но там куча зависимостей и дальше radlib пройти не удалось....

Пробую все что могу... Как ни ругают Optware, получилось запустить wfrog c моей WMR200. No comments, just screens:
9682

dinky_samara
20-08-2013, 12:53
Приветствую! Здесь по подробнее если можно.... Я сам попытался руками подсунуть (даже на новой флешке optware
поставил с питоном 2.5 и оттуда попытался подсунуть что-то) но, либо лыжи не едут, либо что-то со мною....

распакуйте содержимое архива
www.ntkauto.ru/wfrog/opt.tar.gz
на в корень флешки размеченной под ext3. Подключите флешку и метеостанцию к своему роутеру.
После ребута роутера получаем запущенный wfrog.

Если хотите - потом разбирайтесь как я это сделал, сам я не знаю ;)

PS: там по крону недописанный скрипт работает который отправляет данные на мой внешний сервер.

ryzhov_al
21-08-2013, 11:00
А я бы скромно попросил перенести из Openwrt в Entware пакет wview.Добавил последнюю версию wview с OpenWRT'шными патчами.

brightred
22-08-2013, 06:51
Добавил последнюю версию wview с OpenWRT'шными патчами.

Спасибо.
Вопрос (может быть дурацкий) - поскольку Entware живет и на 56 и на 66 роутерах (оба имеются в наличии) - на каком нужно пробовать wview - я так понял там версии ядра разные (56 - by Padavan, 66 - by Merlin)?

ryzhov_al
22-08-2013, 06:54
Спасибо.
Вопрос (может быть дурацкий) - поскольку Entware живет и на 56 и на 66 роутерах (оба имеются в наличии) - на каком нужно пробовать wview - я так понял там версии ядра разные (56 - by Padavan, 66 - by Merlin)?Если для работы станции необходимы лишь стандартные hid-модули, то всё равно.

brightred
22-08-2013, 07:01
распакуйте содержимое архива
www.ntkauto.ru/wfrog/opt.tar.gz
на в корень флешки размеченной под ext3. Подключите флешку и метеостанцию к своему роутеру.
После ребута роутера получаем запущенный wfrog.

Если хотите - потом разбирайтесь как я это сделал, сам я не знаю ;)

PS: там по крону недописанный скрипт работает который отправляет данные на мой внешний сервер.

Спасибо, уже запустил wfrog самостоятельно.
Есть вопрос по производительности - у меня страничка wfrog открывается секунд 5, у вас так же?
PS: роутер - RT-N56U


Если для работы станции необходимы лишь стандартные hid-модули, то всё равно.
Судя по тому что на 56 завелся wfrog с libusb 0.1 из Optware (который есть и в Optware и в Entware), то наверное действительно все равно - или я ошибаюсь?

Еще вопрос - зависимости для wview какие-то отдельно нужно ставить, либо там уже все упаковано?

ryzhov_al
22-08-2013, 07:04
Еще вопрос - зависимости для wview какие-то отдельно нужно ставить, либо там уже все упаковано?Всё упаковано. Установка wview подтянет за собой все недостающие компоненты.

dinky_samara
23-08-2013, 06:36
Спасибо, уже запустил wfrog самостоятельно.
Есть вопрос по производительности - у меня страничка wfrog открывается секунд 5, у вас так же?
PS: роутер - RT-N56U

да, где-то так. иногда и дольше. RT-N65U. Но я базу на внешний хостинг реплицирую, так что проблема не волнует.

brightred
26-08-2013, 09:32
Добавил последнюю версию wview с OpenWRT'шными патчами.

Всем привет!

Попробовал завестись на выходные. Основные результаты:

- бинарники вроде бы все необходимые (для меня) присуствуют и работают

- неочевидно начало работы с базой sqllite где хранится конфигурация wwview - ее нужно правильно сгенерить и поименовать, что сразу неочевидно, но преодолимо

- есть проблема с генерацией контента для сайтов wwview и wviewmgmgt (утилита wviewhtmlconfig отрабатывает с ошибкой)- похоже темплейты для их генерации не вошли в пакет, попробую вытащить их из исходника

- сейчас заморачиваюсь настройкой вебсервера для wwiew - как использовать встроенный для создания отдельного сайта для wview не знаю, поэтому водрузил апач, но заставить его работать с php5 пока не хватило времени - php5 и php-mod-cgi установил, но видимо этого мало :) - попытка запуска .php файлов в браузере приводит к демонстрации содержимого php файла :) - буду допиливать в ближайшее время

Вобщем пока предварительный вывод - "из коробки" wview поставить не удалось. Запущу - посмотрю, сОит ли заморачиваться по сравнению с wfrog

brightred
29-08-2013, 09:11
Коллеги, приветствую!
wview поборол!

Основной интерфейс (погодный):
9689

Интерфейс управления:
9690

Подробности позже.

lly
29-08-2013, 11:06
По wmr-oregon 0.4. Сборка беспроблемная, но запуск тут же вызывает:

# wmrd
- WMR: (weather identifer shared memory) initialization failed

- ftok : No such file or directory

В этом (http://code.google.com/p/wmr/source/browse/trunk/src/wmr_util.c#36) месте, прямо при инициализации, в коде константа WMR_UTIL_C_TXT_1 = "(weather identifer shared memory) initialization failed". Удивительно, что при запуске под strace этой ошибки нет (http://pastebin.com/qWfnLYpB). Ч.д? Бросить потому, что в uClibc нет поддержки shared memory?
Не, это он падает на попытке открыть свой собственный бинарник - пробуй при запуске всегда указывать полный путь к wmrd, там не универсально используется argv[0].

P.S. С каких это пор в uClibc нет поддержки IPC, если она разрешена в ядре? :confused:

brightred
Ну просил же - забудь про sudo!!! Не нужен при кросс-компиляции root ни при каком раскладе!

Вижу что не заменился Makefile - не отрабатывает секция для COMPILE = mips

ryzhov_al
29-08-2013, 13:36
Не, это он падает на попытке открыть свой собственный бинарник - пробуй при запуске всегда указывать полный путь к wmrd, там не универсально используется argv[0].
Шайтан.

admin@RT-N66U:/tmp/mnt/SDCARD/tmp# /opt/sbin/wmrd
- Weather Logger for (c) Oregon Scientific USB protocol
- Version: 0.4 Den68 ASCII/SQL/RRD/SNMP - building: Wed Jan 23 01:11:03 MSK 2013
- For help, type -h.

- USB: Opening Oregon Scientific USB device...

Ctrl+C
- USB: Failed to init device, exiting.

- Exit if pid: 13799 main pid: 13799
- Caught signal, cleaning up

- PID remove OK

- /opt/sbin/wmrd EXIT Succesfull
- WMR: hid_close failed with return code 10

Добавил в репозиторий.

brightred, с вас отчёт.

lly
29-08-2013, 14:26
Шайтан.
В идеале надо допинать автора чтобы он или документировал эту "фичу" или дописал универсально - или argv[0] + getcwd(), или подобно Finding current executable's path... (http://stackoverflow.com/questions/1023306/finding-current-executables-path-without-proc-self-exe) Но мне лениво :rolleyes:

brightred
29-08-2013, 14:37
Не, это он падает на попытке открыть свой собственный бинарник - пробуй при запуске всегда указывать полный путь к wmrd, там не универсально используется argv[0].

P.S. С каких это пор в uClibc нет поддержки IPC, если она разрешена в ядре? :confused:

brightred
Ну просил же - забудь про sudo!!! Не нужен при кросс-компиляции root ни при каком раскладе!


Да я пробовал и с sudo и без.. Но потом подумал а вдруг.. :)


Шайтан.

admin@RT-N66U:/tmp/mnt/SDCARD/tmp# /opt/sbin/wmrd
- Weather Logger for (c) Oregon Scientific USB protocol
- Version: 0.4 Den68 ASCII/SQL/RRD/SNMP - building: Wed Jan 23 01:11:03 MSK 2013
- For help, type -h.

- USB: Opening Oregon Scientific USB device...

Ctrl+C
- USB: Failed to init device, exiting.

- Exit if pid: 13799 main pid: 13799
- Caught signal, cleaning up

- PID remove OK

- /opt/sbin/wmrd EXIT Succesfull
- WMR: hid_close failed with return code 10

Добавил в репозиторий.

brightred, с вас отчёт.

Спасибо, принято. Сделаю.

brightred
30-08-2013, 12:57
Коллеги, приветствую!
Как обещал, пишу краткий отчет по запуску wview.

1) Ставим wview и необходимые зависимости. На память не помню, но все что нужно, присуствует в репозитории. Ставим sqlite3.
2) Далее создаем базу /opt/etc/wview/wview-conf.sdb используя скрипт wview-conf.sql из той же директории
3) Создаем базу /tmp/opt/var/wview/archive/wview-archive.sdb используя скрипт /opt/etc/wview/wview-archive.sql
3) Запускаем wviewconfig и долго и муторно отвечаем на вопросы в интерактивном режиме. На что обратить внимание:

- рекомендую заранее узнать широту и долготу расположения вашей метеостанции (все цифры после запятой) и высоту над уровнем моря в футах

- переменная Where to store generated html and graphics files: PARAMETER: HTMLGEN_IMAGE_PATH - это директория, куда будет генерироваться сайт с погодными данными, не перепутайте ее с нижеследующей переменной (они так же не должны совпадать) - линк на нее нужно будет потом разместить где-то в doc root вашего веб сервера

- переменная Where to find HTML template files: PARAMETER: HTMLGEN_HTML_PATH - это директория, куда утилита wviewhtmlconfig положит выбранный вами шаблон сайта (см. ниже)

- НЕ НУЖНО МЕНЯТЬ ДЕФОЛТОВЫЙ ПАРОЛЬ. Вы его всегда сможете поменять после через веб-интерфейс


4) Запускаем wviewhtmlconfig, генерим нужный шаблон.

5) Стартовый скрипт в дистрибутиве не идет, я сделал свой из имеющихся в дистрибутиве примеров. Вот он. Правьте пути, если нужно в начале. Так же в стартовой части я закомментировал запуск демонов, которые я не использую:



#!/bin/sh
CONF_DIRECTORY=/opt/etc/wview
WVIEW_DATA_DIR=/opt/var/wview
WVIEW_INSTALL_DIR=/opt/bin
RUN_DIRECTORY=/tmp/opt/var/wview

export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8'


#
# Name: wview - init.d script for busybox wview
# Process Names: radmrouted wviewd htmlgend wviewftpd wvalarmd
# wvcwopd wviewsshd wvhttpd
# Config: /etc/wview/*.conf
# Pidfiles: /var/wview/*.pid
#

RADROUTER_BIN=$WVIEW_INSTALL_DIR/radmrouted
test -x $RADROUTER_BIN || exit 1
WVIEWD_FILE=`cat $CONF_DIRECTORY/wview-binary`
WVIEWD_BIN=$WVIEW_INSTALL_DIR/$WVIEWD_FILE
test -x $WVIEWD_BIN || exit 2
HTMLD_BIN=$WVIEW_INSTALL_DIR/htmlgend
test -x $HTMLD_BIN || exit 3
FTPD_BIN=$WVIEW_INSTALL_DIR/wviewftpd
test -x $FTPD_BIN || exit 4
SSHD_BIN=$WVIEW_INSTALL_DIR/wviewsshd
test -x $SSHD_BIN || exit 5
ALARMD_BIN=$WVIEW_INSTALL_DIR/wvalarmd
test -x $ALARMD_BIN || exit 6
CWOPD_BIN=$WVIEW_INSTALL_DIR/wvcwopd
test -x $CWOPD_BIN || exit 7
HTTP_BIN=$WVIEW_INSTALL_DIR/wvhttpd
SQLD_BIN=$WVIEW_INSTALL_DIR/wviewsqld
PMOND_BIN=$WVIEW_INSTALL_DIR/wvpmond
test -x $PMOND_BIN || exit 10

WVIEWD_PID=$RUN_DIRECTORY/wviewd.pid
HTMLD_PID=$RUN_DIRECTORY/htmlgend.pid
FTPD_PID=$RUN_DIRECTORY/wviewftpd.pid
SSHD_PID=$RUN_DIRECTORY/wviewsshd.pid
ALARMD_PID=$RUN_DIRECTORY/wvalarmd.pid
CWOPD_PID=$RUN_DIRECTORY/wvcwopd.pid
HTTP_PID=$RUN_DIRECTORY/wvhttpd.pid
SQLD_PID=$RUN_DIRECTORY/wviewsqld.pid
RADROUTER_PID=$RUN_DIRECTORY/radmrouted.pid
PMOND_PID=$RUN_DIRECTORY/wvpmond.pid

wait_for_time_set() {
THOUSAND=1000
CURRVAL=`date +%s`
while [ "$CURRVAL" -lt "$THOUSAND" ]; do
sleep 1
CURRVAL=`date +%s`
done
}

kill_running_processes() {
if [ -f $RADROUTER_PID ]; then
echo "radlib router pid file $RADROUTER_PID exists - killing existing process"
kill -15 `cat $RADROUTER_PID`
rm -f $RADROUTER_PID
fi
if [ -f $WVIEWD_PID ]; then
echo "wviewd pid file $WVIEWD_PID exists - killing existing process"
kill -15 `cat $WVIEWD_PID`
rm -f $WVIEWD_PID
fi
if [ -f $HTMLD_PID ]; then
echo "htmlgend pid file $HTMLD_PID exists - killing existing process"
kill -15 `cat $HTMLD_PID`
rm -f $HTMLD_PID
fi
if [ -f $FTPD_PID ]; then
echo "wviewftpd pid file $FTPD_PID exists - killing existing process"
kill -15 `cat $FTPD_PID`
rm -f $FTPD_PID
fi
if [ -f $SSHD_PID ]; then
echo "wviewsshd pid file $SSHD_PID exists - killing existing process"
kill -15 `cat $SSHD_PID`
rm -f $SSHD_PID
fi
if [ -f $ALARMD_PID ]; then
echo "wvalarmd pid file $ALARMD_PID exists - killing existing process"
kill -15 `cat $ALARMD_PID`
rm -f $ALARMD_PID
fi
if [ -f $CWOPD_PID ]; then
echo "wvcwopd pid file $CWOPD_PID exists - killing existing process"
kill -15 `cat $CWOPD_PID`
rm -f $CWOPD_PID
fi
if [ -f $HTTP_PID ]; then
echo "wvhttpd pid file $HTTP_PID exists - killing existing process"
kill -15 `cat $HTTP_PID`
rm -f $HTTP_PID
fi
if [ -f $PMOND_PID ]; then
echo "wvpmond pid file $PMOND_PID exists - killing existing process"
kill -15 `cat $PMOND_PID`
rm -f $PMOND_PID
fi
}

case "$1" in
start)
kill_running_processes

wait_for_time_set

echo "Starting wview daemons:"

if [ -x $RADROUTER_BIN ]; then
$RADROUTER_BIN 1 $RUN_DIRECTORY
else
echo "Cannot find $RADROUTER_BIN - exiting!"
exit 10
fi
sleep 1
$WVIEWD_BIN
sleep 1
$HTMLD_BIN
# $ALARMD_BIN
# $CWOPD_BIN
# $HTTP_BIN
# $FTPD_BIN
# $SSHD_BIN
$PMOND_BIN
;;
start-trace)
kill_running_processes

echo "Starting wview daemons (tracing to $RUN_DIRECTORY):"
echo "Warning: traced processes run very slowly and may effect performance."

if [ -x $RADROUTER_BIN ]; then
$RADROUTER_BIN 1 $RUN_DIRECTORY
else
echo "Cannot find $RADROUTER_BIN - exiting!"
exit 10
fi
sleep 1
strace -o $RUN_DIRECTORY/$WVIEWD_FILE.trace $WVIEWD_BIN -f &> /dev/null &
sleep 1
strace -o $RUN_DIRECTORY/htmlgend.trace $HTMLD_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wvalarmd.trace $ALARMD_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wvcwopd.trace $CWOPD_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wvhttpd.trace $HTTP_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wviewftpd.trace $FTPD_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wviewsshd.trace $SSHD_BIN -f &> /dev/null &
strace -o $RUN_DIRECTORY/wvpmond.trace $PMOND_BIN -f &> /dev/null &
;;
stop)
echo "Shutting down wview daemons..."
if [ -f $PMOND_PID ]; then
kill -15 `cat $PMOND_PID`
fi
if [ -f $HTTP_PID ]; then
kill -15 `cat $HTTP_PID`
fi
if [ -f $CWOPD_PID ]; then
kill -15 `cat $CWOPD_PID`
fi
if [ -f $ALARMD_PID ]; then
kill -15 `cat $ALARMD_PID`
fi
if [ -f $SSHD_PID ]; then
kill -15 `cat $SSHD_PID`
fi
if [ -f $FTPD_PID ]; then
kill -15 `cat $FTPD_PID`
fi
if [ -f $HTMLD_PID ]; then
kill -15 `cat $HTMLD_PID`
fi
if [ -f $WVIEWD_PID ]; then
kill -15 `cat $WVIEWD_PID`
fi
sleep 1
if [ -f $RADROUTER_PID ]; then
kill -15 `cat $RADROUTER_PID`
fi
;;
restart)
$0 stop && sleep 2
$0 start
;;
*)
echo "Usage: $0 {start|start-trace|stop|restart}"
exit 1
esac

exit 0


Теперь можно стартовать wview!

Статусные сообщения и сообщения об ошибках можно увидет в syslog.

Сайт сгенерирован в директорию, задаваемую параметром HTMLGEN_IMAGE_PATH. Сделав линк на нее из doc root вашего вебсервера можно смотреть страничку с погодой через браузер.

6) ХОЗЯЙКЕ НА ЗАМЕТКУ.
Чтобы показания станции корректно считывались, нужно использовать локаль en_US.UTF-8. В случае использования русской локали wview путает десятичные запятые и запятые, которые используются как разделители.

7) Чтобы использовать веб-интерфейс для конфигурирования vwiew, необходимо разархивировать исходники и скопировать директорию wviewmgmt в doc root вашего вебсервера. Веб интерфейс запускается по ссылке http://[адрес вашего вебсервера]/wviewmgmt/login.php.

Для корректной работы wviewmgmt требуется файл functions.php, которого в исходниках нет, зато есть functions.php.sh, который легким движением руки превратится в нужный нам functions.php, если в его начало добавить следующие строки:



<?php

function GetBinaryPrefix()
{
$WVIEW_BINARY_PREFIX = "/opt";
return $WVIEW_BINARY_PREFIX;
}

function GetConfigPrefix()
{
$WVIEW_CONFIG_PREFIX = "/opt/etc";
return $WVIEW_CONFIG_PREFIX;
}

function GetDataPrefix()
{
$WVIEW_DATA_PREFIX = "/opt/var";
return $WVIEW_DATA_PREFIX;
}



ЗАМЕТКИ НА ПОЛЯХ

Я не очень поял как использовать встренный вебсервер для отображения погоды, поэтому водрузил апач. Чтобы апач заработал с php, я, в конец httpd.conf вставил следующие строки:



# CUSTOM: Add PHP 5 parsing (via CGI) handler and action
ScriptAlias /local-bin /opt/bin
AddHandler application/x-httpd-php5 php
Action application/x-httpd-php5 /local-bin/php-cgi
<Directory "/opt/bin">
Order allow,deny
Allow from all
</Directory>


php5 должен поддерживать PDO, поэтому необходимо установить соотвествующие пакеты и расскоментировать соотв. строку в php.ini

Вроде все.

Задавайте вопросы.

brightred
30-08-2013, 22:30
Добавил в репозиторий.

brightred, с вас отчёт.

Приветствую!

Вроде бы запустился:


admin@RT-N66U:/tmp/opt/sbin# /opt/sbin/wmrd -s -d -c /opt/etc/wmr/wmr.conf
- Weather Logger for (c) Oregon Scientific USB protocol
- Version: 0.4 Den68 ASCII/SQL/RRD/SNMP - building: Wed Jan 23 01:11:03 MSK 2013
- For help, type -h.

- USB: Opening Oregon Scientific USB device...
device identification of HIDInterface 001/004[0]:
dev_handle: 0x0041e0e0
device: 0x00422380
location: 001/004
product: Universal Bridge
- USB: Device found on: 001/004[0]

Config (/opt/etc/wmr/wmr.conf) defenition:
- Daemon mode: 1
- SysLog Enable: 1
- Lock file path: /var/lock/wmrd.lock
- SQL Enable: 1
- SQL Base path: /opt/var/wmr/weather.db
- File Log Enable: 0
- File Log path: /opt/var/wmr/weather.log
- RRD graphic Enable: 1
- RRD exec path: /opt/bin/rrdtool
- RRD save path: /opt/var/wmr
- UPD Enable: 0
- UPD time: 10
- UPD exec path: /opt/etc/wmr/script_update
- Rotate exec path: /opt/sbin/wmr_logrotate.sh
- Alarm Enable: 0
- Alarm exec path: /opt/sbin/wmr_alarm.sh
- SNPM Enable: 0
- Debug Enable: 1

- Sensor correct:
temp: 0 0 0 0 0 0 0 0 0 0
humidity: 0 0 0 0 0 0 0 0 0 0
water: 0 0 0 0
pressure: 0
wind: 0
rain: 0
uv: 0
- Sensor alarm (min/max):
temp min: 0 0 0 0 0 0 0 0 0 0
temp max: 0 0 0 0 0 0 0 0 0 0
humidity min: 0 0 0 0 0 0 0 0 0 0
humidity max: 0 0 0 0 0 0 0 0 0 0
water min: 0 0 0 0
water max: 0 0 0 0
pressure: 0/0
wind: 0/0
rain: 0/0
uv: 0/0
- Sensor data standart:
temp: 0
pressure: 5
wind: 0
rain: 0
water: 0
uv: 0

Config SNMP defenition:
- Server port: 161
- Cmmunity: public
- Location: 195220,Russia,Sainkt-Petersburg,ul.Lermontova
- Longtitude: 30.38
- Latitude: 60.00
- Contact E-mail: my@email.ru
- Contact Phone: 78120000000
- Contact Skype: myweather
- Contact ICQ: 12345678
- Contact WWW: www.myweather.com

- DAEMON: mode started...

- Exit if pid: 14399 main pid: 14399


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

Может у кого есть идеи как проверить - идет что-то со станции или нет?


Вот еще что нашел (http://wmr-logger.blogspot.ru/2012/12/wmr-main.html) - может в этом дело:


Версия 0.4, помарки в коде:
Файл wmr.c строку 656 нужно раскоментировать иначе не будет нормально старотовать, попутно закоментировать break.
В Makefile в секции install указан файл wmr_create_graph_rrd.sh но его нет, зато есть wmr_create_graph.sh Думаю нужно переименовать.


С другой стороны вроде wmrd запускается....