ESP8266
Модератор: immortal
-
- Сообщения: 7
- Зарегистрирован: Сб мар 12, 2016 9:24 am
- Благодарил (а): 1 раз
- Поблагодарили: 0
Re: ESP8266
Спасибо за ответ! Разобрался! Получилось у меня вот таким способом : addClassObject('ESP8266',$params['hostname']);
-
- Сообщения: 146
- Зарегистрирован: Вт апр 12, 2016 12:19 am
- Благодарил (а): 18 раз
- Поблагодарили: 27 раз
Re: ESP8266
Для выключателей использую метод switch вместо on и off.
Только в нем не использую проверку состояния гпио на модуле и затем его смену, а посылаю команду, которая просто инвертирует его... вместо st=1 или st=0 на прошивке от Макса можно использовать st=2. Мне так удобнее, но если опытные жильцы этого форума укажут на недостатки такого метода буду признателен.
Собственно, для наглядности выложу целый метод для гпио 14 switch_14
Методы прописываю для класса, и после привязки элемента сцены к обьекту, выражение ".$this->getProperty("wanip")." позволяет не заботиться об ip адресах и кнопки будут работать даже тогда, когда адрес ESP8266 изменится.
Только в нем не использую проверку состояния гпио на модуле и затем его смену, а посылаю команду, которая просто инвертирует его... вместо st=1 или st=0 на прошивке от Макса можно использовать st=2. Мне так удобнее, но если опытные жильцы этого форума укажут на недостатки такого метода буду признателен.
Собственно, для наглядности выложу целый метод для гпио 14 switch_14
СпойлерПоказать
$cmdUrl ="http://".$this->getProperty("wanip")."/gpio?st=2&pin=14";
getURL($cmdUrl,0);
getURL($cmdUrl,0);
-
- Сообщения: 146
- Зарегистрирован: Вт апр 12, 2016 12:19 am
- Благодарил (а): 18 раз
- Поблагодарили: 27 раз
Re: ESP8266
Спасибо за совет и за прошивку)) тоже пользуюсь аналогичным способом, теперь гораздо удобнее создавать кнопки и индикаторы для комнат привязывая их к модулям по их названиям а не по непонятным цифрам. Хотя idesp уникален, а hostname может и повторится и вызвать путаницу...MaksMS82 писал(а):Как я понял можно использовать имя модуля,
вместо $idesp использовать везде $hostname
addClassObject('ESP8266',$hostname); //Создаёт класс заданного имени дочерним от ParentClass
-
- Сообщения: 11
- Зарегистрирован: Вт апр 26, 2016 11:14 am
- Благодарил (а): 1 раз
- Поблагодарили: 0
Re: ESP8266
Приветствую, требуется помощь.
Пробую сделать управление светом, на плату esp12 (прошивка homes-smart) подключено 2 реле - одно управление (gpio4 input и gpio4 output изменяют состояние реле), второе состояние лампы (gpio5 input 0 выкл, 1 вкл)
Пытаюсь завести по предложенным тут кодам, но не получается(
if (($this->getProperty("gpiout4")) =="0")
{
getURL('http://192.168.0.106/gpiout?st=1&pin=4&flash=1', 0);
} else if (($this->getProperty("gpiout4")) =="1")
{
getURL('http://192.168.0.106/gpio?st=1&pin=4&flash=1', 0);
}
Какие бы комбинации не пробовал не работает... Выдает ошибку
Fatal error: Call to undefined method scripts::getProperty() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
Пробую сделать управление светом, на плату esp12 (прошивка homes-smart) подключено 2 реле - одно управление (gpio4 input и gpio4 output изменяют состояние реле), второе состояние лампы (gpio5 input 0 выкл, 1 вкл)
Пытаюсь завести по предложенным тут кодам, но не получается(
if (($this->getProperty("gpiout4")) =="0")
{
getURL('http://192.168.0.106/gpiout?st=1&pin=4&flash=1', 0);
} else if (($this->getProperty("gpiout4")) =="1")
{
getURL('http://192.168.0.106/gpio?st=1&pin=4&flash=1', 0);
}
Какие бы комбинации не пробовал не работает... Выдает ошибку
Fatal error: Call to undefined method scripts::getProperty() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
-
- Сообщения: 11
- Зарегистрирован: Вт апр 26, 2016 11:14 am
- Благодарил (а): 1 раз
- Поблагодарили: 0
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: ESP8266
Внутри скрипта вы не можете использовать $this->getProperty() и $this->setProperty() эта конструкция работает только внутри метода. В скрипте можете использовать альтернативу в виде getGlobal('object.property')kastortroy писал(а):Какие бы комбинации не пробовал не работает... Выдает ошибку
Fatal error: Call to undefined method scripts::getProperty() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 11
- Зарегистрирован: Вт апр 26, 2016 11:14 am
- Благодарил (а): 1 раз
- Поблагодарили: 0
Re: ESP8266
К сожалению выдало аналогичную ошибку
Fatal error: Call to undefined method scripts::getGlobal() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
Fatal error: Call to undefined method scripts::getGlobal() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: ESP8266
без $this-> просто getGlobalkastortroy писал(а):К сожалению выдало аналогичную ошибку
Fatal error: Call to undefined method scripts::getGlobal() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1

- Рейтинг: 1.16%
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 11
- Зарегистрирован: Вт апр 26, 2016 11:14 am
- Благодарил (а): 1 раз
- Поблагодарили: 0
Re: ESP8266
Спасибо, без $this-> скрип заработал, но ничего не происходит...
Скорее всего из за того что у меня gpio4 стоит на out... Дома переставлю на in и попробую
А удаленно это сделать нельзя?
Скорее всего из за того что у меня gpio4 стоит на out... Дома переставлю на in и попробую
А удаленно это сделать нельзя?