ESP8266

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

Aleks130699
Сообщения: 103
Зарегистрирован: Чт ноя 19, 2015 5:33 pm
Благодарил (а): 7 раз
Поблагодарили: 8 раз

Re: ESP8266

Сообщение Aleks130699 » Вс фев 21, 2016 1:23 pm

Aleks130699 писал(а):Привет всем.Не могу понять как отправлять ir команды с прошивкой от хоме смарт,все подключил отправляю команду светодиод мигает, а команда не отправляется.пробовал брать код со страници самой esp /debug (IR code 551489775 (0x20DF10EF).)
Так что не кто не поможет разобраться с этим вопросом...?
karlismoto
Сообщения: 39
Зарегистрирован: Чт окт 16, 2014 11:12 pm
Благодарил (а): 5 раз
Поблагодарили: 0
Контактная информация:

Re: ESP8266

Сообщение karlismoto » Вт фев 23, 2016 10:32 am

Добрый день!
пожалуйста даватье совет какую модель купить ( Я без опыта с этим модулем)
1.обычный модулю - пример http://www.ebay.com/itm/1PCS-ESP8266-Se ... SwrklVAO4O

2. или, лучше такие http://www.ebay.com/itm/NodeMcu-Lua-CH3 ... 1954957028

возможно кто-то еще лучший вариант?
Windows7 + MajorDoMo.
HP laptop, MegaD modules, Arduino Megas, DS18B20, DHT-11 and other sensors.
DSC Alarm + envisalink 3
Connect
vasyaka666
Сообщения: 23
Зарегистрирован: Вт фев 23, 2016 11:05 am
Благодарил (а): 0
Поблагодарили: 0

Re: ESP8266

Сообщение vasyaka666 » Вт фев 23, 2016 11:17 am

Народ,помогите разобраться?!
Вроде понял принцип работы всех этих сервисов. Вроде все делаю по инструкциям, но не могу понять почему не работает.
Есть модуль Esp8266. прошивка от Home-smart. по айпиадресу к нему подключаюсь. данные датчиков вижу. ставлю галочку на отправку данных в мажору, прописываю адрес пк на котором она крутится. с другого пк,телефона к этому пк (на котором мажора) по 80 порту подключаюсь - все ок.
создаю сценарий espdata c кодом
СпойлерПоказать
$bmpp=$params['bmpp']; //Данные с датчика BMP (давление)
$bmpt=$params['bmpt']; //Данные с датчика BMP (температура)
$dhth1=$params['dhth1']; //Данные с первого датчика DHT (влажность)
$dhth2=$params['dhth2']; //Данные со второго датчика DHT (влажность)
$dhtt1=$params['dhtt1']; //Данные с первого датчика DHT (температура)
$dhtt2=$params['dhtt2']; //Данные со второго датчика DHT (температура)
$dsw1=$params['dsw1']; //Данные с датчика DS18B20 №1
$dsw2=$params['dsw2']; //Данные с датчика DS18B20 №2
$dsw3=$params['dsw3']; //Данные с датчика DS18B20 №3
$dsw4=$params['dsw4']; //Данные с датчика DS18B20 №4
$dsw5=$params['dsw5']; //Данные с датчика DS18B20 №5
$freemem=$params['freemem']; //Объем свободной памяти модуля
$hostname=$params['$hostname']; //Имя модуля
$idesp=$params['idesp']; //ID устройства
$light=$params['light']; //Данные с датчика BH1750
$uptime=$params['uptime']; //Время непрерывной работы модуля
$vdd=$params['vdd']; //Напряжение на модуле
$ver=$params['ver']; //Версия прошивки
if ($idesp=="") { return; } //Если ID устройства отсутствует, то перестаем отрабатывать сценарий
addClass('ESP8266'); //Создаем класс ESP8266
addClassObject('ESP8266',$idesp); //Создаёт класс заданного имени дочерним от ParentClass
//say("yyyyyyyyyyyyy");
//Распихиваем всё по свойствам. Если полученное значение пустое, то свойство не записываем
if ($bmpp!="") { sg(($idesp.".bmpp"),$bmpp); }
if ($bmpt!="") { sg(($idesp.".bmpt"),$bmpt); }

if ($dhth1!="") { sg(($idesp.".dhth1"),$dhth1); }
if ($dhth2!="") { sg(($idesp.".dhth2"),$dhth2); }
if ($dhtt1!="") { sg(($idesp.".dhtt1"),$dhtt1); }
if ($dhtt2!="") { sg(($idesp.".dhtt2"),$dhtt2); }
if ($dsw1!="") { sg(($idesp.".dsw1"),$dsw1); }
if ($dsw2!="") { sg(($idesp.".dsw2"),$dsw2); }
if ($dsw3!="") { sg(($idesp.".dsw3"),$dsw3); }
if ($dsw4!="") { sg(($idesp.".dsw4"),$dsw4); }
if ($dsw5!="") { sg(($idesp.".dsw5"),$dsw5); }
if ($freemem!="") { sg(($idesp.".freemem"),$freemem); }
if ($hostname!="") { sg(($idesp.".hostname"),$hostname); }
if ($light!="") { sg(($idesp.".light"),$light); }
if ($uptime!="") { sg(($idesp.".uptime"),$uptime); }
if ($vdd!="") { sg(($idesp.".vdd"),$vdd); }
if ($ver!="") { sg(($idesp.".ver"),$ver); }
если я правильно понял, то в течении 600 секунд в мажоре в объектах должен появится класс с именем Esp8266, в нем объект с полями свойств,в которых будут данные с датчиков?
Но в классах ничего не создается.
Должен ли данный скрипт запускаться без ошибок в ручную, из мажоры? при попытке его запуска получаю вот это:
СпойлерПоказать
Warning: Illegal string offset 'bmpp' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 1

