ESP8266

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

Модератор: immortal

Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: ESP8266

Сообщение Kod.Begemot » Вт апр 28, 2015 8:58 pm

skysilver писал(а):Kod.Begemot, кодом не поделитесь? Думаю, многим будет полезно. У меня самого пара штук esp ждет своей очереди. :)
Поделюсь конечно, я не жадный :)
Только это тема довольно обширная, и начал я её на дружественном форуме... Думаю никто не будет против ссылки:
http://www.ab-log.ru/forum/viewtopic.php?f=1&t=795
Там и выложу код.
Код пока "ужасный", но работает. Его ещё причесывать и причесывать, пока что это ещё альфа версия, отладочная.
Ещё нет реакции на кнопки, нет работы с EEPROM, а следовательно и нет режима обучения высоте окна, нет обратной связи с сервером.
За это сообщение автора Kod.Begemot поблагодарил:
skysilver (Вт апр 28, 2015 9:06 pm)
Рейтинг: 1.16%
Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: ESP8266

Сообщение Kod.Begemot » Вт апр 28, 2015 9:07 pm

Cyoko
Попробуйте другую (на другом чипе) точку доступа, будет понятно "откуда ноги растут".
ignat99
Сообщения: 206
Зарегистрирован: Сб дек 21, 2013 9:21 pm
Откуда: Spain
Благодарил (а): 1 раз
Поблагодарили: 22 раза

Re: ESP8266

Сообщение ignat99 » Вт апр 28, 2015 9:14 pm

Kod.Begemot писал(а):Cyoko
Попробуйте другую (на другом чипе) точку доступа, будет понятно "откуда ноги растут".
Гадать можно долго. Может блок питания. Может шумы. Может конфигурация роутера.
Вся отладка требует знаний (роутер свой проверенный с OpenWRT), блок питания, который работает и т.д.
А желание въехать в рай за 3$ вполне понятно :-)
Аватара пользователя
Kod.Begemot
Сообщения: 358
Зарегистрирован: Чт июн 20, 2013 5:53 pm
Благодарил (а): 32 раза
Поблагодарили: 42 раза

Re: ESP8266

Сообщение Kod.Begemot » Вт апр 28, 2015 9:18 pm

Я просто тоже у себя долго искал проблему, уже и осциллом тыкал и форумы читал...
а потом переключился на старый асус вместо новомодного тплинка, и всё заколосилось!
Понятное дело - надо бы знать что тут не так... И я хочу разобраться, тплинк уже на днях будет перепрошит в dd или open-wrt... Но на лицо факт "избирательной" работоспособности.
Кстати на homes-smart тоже об этом писали, потому и попробовал сам. Не дело это конечно, точку под девайс подбирать...
За это сообщение автора Kod.Begemot поблагодарил:
Cyoko (Вт апр 28, 2015 9:24 pm)
Рейтинг: 1.16%
Cyoko
Сообщения: 91
Зарегистрирован: Ср июл 09, 2014 1:00 pm
Благодарил (а): 12 раз
Поблагодарили: 0

Re: ESP8266

Сообщение Cyoko » Вт апр 28, 2015 9:52 pm

специально сейчас посмотрел.... Обновил страничку homesmarta- обновилась. Выключил люминисцентный светильник, подключенный к тому же тройнику что и зарядка 5 вольтовая от которой все питается, обновил страничку - не обновилась. Совпало или как то влияет не знаю, завтра может еще попробую...
Cyoko
Сообщения: 91
Зарегистрирован: Ср июл 09, 2014 1:00 pm
Благодарил (а): 12 раз
Поблагодарили: 0

Re: ESP8266

Сообщение Cyoko » Вт апр 28, 2015 9:55 pm

А можно ресетить esp через сценарий Алисы ? Тогда даже если раз в сутки будет падать не страшно :)
ignat99
Сообщения: 206
Зарегистрирован: Сб дек 21, 2013 9:21 pm
Откуда: Spain
Благодарил (а): 1 раз
Поблагодарили: 22 раза

Re: ESP8266

Сообщение ignat99 » Ср апр 29, 2015 12:39 am

Cyoko писал(а):А можно ресетить esp через сценарий Алисы ? Тогда даже если раз в сутки будет падать не страшно :)
Это зависит от прошивки. Или от внешнего реле, да хоть от сенсора движения за 9 евро перегружайтесь. Всё зависит от вас.
Cyoko
Сообщения: 91
Зарегистрирован: Ср июл 09, 2014 1:00 pm
Благодарил (а): 12 раз
Поблагодарили: 0

Re: ESP8266

Сообщение Cyoko » Ср апр 29, 2015 12:23 pm

Очередной тест :)
esp8266 прошитая NODmcu. К GPIO2 подключен через резистор светодиод. Запитано от ардуины меги.
Что получилось : вкл/выкл светодиод через веб морду, вкл/выкл по кнопке в меню управления.
С утра тестирую на стабильность, надеюсь до вечера не отвалится.....

