• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

TW-03-Cortex-M3( wifi )

pvvx

Активный участник сообщества
Те-же болезни и у BL70x.
А с такими болезнями им не светит оказаться в серийке продукции какого бренда типа Xiaomi или Туя, что скажется на невозможности понижения цены...
Останется возможность впихнуть эти чипы в какую "беспроводную", но соединенную проводами розетку и с греющимся дорогим блоком питания, который быстро выйдет из строя из-за установки дешевых кондеров...
 

volaltd

Member
Угу. Именно так весь рынок китайцы и завалили своими товарами. И рынок у них специфический - чипы только для китайцев.
Этот W801 стоит у них менее $1, а вам его втюхают за $7+ и никакой информации не дадут - всё зашифруют иероглифами :)
Вы как обычно налили кучу воды, но я и так знаю что для вашего производства они ни разу не подходят, делают китайцы для своих же китайцев, производящих всякое такое-себе типа ваших любимых термометров. Для мелкосерийного производства в Европе все это не интересно.
 

pvvx

Активный участник сообщества
я и так знаю что для вашего производства они ни разу не подходят,
Как такое может подойти на производстве?
Максимум в качестве одноразового инструментария. При этом худший из них - это ESP. Из-за кучи ненужных наворотов для детсада в совте с полным отсутствием нормальных функций, надежности и поддержки тех. стандартов.
делают китайцы для своих же китайцев, производящих всякое такое-себе типа ваших любимых термометров.
Пока не замечено ни в одной автономной поделке. Может через много лет попадется, как поделка для кормления нищих европейцев в виде SonOff на ESP?
Но и в розетках для IoT китайцы ставят уже не ESP.
Для мелкосерийного производства в Европе все это не интересно.
А вы у нас Европа?
 

nikolz

Well-known member
Угу. Именно так весь рынок китайцы и завалили своими товарами. И рынок у них специфический - чипы только для китайцев.
Этот W801 стоит у них менее $1, а вам его втюхают за $7+ и никакой информации не дадут - всё зашифруют иероглифами :)
В теории инноваций такой способ производства товаров называется разрушительными инновациями.
Они этим же способом убьют и электромобили Маска и айфоны Apple(их уже почти убили)
 

pvvx

Активный участник сообщества
В теории инноваций такой способ производства товаров называется разрушительными инновациями.
Они этим же способом убьют и электромобили Маска и айфоны Apple(их уже почти убили)
Туда им всем и дорога.
Пришли модули с W806. SDK собирается, flash пишется, примеры работают...
ADC из примера немного врет:
Код:
enter main
value = 1140mv
value = 1140mv
value = 1140mv
value = 1140mv
value = 1140mv
value = 1140mv
value = 1140mv
а должно быть 1127.
На 3.3В пишет не "переполнение", а value = 2352mv :)
Вход на GND - value = -10mv
 

pvvx

Активный участник сообщества
В доках пока не найдено сколько потребляет CPU в W80x.
Накатал тупой тест:
C:
#include <stdio.h>
#include "wm_hal.h"

PMU_HandleTypeDef hpmu;

unsigned int cnt_slp;
int main(void) {
    SystemClock_Config(CPU_CLK_160M);
    hpmu.Instance = PMU;
    hpmu.ClkSource = PMU_CLKSOURCE_32RC;
    HAL_PMU_Init(&hpmu);
    cnt_slp = 5;
    HAL_PMU_TIMER0_Start(&hpmu, 1);
    while (cnt_slp--) {
        HAL_PMU_Enter_Sleep(&hpmu);
    }
    printf("+");
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_240M);
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_160M);
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_80M);
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_40M);
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_2M);
    HAL_Delay(100);
    SystemClock_Config(CPU_CLK_160M);
    HAL_Delay(100);
    HAL_PMU_TIMER0_Start(&hpmu, 5);
    HAL_PMU_Enter_Standby(&hpmu);
    //------------
    while (1) {
        printf(".");
        HAL_Delay(1000);
    }
}

void assert_failed(uint8_t *file, uint32_t line) {
    printf("Wrong parameters value: file %s on line %d\r\n", file, line);
}

Светодиод в питании и прочие детальки выпаивать не стал...
1640304544404.png
Не понятно, почему при старте жрет больше - 60 мА? Но фиг с ним, может там у него включена вся периферия...
Sleep(1) с таймером - это ужас в 8 мА. На графике 5 шт после старта.
Далее просыпание, пауза 100 ms и работа на:
240 MHz - 47 mA
160 MHz - 38 mA
80 MHz - 30 mA
40 MHz - 25 mA
2 MHz - 17 mA
Затем снова на 160 мГц пауза 100 ms и Standby(5).
Имеет ужасное время выхода из Sleep:
1640305156815.png
Более 3 мс. За такое время, пока W80x только просыпается до исполнения кода, любой BLE чип успевает проснуться, передать-принять на 3-х каналах и заснуть.
 

pvvx

Активный участник сообщества
В связи с указанными выше TTX самого CPU, смысл заказывать и ждать W801 есть только для коллекционирования устаревших китайских чипов.
BLE там варианта прошлого века, как и WiFi. Поддержки сна от WiFi6 там тоже нема и сам чип жрет и будет отнимать питание и трафик у других спящих клиентов подключенных к той же AP c WiFi6. Всё как у представителей ESP. Т.е. автономное питание ему не светит.
 

pvvx

Активный участник сообщества
Дальше, на возможность использовать W80x в Arduino подобных, т.к. там всем пофигу потребление, надо смотреть по функционалу.
Но W80x не имеет USB и CAN. Без USB на плату надо ставить USB-UART, что увеличивает цену.

Далее идет производительность.
W80x для диапазона CLK:
  • 2..40МГц имеет 211 μA/MHz
  • 2..80МГц имеет 166 μA/MHz (типичный BLE SoС EFR32BG22 ARM Cortex®-M33 до 80MHz - 27 μA/MHz)
  • 2..240МГц имеет 126 μA/MHz
Сравнить...
STM32F4 Cortex®-M4 – имеют max 180 MHz. Current consumption running from Flash ranges from 89 µA/MHz on the STM32F410 up to 260 µA/MHz on the STM32F439.
STM32F7 Cortex®-M7 series тоже не тянет 240MHz (max 216).
STM32H7 Cortex®-M7 тянет до 550 MHz. Но это уже монстр для Arduino.

Для решения реальной производительности W80x надо собирать тест, т.к. Flash у него может оказаться QSPI, а про кэш ничего не писано…
Итог может выйти как у ESP32 – при большой линейной программе, постоянно подгружаемой из Flash, производительность падает до уровня пару десятков MHz CortexM3, а жор остается максимальным.
 
Сверху Снизу