SSR
Жаль, а мог бы за мебельщика придумать всё
Quiero vivir en España
Может просто стабилизировать питание?
Питание выравнивается до 3.3 (пробовал разными способами), но с помощью SEPIC-преобразователя, как я понял, иногда тока не хватает, с помощью "понижайки MCP1700" 3.3 будет только при входящем выше 3.4v.
У меня всё работает на связке солнечная батарея+аккумулятор пока напряжение на клеммах выше 3 вольт, но вот когда падает (это я к зиме готовлюсь), а потом плавно восстанавливается, то плата тупо не стартует.
Quiero vivir en España
Кстати, работает как часы с начала мая, т.е., почти 5 месяцев.
Anonymous
Anonymous
Проверяй напряжение на аккумуляторе, если чего выключай файфай до тех пор пока оно до нужного не подниметься
Anonymous
Если мало гони в сон
Anonymous
Через 49 дней или сколько там - проверяй, не настало ли лето))
Quiero vivir en España
Quiero vivir en España
Anonymous
Иначе зачем всегда включённой держать если вайфай нет
Indr1x
Питание выравнивается до 3.3 (пробовал разными способами), но с помощью SEPIC-преобразователя, как я понял, иногда тока не хватает, с помощью "понижайки MCP1700" 3.3 будет только при входящем выше 3.4v.
У меня всё работает на связке солнечная батарея+аккумулятор пока напряжение на клеммах выше 3 вольт, но вот когда падает (это я к зиме готовлюсь), а потом плавно восстанавливается, то плата тупо не стартует.
Наверное курить установку уровня brownout detector. Он держит контроллер в состоянии ресет, пока напряжение не станет достаточным. Устанавливать на максимум 3.3
Могу пованговать возможно оно стоит ниже и проц пытается стартовать, но ему мало тока
Глянул доку, там максимальное настраиваемое 2.8v
Config_esp_brownout_det
SSR
Anonymous
Это как плюшкин или скряга.
Indr1x
Indr1x
И что? Во сне батарея не разрядится /не замерзнет до минимума? У него проблема проснуться, а ты ему говоришь "ну так пораньше ложись, глядишь и повезёт"
Anonymous
Indr1x
Але, проблема просыпания. Диктую по бкувам П Р О С Ы П А Н И Я. А не сохранения заряда
Anonymous
Indr1x
И что? Потом заряжает
Anonymous
Если по умному контролировать все получится
Andy
Vladislav
Подскажите где ошибка... нету подключения к брокеру.
Vladislav
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
const char* ssid = "www";
const char* password = "ppp";
const char* mqtt_server = "mqtt.dealgate.ru";
const char* arduinoClient = "ESP";
const char* testuser = "log";
const char* testpass = "pas";
WiFiClient espClient;
PubSubClient client(espClient);
unsigned long lastMsg = 0;
#define MSG_BUFFER_SIZE (50)
char msg[MSG_BUFFER_SIZE];
int value = 0;
void setup_wifi() {
delay(10);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
}
randomSeed(micros());
}
void callback(char* topic, byte* payload, unsigned int length) {
Serial.print("Message arrived [");
Serial.print(topic);
Serial.print("] ");
for (int i = 0; i < length; i++) {
Serial.print((char)payload[i]);
}
}
void reconnect() {
while (!client.connected()) {
Serial.print("Attempting MQTT connection...");
String clientId = "ESP8266Client-";
clientId += String(random(0xffff), HEX);
if (client.connect(clientId.c_str(), "testuser", "testpass")) {
Serial.println("connected");
client.publish("outTopic", "hello world");
client.subscribe("inTopic");
} else {
Serial.print("failed, rc=");
Serial.print(client.state());
Serial.println(" try again in 5 seconds");
// Wait 5 seconds before retrying
delay(5000);
}
}
}
void setup() {
Serial.begin(115200);
setup_wifi();
client.setServer(mqtt_server, 1883);
client.setCallback(callback);
}
void loop() {
if (!client.connected()) {
reconnect();
}
client.loop();
unsigned long now = millis();
if (now - lastMsg > 2000) {
lastMsg = now;
++value;
snprintf(msg, MSG_BUFFER_SIZE, "hello world #%ld", value);
Serial.print("Publish message: ");
Serial.println(msg);
client.publish("outTopic", msg);
}
}
Vladislav
Ошибка - 5 : MQTT_CONNECT_UNAUTHORIZED - the client was not authorized to connect
w
Quiero vivir en España
Жаль, а мог бы за мебельщика придумать всё
Вопрос не в "придумать", а, может, кто-то уже сталкивался...
Например, если при низком напряжении ESP стартует и "спотыкается", то можно стартовать, проверять напряжение и (при низком) перезагружать.
Просто мысли.
Quiero vivir en España
Ну она же спит у тебя?
В терминологии Arduino/ESP это называется сон, да. Модемный сон.
Vladislav
Quiero vivir en España
Quiero vivir en España
Anonymous
Quiero vivir en España
Quiero vivir en España
Anonymous
Модем слип.
и постоянно по лоре у тебя данные передаются прям стрим идет?
Anonymous
копай deep sleep
Quiero vivir en España
Прослушивание эфира всегда, передача - иногда.
Quiero vivir en España
Насчёт brown-out пока нашёл лишь
In my case i put ESP8266 in permanent deepsleep mode if Vbatt is under 3.0V
Quiero vivir en España
Аппаратного детектора в ESP нет, но нашёл вот что
Quiero vivir en España
https://img-fotki.yandex.ru/get/53301/3630370.0/0_1c3f45_88b9d152_orig.png
Quiero vivir en España
ㅤ
ㅤ
ㅤ
Посмотри готовые схемы защиты аккумуляторов от переразряда и сконфгурируй под себя, чтоб при достижении 3.2 у тебя отпускался ресет
Quiero vivir en España
Блин я на 32 смотрел
Для такого случая и на 32 можно перейти.
Как в Arduino IDE конфигурировать broun-out? Яндекс не дал ответа.
Indr1x
Ну для такого можно и на esp idf перейти 😁. Я же доку смотрел а не ардуину
Indr1x
Попробовать впрямую задать как в esp idf сделано
ㅤ
Quiero vivir en España
Quiero vivir en España
Вот ещё нашёл
#include “soc/soc.h”
#include “soc/rtc_cntl_reg.h”
WRITE_PERI_REG(RTC_CNTL_BROWN_OUT_REG, 0); //disable brownout detector in the setup.
ㅤ
ㅤ
Вот этот регистр пороги меняет
Quiero vivir en España
О, спасибо. Жаль, что 2.8 - максимум.
Насколько я понял, модуль заряда литий-ионных АКБ отключает батарею как раз при напряжении ниже 2.8. И с ним беда та же: если батарея разрядилась (2.8v), а потом чуть-чуть зарядилась до 2.9, ESP может не запуститься.
ㅤ
Поэтому делай схему какую нибудь на компараторе и тл431, чтоб ресет отпускала после определенного порога.
Quiero vivir en España
Quiero vivir en España
С микросхемами и пайкой я не очень дружу.
ㅤ
Вообщем по даташиту что 32 что 8266 работают до 2,5 вольт. Странно почему оно у тебя виснет
Quiero vivir en España
Фактически когда оно включено, то работает до 2.6, но когда подаём низкое напряжение, постепенно увеличивая (как при питании от солнечной батареи), то не заводится и всё.
Quiero vivir en España
Цифры могут быть немного неточными, но принцип именно такой.
ㅤ
Денис
Indr1x
Indr1x
минималка у лития 2.8 - 2,75
Andy
А не знаете готовых вариантов?
Знаю, но конкретно счас не скажу, в поездке. На самом деле любой бод, выход датчика либо на en, либо на обычный gpio, в зависимости от потребности
ㅤ
минималка у лития 2.8 - 2,75
Вообще рекомендуют выключать литий при 3 вольтах, ибо добирать с 3.0 до 2.8 практически нечего, а вот на ресурсе мол это сказывается
Indr1x
и как это сделать? контроллер в батарее
ㅤ
А так в китайских батарейках стоит тупой dw01. А его выше чем 2.8 не видел
ㅤ
Хотя не dw01 вообще при 2,4 выключает
ㅤ
А это уже такой полукритический порог
Денис
и как это сделать? контроллер в батарее
практически как и все устройства на свете..
отслеживать заряд и в случае чего глубоко спать потребляя лишь мкА.
то что в батарее это и есть на это случай: если устройство в таком состоянии(мкА) долго прибывает..
ㅤ
Ну в батарее эта отсечка уже аварийная
ㅤ
Те же телефоны когда ты их включаешь на низком заряде - показывают плашку - заряди меня.
Anonymous
подскажите плиз, как получить доступ к файловой системе SPIFFS в platformIO или может как-то через консоль ?
ㅤ