Евгений
скорее первое, я полагаю
Если исходить из 4 года модельный ряд?
EL84 💡
своими силами
Евгений
не понял взаимосвязи
Ступил, думал про дедушек :)))
Ruslan
забавно, есть стабильная прошивка, добавляю mbedtls в зависимости компонта всё нормально, но потом открываю доступ к NVS b dc§ gflftn^ E (64004) esp-tls: couldn't get hostname for :test.mosquitto.org: getaddrinfo() returns 202, addrinfo=0x0 Первая работает, вторая нет: void mqtt_start(void) { mqtt_connect(MQTT_PORT_FREE); } void mqtt_start(void) { esp_err_t err; nvs_handle handle; event_group = xEventGroupCreate(); event_bits = 0; ESP_ERROR_CHECK(nvs_open(NVS_NS_CERT, NVS_READWRITE, &handle)); // проверяем наличие цепочки сертификатов промежуточных УЦ size_t blob_len = 0; err = nvs_get_blob(handle, NVS_KEY_CHAIN, NULL, &blob_len); if (ESP_ERR_NVS_NOT_FOUND == err) { mqtt_connect(MQTT_PORT_FREE); ESP_LOGW(TAGT, "No CA chain found, requesting..."); event_bits = xEventGroupWaitBits( event_group, BIT_GOT_CHAIN, pdTRUE, pdTRUE, portMAX_DELAY); } ESP_ERROR_CHECK(nvs_commit(handle)); nvs_close(handle); vEventGroupDelete(event_group); }
niee
Привет! Кто-нибудь, помогите мне с кодом, пожалуйста? Я хочу экономить энергию, так как большую часть времени мой esp8266 находится в режиме глубокого сна. Каждые 5 минут для проверки моего сервера (www.MyServerIP/script). Если он включен внутри печатной платы, включите реле, если он выключен, выключите реле и вернитесь в глубокий сон на 5 минут, затем снова проверьте, есть ли изменения в моем коде. Если возможно 2 или 3 реле еще лучше. Hello! Someone help me with some code please? I want to save power as most of the time my esp8266 is in deep sleep mode. Every 5 min to check my server (www.MyServerIP/script). If it is ON inside the circuit board, turn on the relay, if it is OFF turn off the relay, and go back to deep sleep for 5 min, then again check if there is a change in my code. If possible 2 or 3 relays even better.
Евгений
вот ты ржёшь, а решения не знаешь
Я даже вникать сейчас не могу/ не хочу ( нужное подчеркнуть )
Ruslan
давай проще, это вне твоего понимания )
Евгений
давай проще, это вне твоего понимания )
Тоже можешь подчеркнуть :)
Ruslan
А ты знаешь?
я в процессе, думал, вдруг кто сталкивался
я в процессе, думал, вдруг кто сталкивался
Слушай, ты сам нихуя не знаешь, менеджер бывший что ли?
Выебонов вагон
Ruslan
отдыхай, знайка
отдыхай, знайка
Да я разберусь что мне делать
Ruslan
это правильно, займись собой, нервы успокой
Евгений
Господа, давайте выпьем! за мир во всем мире!
это правильно, займись собой, нервы успокой
Мои нервы спокойны как у удава
Евгений
Понедельник же!
Заканчивается ж
Заканчивается ж
Не повод пить. Давай лучше в среду?
Евгений
В среду мы работаем
В среду мы работаем
Это не мешает
niee
esp32 has better power saving, do you want to use it instead of esp8266?
В настоящее время у меня подключено 2 ip-камеры, которые потребляют много энергии. а зимой будут проблемы с солнечными панелями. поэтому я сделаю датчики движения и включу камеры только в случае движения, чтобы проверить, человек это или животное. Я хочу отключить его и позволить ему работать только тогда, когда это необходимо. когда срабатывает сигнализация. не 24/7.
Андрій
Здравствуйте Подскажите, пожалуйста, на что стоит обратить внимание. Условие: 1. Есть две есп8266. На первой написана хтмл-страница, с которой можно управлять самой еспшкой. Данные настроек прилетают в виде джсон страки, которая в итоге сохраняется в файле сетап.джсон 2. При включении вторая еспшка должна приконнектиться к первой и прочитать этот файл сетап.джсон Читал насчет есп-нау, но там нужно знать мак-адрес устройства. Это не совсем подходит, так как устройства могут со временем накапливаться - придется каждый раз перепрошивать предыдущие. В идеале, это коннект или по имени, или по айпи (второе предпочтительнее) Подскажите, пожалуйста, что лучше использовать тут
Андрій
мы самый дружелюбный чат в рунете, мы посылаем на https://randomnerdtutorials.com
если не затруднит, подскажите о чем читать? (протокол, библиотека....) спасибо
Андрій
мы самый дружелюбный чат в рунете, мы посылаем на https://randomnerdtutorials.com
так понимаю вот это https://randomnerdtutorials.com/esp8266-nodemcu-client-server-wi-fi/
Slava
если не затруднит, подскажите о чем читать? (протокол, библиотека....) спасибо
в твоем случае статьи о способах передачи данных между есп
Андрій
спасибо. интересный сайт.
Андрій
я предпочитаю старые добрые http get post
по факту, тот вариант. что в статье выше?
Slava
по факту, тот вариант. что в статье выше?
ой, точно, это оно и есть, сори. я тут опечален сдохшим ссд
я предпочитаю старые добрые http get post
Старые добрые это звонок на ббс
Но ты наверное не знаешь что такое модем 2400, под стол скорее всего ходил
Василий
Ребята есть вопрос по ESP32 после прошивки сообщение Leaving... Hard resetting via RTS pin... т.е. надо перегрузить кнопкой Reset а можно как то сделать - что бы после прошивки проц перезагрузился ?
Mike
если голый модуль то лепить по пинам ему транзисторные ключи, если девборда то там они должны стоять
Mike
Василий
Dev морда нифига что то не перегружается
Mike
быьт такого не могет
Василий
хотя.......... а нафига тогда писать Hard resetting via RTS pin...
Василий
.....ладно походу точно перезагружается после прошивки переключился сразу на Serial Monitor....да перезагружается
EL84 💡
Господа, вопрос из разряда дебильных. Если работает м 2мя ядрами на есп, можем из таска для ядра 0 вызвать функцию для обработки на ядре 1 ? Как я понимаю, надо передать аргумент тому таску, что у нас на ядре 1 ?
EL84 💡
Грубо говоря, запросить обработку кода на ядре 1, когда выполняем код на ядре 0, оно сделает "фоном" нам нужные действия и мы заберём эти данные с глобальных переменных. Верно?
EL84 💡
таски запускаются на определенном ядре. можно указать на каком конкретно
это понятно, вопрос в том, что в момент обработки кода на ядре 0, у меня должен выполниться по запросу этого кода, код на ядре 1 и передать уже таск ядра 0 данные
Ruslan
читай про очереди
EL84 💡
Andy
в целях экономии ресурсов?
в целях общего доступа к памяти от разных ядер :)
Ruslan
#blog #mqtt D (20644) event: running post MQTT_EVENTS:7 with handler 0x400d9034 and context 0x3ffc5bfc on loop 0x3ffbda6c это гарантированная проблема при подключении к MQTT
EL84 💡
в целях общего доступа к памяти от разных ядер :)
к глобальным переменным разве нет общего доступа?
Ruslan
к глобальным переменным разве нет общего доступа?
ну, если хочешь получить опыт, начни с глобальных
Slava
к глобальным переменным разве нет общего доступа?
если к ним одновременно не обращаться, то работает
EL84 💡
если к ним одновременно не обращаться, то работает
не обращаться для записи или чтения? Если один таск будет читать, а другой писать, так по идее проблем не возникнет?
Slava
не обращаться для записи или чтения? Если один таск будет читать, а другой писать, так по идее проблем не возникнет?
я использую такую уёбскую конструкцию, вроде работает //--------------------------------------------------------- void print_TFT(String value, String id){ if (config.Display_TFT == 0){return;} String nof = "print_TFT(stop)"; if (dbg.indexOf(nof)>=0){return;} nof = "print_TFT()"; if (dbg.indexOf(nof)>=0){ Serial.println("-->void "+nof+"("+id+"/"+trim(value)+")"); } while(busy_print_TFT == 1){delay(5);} busy_print_TFT = 1; print_TFT_go(value, id); if (dbg.indexOf(nof)>=0){ Serial.println("<--void "+nof+"("+id+"/"+trim(value)+")"); } busy_print_TFT = 0; }
Andy
к глобальным переменным разве нет общего доступа?
есть конечно. проблема в том что есть риск чтения "куска" переменной :)
Ruslan
#blog #mqtt Забавно, но если на место закомментированного куска воткнуть любой примитив для задержки выполнения кода, то вылетает ошибка: E (57004) esp-tls: couldn't get hostname for :test.mosquitto.org: getaddrinfo() returns 202, addrinfo=0x0 E (57004) TRANSPORT_BASE: Failed to open a new connection: 32769 E (57004) MQTT_CLIENT: Error transport connect size_t blob_len = 0; err = nvs_get_blob(handle, NVS_KEY_CHAIN, NULL, &blob_len); if (ESP_ERR_NVS_NOT_FOUND == err) { mqtt_connect(MQTT_PORT_FREE); // while(buffer == NULL || state_got_chain) { // vTaskDelay(pdMS_TO_TICKS(1000)); // } if (NULL != buffer) { ESP_ERROR_CHECK(nvs_set_blob(handle, NVS_KEY_CHAIN, buffer, sizeof(buffer))); if (buffer) free(buffer); err = ESP_OK; } }
ok-home
не обращаться для записи или чтения? Если один таск будет читать, а другой писать, так по идее проблем не возникнет?
Без крайней необходимости лучше глобальные переменные для передачи результатов не использовать, если использовать то под мьютексами. Если вы гарантируете что на глобальной переменной только чтение - можно и без них, но это как правило чтение констант. в фриртос есть законные механизмы обмена и передачи управления - queue, task notification, event...
Тамар
индусский код
try-catch на минималках
Сергей М
Всем привет! не уверен, что обращаюсь в нужную группу. по компиляции проги для esp32cam помочь можете?
Сергей М
номета
это что значит?
Anton
это значит, что не нужно задавать вопрос о том, можем ли мы ответить на вопрос, пока мы не знаем собственно вопроса
Сергей М
Это доходчиво😀 Я уже в несколько групп толкаюсь, все говорят это не к нам. Пытаюсь повторить проект https://github.com/InnoGreenTech/ESP32-CAM-pir-static-relay
Сергей М
библиотеки подгрузил, но когда доходит до строки session->broadcastCurrentFrame(now); выдает ошибку 'class CRtspSession' has no member named 'broadcastCurrentFrame' Что бы это значило, хочется спросить?
Тамар
Это значит, что класс 'class CRtspSession' не содержит функцию 'broadcastCurrentFrame'
Сергей М
Вижу, собрались специалисты, а я думал помогут...
Так тебе ответили же. Возможно используешь не ту библиотеку которая ему нужна. Здесь написано что требуется micro rtsp. Не очень понятно какой ты ответ ждешь. Чтоб специалисты за тебя все сделали?
Есть куча разных библиотек rtsp с классом CRtspSession. broadcastCurrentFrame есть только в micro-rtsp