Arduino Mega Server

Модератор: Alex

Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург

Re: Arduino Mega Server

Сообщение nick7zmail »

Чет упустил часть беседы...
serghei писал(а): Вс апр 15, 2018 1:05 pm
Для начала AMS вообще должен знать ( и ведь ЗНАЕТ в сериале !!) , что сервер NTP не ответил. Дальше хочется на Даш-панели в модулях системы подсветить красным значек NTP , если что то отвалилось. А чтобы это увидеть , включить зуммер .

Как реально это сделать я не представляю.

И уж если реально работают куча AMS в домашней системе - то должен быть и личный NTP сервер. Вариант с дистрибутивом - запустил посмотреть что это такое , я уже не рассматриваю.

А в догонку вопрос. А что вчера показывала моя Дуя и откуда она брала время до перезагрузки , если NTP отвалился ???? Или это чюдеса браузера ???
Чтобы подсветить значек модуля - достаточно в коде modulRtc = MODUL_DISABLE;, значек загорится каким-то оливковым цветом...ну типа когда модуль скомпилен, но не работает должным образом. Когда всё нормально - вернуть modulRtc = MODUL_ENABLE;

Для периодической синхронизации достаточно создать таймер (смотрите все места где есть, к примеру timer5m, и добавляйте, например, timer1d по аналогии...только количество секунд поменять надо. И по этому таймеру запускать функцию rtcSync() (про это вроде недавно отписывался, что работает).
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Беседа про индикацию момента отвала синхронизации времени. Как подсветить модуль установленный или не скомпиленый я вижу.
Хочется подсветить как партнер подсвечивается на плате RobotDyn. Каждые 4 секунды один сервер передает другому свое состояние ( посылает 1 , если он умер - идет 0 ) . Второй сервер это видит и каждый раз запускает свой таймер на 8 секунд. Соответственно , если за 8 секунд не пришла 1 , второй сервер переключает подсветку на красную.
Тоже самое и хочется с синхронизацией. допустим раз в какое то время посылаем запрос синхронизации и если с 3 попыток не получили ответ - меняем цвет модуля на аларм.
Зачем это нужно. А чтобы не нарваться на недавнюю ситуацию с отвалом NTP. По уму надо делать свой NTP сервер , а время брать хоть с часов.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург

Re: Arduino Mega Server

Сообщение nick7zmail »

Ну я как бы это и объяснил вроде вкратце...
У модуля есть 3 состояния - не скомпилирован (серая подсветка), активен (синяя подсветка) и не активен (какая-то оливковая подсветка). 3е состояние почти нигде не используется. Я вам предлагаю его использовать по назначению...если вам так больше нравится - можете подсветку на красную сменить)))Но в целом суть такая.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Суть ясна. Реализовываю ооочень долго...
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург

Re: Arduino Mega Server

Сообщение nick7zmail »

А что там реализовывать то?))
1) делаем периодический запуск rtcSync() в основной функции loop()
(допустим раз в 5 минут, чтоб новые таймеры пока не городить...потом, как и говорил, новый таймер на сутки можно создать)

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

    if (cycle5m) {
      rtcSync();
    }
2) в самой rtcSync добавляем обработчики

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

void rtcSync() {
  setSyncProvider(getNtpTime);
  Serialprint("...getNtpTime... \n");
  if (timeStatus() != timeNotSet) {
    time_t t = getNtpTime();
     if (t) {
      Serialprint("...set!... \n");
      modulRtc = MODUL_ENABLE;
      RTC.set(t);    
     } else {
    	 modulRtc = MODUL_DISABLE;
     }
     setSyncProvider(RTC.get);  
  }
}
3) Проверяем как работает подсветочка (я не проверял, но должно быть ок)
4) Добавляем писк зуммера, или что вы там хотели после modulRtc = MODUL_DISABLE; для предупреждения...можете так же добавить несколько попыток getNtpTime перед тем как в disable переключать
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Пищалка стоит , таймеры на год вперёд расписаны. Буду пробовать. Спасибо!.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
svetozar161
Сообщения: 72
Зарегистрирован: Пт янв 13, 2017 11:48 pm

Re: Arduino Mega Server

Сообщение svetozar161 »

