Viter
С eeprom можно напрямую работать без файловой системы
Sergey
Всем привет. Народ подскажите плиз а можно как то у есп8266 смотреть RAM во время работы (сколько занято и сколько свободно)?
Sergey
тогда еще такой вопрос функция ниже, при выходе из нее она будет автоматом прибивать переменные и освобождать память или нет или мне надо командой очистки обязательно пользоваться
Sergey
char* MQTT_TOPIC_MASS(String TopStr){ byte topic_len = TopStr.length() + 1; char* topicOut = (char*)malloc(topic_len); TopStr.toCharArray(topicOut, topic_len); return topicOut; }
Ivansuper
char* MQTT_TOPIC_MASS(String TopStr){ byte topic_len = TopStr.length() + 1; char* topicOut = (char*)malloc(topic_len); TopStr.toCharArray(topicOut, topic_len); return topicOut; }
Она выделяет пямять и отдает тебе. Тебе следить за этим куском памяти. Когда не нужен — удалять
Sergey
спасибо всем за помощь
Ivansuper
Поэтому конечно в чатах и любят советовать использовать std::shared_ptr вместо голых указателей
Anonymous
Надо 9 раз проснуться без вайфая, а на 10 вкл вайфай и передать данные
Хм, а в чем проблема? Завести переменную, и с каждым просыпанием ее инкрементировать, и проверять , как равно 10 включать вайфай и передавать
Viter
Хм, а в чем проблема? Завести переменную, и с каждым просыпанием ее инкрементировать, и проверять , как равно 10 включать вайфай и передавать
Проблема где хранить эту переменную, во время сна все очищается. Вот токо получилось через запись и считывание с Eeprom, но на сколько ее хватит если каждые 10 минут писать в нее
Viter
Огород получится
Viter
А так хватит на два года минимум
Viter
Получилось нормально, режим deep sleep раз в десять минут просыпается не включая WIFI, меряет датчики, если норма сразу засыпает, если превышение включает WIFI и передает данные в гугл таблицу. После 10 таких циклов сразу передает данные не зависимо от датчиков, это для того что бы видить что модуль живой там, при этом передает и напряжение батареи
Viter
Viter
Viter
Макет
Serg
На сколько батареи хватает?
Viter
На год
Viter
Положил такую коробочку и забыл, токо посматриваей в Гугл таблицу, при аварии и низков напряжении на батарее передаёт сообщение на е-мейл
Serg
Это теория или практика?
Serg
Что то верится с трудом, что на год.
Serg
А что за стабилизатор стоит на питание ESP?
Serg
И какой ток потребления во сне и при передаче?
Viter
Без стабилизатора, через диод батарея 18650, потребляет мкА так как вайфай при пробуждении отключается принудительно весь блок причем, а не соединение с роутером,
Viter
На само измерения датчиков уходит 150 милисек и сразу засыпает
Serg
А какой ток во время соединения и передачи?
Serg
Спрошу ещё раз.
Serg
Это теория или практика?
Viter
Практика, работает все
Viter
Во время передач ток 70 ма в течении 3 секунд
Serg
А во сне?
Serg
Пытаюсь прикинуть на сколько должно хватить.
Serg
Практика, работает все
Я не сомневаюсь, что работает. Мне просто интересно уже год отработало?
Viter
Та ну, запустил только
Serg
Та ну, запустил только
Вот я это и хотел узнать. 😁
Serg
Потому, что в теории должно год, а на практике может и неделя.
garik
За год батарея, поди, саморазрядится быстрее
Viter
Контрольное просыпание можно сделать и раз в сутки оно необходимо только посмотреть что модуль рабочий ничего с ним не случилось, тогда вайфай будет включаться только при аварии датчика и и снижении напр батареи ниже 3,2 в
Viter
Не разрядится
Serg
А какое падение на диоде.
Dumitru
А не опасно Аккум садить в ноль?
Viter
0,65
Viter
А не опасно Аккум садить в ноль?
Напряжение контролируется, если станет ниже 3,2 придет емейл
Serg
Тоесть при разряде бареи до 3.65В питание ESP 3В?
Serg
Напряжение контролируется, если станет ниже 3,2 придет емейл
3.2-0.65=2,55В хватит ли ESP проснуться и передать?
Viter
Ну да, при норме для есп от 2,6 как раз выйдем 3.2 батареи
Viter
Не хватит увидим что не вышла на связь
Х
Малым током зарядится через диод до напряжения батареи, т.к. на малых токах падение на диоде маленькое.
Х
Но это ооочень большая керамика нужна))
Andy
Проблема где хранить эту переменную, во время сна все очищается. Вот токо получилось через запись и считывание с Eeprom, но на сколько ее хватит если каждые 10 минут писать в нее
Когда давно делал равномерный процесс записи - каждый следующий пакет писался в один элемент цепочки примерно раз минуту. Размера eeprom хватало на семь что ли элементов. Спустя примерно десять лет вернулось в руки одно устройство. Eeprom была по прежнему жива, ни один элемент не был помечен как сбойный.
Viter
Сейчас таких не делают😋
Х
А вообще наверное идеально добавить tpl5110 с транзистором и рубить питание всем.
Viter
Но это ооочень большая керамика нужна))
3 сек идёт подключение к роутеру и 3 сама передача данных, так что ёмкость не поможет сильно, надо ещё попробовать статический ip прописать на роутере и есп может быстрее будет соеденятся
Viter
Х
В есп все трётся во время сна
Я к тому, что изменение конфига только роутера не имеет смысла. А вот в esp наверное поможет, где-то прописать статику.
Andy
Viter
Тут на Гугл идет
Andy
Глянул счас статистику по доступным устройствам. Среднее время подключения и передачи 20 секунд, процентов 80 наверно таких.
Х
В модуле дорогая, три еспехи можно купить
ну можно купить платы-переходники пачку и напаять, там из обвязки только резистор нужен. Ну можно конденсатор добавить. Транзистор можно большой.
Viter
Даже Не вижу где можно купить по месту
Х
https://www.electronshik.ru/item/TI/TPL5110DDCT
Х
31 рубль
Viter
Одной строчкой
Viter
voltage = (float)(analogRead(0) * 3.5) / 1024+0.65;
Serg
voltage = (float)(analogRead(0) * 3.5) / 1024+0.65;
То есть измеряешь на ноге ESP после диода, а не батарее?
Serg
Раз плюс 0,65В.
Х
Не проще железофосфатный аккум взять?
Serg
Вот я тоже об этом подумал. Но они дороже.
Serg
И не каждая зарядка подойдёт.