Adminhs пишет:
shaman1010 пишет:
Либо еще вполне реализуемый вариант - сделать доступными все настройки через GET/POST запрос, а дальше - аналогично вышеоговоренному, создаем коммандный файл, пингуем, увидели ответ на пинг - пульнули GET/POST. Можно еще сократить - GET/POST строка на снятие/установку режима deepsleep. Сняли коммандой дипслип, идем в интерфейс и настраиваем модуль, не забыв отправить его опять в спячку.
shaman1010 , ... Третий вариант можете использовать хоть сейчас..
Не спорю, но нет описания используемого API (может не нашел?)
На сегодня только самостоятельно можно отследить, что отправляется.
Для отключения deepsleep нужно отправить:
http://<IP датчика>/configmain?deep=0&slen=2&st=6
Adminhs пишет:
shaman1010 пишет:
p.s. у меня DHT22 не успевает отдать свои значения, когда вместе с ним подключен BMP-180 + deepsleep. У всех так?
Про работу бмп + дхт проверю, но датчики не должны так реагировать, модуль отправляет не сразу,а спустя 5 секунд и потом еще через 5 секунд..
Повозился вчера немного, вот результат:
1) Если датчики подключены к "+" питания датчика, то проблем не возникает. (датчики когда-то проинициализировались, позже при запросе проснулись, отдали значение и опять дремлют)
2) Если датчики подключать к поднимающемуся GPIO (упрощенный вариант необходимого для автономного датчика), то:
а) при синхронном поднятии "питающего" GPIO - BMP810 не может обнаружиться (во время старта он очень прожорлив)? DHT22 - обнаруживается примерно секунд через 6-7 после получения модулем IP-адреса. Т.е. 4-5 секунд на получение адреса, плюс 5-7 сек, на получение данных от датчика, поскольку это его первое включение - то нужны тайминги именно первичного включения. итого 9...12 сек ДО получения данных, т.е. в установленные 10 сек для всего, включая отправку не вписываемся.
б) BMP180 при подобном подключении нужно подталкивать. Вариант 1 - подключить большую емкость, через диод на датчик. При этом во время первого включения конденсатор может не успеть зарядиться и датчик не обнаружится, но во время второго - кондер дозарядится и подача высокого уровня, плюс почти Vpp на конденсаторе позволяют датчику стартовать корректно. Вариант 2 - нужно отрывать SCL во время старта, а подключать его позже, когда датчик заведется. (именно подключенный SCL потребляет основную часть питания при первичном включении датчика).
в) если посадить оба датчика на один "питающий" GPIO, то DHT22 все-же заведется, через свои 12-13 секунд, а BMP180, даже с конденсатором, так и не обнаруживается.
г) DHT22 и с подтягивающим резистором (согласно дейтшиту) и без оного работает одинаково на кабеле длиной 1,5м
д) Если оставить два датчика (BMP180+конденсатор и DHT22), то кроме того, что DHT22 в текущей реализации не успевает вычитать значения, еще есть нюанс - со временем модуль перестает просить IP, и исчезает из сети. Если же датчики подключены напрямую к питанию, такого не происходит, но батарея садится на порядок быстрей (если питать датчики от GPIO, при засыпании модуля, его потребление измеряется мкА, если от Vpp - десятками мА).
Вобщем основные тезисы:
1) если питать датчики синхронно с просыпанием модуля - им необходимо время, как при первичном включении (читаем дейтшиты) и 10сек однозначно мало.
2) если питать датчики от Vpp - deepsleep нивелируется потреблением подключенных датчиков.
3) подавать питание на датчики все-же нужно по правильному, через подходящие мосфеты (предлагайте различные проверенно-доступные варианты).
p.s. последнее время все чаще вечером хостинг отстреливает недоступность homes-smart.ru, баг или фича?