Страница 36 из 72

Re: Модуль MySensor

Добавлено: Вт янв 17, 2017 8:31 pm
ipz
Может потому, что
serghei писал(а):На сайте написано использовать IDE 1.6.5 такое же как и для АМС.
))))

В примерах нод и гейтов вообще приводят только самый минимум. Эти примеры работают, но их всегда приходится допиливать.
Гейт Mysensors по умолчанию ничего не делает, по этому setup и loop пустые. Весь функционал гейта зашит в библиотеках. При этом, в гейт также можно добавлять любые датчики, но самому.

Re: Модуль MySensor

Добавлено: Чт янв 19, 2017 9:20 pm
ipz
Кто-нибудь пробовал компилировать MysBootloader с

Код: Выделить всё

#define SPI_PINS_CSN7_CE8 
?

На четыре байта больше бутлоадер получается и не вписывается в размер. Может что-то выпилить?

Re: Модуль MySensor

Добавлено: Чт янв 19, 2017 10:12 pm
serghei
Заметил одну веселую штуку - при компиляции скетча версией платы 1.6.15 остается 4 кило памяти, а 1.6.7 не влезает 2 килобайта. ( для сенсора АМС). Попробуй поменять версию , может быть поможет.

Re: Модуль MySensor

Добавлено: Чт янв 19, 2017 10:23 pm
ipz
Это не про компиляцию скетча в Arduino)), а про компиляцию исходников бутлоудера под другие параметры...
https://github.com/mysensors/MySensorsBootloaderRF24

Re: Модуль MySensor

Добавлено: Ср янв 25, 2017 5:20 pm
ipz
Иван, можно добавить в раздел MySensors->Прошивка: поля `blocks` и `crc` (справочно, без возможности редактирования)

UPD: заодно на закладке Презентация ноды
- исправить подпись `Отчистить` на `Очистить`)))
- там же добавить кнопку `Запросить`

Re: Модуль MySensor

Добавлено: Сб фев 04, 2017 9:40 am
Ivan
Тема перемещена в "Модули и приложения" - Должна быть где все темы по модулям

Re: Модуль MySensor

Добавлено: Сб фев 04, 2017 10:27 am
Ivan
ipz писал(а):Иван, можно добавить в раздел MySensors->Прошивка: поля `blocks` и `crc` (справочно, без возможности редактирования)

UPD: заодно на закладке Презентация ноды
- исправить подпись `Отчистить` на `Очистить`)))
- там же добавить кнопку `Запросить`
`blocks` и `crc` - Добавил. Но эти данные будут только для текшей прошивки

Подробнее о работе прошивки:
- Нода спрашивает CRC
- Пересчёт прошивки и складывается во временный кеш для ноды
- Во время прошивки данные берутся не общие а из кеша для конкретной ноды
Это предотвращает вариант когда нода ещё прошивается а вы поменяли прошивку в модуле. Нода продолжит шьется той прошивкой с которой начала

Очистить - исправлено (Спасибо большое)
Запросить презентацию есть на первой странице. Продублировал

Re: Модуль MySensor

Добавлено: Вс фев 05, 2017 1:44 am
ipz
Иван, 'blocks` было бы удобней видеть в шеснадцатиричном виде. Нода, ведь, когда договаривается пишет в HEX. (в интерфейсе, кстати, написано `bloks` а не `blocks`)))

Возможно риторический вопрос:
можно рассчитывать, что firmware version, firmware type не будут проверяться\фильтроваться при запросе прошивки?
(сейчас не проверяются)

Код: Выделить всё

                                // Type
                                $CType = substr ( $val, 0, 4 );
                                $CVer = substr ( $val, 4, 4 );
                                ...

                                // Test version
/*
                                if (($CVer != "0100") || ($CVer != "01FF") || ($CVer != "FFFF")){
                                        echo date("Y-m-d H:i:s")." Unknow boot version $NId - $CVer\n";
                                        return;
                                }
*/
 
Не хочется бутлоадеры обратно переделывать)))

Re: Модуль MySensor

Добавлено: Пн фев 13, 2017 1:13 am
ipz
Всплыла новая напасть. Однажды случайно заметил, что в истории событий модуля проходят сообщения 10 минутной (!) давности. Отправил ноде сообщение о перезагрузке, она перезагрузилась, а презентация прошла через 10 минут. Потом были еще поводы обратить внимание на задержку.

При этом сеть сенсоров работает. Между собой ноды нормально общаются. Жизнь кипит. Датчики движения срабатывают. Свет включается. С пультов ноды управляются. А в истории событий все как-то, мягко говоря, тухло... Соответственно в MDM отражается картинка непонятно какой давности.

Сделал тестовую ноду, которой отправляю из MDM текущее время в секундах. Нода отправляет его назад. При получении в МДМ вычисляю задержку:
Как вам задержка в 1000 секунд?SPOILER_SHOW
Delays.jpg
Delays.jpg (11.96 КБ) 10522 просмотра
В 20:00 я рестартанул МДМ. А так я видел и значение в 4000 секунд)))
Как мониторить и отловить проблему теперь понятно.
Не понятно как ее решить.

Load average, %Cpu(s) в выводе top, проценты c разбивкой по процессам ничего критичного не выявили. Малина трудится и, в целом, справляется. Настроил ежеминутную запись. Еще помониторю.

Всего в сети 12 нод, которые с разной степенью назойливости вещают в эфир.
В среднем, в истории событий проходит 20-25 сообщений в обе стороны в минуту. При OTA количество сообщений у хорошей ноды доходит до 1000-1500, так что это даже не нагрузка на сеть.

К модулю MySensor вопросов нет. Если не считать, что есть подозрение на увеличение времени чтения сокета TCP. Сокет не отваливается, но начинает жутко тормозить...
Кстати, одновременно с появлением задержки в чтении сокета Mysensor отваливается и сервер Websocket'ов основной страницы (он отваливается совсем)

Спинным мозгом чувствую, что проблема в Rpi3, а где - не чувствую...
Может кто посоветует?

Re: Модуль MySensor

Добавлено: Вт фев 14, 2017 7:12 am
Ivan
ipz писал(а):Всплыла новая напасть. Однажды случайно заметил, что в истории событий модуля проходят сообщения 10 минутной (!) давности. Отправил ноде сообщение о перезагрузке, она перезагрузилась, а презентация прошла через 10 минут. Потом были еще поводы обратить внимание на задержку.
Уже писалось не однократно. Проблема в накоплении задержки WebSocket

Как отключить WebSocket:
В config.php добавляем строчку Define('DISABLE_WEBSOCKETS', 1);
И перегружаем систему