• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP32C3 заглушка DeepSleep перестала исполняться

pvvx

Активный участник сообщества
Так уж и быть, раз копаюсь счас в CH592F… Но это RISC-V. А про STM32 сами найдете :p
Вам так сложно самому измерить то, что вам требуется :) :)

У CH592F на первой странице PDF в графе про Flash написано:
  • Basically, zero-wait at the system frequency of 20MHz
И в PDF есть подробные данные о времени пробуждения SoC во всех режимах…

Вот для сравнения время старта SoC после sleep с отключением внутренних питаний из примера “WCH\ch592\EVT\EXAM\BLE\Broadcaster”:
1746958148092.png

В данный пример “ Broadcaster ” вкорячил скопированную процедуру из примера для ESP:
C:
int speed_test(int a) {
  volatile int b = 0;
  volatile int c;
  a++;
  b++;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  c = a + b;
  a = c + b;
  b = a - c;
  b = b * c;

  return b;
}
...
        GPIOA_SetBits(bRXD1);
        GPIOA_ResetBits(bRXD1);
        GPIOA_SetBits(bRXD1);
        speed_test(22);
        GPIOA_ResetBits(bRXD1);
        GPIOA_SetBits(bRXD1);
...

Исполнение идет из Flash, после старта SoC:
1746958223277.png
Время подписано желтеньким... 8.56 us - в этом интервале и вывод в GPIO в десяток нс и можно не учитывать.
 

pvvx

Активный участник сообщества
И оно-же при выполнении из RAM
1746959025114.png

Что-же будет если возьмем одинаковый по CLK CPU чип WCH c ESP32-C3? К примеру CH32F208W?
 

pvvx

