Видимо все зависит от того, где разрабатывать. В Arduino IDE чтобы управлять GPIO16 достаточно команд digitalWrite(GPIO16, LOW) \ digitalWrite(GPIO16, HIGH)
У нас в датчике CO2 на этом GPIO светодиод висит и ничего, светит.
ну это же Джаст фо фан. И температура днём может резко меняться или точне ночью могут быть заморозки. А днём могут птицы все окно загадить и станет темно.
А хорошая идея, обязательно впилим в какой нибудь будущий проект. Спасибо!
Но с текущим девайсом все чуть попроще, не в космосе работает, а на балконе.
Видимо повторение — мать учения. Не знаю зачем.
У меня по идее ESP должна просыпаться с спящим модемом, я ведь перевожу ее в Deep sleep так ESP.deepSleep(sleep_time, WAKE_RF_DISABLED);
Надо проверить, как оно на практике.
Мне во всем этом больше нравится бОльшая гибкость и простота изменения софта. Хочу такие графики строю, а хочу такие. Хочу просыпаюсь 10 раз в день, а хочу раз в неделю. Через Blynk можно разные комбинации настроек менять и применять. Мне бы лично и 6 месяцев на одном комплекте батареек хватило.
Влияние плотности почвы и прочее — мне еще предстоит с этим столкнуться. У нас первая версия устройства была с батарейкой CR2032, но 170 мА WiFi модуля сделали практически невозможным хоть сколько долгую работу.
Про электрод — я наверное не очень точно выразился. Я если честно, в физику процесса не вдавался, подаю ШИМ и измеряю что навелось на входе АЦП. Чтобы исключить влияние заряда батареи на результаты измерений — сейчас добавлены коэффициенты. В следующей ревизии железки скорее всего добавим повышалку, так чтобы сигнал ШИМ и сигнал на входе фоторезистора не зависел от заряда батарейки.
Да, у меня первая версия работала также. Но я не хочу каждое включение использовать WiFi. Например, если я буду просыпаться 1 раз в час, а результаты измерений слать на сервер 4 раза в день, то может получиться более экономно. Но надо тестировать.
Как я понял, в режиме Deep sleep и Light sleep у него CPU спит и на прерывания не отвечает.
During Light-sleep, the CPU is suspended and will not respond to the signals and interrupts
from the peripheral hardware interfaces. Therefore, ESP8266 needs to be woken up via
external GPIO. The waking process is less than 3 ms.
Таблица из даташита
Для другого девайса, о котором будет третья часть — мы реализовали внешнее прерывание, т.е. будим модуль из Deep sleep'а по наступлению нашего события.
Пока я только отнормировал шкалу от 0 до 100%, где 100% соответствует 0 В на входе АЦП (все «ушло» в землю), а 0% — это когда земля сухая (эквивалентно тому, что электрод просто висит в воздухе). Сейчас как раз тестирую, строю графики и пытаюсь придумать какую нибудь градацию шкалы (мокро, нормально, сухо).
Про состав почвы и прочее пока не думал.
У нас в датчике CO2 на этом GPIO светодиод висит и ничего, светит.
Но с текущим девайсом все чуть попроще, не в космосе работает, а на балконе.
У меня по идее ESP должна просыпаться с спящим модемом, я ведь перевожу ее в Deep sleep так ESP.deepSleep(sleep_time, WAKE_RF_DISABLED);
Надо проверить, как оно на практике.
During Light-sleep, the CPU is suspended and will not respond to the signals and interrupts
from the peripheral hardware interfaces. Therefore, ESP8266 needs to be woken up via
external GPIO. The waking process is less than 3 ms.
Для другого девайса, о котором будет третья часть — мы реализовали внешнее прерывание, т.е. будим модуль из Deep sleep'а по наступлению нашего события.
Про состав почвы и прочее пока не думал.