Страница 3 из 5

Re: Об MQTT(для svetozar161)

Добавлено: Вт сен 11, 2018 9:32 pm
Alex
Судя по логу, система у вас запустилась и должна работать. Почему не работает я сказать затрудняюсь. Могу предположить что дело может быть в каких-то проблемах с сетью, неисправном сетевом шилде или неправильно подключённом модуле nRF24L01. Но это только предположения, возможно дело и не в этом.

Для начала попробуйте попинговать IP адрес.

Re: Об MQTT(для svetozar161)

Добавлено: Вт сен 11, 2018 9:39 pm
svetozar161
Пинг проходит, Nrf физически не установлен
2018-09-11_21-34-04.png
2018-09-11_21-34-04.png (11.81 КБ) 3117 просмотров

Re: Об MQTT(для svetozar161)

Добавлено: Вт сен 11, 2018 9:43 pm
Alex
Nrf физически не установлен
Отлично. А зачем он включен программно, если его нет физически?

Re: Об MQTT(для svetozar161)

Добавлено: Вт сен 11, 2018 10:05 pm
svetozar161
Отлично. А зачем он включен программно, если его нет физически?
Да блин, как-то тыкал все подряд от отчаяния))
з.ы.
Все заработало! Оказалось дело в кардридере. Сегодня как раз приехал второй, маленький, без чипа и питается напрямую 3.3в Так что кто будет заказывать берите этот - он точно работает. Итого имеем рабочий сервер на Меге+ быстрый LAN на W5500 и мини кардридер)) Спасибо создателю софта большое! Теперь осталось разобраться с чтением моих датчиков, посылкой состояния пинов AMS на мажордомо и термостатом для котла. Буду дальше курить мануалы))
Немного фото
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение
Изображение

Re: Об MQTT(для svetozar161)

Добавлено: Вт сен 11, 2018 10:10 pm
Alex
Теперь осталось разобраться с чтением моих датчиков, посылкой состояния пинов AMS на мажордомо и термостатом для котла.
Это к serghei, он у нас главный специалист по таким вопросам :)

Re: Об MQTT(для svetozar161)

Добавлено: Ср сен 12, 2018 12:26 am
serghei
Ох ребята , извините за задержку. Тестировали новый парсер для сенсоров от MySensors. Это чтобы АМС смог читать данные с множества нод без гемороя.
У меня все датчики запущены на Дуе. Для Меги тут выкладывали скетч для двух DHT.Завтра выложу свою версию со всеми наворотами.

Re: Об MQTT(для svetozar161)

Добавлено: Ср сен 12, 2018 12:38 am
svetozar161
Завтра выложу свою версию со всеми наворотами
Я уже говорил, что датчик у меня беспроводной, поэтому ваши скетчи мне особо не помогут)) Мне нужно понять, как сделать так, чтобы АМС принимал GET с температурой от датчика и дрыгал ногой, а потом просто отсылал на Мжд состояние ноги и принятую температуру. Пока вот так, потому что скоро уже зима, не хотелось бы котел гонять в ручном режиме.

Re: Об MQTT(для svetozar161)

Добавлено: Ср сен 12, 2018 1:02 am
serghei
Ну гет запросы из МД принимает модуль command. я с ним не работал. Но на форуме есть отличная тема от Владрагора.

Re: Об MQTT(для svetozar161)

Добавлено: Ср сен 12, 2018 3:18 am
alexsis_76
Ну гет запросы из МД принимает модуль command. я с ним не работал
указанный модуль не принимает гет запросы,он осуществляет только парсинг команд
/* ----------------------------------------
Function parseCommands(EthernetClient cl)
Parse network commands
------------------------------------------- */

void parseCommands(EthernetClient cl) {
int posBegin;
int posEnd;
int posParam;

if (request.indexOf(F("?")) >= 0) {
posBegin = request.indexOf(F("?")) + 1;
posEnd = request.indexOf(F("HTTP"));

if (request.indexOf(F("=")) >= 0) {
posParam = request.indexOf(F("="));
command = request.substring(posBegin, posParam);
parameter = request.substring(posParam + 1, posEnd - 1);
} else {
command = request.substring(posBegin, posEnd - 1);
parameter = "";
}

Serialprint("command: "); Serial.println(command);
Serialprint("parameter: "); Serial.println(parameter);

setKey();

#ifdef LEDS_FEATURE
setNightLed();
setColorLed();
#endif

// erase request
request = "";
} // if (url.indexOf(F("?")) >= 0)
} // parseCommands
вызывается отсьда
void serverWorks2(EthernetClient sclient)
в
String command;
String parameter;
будут команда и параметр
только она по моему умеет принимать только одну пару(уважаемый Alex, подскажите), там и приведен пример переключения светодиодиков
if (parameter.indexOf(F("white")) >= 0) {white (led1, 255);}
или
void setNightLed() {
if (command.indexOf(F("night")) >= 0) {
if (parameter.indexOf(F("1")) >= 0) {
modeLED = LED_EMPTY;
} else {
modeLED = LED_PIR;
}
}
если сервер слушает 80 порт то не важно откуда пришел запрос, устройство обязано на него ответить.
включите SERVER_FEATURE и смотрите в сериал, если все нормально то увидите
command: команда
parameter: параметр
temp=100
command: temp
parameter: 100

Re: Об MQTT(для svetozar161)

Добавлено: Ср сен 12, 2018 6:22 am
nick7zmail
А не проще ли Wifi-iot перепрошить на ещё один Амс, и дёргать когда вы хотите и какими хотите гет запросами?

Отправлено с моего Xperia XZ1 Compact через Tapatalk