MaDerer
New member
Здравствуйте!
В прошлом году я слегка подсел на ESP8266 и решил я себе сделать погодную станцию на NodeMCU. В итоге получилось такое:
Участники торжества: NodeMCU Amica, сенсор BME280, экран SSD1306, вольтметр ADS1115, модуль зарядки TP4056, аккумулятор LiitoKala 18650 3400 мАч и солнечная баттарея 5В 1,5W для небольшого увеличения выживаемости.
Скетч собирал с миру по нитке и подгонял под себя. Он выполняет следующий алгоритм:
- проверяем подключение SSD1306. Если отключен - сообщение на экран и уходим в глубокий сон на 1 минуту, по пробуждении начинаем с начала;
- раз SSD1306 на месте, подключаемся к роутеру по WiFi по уже заданным ssid и pass;
- собираем данные температуры, влажности, давления, вольтажа аккумулятора;
- подключаемся и отправляем данные на narodmon.ru;
- получаем ответ от сайта и все данные с ответом выводим на экран;
- уходим в глубокий сон на 6 минут.
После окончательной сборки (то одно доходило, то другое) метеостанция проработала 10 дней. Тогда я попытался оптимизировать скетч, уменьшил или убрал задержки, убрал вывод в Serial и в итоге срок работы увеличился до 25 дней.
В надежде на уменьшение энергопотребления я заказал ESP-12E и плату адаптер под нее с уже подведенными CH_PC и GPIO15. Спаял, поставил на макетку, поморгал светодиодами - красота!
Решил я попробовать начать собирать свою метеостанцию на макетке по частям. Установил экран, подключил, залил скетч (только поменял в Arduino IDE устройство с NodeMCU 1.0 на Generic ESP8266 Module) и увидел на экране "BME280 not found" (и это правильно, ведь я его еще не подключил). Поменял время DeepSleep на 10 сек и... ничего. Светодиод моргнул, но экран не обновился.
В общем я начал разбираться по частям. Сделал вывод в Serial. Прошерстил форумы, откуда подчерпнул только то, что либо надо дополнять развязку, либо проблемы с питанием, либо мне не повезло и мне досталась бракованная/хитрокитайская партия (заказывал 2 шт.)
В результате я создал скетч:
Делал подключение по следующим схемам (фото взял с просторов интернета и отредактировал под свои варианты):
После подачи питания на выходе:
ets Jan 8 2013,rst cause:1, boot mode3,0)
load 0x4010f000, len 1384, room 16
tain 8
chksum 0x2d
csum 0x2d
v0fd86a07
~ld
А? Что? Я не сплю!!!
ets Jan 8 2013,rst cause:2, boot mode3,6)
Если же сделать сброс:
ets Jan 8 2013,rst cause:2, boot mode3,6)
load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v0fd86a07
~ld
А? Что? Я не сплю!!!
ets Jan 8 2013,rst cause:2, boot mode3,6)
И всё, больше ни чего не происходит.
Прошу указать направление изгиба моих рук или причину, почему мои лыжи не едут
P.S. Пользуюсь только Arduino IDE. С осциллографом не дружу и не имею.
P.S.S. Поиском пользовался, не подходит. Единственное, что я не пробовал, это посадить конденсатор в 1000 мКф на входные контакты питания.
В прошлом году я слегка подсел на ESP8266 и решил я себе сделать погодную станцию на NodeMCU. В итоге получилось такое:
Участники торжества: NodeMCU Amica, сенсор BME280, экран SSD1306, вольтметр ADS1115, модуль зарядки TP4056, аккумулятор LiitoKala 18650 3400 мАч и солнечная баттарея 5В 1,5W для небольшого увеличения выживаемости.
Скетч собирал с миру по нитке и подгонял под себя. Он выполняет следующий алгоритм:
- проверяем подключение SSD1306. Если отключен - сообщение на экран и уходим в глубокий сон на 1 минуту, по пробуждении начинаем с начала;
- раз SSD1306 на месте, подключаемся к роутеру по WiFi по уже заданным ssid и pass;
- собираем данные температуры, влажности, давления, вольтажа аккумулятора;
- подключаемся и отправляем данные на narodmon.ru;
- получаем ответ от сайта и все данные с ответом выводим на экран;
- уходим в глубокий сон на 6 минут.
После окончательной сборки (то одно доходило, то другое) метеостанция проработала 10 дней. Тогда я попытался оптимизировать скетч, уменьшил или убрал задержки, убрал вывод в Serial и в итоге срок работы увеличился до 25 дней.
В надежде на уменьшение энергопотребления я заказал ESP-12E и плату адаптер под нее с уже подведенными CH_PC и GPIO15. Спаял, поставил на макетку, поморгал светодиодами - красота!
Решил я попробовать начать собирать свою метеостанцию на макетке по частям. Установил экран, подключил, залил скетч (только поменял в Arduino IDE устройство с NodeMCU 1.0 на Generic ESP8266 Module) и увидел на экране "BME280 not found" (и это правильно, ведь я его еще не подключил). Поменял время DeepSleep на 10 сек и... ничего. Светодиод моргнул, но экран не обновился.
В общем я начал разбираться по частям. Сделал вывод в Serial. Прошерстил форумы, откуда подчерпнул только то, что либо надо дополнять развязку, либо проблемы с питанием, либо мне не повезло и мне досталась бракованная/хитрокитайская партия (заказывал 2 шт.)
В результате я создал скетч:
Код:
const int sleepTime = 5;
void setup() {
Serial.begin(74880);
Serial.println("А? Что? Я не сплю!!!");
delay(2000);
ESP.deepSleep(sleepTime * 1e6);
}
void loop() {
}
ets Jan 8 2013,rst cause:1, boot mode3,0)
load 0x4010f000, len 1384, room 16
tain 8
chksum 0x2d
csum 0x2d
v0fd86a07
~ld
А? Что? Я не сплю!!!
ets Jan 8 2013,rst cause:2, boot mode3,6)
Если же сделать сброс:
ets Jan 8 2013,rst cause:2, boot mode3,6)
load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v0fd86a07
~ld
А? Что? Я не сплю!!!
ets Jan 8 2013,rst cause:2, boot mode3,6)
И всё, больше ни чего не происходит.
Прошу указать направление изгиба моих рук или причину, почему мои лыжи не едут
P.S. Пользуюсь только Arduino IDE. С осциллографом не дружу и не имею.
P.S.S. Поиском пользовался, не подходит. Единственное, что я не пробовал, это посадить конденсатор в 1000 мКф на входные контакты питания.