
Я бегаю и катаюсь на велосипеде, и меня давно раздражает, что любой фитнес-браслет или приложение рано или поздно требует подписку, льёт данные в чужое облако и не даёт ничего настроить под себя. Захотелось собрать свой гаджет с GPS, блэкджеком и ..., словом, на котором выводится именно то, что мне нужно, и полным контролем над прошивкой и данными.
Бюджет у нас, мягко говоря, гаражный. Но за каждый цент себестоимости не трясемся. Важнее получить удовольствие от разработки. К счастью есть JLCPCB. Там можно заказать и платы, и сборку. На этом и базируемся. Проектируем так, чтобы всё максимально собиралось на их стороне и их комплектации, а дома оставалась только сборка и прошивка.
Давайте определимся с главными характеристиками будущего дивайса.
Носимый. Компактный форм‑фактор, автономное питание от аккумулятора, наличие встроенной зарядки.
Экономичный. Минимальное энергопотребление в режиме ожидания.
Беспроводной. Чтобы имел Wi‑Fi, Bluetooth Low Energy.
Радиоуправляемый. Если будет команда, то чтобы была возможность прямого обмена данными между устройствами без участия смартфона или интернета.
С контрастным дисплеем и подсветкой, читаемым и днём, и ночью.
Защищенный. Водонепроницаемость для использования во время тренировок и на открытом воздухе.
Навигационный. Чтобы был GNSS‑модуль и акселерометр, гироскоп, магнетометр для отслеживания перемещений и движений.
Киберзащищенный. Ну просто без этого теперь кое-где не дадут разрешения на применение в открытом интернете.