Здравствуйте. Купил плату Mega2560+W5100 шилд. Скачал дистрибутив AMS на карту, распаковал файлы. Карта Kingston 2 Gb, класс непонятный. Подал питание, плата не пингуется. В общем мучался долго, светодиоды активности моргают линк поднимается, но IP адрес роутер не назначает. Оказалось, что стоят не те сопротивления на плате позади RJ45. Стоит резистивная сборка на 510 ом, а нужно на 51 ом. Перепаял и все заработало! IP адрес роутер назначает. Так что если кто будет брать такой шилд, знайте о косяке. Но теперь проблема другая. Нет интерфейса. Плата пингуется, но по адресу 192.168.1.37 не заходит на интерфейс, впрочем как и не заходит по другим адресам прописанным в скетче например. Вот листинг порта.

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

Arduino Mega Server (0.17) started...
Module Hardware...
 Controller:      Arduino Mega
 Total memory:    8192
 Free memory:     1930 (23%)
 Network adapter: Ethernet Shield
============
Module EEPROM...
 Name: Arduino Mega Se
 Address: 138
============
Module Ethernet...
 MAC: 5C CF 7F 12 2F 30
 IP: 192.168.1.37
============
Module SD...
 SD init... OK
 index.htm... found
 Check..............
 Files: 145
 Size:  1974200
============
Module SD Info... 
 SD type:    SD2
 Filesystem: FAT32
 Cluster:    4096
 SD size:    1961 MB
============
Module SD Files... started
Module NTP...
 Local port: 123
============
Module Time...
 NTP sync...
 Transmit NTP request (85.114.26.194:123) Receive NTP response
============
2018-05-18 22:09:21 Module Server... started
2018-05-18 22:09:21 Module Upload... started
2018-05-18 22:09:21 Module Send...
2018-05-18 22:09:21 ============
2018-05-18 22:09:21 Module MajorDoMo...
2018-05-18 22:09:21  Connect to MajorDoMo... OK
2018-05-18 22:09:21 ============
2018-05-18 22:09:21 Module Laurent...
2018-05-18 22:09:21  Connect to Laurent... failed
2018-05-18 22:09:25 Error sending command
2018-05-18 22:09:27 Error sending command
2018-05-18 22:09:27 ============
2018-05-18 22:09:27 Module Temperature...
2018-05-18 22:09:27  Parasite power OFF
2018-05-18 22:09:27  Found 0 devices
2018-05-18 22:09:27  #0: 0 0 0 0 0 0 0 temp1
2018-05-18 22:09:27  #1: 0 0 0 0 0 0 0 temp2
2018-05-18 22:09:27  #2: 0 0 0 0 0 0 0 temp2
2018-05-18 22:09:27 ============
2018-05-18 22:09:27 Module Contacts... started
2018-05-18 22:09:27 Module PIR... started
2018-05-18 22:09:28 Module Electro... started
2018-05-18 22:09:28 Module Keys... started
2018-05-18 22:09:28 Module nooLite... started
2018-05-18 22:09:28 Module MR1132... started
2018-05-18 22:09:28 Module nRF24...
2018-05-18 22:09:28  Base Receiving
2018-05-18 22:09:28 ============
2018-05-18 22:09:28 Module Abstract... started
2018-05-18 22:09:28 GLOBAL Init DONE (10s)

2018-05-18 22:09:28 AMS WORK 1896 (23%)
2018-05-18 22:09:28 cont1: Open
2018-05-18 22:09:28 cont2: Norm
Что может быть, кто что подскажет. Спасибо.
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Странно.... Время синхронизируется - значит сеть настроена правильно. Хотя уточню - точно первая подсеть ? Компьютер то же в этой сети ?
Как вариант - такое бывает , когда AMS загружен на 100 %. Отключите все модули ( особенно электро , пиры, лаурент и NRF24 ). Должно полегчать.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
svetozar161
Сообщения: 72
Зарегистрирован: Пт янв 13, 2017 11:48 pm

Re: Arduino Mega Server

Сообщение svetozar161 »

Беда вообще произошла странная. Вдруг ни с того ни с сего отвалился W5100. Сброс не помогает линк не светится. Потом выдернул шилд, вставил, все появилось - пять минут поработал и снова пропал из сети. Где-то плохой контакт что ли...Короче придется заказать наверное 28J60 и перейти на MegaD. Эх...
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: Arduino Mega Server

Сообщение serghei »

Уж если Китайцы накосячили с резисторами , то нет никакой уверенности , что все остальное правильное. Оборудование должно быть правильным. Я вот так 6 версий плат ESP32 перепробовал , пока не нашел одну адекватную.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
Ответить