Активный участник сообщества
И вот то-же самое из CH32F203 на его 144MHz
1746964753740.png
Уже 1.48 us
И как выглядит процедура в
Код:
00000268 <speed_test>:
     268:    1141                    addi    sp,sp,-16
     26a:    c402                    sw    zero,8(sp)
     26c:    47a2                    lw    a5,8(sp)
     26e:    0505                    addi    a0,a0,1
     270:    0785                    addi    a5,a5,1
     272:    c43e                    sw    a5,8(sp)
     274:    47a2                    lw    a5,8(sp)
     276:    953e                    add    a0,a0,a5
     278:    c62a                    sw    a0,12(sp)
     27a:    47b2                    lw    a5,12(sp)
     27c:    4722                    lw    a4,8(sp)
     27e:    97ba                    add    a5,a5,a4
     280:    4732                    lw    a4,12(sp)
     282:    40e78733              sub    a4,a5,a4
     286:    c43a                    sw    a4,8(sp)
     288:    4722                    lw    a4,8(sp)
     28a:    46b2                    lw    a3,12(sp)
     28c:    02d70733              mul    a4,a4,a3
     290:    c43a                    sw    a4,8(sp)
     292:    4722                    lw    a4,8(sp)
     294:    97ba                    add    a5,a5,a4
     296:    c63e                    sw    a5,12(sp)
     298:    47b2                    lw    a5,12(sp)
     29a:    4722                    lw    a4,8(sp)
     29c:    97ba                    add    a5,a5,a4
     29e:    4732                    lw    a4,12(sp)
     2a0:    40e78733              sub    a4,a5,a4
     2a4:    c43a                    sw    a4,8(sp)
     2a6:    4722                    lw    a4,8(sp)
     2a8:    46b2                    lw    a3,12(sp)
     2aa:    02d70733              mul    a4,a4,a3
     2ae:    c43a                    sw    a4,8(sp)
     2b0:    4722                    lw    a4,8(sp)
     2b2:    97ba                    add    a5,a5,a4
     2b4:    c63e                    sw    a5,12(sp)
     2b6:    47b2                    lw    a5,12(sp)
     2b8:    4722                    lw    a4,8(sp)
     2ba:    97ba                    add    a5,a5,a4
     2bc:    4732                    lw    a4,12(sp)
     2be:    40e78733              sub    a4,a5,a4
     2c2:    c43a                    sw    a4,8(sp)
     2c4:    4722                    lw    a4,8(sp)
     2c6:    46b2                    lw    a3,12(sp)
     2c8:    02d70733              mul    a4,a4,a3
     2cc:    c43a                    sw    a4,8(sp)
     2ce:    4722                    lw    a4,8(sp)
     2d0:    97ba                    add    a5,a5,a4
     2d2:    c63e                    sw    a5,12(sp)
     2d4:    47b2                    lw    a5,12(sp)
     2d6:    4722                    lw    a4,8(sp)
     2d8:    97ba                    add    a5,a5,a4
     2da:    4732                    lw    a4,12(sp)
     2dc:    40e78733              sub    a4,a5,a4
     2e0:    c43a                    sw    a4,8(sp)
     2e2:    4722                    lw    a4,8(sp)
     2e4:    46b2                    lw    a3,12(sp)
     2e6:    02d70733              mul    a4,a4,a3
     2ea:    c43a                    sw    a4,8(sp)
     2ec:    4722                    lw    a4,8(sp)
     2ee:    97ba                    add    a5,a5,a4
     2f0:    c63e                    sw    a5,12(sp)
     2f2:    47b2                    lw    a5,12(sp)
     2f4:    4722                    lw    a4,8(sp)
     2f6:    97ba                    add    a5,a5,a4
     2f8:    4732                    lw    a4,12(sp)
     2fa:    40e78733              sub    a4,a5,a4
     2fe:    c43a                    sw    a4,8(sp)
     300:    4722                    lw    a4,8(sp)
     302:    46b2                    lw    a3,12(sp)
     304:    02d70733              mul    a4,a4,a3
     308:    c43a                    sw    a4,8(sp)
     30a:    4722                    lw    a4,8(sp)
     30c:    97ba                    add    a5,a5,a4
     30e:    c63e                    sw    a5,12(sp)
     310:    47b2                    lw    a5,12(sp)
     312:    4722                    lw    a4,8(sp)
     314:    97ba                    add    a5,a5,a4
     316:    4732                    lw    a4,12(sp)
     318:    40e78733              sub    a4,a5,a4
     31c:    c43a                    sw    a4,8(sp)
     31e:    4722                    lw    a4,8(sp)
     320:    46b2                    lw    a3,12(sp)
     322:    02d70733              mul    a4,a4,a3
     326:    c43a                    sw    a4,8(sp)
     328:    4722                    lw    a4,8(sp)
     32a:    97ba                    add    a5,a5,a4
     32c:    c63e                    sw    a5,12(sp)
     32e:    47b2                    lw    a5,12(sp)
     330:    4722                    lw    a4,8(sp)
     332:    97ba                    add    a5,a5,a4
     334:    4732                    lw    a4,12(sp)
     336:    40e78733              sub    a4,a5,a4
     33a:    c43a                    sw    a4,8(sp)
     33c:    4722                    lw    a4,8(sp)
     33e:    46b2                    lw    a3,12(sp)
     340:    02d70733              mul    a4,a4,a3
     344:    c43a                    sw    a4,8(sp)
     346:    4722                    lw    a4,8(sp)
     348:    97ba                    add    a5,a5,a4
     34a:    c63e                    sw    a5,12(sp)
     34c:    47b2                    lw    a5,12(sp)
     34e:    4722                    lw    a4,8(sp)
     350:    97ba                    add    a5,a5,a4
     352:    4732                    lw    a4,12(sp)
     354:    40e78733              sub    a4,a5,a4
     358:    c43a                    sw    a4,8(sp)
     35a:    4722                    lw    a4,8(sp)
     35c:    46b2                    lw    a3,12(sp)
     35e:    02d70733              mul    a4,a4,a3
     362:    c43a                    sw    a4,8(sp)
     364:    4722                    lw    a4,8(sp)
     366:    97ba                    add    a5,a5,a4
     368:    c63e                    sw    a5,12(sp)
     36a:    47b2                    lw    a5,12(sp)
     36c:    4722                    lw    a4,8(sp)
     36e:    97ba                    add    a5,a5,a4
     370:    4732                    lw    a4,12(sp)
     372:    40e78733              sub    a4,a5,a4
     376:    c43a                    sw    a4,8(sp)
     378:    4722                    lw    a4,8(sp)
     37a:    46b2                    lw    a3,12(sp)
     37c:    02d70733              mul    a4,a4,a3
     380:    c43a                    sw    a4,8(sp)
     382:    4722                    lw    a4,8(sp)
     384:    97ba                    add    a5,a5,a4
     386:    c63e                    sw    a5,12(sp)
     388:    47b2                    lw    a5,12(sp)
     38a:    46a2                    lw    a3,8(sp)
     38c:    4732                    lw    a4,12(sp)
     38e:    97b6                    add    a5,a5,a3
     390:    8f99                    sub    a5,a5,a4
     392:    c43e                    sw    a5,8(sp)
     394:    47a2                    lw    a5,8(sp)
     396:    4732                    lw    a4,12(sp)
     398:    02e787b3              mul    a5,a5,a4
     39c:    c43e                    sw    a5,8(sp)
     39e:    4522                    lw    a0,8(sp)
     3a0:    0141                    addi    sp,sp,16
     3a2:    8082                    ret
 

pvvx