Первое, что приходит в голову, зайдя в свой "гараж" (будем так его называть) - это великолепная троица: ESP32, Arduino, Raspberry Pi, ну там ещё где-то STM32F103 с клонами. Но это все не оригинально и грубо. Давайте посмотрим глубже.
Нам нужна независимость платформы от радиоинтерфейсов. Мы делаем не поделку-однодневку. Все серьезно. А потому отпадает ESP32 с его жесткой привязкой к определенному стандарту радиоинтерфейсов. Делаем платформу независимой от смены поколений беспроводных стандартов и так гарантируем долгий жизненный цикл. Мы же не хотим, чтобы дивайс морально устарел через год.
ESP32 возьмём (а куда денемся при такой цене), но временно. Берем в работу сразу два модуля: u‑blox MAYA‑W276‑00B и Espressif ESP32‑C6‑MINI‑1U‑N4. Оба подключаются по SDIO и поддерживают Wi‑Fi 5/6 + BLE 5.3, но выпускаются разными производителями в разных регионах.
Для навигации берем GNSS‑модуль ATGM332D‑5N‑7X. Он совместим пин в пин с u‑blox NEO‑8, тут тоже при необходимости можем заменить на u‑blox и даже без переразводки платы.
Заметил как-то интересный факт: над Восточной Европой видимых спутников BeiDou в небе, как правило, вдвое больше, чем GPS. Это значит, приём BeiDou в GNSS‑модуле маст-хэв.
Так что по микроконтроллеру?
Он должен быть мощный и экономичный. Тут сразу отпадает Arduino. По экономичности отпадает Raspberry. Кстати, кто-нибудь видел полный мануал на их процессор, он вообще существует в природе?
Ну у нас есть STM32. Вернее море разных STM32. А помните как они исчезли из продажи пару лет назад, и все сразу! Так что не зацикливаемся и смотрим дальше.
Давайте подумаем а какой софт будет в нашем приборе. Начнем: драйвера BLE и Wi‑Fi, полный стек TCP протоколов c WEB, GTP, HTTP, SHTTP, DNS, DHCP, SNTP, MQTT ...., IMU‑алгоритмы (Маджвик, Калман и прочие), файловая система на SD-карте и возможно на SPI Flash, GUI он же HMI для дисплея, GNSS‑обработка (здесь GPS, GLONASS, BeiDou и т.д.). Это все конечно тянет RTOS. Задач будет уйма. А RAM-а сколько! Страшно подумать.
А данных? Их тоже будет очень много. Нельзя просто так взять и написать алгоритм определения типа физической активности да еще количественно описать эту активность. Нужны будут мегабайты телеметрии. А self‑learning движки? Их тоже хочется попробовать. По практическому опыту, пропускная способность порядка 50 Мбит/с достижима на ядре с частотой в районе 200 МГц и выше, и это без учёта параллельной работы IMU‑фильтров, файловых систем и отрисовки GUI. А если совсем экзотика типа particle‑фильтров для коррекции GNSS‑данных? Уж не на многоядерку ли мы замахиваемся?
Да чуть не забыл, нам нужен собственный облачный портал с сервисами управления, OTA‑обновлениями прошивок, сбором логов и телеметрии. Мы ж не в одном экземпляре дивайс делаем. Взаимодействие с такими сервисами строится поверх TLS 1.2+ с клиентскими X.509‑сертификатами на базе RSA или ECC, по аналогии с требованиями AWS IoT Core, Azure IoT Hub, IBM Cloud и других IoT‑платформ, где минимум составляет RSA‑2048, а для Azure рекомендуется уже RSA‑3072+ либо ECC. Аппаратный криптодвижок с поддержкой этих алгоритмов фактически обязательное требование. Без него TLS‑хэндшейк на ядре класса Cortex‑M занимает ощутимое время и значительно нагружает процессор.
Кибербезопасность отдельная головная боль. Поговаривают, что скоро сертификат на кибербезопасность будет так же обязателен, как сертификат на электромагнитную совместимость и электро- и пожаробезопасность. Прошивки должны быть зашифрованы, подписаны, передаваться по защищенным каналам, устройства должны иметь глобально уникальные серийные номера, уникальные пароли и т.д. и т.п.
Из требований к устройству формируются минимальные параметры микроконтроллера:
RAM ≥ 640 КБ: BLE‑стек (NimBLE), сетевой стек (NetX Duo), RTOS и буферы обмена с радиомодулем должны работать одновременно.
Flash ≥ 1 МБ: прошивка с несколькими стеками протоколов, драйверы периферии и место для GUI ресурсов, сертификатов и прочих артефактов.
Частота ≥ 200 МГц: обработка данных с IMU, GNSS и радиомодулей в реальном времени.
2 × SDIO‑хост: один канал для Wi‑Fi/BLE‑сопроцессора, второй для SD‑карты.
Отсутствие встроенного радио: архитектурное требование, описанное выше.
QFP‑корпус: возможность ручной пайки на этапе прототипирования.
Ниже приведён сравнительный анализ представителей наиболее популярных семейств, удовлетворяющих этим критериям.
STM32H743 (STMicroelectronics)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M7 (FPU double‑precision) |
Частота | 480 МГц |
Flash | 2 МБ |
RAM | 1 МБ (ITCM 64K + DTCM 128K + AXI SRAM 512K + SRAM1-4 352K) |
Корпуса | LQFP100 / LQFP144 / LQFP176 / TFBGA240 |
Периферия | 2× SDMMC, Ethernet, USB HS, 2× OSPI, DCMI, JPEG‑кодек |
Крипто | CRYP (AES‑128/256, DES/3DES), HASH (SHA‑1/SHA‑256/MD5), TRNG |
RTOS | FreeRTOS, Azure RTOS (ThreadX/NetX/FileX), Zephyr, RT‑Thread, ChibiOS |
Экосистема | STM32CubeIDE, CubeMX, HAL/LL, обширный middleware (FatFS, LwIP, USB) |
Отладка | ST‑LINK/V3 (SWD/JTAG), J‑Link, любой CMSIS‑DAP‑адаптер |
Самый популярный высокопроизводительный контроллер на рынке. Огромное сообщество, наиболее зрелая экосистема в индустрии. FreeRTOS и Azure RTOS интегрированы прямо в CubeMX, поддерживаются «из коробки». Однако ядро Cortex‑M7 относится к поколению 2014 года и не поддерживает Helium (MVE). Карта памяти сложная: шесть несмежных блоков SRAM.
STM32N657 (STMicroelectronics)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M55 (Helium MVE, TrustZone) |
Частота | 800 МГц |
Flash | ❌ нет встроенной (внешняя через Hexa‑SPI / OSPI / FMC) |
RAM | 4,2 МБ (единый непрерывный блок) |
NPU | ST Neural‑ART Accelerator™ @ 1 ГГц, 600 GOPS |
Корпуса | VFBGA‑169 / VFBGA‑197 / VFBGA‑264 (только BGA) |
Периферия | 2× SDMMC, Ethernet, USB HS, OSPI, Hexa‑SPI, MIPI‑CSI‑2, ISP, H.264 кодек, NeoChrom™ 2D GPU |
Крипто | SAES (AES‑128/256), PKA (RSA‑4096, ECC), HASH (SHA‑1/2/3), TRNG |
RTOS | FreeRTOS, Azure RTOS (ThreadX), Zephyr |
Экосистема | STM32CubeIDE, CubeMX, STM32Cube.AI (развёртывание моделей на NPU) |
Отладка | ST‑LINK/V3 (SWD/JTAG), J‑Link |
Первый STM32 со встроенным нейропроцессором, 600 GOPS для edge AI. Ядро Cortex‑M55 с Helium при 800 МГц (CoreMark ~3360). Рекордные 4,2 МБ непрерывной SRAM. Тот же набор RTOS и инструментов CubeIDE/CubeMX, плюс STM32Cube.AI для деплоя нейросетей на NPU. Однако нет встроенной Flash, требуется внешняя память, что усложняет разводку и удорожает BOM. Только BGA‑корпуса.
RA8M1 (Renesas)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M85 (Helium MVE, FPU, TrustZone) |
Частота | до 480 МГц |
Flash | 2 МБ |
RAM | 1 МБ (ITCM 64K + DTCM 64K + SRAM 896K) |
Корпуса | LQFP‑144 / BGA‑176 |
Периферия | 2× SDIO‑хост, Ethernet, USB HS, OSPI, SDRAM‑контроллер, CAN‑FD, I3C |
Крипто | RSIP‑E51A (AES‑128/256, RSA‑2048/4096, ECC, SHA‑2/3, TRNG) |
RTOS | FreeRTOS, Azure RTOS (ThreadX/NetX/FileX), оба интегрированы в FSP; Zephyr |
Экосистема | e² studio (Eclipse), FSP (Flexible Software Package), RA Smart Configurator, VS Code |
Отладка | J‑Link (встроен в EK‑RA8M1), Renesas E2 / E2 Lite (SWD/JTAG) |
Новейшее ядро ARM (Cortex‑M85, 2022) с расширением Helium, дающим до 4× ускорение DSP/ML‑вычислений. Уникальная для класса MCU особенность: встроенный SDRAM‑контроллер. Есть QFP‑144, паяемый вручную. FreeRTOS и Azure RTOS (ThreadX + NetX Duo + FileX) доступны прямо из конфигуратора FSP. В составе Azure RTOS для RA8 поставляется модуль NetX Secure с аппаратным ускорением TLS через криптодвижок RSIP‑E51A, и хэндшейк RSA/ECC выполняется без нагрузки на ядро. Экосистема (FSP) менее зрелая, чем STM32 HAL/CubeMX, сообщество существенно меньше.
RA8P1 (Renesas)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M85 (Helium MVE, FPU, TrustZone) + Ethos‑U55 NPU |
Частота | 1 ГГц |
Flash | 1 МБ |
RAM | 2 МБ SRAM |
NPU | Arm Ethos‑U55 |
Корпуса | BGA‑224 / BGA‑289 |
Периферия | 2× SDHI, Gigabit Ethernet, USB HS, OSPI, SDRAM‑контроллер, CAN‑FD, I3C |
Крипто | RSIP‑E51A (AES‑128/256, RSA‑2048/4096, ECC, SHA‑2/3, TRNG) |
RTOS | FreeRTOS, Azure RTOS (ThreadX/NetX/FileX) через FSP; Zephyr |
Экосистема | e² studio, FSP, RA Smart Configurator (общая экосистема с RA8M1) |
Отладка | J‑Link, Renesas E2 / E2 Lite |
Флагман семейства RA8 со встроенным нейропроцессором Ethos‑U55, прямой конкурент STM32N657. Cortex‑M85 на 1 ГГц с Helium и Gigabit Ethernet. 2 МБ SRAM и SDRAM‑контроллер для расширения. Экосистема (FSP, e² studio, RTOS) полностью совпадает с RA8M1, код портируется без изменений. Однако только BGA‑корпуса (224/289 пинов), невозможна ручная пайка. Отлично подходит для носимого устройства с задачами AI‑инференса, обеспечивает путь миграции внутри одного семейства RA8 без смены экосистемы.
i.MX RT1176 (NXP)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M7 @ 1 ГГц + Cortex‑M4 @ 400 МГц |
Частота | 1 ГГц |
Flash | ❌ нет встроенной (внешняя QSPI/HyperFlash) |
RAM | 2 МБ (FlexRAM 512K, конфигурируемая как ITCM/DTCM/OCRAM + OCRAM1 512K + OCRAM2 512K + OCRAM M4 256K) |
Корпуса | BGA‑289 |
Периферия | 2× Ethernet (1G + 100M), USB, SDIO, MIPI‑DSI/CSI, 2D GPU (PXP) |
Крипто | CAAM (AES‑128/256, DES/3DES, RSA‑4096, ECC, SHA‑1/2, TRNG) |
RTOS | FreeRTOS (в составе SDK), Zephyr, NuttX, Azure RTOS |
Экосистема | MCUXpresso IDE / SDK / Config Tools, обширный middleware |
Отладка | J‑Link, MCU‑Link (NXP), LPC‑Link2 (CMSIS‑DAP) |
Первый в свое время в отрасли микроконтроллер на 1 ГГц. Достаточно обкатан. FreeRTOS поставляется в составе MCUXpresso SDK с примерами для обоих ядер, есть даже дистрибутивы Линукс для него. Однако отсутствие встроенной Flash требует внешнюю QSPI/HyperFlash‑микросхему, что усложняет разводку и удорожает BOM. Только BGA‑289.
GD32H759 (GigaDevice)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M7 (FPU) |
Частота | 600 МГц |
Flash | 3,5 МБ |
RAM | 1 МБ (ITCM 64K + DTCM 128K + AXI SRAM 256K + SRAM0 128K + SRAM1 384K + Backup 4K) |
Корпуса | LQFP100 / LQFP144 / LQFP176 / BGA |
Периферия | 2× SDIO, Ethernet, USB HS, OSPI, TLI (графический контроллер) |
Крипто | CAU (AES‑128/256, DES/3DES), HAU (SHA‑1/SHA‑224/256, MD5), TRNG |
RTOS | FreeRTOS (community), RT‑Thread (официальный BSP) |
Экосистема | Keil/IAR, GD32 SDK; документация и примеры значительно беднее STM32 |
Отладка | J‑Link, GD‑Link (фирменный), CMSIS‑DAP |
Привлекательное соотношение цены и характеристик: 600 МГц и 3,5 МБ Flash. RT‑Thread, основная RTOS с нативным BSP; FreeRTOS поддерживается сообществом. Однако китайский производитель, вопросы качества документации. Ядро M7 без Helium. Экосистема и поддержка существенно уступают остальным в этом обзоре.
XMC7200 (Infineon)
Параметр | Значение |
|---|---|
Ядро | Cortex‑M7 @ 350 МГц + Cortex‑M0+ @ 100 МГц |
Частота | 350 МГц |
Flash | до 8 МБ |
RAM | 1 МБ (SRAM0 256K + SRAM1 256K + SRAM2 256K + SOCMEM 256K) |
Корпуса | BGA / QFP‑176 |
Периферия | SDIO‑хост, CAN‑FD (5 каналов), Ethernet, USB, SMIF (аналог OSPI) |
Крипто | Crypto Block (AES‑128/256, SHA‑256/512, ECC, RSA‑4096, TRNG) |
RTOS | FreeRTOS (в составе ModusToolbox), Zephyr (ограниченная поддержка) |
Экосистема | ModusToolbox (Eclipse / VS Code), PDL (Peripheral Driver Library) |
Отладка | J‑Link, KitProg3 (встроен в EVK), MiniProg4 (Infineon) |
Рекордный объём Flash (до 8 МБ) и автомобильный грейд. FreeRTOS интегрирован в ModusToolbox. Есть 1× SDIO‑хост. Нет SDRAM‑контроллера. ModusToolbox менее удобен в сравнении с аналогичными средами. Высокая унификация периферии, будет сложнее писать драйвера.
Сводная таблица
MCU | Part Number | Ядро | Частота | RAM | Flash | SDIO | QFP | Helium | Крипто (RSA) | Цена (DigiKey), $ |
|---|---|---|---|---|---|---|---|---|---|---|
STM32H743 | STM32H743VGT6 | M7 | 480 МГц | 1 МБ | 2 МБ | 2× | ✅ | ❌ | ❌ нет RSA | 8.75 |
STM32N657 | STM32N657A0H3Q | M55 + NPU | 800 МГц | 4,2 МБ | ❌ | 2× | ❌ | ✅ | RSA‑4096 | 12.13 |
RA8M1 | R7FA8M1AHECFB#AA0 | M85 | 480 МГц | 1 МБ | 2 МБ | 2× | ✅ | ✅ | RSA‑4096 | 12.70 |
RA8P1 | R7KA8P1KFLCAB#UC0 | M85 + Ethos‑U55 | 1 ГГц | 2 МБ | 1 МБ | 2× | ❌ | ✅ | RSA‑4096 | 17.20 |
i.MX RT1176 | MIMXRT1176DVMAB | M7 + M4 | 1 ГГц | 2 МБ | ❌ | 2× | ❌ | ❌ | RSA‑4096 | 13.30 |
GD32H759 | GD32H759IMK6 | M7 | 600 МГц | 1 МБ | 3,5 МБ | 2× | ✅ | ❌ | ❌ нет RSA | 9.60 |
XMC7200 | XMC7200D-F176K8384AA | M7 + M0+ | 350 МГц | 1 МБ | 8 МБ | 1× | ✅ | ❌ | RSA‑4096 | 15.70 |
Вывод
Разброс цен среди рассмотренных MCU незначителен: от 8,75до8,75до17,20 при партии 100 шт. На первый взгляд очень привлекателен GD32H759: 600 МГц, 3,5 МБ Flash, QFP‑корпус и самая низкая цена ($9,60). Однако у него подозрительно урезаны криптографические функции, нет аппаратного RSA, а экосистема значительно слабее конкурентов. Впрочем, с приходом постквантовой криптографии RSA всё равно уйдёт на пенсию, так что, возможно, GD32 просто опередил своё время.
Выбор: Renesas RA8M1 (R7FA8M1AHECFB#AA0), по совокупности критериев:
Корпус: LQFP‑144, пригодный для ручной пайки прототипов;
Функциональность: Cortex‑M85 с Helium, 2× SDIO, SDRAM‑контроллер, аппаратный RSA‑4096;
Экосистема: FSP + FreeRTOS/Azure RTOS из коробки, e² studio / VS Code;
Любопытный факт: ещё в сентябре 2024 года Renesas завершил приобретение компании Altium, нашей базовой САПР для разработки печатных плат, а вместе с ней и поисковик компонентной базы Octopart. И вот, пока писалась эта статья, Renesas запустил портал Renesas 365. Сам я туда пока не заходил, но по анонсу это единая облачная платформа: проектирование схем и плат (Altium), подбор компонентов (Octopart), конфигурация MCU и генерация кода, полный цикл от идеи до готового проекта в одном окне браузера. Открытый вопрос: ценовая модель. десктопный Altium Designer всегда стоил от $5 000/год, облачный Altium 365 имел бесплатный тарифный план только для просмотра проектов. Будет ли полноценное проектирование в Renesas 365 бесплатным или по подписке, пока неясно.
Выбор RTOS
Устройство предполагает более трёх десятков параллельных задач: BLE‑стек, Wi‑Fi‑транспорт, TCP/IP, TLS, файловая система на SD‑карте, GUI, IMU‑фильтры, GNSS, OTA, USB и др. Это не просто «мигание светодиодом под RTOS», нужна полноценная среда с сетевым стеком, файловой системой, графикой и поддержкой TLS. Выбор ядра диктуется не столько самим планировщиком, сколько наличием и полнотой middleware‑компонентов вокруг него.
Кандидаты
Критерий | FreeRTOS | Azure RTOS (ThreadX) | Zephyr | RT‑Thread |
|---|---|---|---|---|
Лицензия | MIT | MIT (Eclipse Foundation) | Apache 2.0 | Apache 2.0 |
Планировщик | Preemptive, time‑slicing | Preemptive, time‑slicing, threshold scheduling | Preemptive, cooperative, EDF | Preemptive, round‑robin |
TCP/IP | FreeRTOS‑Plus‑TCP, LwIP (стороннее) | NetX Duo (встроенный) | Встроенный стек | LwIP, встроенный |
TLS | mbedTLS / wolfSSL (стороннее) | NetX Secure (встроенный, оптимизирован) | mbedTLS (встроенный) | mbedTLS (стороннее) |
Файловая система | FatFS, LittleFS (стороннее) | FileX + LevelX (встроенные) | FatFS, LittleFS (встроенные) | DFS + FatFS / LittleFS |
GUI | ❌ нет (LVGL стороннее) | GUIX (встроенный) | LVGL (интеграция есть) | Persimmon / LVGL |
USB | ❌ нет (TinyUSB стороннее) | USBX (встроенный) | USB‑стек (встроенный) | TinyUSB / RT‑Thread USB |
Поддержка RA8M1 в FSP | ✅ полная | ✅ полная | ⚠️ ограниченная | ❌ нет BSP |
Сертификация | ❌ нет | IEC 61508 SIL 4, IEC 62304 | ❌ нет | ❌ нет |
Латентность | Зависит от конфигурации | Детерминированный O(1) | Зависит от конфигурации | Зависит от конфигурации |
FreeRTOS
Самый популярный RTOS в мире embedded. Минималистичное ядро, огромное сообщество, множество примеров. Однако это именно ядро: сетевой стек, файловую систему, GUI и USB‑стек придётся собирать из разрозненных сторонних компонентов (LwIP, FatFS, LVGL, TinyUSB). Каждый из них: свой API, своя модель потоков, свои баги. Интеграция работает, но требует значительных усилий, а связность компонентов остаётся на совести разработчика. Для проекта с 30+ задачами и полным набором middleware это превращается в самостоятельную инженерную задачу.
Azure RTOS (Eclipse ThreadX)
Изначально коммерческая RTOS от Express Logic, приобретённая Microsoft и в 2023 году переданная в Eclipse Foundation под MIT‑лицензией. Ключевое преимущество: монолитный middleware‑стек. ядро ThreadX, сетевой стек NetX Duo, TLS‑модуль NetX Secure, файловая система FileX с wear‑leveling (LevelX), GUI‑библиотека GUIX и USB‑стек USBX. Все компоненты разработаны одной командой, используют единый API и общую модель потоков, нет «зазоров» между сторонними библиотеками.
Планировщик ThreadX детерминированный O(1): время переключения контекста не зависит от числа задач. Поддерживается preemption‑threshold scheduling, механизм, позволяющий ограничить вытеснение внутри группы задач без использования мьютексов, что снижает количество переключений контекста.
Для RA8M1 весь стек интегрирован в Renesas FSP: ThreadX, NetX Duo, FileX, GUIX и USBX конфигурируются через RA Smart Configurator и поставляются с HAL‑привязками к периферии (SDHI, Ethernet, USB, SPI Flash). NetX Secure умеет использовать аппаратный криптодвижок RSIP‑E51A, и TLS‑хэндшейк выполняется с аппаратным ускорением RSA/ECC без нагрузки на ядро.
Zephyr
Перспективная RTOS под крылом Linux Foundation с обширной поддержкой плат и драйверов. Имеет собственный сетевой стек, интеграцию с mbedTLS, поддержку FatFS/LittleFS и LVGL. Однако поддержка RA8M1 в Zephyr на сегодня ограничена, нет полноценной интеграции с FSP‑периферией (SDHI, USB, крипто). Для проекта это означало бы написание HAL‑прослойки с нуля, что сводит на нет преимущества готовой экосистемы.
RT‑Thread
Активно развивающаяся китайская RTOS с богатым набором компонентов. Имеет нативный BSP для GD32, но не для Renesas RA8. Документация преимущественно на китайском. Для данного проекта не рассматривается.
Вывод
Выбор: Azure RTOS (ThreadX), единственный вариант, дающий полный middleware‑стек (TCP/IP, TLS, файловая система, GUI, USB) из одних рук с полной интеграцией в FSP для RA8M1. FreeRTOS проигрывает не как планировщик, а как платформа: собирать эквивалентный набор middleware из разрозненных библиотек, это месяцы дополнительной интеграции. Zephyr перспективен, но поддержка RA8M1 пока недостаточна для production‑проекта.
Резюме
Итак, цель проекта: создать открытый спортивный гаджет, свободный от проприетарных экосистем и подписок. Определил требования: Wi‑Fi, BLE, дальнее радио (LoRa / Sub‑GHz), GPS, IMU, экран, SD‑карта, OTA и собственный облачный портал. Радио реализовано внешними модулями, а не встроено в основной MCU, и при смене радиостандарта переделка платы минимальна. Перебрал семь контроллеров и четыре RTOS, в итоге остановился на Renesas RA8M1 и Azure RTOS (ThreadX).