

dontsov
Участник-
Posts
138 -
Joined
-
Last visited
Reputation
0 ОбычныйAbout dontsov
-
Rank
Частый гость
- Birthday 01/01/1988
Контакты
-
Сайт
Array
Recent Profile Visitors
-
Добрый день! Требуется реализовать веб-интерфейс настройки ESP8266 на, видимо, RTOS или Non-OS. Сейчас реализация на Arduino Framework и из-за тысяч устройств мы достаточно часто натыкаемся на проблемы с подключением к определенным роутерам. Требуется сделать демо-проект в котором реализовано следующее: - поиск wi-fi роутеров, отображение списка - подключение к выбранному wi-fi роутеру по паролю - отображение статуса подключения: успех, не успех(причина). Среда разработки PlatformIO. Проект будет opensource в GitHub. Опыт серийных коммерческих проектов на ESP обязателен. В случае успешного тестирования 2й этап: проект обрастет веб-страницами, i2c. Связь: tg dontsovcmc или здесь
-
AVR: добавить прерывания в прошивку
dontsov replied to dontsov's topic in Предлагаю работу
Написал, спасибо! -
dontsov started following AVR: добавить прерывания в прошивку
-
AVR: добавить прерывания в прошивку
dontsov posted a topic in Предлагаю работу
Добрый день всем! Ищу программиста для доработки open source прошивки Ватериуса. С увеличением количества электронных счетчиков тепла, газа, появился запрос сделать поддержку коротких импульсов (4мс). Т.е. нужна поддержка прерываний в прошивке. Электрическую схему менять не хочется. Задача: 1. Добавить прерывания как отдельную функцию в имеющуюся прошивку (это возможно?). Чтобы attiny прочитав настройку понимала, по прерываниями работать или просыпаться периодически. *Требуется ли изменение электрической схемы Ватериуса? Можно ли обойтись текущей? Дорабатывать вебсервер ESP не требуется, но если можете, то ок. -
Ищем специалиста по радиосвязи Lora и Xbee (868 и 900 mhz)
dontsov replied to Neleksey's topic in Предлагаю работу
Какая то страшная переписка здесь. Есть куча готовых плат с антеннами для LoRa — подключаете датчики и скидывайте на базовую станцию (они тоже готовые есть). Опишите подробнее задачу — объем данных, расстояния, тогда комментарии будут релевантнее. -
ESP8266: актуализировать Arduino Framework + WiFiManager.
dontsov posted a topic in Предлагаю работу
Есть OpenSource прошивка ESP8266 на базе Arduino Framework + WiFiManager: https://github.com/dontsovcmc/waterius Задача 1: Требуется обновить Arduino Framework и WiFiManager, проверить на нескольких роутерах. Кинем в сообщество для тестирования. WiFiManager пришлось чуть доработать - добавил 1 вызов и другой код страниц. Надо будет перенести изменения, ничего сложного. Задача 2*: Проверить проблему с ошибкой подключения к 1% роутеров. Есть роутер Sercomm rv6699 к которому не подключается, могу выслать почтой. Другие роутеры: - Sercomm rv6699 - Innbox e70 - TP-Link AX5400 Иногда лечится установкой статического ip в ESP, иногда нет. Версия фреймворка достаточно старая, возможно стабильность уже улучшили. Тестировать можно на NodeMCU. Аналогичным образом не подключалась к данному роутеру какая то из прошивок ESPEasy, а старая ESPEasy stable подключалась. Гипотезы: - Ошибка вылечится обновлением версий; - WiFiManager некорректно использует WiFiClient; - WiFiClient необходимо донастроить, может вынести параметр в интерфейс; - Ошибка в WiFiClient (Однажды я уже исправлял в нём ошибку. Будет и у вас commit.=)) Оплачиваемо по этапам. Бюджет на первую задачу 10к. Торг. -
Реализовать запись лога ESP8266 в LittleFS
dontsov posted a topic in Предлагаю работу
Оpensource проекту Ватериус требуется программист C++. Нужен опыт работы с ESP8266. Задача писать лог ESP8266 в LittleFS, чтобы можно было загрузить из вебинтерфейса при возникновении ошибок: https://github.com/dontsovcmc/waterius/issues/203 Оплату предлагайте. (Если сотрудничество удастся, есть ещё несколько задач на рефакторинг). -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
@Сергей Борщ спасибо! Я вчера поучаствовал в долгой дискуссии в которой объяснили (и я понял и признал) насколько у меня «французский с Нижегородским» в коде.. ахах Буду рефакторить. Вообще, если начать понимать, что написал, можно убрать половину кода. Мда. Я до сих пор удивлен, насколько мало находится примеров с watchdog. И те без комментариев. Вот думаю насколько целесообразно переписать с нуля на регистрах всё. -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
@Сергей Борщ @jcxz У меня прерывание после sleep... Других нет. -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
А как это сделать? -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
Хм… атомарного не уверен… а где это можно узнать? да, uint32_t здорово увеличивают память -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
Да, в последней версии сделали uint32_t его! https://github.com/dontsovcmc/waterius/tree/dev -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
@slanted wdt_enable в setup убрал. Посмотри, пожалуйста: https://github.com/dontsovcmc/waterius/tree/dev -
Очень странная перезагрузка attiny85 по Watchdog Reset Flag
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
Все таки зависает прошивка. Не понятно отчего. Да, она не перезагружается по watchdog аварийно. Тему продолжил тут: -
attiny85: watchdog зависает
dontsov replied to dontsov's topic in MCS51, AVR, PIC, STM8, 8bit
Я попробовал имитировать задержку в коде, чтобы сработал watchdog на перезагрузку - он срабатывает, но плата уходит в зависание. Кажется потому что не выставлял MCUSR = 0. @slanted: Вот такой код корректно перезагружает если wdt_reset не наступит за 250мс: volatile uint32_t wdt_count; ISR( WDT_vect ) { ++wdt_count; WDTCR |= _BV(WDIE); } void setup() { noInterrupts(); info.service = MCUSR; // причина перезагрузки MCUSR = 0; // без этого не работает после перезагрузки по watchdog wdt_disable(); // а нужно ли тут, если у меня код быстро дойдёт до инициализации watchdog? interrupts(); set_sleep_mode( SLEEP_MODE_PWR_DOWN ); // достаточно же 1 раз сделать? wakeup_period = WAKEUP_PERIOD_DEFAULT; ..... } void loop() { power_all_disable(); //NoInterrupts не нужно? т.к. в wdt_enable есть ассемблерная команда cli wdt_enable(WDTO_250MS); interrupts(); wdt_count = 0; while ((wdt_count < wakeup_period) && !button.pressed()) { counting(); WDTCR |= _BV(WDIE); //пока не понял, обязательно ли здесь или можно после wdt_enable раз в WDT_vect есть. без этого не работает. sleep_mode(); } power_all_enable(); // Далее: я не отключаю watchdog, для надежности. wdt_reset() вызывается в button.wait_release() где я могу долго ждать пока пользователь отпустит кнопку. ... //взаимоотношения с ESP } -
Смоделировать прошивку attiny85. Почему-то иногда зависает.
dontsov replied to dontsov's topic in Предлагаю работу
@slanted последняя версия пока не зависала. но и предыдущая на столе 3 месяца назад не висла.. https://github.com/dontsovcmc/waterius/commit/612b8c626a5d018d566dfa210f00ac661e73affe#diff-9f275c81ac6d42b2d0a1caa9dee157db9fa36a1193217286fb083b66fb933914