Активный участник сообщества
Всё как описано в PDF:
CH32V203 is based on 32-bit RISC-V core design of industrial-grade enhanced low-power general-purpose microcontrollers, high-performance, in the product features support 144MHz main frequency zero-wait operation, equipped with V4B core, work and sleep power consumption significantly reduced year-on-year.
  • Available with 224KB program memory CodeFlash (zero-wait application area + non-zerowait data area)

В итоге почти в 20 раз быстрее ESP32-C3...
 

aZholtikov

Active member
Уважаемый @pvvx!
Просто хочу узнать Ваше мнение.
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" замена батарейки за 20 руб раз в пол года, а не раз в 6 лет?
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" время ответа от "вумного выключателя" в 10 мкс или достаточно и 10 мс?
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" покупать все эти вундервафли или ему главное цена?
 

pvvx

Активный участник сообщества
Уважаемый @pvvx!
Просто хочу узнать Ваше мнение.
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" замена батарейки за 20 руб раз в пол года, а не раз в 6 лет?
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" время ответа от "вумного выключателя" в 10 мкс или достаточно и 10 мс?
Так ли принципиально для конечного "естественно тупого пользователя вумного дома" покупать все эти вундервафли или ему главное цена?
По многочисленным issue бесконечно сыплющихся в github по BLE/Zigbee термометрам выходят такие запросы и пожелания "естественно тупого пользователя вумного дома":
1. Желают замены батарейки - никогда. Пол года расстраивает и прилепляют другие, более большие батарейки, даже печатая чехлы на 3D принтере.
2. На время включения-выключения у IR датчика движения были предложения припаять другой резистор, чтобы сократить время его фильтра... В других случаях и без мнения "естественно тупого пользователя вумного дома" в специализированной литературе описано много измерений реакций человеко-бабизян по поводу отклика на любую кнопку или прочее событие - для не шумахеров и игрнучиков достаточно уложиться в 200 мс. Это не вызывает беспокойства и находится в пределе комфортной реакции любой системы для человеко-бабизян.
3. Большинство покупают то, что покупают другие. К примеру большинство покупает Xiaomi LYWSD03MMC, хотя есть другие модели и раза в три дешевле, с более качественным дисплеем. Но так заведено и на это есть ответ Лемминги...
 

pvvx

Активный участник сообщества
Я думаю, что вам следует посмотреть, сколько в инет споров по поводу у кого быстрее открываются окошки или скролит экран - на Apple или на Android смартфоне? :)
Или у кого больше кадров в секунду на мониторе …
 

pvvx

Активный участник сообщества
Просто хочу узнать Ваше мнение.
Если нужно мое личное мнение, то вот, к примеру, по поводу тупых датчиков оно такое:
1746972909045.png
Квадратное – это продаваемое и любимое в рядах Zigbee Xiaomi решение.
Более детализированное – это перепрошитое устройство в BLE.

И меня не устраивает показания любых датчиков, делающих измерения с периодом более 10 секунд.
А для некоторых желательно усреднение непрерывного опроса с периодом передачи итога до 30 сек.

Вторым, для особо значащим фактором для меня является возможность поменять место датчику – и это его размеры.
Т.е. максимальным по размеру батареек считаю 2xAAA (они дешевле и везде есть) с работой в течении более 1.5 года. Всё остальное – это стационар и проводное решение.
 

nikolz

Well-known member
Лично меня интересует возможность сделать беспроводное устройство, максимально компактное, работающее от батарейки не менее 30 дней (чем больше тем лучше) . Это умные устройства типа спектрометр с распознаванием состава веществ для полевых работ, устройство ориентации в пространстве для незрячих , кардиомонитор с диагностикой состояний в реальном времени, неинвазивный измеритель давления ну и т д и т п
Для умного дома сейчас сделал датчик утечки воды который потребляет в не аварийном режиме 1 микроампер. размером 1x2 см2
 

pvvx

Активный участник сообщества
Лично меня интересует возможность сделать беспроводное устройство, максимально компактное, работающее от батарейки не менее 30 дней (чем больше тем лучше) . Это умные устройства типа спектрометр с распознаванием состава веществ для полевых работ, устройство ориентации в пространстве для незрячих , кардиомонитор с диагностикой состояний в реальном времени, неинвазивный измеритель давления ну и т д и т п
А ранее писали что от чипа нужна производительность... Во всех описанных задачах основа - сенсор. И он жрет больше всех. А производительность от MCU вообще не требуется.
Для умного дома сейчас сделал датчик утечки воды который потребляет в не аварийном режиме 1 микроампер. размером 1x2 см2
Зачем делали, если типовой даже от Tuya потребляет менее 1 мкА.
Если взять любой из чипов BLE/Zigbee и прикрутить к нему батарейку, то в задаче пробуждения из deep-sleep по GPIO они все будут кушать гарантированно менее 1 мкА. Входной ток у GPIO в области наноампер - это и есть ваш датчик.
Но если это датчик аварий, то системе и пользователю нужно знать что он работает. Это значит он должен проявлять себя в системе контроля хотя-бы раз в минуту, с отчетом о батарее. И тут уже получите малое превышение 1 мкA.
 