Warning: Illegal string offset 'bmpt' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 2

Warning: Illegal string offset 'dhth1' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 3

Warning: Illegal string offset 'dhth2' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 4

Warning: Illegal string offset 'dhtt1' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 5

Warning: Illegal string offset 'dhtt2' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 6

Warning: Illegal string offset 'dsw1' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 7

Warning: Illegal string offset 'dsw2' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 8

Warning: Illegal string offset 'dsw3' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 9

Warning: Illegal string offset 'dsw4' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 10

Warning: Illegal string offset 'dsw5' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 11

Warning: Illegal string offset 'freemem' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 12

Warning: Illegal string offset '$hostname' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 13

Warning: Illegal string offset 'idesp' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 14

Warning: Illegal string offset 'light' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 15

Warning: Illegal string offset 'uptime' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 16

Warning: Illegal string offset 'vdd' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 17

Warning: Illegal string offset 'ver' in C:\_majordomo\htdocs\modules\scripts\scripts.class.php(139) : eval()'d code on line 18
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: ESP8266

Сообщение sergejey » Вт фев 23, 2016 12:12 pm

Попробуйте в начале кода скрипта добавить:

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

DebMes("ESP data: ".serialize($params)); 
И тогда в разделе XRay->Debug сможете увидеть приходят ли какие-то запросы от ESP.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
vasyaka666
Сообщения: 23
Зарегистрирован: Вт фев 23, 2016 11:05 am
Благодарил (а): 0
Поблагодарили: 0

Re: ESP8266

Сообщение vasyaka666 » Вт фев 23, 2016 12:56 pm

А что там должно быть при наличии активности от esp8266?
Ничего связанного с словом ESP не появляется в течении 10 минут.
При ручном запуске скрипта,переходе по ссылке http://192.168.0.102:80/objects/?script=espdata
в логах появляются такие записи:
17:44:51 DEBUG [root]: ESP data: s:0:""; (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:37:00 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:36:27 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:32:24 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: ESP8266

Сообщение sergejey » Вт фев 23, 2016 1:03 pm

vasyaka666 писал(а):А что там должно быть при наличии активности от esp8266?
Ничего связанного с словом ESP не появляется в течении 10 минут.
При ручном запуске скрипта,переходе по ссылке http://192.168.0.102:80/objects/?script=espdata
в логах появляются такие записи:
17:44:51 DEBUG [root]: ESP data: s:0:""; (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:37:00 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:36:27 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
17:32:24 DEBUG [root]: ESP data: a:1:{s:6:"script";s:7:"espdata";} (at C:\_majordomo\htdocs\lib\general.class.php:547)
Значит ESP не присылает данные, ищите проблему с настройками ESP.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
vasyaka666
Сообщения: 23
Зарегистрирован: Вт фев 23, 2016 11:05 am
Благодарил (а): 0
Поблагодарили: 0

Re: ESP8266

Сообщение vasyaka666 » Вт фев 23, 2016 1:24 pm

мда..спасибо! Только вот там нет никаких настроек по этому поводу. только галочка и поле для айпиадреса....на народный мониторинг данные отправляются,все ок. Теперь даже не знаю где искать проблему...
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: ESP8266

Сообщение sergejey » Вт фев 23, 2016 1:28 pm

vasyaka666 писал(а):мда..спасибо! Только вот там нет никаких настроек по этому поводу. только галочка и поле для айпиадреса....на народный мониторинг данные отправляются,все ок. Теперь даже не знаю где искать проблему...
Ещё вариант -- в файле /objects/index.php после строчки

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

include_once("./lib/loader.php"); 
добавить

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

DebMes("/objects/: ".serialize($_REQUEST)); 
Тогда в тот же дебаг будут сыпаться все обращения к /objects/ и если идёт обращение к скрипту с другим именем (мало ли), то вы это увидите.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
vasyaka666
Сообщения: 23
Зарегистрирован: Вт фев 23, 2016 11:05 am
Благодарил (а): 0
Поблагодарили: 0

Re: ESP8266

Сообщение vasyaka666 » Вт фев 23, 2016 5:04 pm

Вообщем у меня все заработало. только не знаю почему).код не менял, в настройках модуля выключил отправку на народный мониторинг, перезапустил мажору на всякий случай. через минут 20 все заработало...после этого включил снова отправку на народный мониторинг. все ок. ничего не поломалось.
Aleks130699
Сообщения: 103
Зарегистрирован: Чт ноя 19, 2015 5:33 pm
Благодарил (а): 7 раз
Поблагодарили: 8 раз

Re: ESP8266

Сообщение Aleks130699 » Ср фев 24, 2016 10:24 am

А мне хоть кто нибудь ответит на счет отправки ir команд.Хочу управлять телевизором без всякого лишнего оборудования.
Ответить