Вот код прошивки:

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

wifi.setmode(wifi.STATION)
wifi.sta.config("ssid","пароль")
print(wifi.sta.getip())
led1 = 3
led2 = 4
gpio.mode(led1, gpio.OUTPUT)
gpio.mode(led2, gpio.OUTPUT)
srv=net.createServer(net.TCP)
srv:listen(80,function(conn)
    conn:on("receive", function(client,request)
        local buf = "";
        local _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP");
        if(method == nil)then
            _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP");
        end
        local _GET = {}
        if (vars ~= nil)then
            for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do
                _GET[k] = v
            end
        end
        buf = buf.."<h1> ESP8266 Web Server</h1>";
        buf = buf.."<p>GPIO0 <a href=\"?pin=ON1\"><button>ON</button></a>&nbsp;<a href=\"?pin=OFF1\"><button>OFF</button></a></p>";
        buf = buf.."<p>GPIO2 <a href=\"?pin=ON2\"><button>ON</button></a>&nbsp;<a href=\"?pin=OFF2\"><button>OFF</button></a></p>";
        local _on,_off = "",""
        if(_GET.pin == "ON1")then
              gpio.write(led1, gpio.HIGH);
        elseif(_GET.pin == "OFF1")then
              gpio.write(led1, gpio.LOW);
        elseif(_GET.pin == "ON2")then
              gpio.write(led2, gpio.HIGH);
        elseif(_GET.pin == "OFF2")then
              gpio.write(led2, gpio.LOW);
        end
        client:send(buf);
        client:close();
        collectgarbage();
    end)
end) 
Кнопку привязал к объекту со свойством Value, и ввел метод perekluchenie

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

$Value=$this->getProperty("Value");
if ($Value) {
 $this->callMethod('turnOn');
} else {
 $this->callMethod('turnOff');
}
я так понял он просто по очереди дергает другие методы....
В методах turn* вот такой код :

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

$cmdUrl = "http://192.168.1.132/?pin=OFF2"; getURL($cmdUrl,0);
$this->setProperty("Value",0);
Все это брал из других примеров, поэтому походу много лишнего , а то и вообще подход не правильный. Поэтому нужна помощь :)

Во первых , как мне кажется , не нужна веб морда. Ведь эти кнопочки в Алисе будут, можно и отдельную сцену сделать со светом , да и голосовые команды.... Чтоб это сделать надо просто с local до if все удалить ? :)
Второе, это хотелось бы чтоб esp при каждом изменении значения отсылала новое значение Алисе. Я так понимаю это где условия надо добавить строчку отсылки....Как она точно должна выглядеть ? http://192.168.0.17/objects/?object=esp ... =Value&v=0 Ну типа если выключили , то 0 , если включили то 1. Так ?

Это что касается прошивки :)
Вопрос по организации на Алисе, я получается организовал через методы объекта. Правильно ли это ? Вот думаю может надо через сценарии ? Шаблон для запуска метода получилось создать в blockly , можно как то в нем посмотреть код , который получился ?

Вообщем разбираюсь дальше :)
Cyoko
Сообщения: 91
Зарегистрирован: Ср июл 09, 2014 1:00 pm
Благодарил (а): 12 раз
Поблагодарили: 0

Re: ESP8266

Сообщение Cyoko » Ср апр 29, 2015 4:16 pm

Во как , уже прогресс :)
https://youtu.be/_yGKF8l460U

кстати , если в приложении для андроида выбрать активацию по фразе, то управление голосом работает не один раз, как если активировать по кнопке. А то я по началу каждый раз закрывал и открывал приложение :)
ignat99
Сообщения: 206
Зарегистрирован: Сб дек 21, 2013 9:21 pm
Откуда: Spain
Благодарил (а): 1 раз
Поблагодарили: 22 раза

Re: ESP8266

Сообщение ignat99 » Ср апр 29, 2015 11:12 pm

Cyoko писал(а):То есть для не электронщика проще купить вот такой выключатель, который имеет неплохой дизайн и может работать как физически(тыкать на него пальцем), так и управляться с помощью Алисы. http://www.broadlink.com.ua/#!tc/cgpt
Кстати кто-то пробовал этот выключатель подключать напрямую к Алисе , а не через http://www.broadlink.com.ua/#!rm-serie/cs4k
Нашёл вам правильный выключатель за 37 евро c хорошим дизайном и настоящим WiFi:
http://smartliving.ru/forum/viewtopic.p ... 332#p21332

Купить можно тут:
http://ru.aliexpress.com/item/USR-WSA-F ... 28804.html
За это сообщение автора ignat99 поблагодарил:
Cyoko (Чт апр 30, 2015 7:15 am)
Рейтинг: 1.16%
Ответить