pvvx

Активный участник сообщества
Благодарю за ответ.
На счет производительности любого SoC всё очень просто.

Если SoC использует SPI-Flash, тогда все коды, которые требуют быстрого исполнения должны быть загружены в RAM один раз при старте питания чипа. А в режиме deep-sleep питание с этой области RAM не снимается. Так и сделано во всех современных BLE/Zigbee чипах использующих SPI-Flash.

Это дает значительно меньшие энерго-затраты и скорость выполнения нужных функций, чем подгрузка кода на ходу из SPI-Flash (XIP) при каждом пробуждении SoC из режимов sleep.

А в ESP всё сделано наоборот и даже такты ожидания при работе XIP почему-то дают увеличение потребления, не говоря уже о критическом падении производительности… Всё это выглядит как вредительство при разработке чипов ESP.

О падении производительности в таких случаях у ESP как раз и предоставил вам простейшие измерения…
 

nikolz

Well-known member
А ранее писали что от чипа нужна производительность... Во всех описанных задачах основа - сенсор. И он жрет больше всех. А производительность от MCU вообще не требуется.
Нет, Вы ошибаетесь.
Например:
1) спектрометр с распознаванием состава веществ для полевых работ
Работает с TCD1304 - CLK 2 MГЦ, АЦП - 500 КГц
Обработка и распознавание спектров - это Нейросеть.
2)устройство ориентации в пространстве для незрячих . Это акселерометр, гироскоп,TOF, магнитометр, синтезатор речи.
Программа обнаружение препятствий и падений.
3) кардиомонитор с диагностикой состояний в реальном времени. ввод и накопление ЭКГ. Программа диагностики критических состояний.
---------------------
Датчики для всех этих задач есть вполне нормальные. Все вычисления большой объем RAM и FLASH да еще и карту.
Получается что пока годятся лишь ESP без радио части.
 

nikolz

Well-known member
А ранее писали что от чипа нужна производительность... Во всех описанных задачах основа - сенсор. И он жрет больше всех. А производительность от MCU вообще не требуется.
Зачем делали, если типовой даже от Tuya потребляет менее 1 мкА.
Если взять любой из чипов BLE/Zigbee и прикрутить к нему батарейку, то в задаче пробуждения из deep-sleep по GPIO они все будут кушать гарантированно менее 1 мкА. Входной ток у GPIO в области наноампер - это и есть ваш датчик.
Но если это датчик аварий, то системе и пользователю нужно знать что он работает. Это значит он должен проявлять себя в системе контроля хотя-бы раз в минуту, с отчетом о батарее. И тут уже получите малое превышение 1 мкA.
ссылку дайте, сравню.
Вы ошибаетесь чип - это не датчик.
 

pvvx

Активный участник сообщества
Есть ещё от Xiaomi, но там открыть невозможно, только если разломать герметичный корпус. И у них всех всякие резиновые прокладки и винтовые крышки для батареек.
Представляют какой у вас корпус :ROFLMAO:
 

pvvx

Активный участник сообщества
Датчики для всех этих задач есть вполне нормальные. Все вычисления большой объем RAM и FLASH да еще и карту.
Получается что пока годятся лишь ESP без радио части.
У ESP памяти не больше чем у других SoC, а SD карта подключается к любому.
Вот только жрут ESP больше и работают тормознее.
Пример работы ADC в CH32V2xx/3xx давал - шум при подключенном внешнем сигнале в последнем 12-ом бите. И их там два ADC в большеногих - можно синхронизовать чередованием замеров для ещё увеличения частоты в 2 раза.
 

pvvx

Активный участник сообщества
А если надо сделать совсем быстро, не вникая сильно, то вам как раз опубликовали тему c NPU и Linux и потреблением при этом как у ESP32. Надеюсь производительности в 1.2ГГц Cortex A7 + NPU вам хватит за глаза и размер не более ESP модулей :)
 

nikolz

Well-known member
Я видел эту плату на али.
плата интересная, но не для автономной работы и в ней нет беспроводной связи.
---------------------
Вы сами написали:
Требует всего в среднем 93 мА по 5В с работающим USB-BT адаптером...
-------------------------
Т е это минимум в 3 раза больше чем ESP32 без WiFi и BLE.
И явно не для автономной работы.
Цена тоже раза в 4 выше.
--------------------
Я такую плату хочу поставить в 3D сканер, который собираю для фотограмметрии.
 
Сверху Снизу