В нашем уютном эмбеддед сообществе, иногда, происходят так называемые инфобез момент. Это происходит когда люди из сферы инфобеза начинают читать документацию на аппаратные платформы и делают много дивных открытий. Приведу 2 примера.
Первое это конечно Bad USB. Люди из мира информационной безопасности открыли доки на USB и обнаружили что девай сам передаёт собственные дескрипторы на хост. А что если они будут ложные? Ни какие доводы о том, что это фича не останавливали любителей инфобеза. Второе это SD Express карты. Их сделали сильно быстрее подключи напрямую к PCIE. Однако оказалось что устройства на шине PCIE могут читать произвольные участки оперативной памяти с использованием DMA контроллера. А значит ваши данные, из оперативки, можно украсть. Пользователь, будь осторожен, не перепутай SD карту и огромную отладку, которая пихается в SD слот.
Буквально пару дней назад в Мадриде на конференции RootedCON произошёл очередной инфобез момент. На этот раз он касался ESP32. Что произошло: "специалисты" в сфере инфобеза разобрали несколько бинарников (с помощью Ghidra) которые поставляются в ESP IDF для работы с Bluetooth Controller. Они обнаружили недокументированные HCI команды (картинка 2). Поясню: HCI - это самый низкоуровневый протокол общения с контроллером BT, на данном уровне вы просто формируете команду из байтов и шлете ее в радио сопроцессор. Есть демо от ESP, с помощью которого можно посылать данные команды напрямую через UART. По сути с помощью этих скрытых команд реализован отладочный интерфейс, можно читать и писать оперативку, флеш и регистры.
Казалось бы, очень интересное исследование, однако эти люди зачем-то решили назвать это бекдором (хотя в последствии дописали, что погорячились). Очевидно что это не является бекдором, потому что команды HCI посылаются внутри контроллера. То есть, сам ESP32 должен послать себе команду на чтение памяти. Однако, если вы можете модифицировать код внутри ESP32, вы и так сможете читать и писать всю память т.к. там нет никаких TrustZone. Особенно меня забавляет демонстрация данной уязвимости на C# (последняя картинка). Они сначала загрузили демку от ESP реализующую управление HCI через UART, а потом показывают что "бекдор" можно использовать на различных языках программирования (полное демо на python).
Это было-бы очень смешно, если бы не было так грустно. Компания которая говорит о себе как о "Tarlogic, a leading company in Bluetooth standard security" делает настолько низкокачественные исследования. Крупные медиа (1, 2) просто копируют зарубежные статьи не включая мозг, и в целом подрывается доверие системе CVE.
(картинки взяты из презентации)
Первое это конечно Bad USB. Люди из мира информационной безопасности открыли доки на USB и обнаружили что девай сам передаёт собственные дескрипторы на хост. А что если они будут ложные? Ни какие доводы о том, что это фича не останавливали любителей инфобеза. Второе это SD Express карты. Их сделали сильно быстрее подключи напрямую к PCIE. Однако оказалось что устройства на шине PCIE могут читать произвольные участки оперативной памяти с использованием DMA контроллера. А значит ваши данные, из оперативки, можно украсть. Пользователь, будь осторожен, не перепутай SD карту и огромную отладку, которая пихается в SD слот.
Буквально пару дней назад в Мадриде на конференции RootedCON произошёл очередной инфобез момент. На этот раз он касался ESP32. Что произошло: "специалисты" в сфере инфобеза разобрали несколько бинарников (с помощью Ghidra) которые поставляются в ESP IDF для работы с Bluetooth Controller. Они обнаружили недокументированные HCI команды (картинка 2). Поясню: HCI - это самый низкоуровневый протокол общения с контроллером BT, на данном уровне вы просто формируете команду из байтов и шлете ее в радио сопроцессор. Есть демо от ESP, с помощью которого можно посылать данные команды напрямую через UART. По сути с помощью этих скрытых команд реализован отладочный интерфейс, можно читать и писать оперативку, флеш и регистры.
Казалось бы, очень интересное исследование, однако эти люди зачем-то решили назвать это бекдором (хотя в последствии дописали, что погорячились). Очевидно что это не является бекдором, потому что команды HCI посылаются внутри контроллера. То есть, сам ESP32 должен послать себе команду на чтение памяти. Однако, если вы можете модифицировать код внутри ESP32, вы и так сможете читать и писать всю память т.к. там нет никаких TrustZone. Особенно меня забавляет демонстрация данной уязвимости на C# (последняя картинка). Они сначала загрузили демку от ESP реализующую управление HCI через UART, а потом показывают что "бекдор" можно использовать на различных языках программирования (полное демо на python).
Это было-бы очень смешно, если бы не было так грустно. Компания которая говорит о себе как о "Tarlogic, a leading company in Bluetooth standard security" делает настолько низкокачественные исследования. Крупные медиа (1, 2) просто копируют зарубежные статьи не включая мозг, и в целом подрывается доверие системе CVE.
(картинки взяты из презентации)
👍15👏3🆒1
Несколько дней назад завершилась выставка Embedded World, и в ближайшие дни я опубликую несколько постов о том, что показалось мне интересным.
ST представили новую серию микроконтроллеров U3. По их словам, это самый энергоэффективный контроллер в мире. Как мне объяснили на стенде, высокой эффективности удалось достичь благодаря качественному техпроцессу, который позволяет ядру работать при 0,65 В. Также у них была демонстрация с сравнением U3 с другими контроллерами, где очевидно, контроллер от ST был сильно лучше прочих.
Но у меня есть сомнения. Я работал с Ambiq Apollo 3, и это очень замороченный на энергопотребление контроллер. Например, его оперативная память разбита на банки, которые можно отключать для экономии энергии. Так как у нас нет информации о том, какие именно тесты проводили ST, я пока не готов верить их заявлениям на слово. В любом случае, благодарю компанию за предоставленную борду.
ST представили новую серию микроконтроллеров U3. По их словам, это самый энергоэффективный контроллер в мире. Как мне объяснили на стенде, высокой эффективности удалось достичь благодаря качественному техпроцессу, который позволяет ядру работать при 0,65 В. Также у них была демонстрация с сравнением U3 с другими контроллерами, где очевидно, контроллер от ST был сильно лучше прочих.
Но у меня есть сомнения. Я работал с Ambiq Apollo 3, и это очень замороченный на энергопотребление контроллер. Например, его оперативная память разбита на банки, которые можно отключать для экономии энергии. Так как у нас нет информации о том, какие именно тесты проводили ST, я пока не готов верить их заявлениям на слово. В любом случае, благодарю компанию за предоставленную борду.
👍8🤔2❤1
Китайская компания Geehy сделала очень интересный контроллер для motor control приложений - G32R501. Этот контроллер основан на Cortex-M52, но самое примечательное — он поддерживает расширение Arm Helium, которое представляет собой набор векторных инструкций, а также собственный "Zidian mathematical calculation extended instruction set", разработанный Geehy.
Последнее особенно интересно, так как оно реализует sin, cos, tan как расширенные инструкции, а не как отдельный периферийный модуль, как Cordic в STM32G4. К сожалению документация по данному расширению доступна только на китайском, и там нет информации про их длительность в тактах. Придется когда нибудь проверить экспериментально, что не так уж и сложно учитывая что мне была предоставлена борда для экспериментов.
Последнее особенно интересно, так как оно реализует sin, cos, tan как расширенные инструкции, а не как отдельный периферийный модуль, как Cordic в STM32G4. К сожалению документация по данному расширению доступна только на китайском, и там нет информации про их длительность в тактах. Придется когда нибудь проверить экспериментально, что не так уж и сложно учитывая что мне была предоставлена борда для экспериментов.
🔥10👍3❤1
Всем привет! (Вероятно) вы могли задаться вопросом, куда я пропал и где же наигоднейший контент. Сегодня история будет именно об этом.
Учебные заведения в Германии гораздо более открытые, чем в России. Например, вы можете прийти в любую библиотеку и почитать любые книги, лежащие на полках. Единственное, их нельзя брать с собой, если вы не студент. Также вы можете стать "guest student" и посещать 1–2 предмета в семестре, и даже поучаствовать в сдаче экзамена. Именно в это я и ввязался.
Стать участником довольно просто: нужно найти нужный формуляр на сайте университета, подписать его у профессора (он не должен быть против), отправить обратно, и долго ждать. После этого вам дадут логин и пароль от личного кабинета студента, и можно официально учиться.
Я нашёл курс по проектированию RISC-V и цифровой схемотехнике на английском, потому что это именно то, что я преподавал в РФ, и было интересно посмотреть на разницу. Однако меня ждала подстава: то, что курс на английском, ничего не значит - семинары всё равно проходили на немецком. А ещё я залез немного глубже, чем следовало бы: через 2 недели мне нужно сдавать тест, а через 4 - презентовать групповой проект.
Вот с последним у меня и возникли проблемы. Я работаю в группе с тремя студентами. Идея такая - передача информации с помощью лазера через воздух. Конечно же, я взял на себя часть со схемотехникой, ведь я сеньор-помидор. Оказалось, что достичь 10 Mbit на 50-центовом ноунейм-лазере с Amazon и самом дешёвом пин-диоде - практически нереально. В итоге я потратил кучу времени на попытки заставить это работать, и даже не успел поиграться с FPGA и RISC-V. Кстати, кустарный прототип можно посмотреть на фото в посте.
В общем, данное приключение подходит к концу. Думаю, я ещё напишу, чем всё закончилось с экзаменом и проектом. Но главное - жизнь становится стабильнее, а значит, сейчас критическая вероятность появления нового годного контента.
Учебные заведения в Германии гораздо более открытые, чем в России. Например, вы можете прийти в любую библиотеку и почитать любые книги, лежащие на полках. Единственное, их нельзя брать с собой, если вы не студент. Также вы можете стать "guest student" и посещать 1–2 предмета в семестре, и даже поучаствовать в сдаче экзамена. Именно в это я и ввязался.
Стать участником довольно просто: нужно найти нужный формуляр на сайте университета, подписать его у профессора (он не должен быть против), отправить обратно, и долго ждать. После этого вам дадут логин и пароль от личного кабинета студента, и можно официально учиться.
Я нашёл курс по проектированию RISC-V и цифровой схемотехнике на английском, потому что это именно то, что я преподавал в РФ, и было интересно посмотреть на разницу. Однако меня ждала подстава: то, что курс на английском, ничего не значит - семинары всё равно проходили на немецком. А ещё я залез немного глубже, чем следовало бы: через 2 недели мне нужно сдавать тест, а через 4 - презентовать групповой проект.
Вот с последним у меня и возникли проблемы. Я работаю в группе с тремя студентами. Идея такая - передача информации с помощью лазера через воздух. Конечно же, я взял на себя часть со схемотехникой, ведь я сеньор-помидор. Оказалось, что достичь 10 Mbit на 50-центовом ноунейм-лазере с Amazon и самом дешёвом пин-диоде - практически нереально. В итоге я потратил кучу времени на попытки заставить это работать, и даже не успел поиграться с FPGA и RISC-V. Кстати, кустарный прототип можно посмотреть на фото в посте.
В общем, данное приключение подходит к концу. Думаю, я ещё напишу, чем всё закончилось с экзаменом и проектом. Но главное - жизнь становится стабильнее, а значит, сейчас критическая вероятность появления нового годного контента.
🔥31🏆4👍2
Как-то совсем незаметно прошло очень важное изменение от ST. Теперь в CubeMX 6.15.0 есть полная поддержка
Для меня это крайне хорошая новость, т.к. теперь можно использовать всю инфраструктуру
Я не успел ещё протестировать
Это происходит потому, что в файле
В любом случае, проблему наверняка скоро поправят. А я думаю о том, чтобы написать третью статью из серии про работу с STM - в этот раз с акцентом на
CMake toolchain. То есть теперь при выборе Toolchain/IDE -> CMake ниже появится новый пункт Default Compiler/Linker, и там можно выбрать между GCC и Starm-Clang.Для меня это крайне хорошая новость, т.к. теперь можно использовать всю инфраструктуру
clang без необходимости думать о том, как подружить clangd со специфическими GCC-макросами. Наконец-то на контроллерах можно работать с единой экосистемой.Я не успел ещё протестировать
Starm-Clang, зато в старом конфиге (с GCC), что-то идет не по плану и обновление ломает генерацию кода. Если воспользоваться инструкцией из моей статьи, то код просто не будет собираться, с ошибками вроде:error: implicit declaration of function ‘__LDREXW’
error: implicit declaration of function ‘__STREXW’
Это происходит потому, что в файле
CMakeLists.txt не появилась очень нужная там строка:# Include toolchain file
include("cmake/gcc-arm-none-eabi.cmake")
14 и 15 строки содержат два \n - как будто эти строки должны были появиться между ними, но что-то пошло не так.В любом случае, проблему наверняка скоро поправят. А я думаю о том, чтобы написать третью статью из серии про работу с STM - в этот раз с акцентом на
CMake toolchain и более глубокой настройкой clangd и clang-format.❤11👍10
Я тут наткнулся на хакатон, для получения инвайта на который необходимо решить серию из 3х квестов. Сам он проходит под Берлином и скорее всего для вас инвайт не будет иметь ценности. Но сами квесты достатчно интересные и у меня решение заняло 3 часа. Так что если сегодня вечером вам нечем занятся, попробуйте себя в решении.
root-access-hackathon.lovable.app
retro-root-access-abenteuer
Lovable Generated Project
🤔3👍1🔥1
Что-то давно не было постов. Нужно исправлять.
Буквально на днях произошол очередной "инфобез момент". На этот раз, он не связан с хардварой, но от этого нечуть не менее потешный. Сейчас шкварится компания ESET. Они нашли первый в истории самовайбкоденый вирус. Идея в том что кто-ко завайбкодил вирус (на go) внутри которого есть шаблон lua скрипта и попадая к жертве данный вирус скачивает и запускает локально gpt-oss-20b и эта модель продолжает вайбкодить данный щаблон. Получается мето вайбкодинг.
Что делает эту ситуацию еще более забавной? Этого вируса не существует. Буквально. Есть только скрины ресерчера из ESET в твитере, скачать его подезасемблить и самим посмотерть нальзя. Зато есть его автор, которому мы конечно-же верим.
Это еще самое веселое. На сколько вообще тяжёлая gpt-oss:20b? Сами веса весят около 16 гигов и еще столько-же нужно видеопамяти. А наскольно быстро оно работает? на 5090 вроде ок, также на ноутах с 16gb VRAM обещают 15-25 токенов в секунду, а на Apple Silicon Macs with M2 Pro 20-30 токенов. На обычном компе буде 1-0.5 токенов в секунду, а я напоминаю что 1 слово это, в среднем, 1-2 токена.
И того, вирус попадая к вам сначала скачает 16 гигов с интернета, а потом загрузит вашу 5090 под 100 процентов чтобы самозавайбкодится. Вообщем будьте осторожны и тчательно следите за уровнем загрузки ваших RTX5090.
Буквально на днях произошол очередной "инфобез момент". На этот раз, он не связан с хардварой, но от этого нечуть не менее потешный. Сейчас шкварится компания ESET. Они нашли первый в истории самовайбкоденый вирус. Идея в том что кто-ко завайбкодил вирус (на go) внутри которого есть шаблон lua скрипта и попадая к жертве данный вирус скачивает и запускает локально gpt-oss-20b и эта модель продолжает вайбкодить данный щаблон. Получается мето вайбкодинг.
Что делает эту ситуацию еще более забавной? Этого вируса не существует. Буквально. Есть только скрины ресерчера из ESET в твитере, скачать его подезасемблить и самим посмотерть нальзя. Зато есть его автор, которому мы конечно-же верим.
Это еще самое веселое. На сколько вообще тяжёлая gpt-oss:20b? Сами веса весят около 16 гигов и еще столько-же нужно видеопамяти. А наскольно быстро оно работает? на 5090 вроде ок, также на ноутах с 16gb VRAM обещают 15-25 токенов в секунду, а на Apple Silicon Macs with M2 Pro 20-30 токенов. На обычном компе буде 1-0.5 токенов в секунду, а я напоминаю что 1 слово это, в среднем, 1-2 токена.
И того, вирус попадая к вам сначала скачает 16 гигов с интернета, а потом загрузит вашу 5090 под 100 процентов чтобы самозавайбкодится. Вообщем будьте осторожны и тчательно следите за уровнем загрузки ваших RTX5090.
😁16🌚5
This media is not supported in your browser
VIEW IN TELEGRAM
Сегодня я расскажу, почему покупка Qualcomm Arduino ни на что не повлияет. И почему сама Arduino как концепция мертва уже лет 10, а сделать экзит с деньгами - лучшее, что руководитель мог сделать в своей ситуации.
Во-первых, вспомним, что было в самом начале. Arduino взлетела как удачный форм-фактор: вы могли быстро писать скетчи, не лезя сразу в чистый C или ASM. При этом авторы хоть сколько-нибудь сложных библиотек всё равно опускались на низкий уровень и мешали высокоуровневый код с С/ASM, как, например, тут. Это ужасно с точки зрения чистоты кода: библиотеки превращаются в свалку из миллионов
Что происходило дальше? Партнёрство с Intel (2013–2017). Немногие вспомнят такие платы, как Arduino 101 (2015-2016), а также попытки в Arduino с Linux - Intel Edison (2014-2017) и Intel Galileo (2013–2015). Где они сейчас? Проблема была в том, что Intel обеспечила поддержку базовых ардуиновских функций, но внутрь платформы лезть было трудно: отсутствовала документация и примеры и ни кто этим не стал занимался. Не помогло даже то, что Edison раздавали пачками - у меня было 5 или 6 отладочных плат.
Спустя ещё несколько лет началась активная диверсификация (2018): стали появляться новые платы. Например, Arduino с FPGA - MKR Vidor 4000 (2018), Arduino с NB-IoT - MKR NB 1500 (2018), "промышленный" контроллер - Opta (2022). Особо никто не знает и не видел - и причина та же: хреновая поддержка по верхам и игнорирование потребностей энтузиастов на низком уровне (инструменты, драйверы, документация, отладка).
Последний по-настоящему массовый продукт - Arduino UNO R4 (2023). Можно наивно предположить, что по USB там есть встроенный отладчик, как на многих нормальных девбордах, но нет. Видимо отладка слишком сложна для пользователя. Если у Minima хотя бы есть разъём под JTAG, то у версии WiFi он вообще не выведен. Да, можно закостылить ESP32 как CMSIS-DAP, но что делать, если я хочу отлаживать код вместе с Wi-Fi-частью?
И вот мы в текущем дне: Arduino UNO Q (2025). Супер-переусложнённая плата с большими вопросами по поддержке. Работает как макбук: можно вешать Type-C-хаб для вывода видео и подключения периферии, все в одном type C. Прогрессивно, но что с низким уровнем и инструментами?
Подводя итог: UNO Q - новый Edison. Qualcomm не славится любовью к опенсорсу, и с большой вероятностью HAL окажется закрытым или полузакрытым - это быстро убьёт экосистему вокруг платы. Слишком высокая сложность тоже не сыграет на руку мейкерам, которые привыкли тыкать модули в гребёнку, не погружаясь в схемотехнику. А что касается самой Arduino, их новые сложные платы так и не встали на один уровень с классикой и, по большому счёту, никому особо не нужны. Идея супер-сложных ардуин с очень высоким уровнем абстракции мертва уже около десятилетия. Так что остаётся порадоваться за тех, кто заработал хорошие деньги перед тем, как всё само развалится.
Во-первых, вспомним, что было в самом начале. Arduino взлетела как удачный форм-фактор: вы могли быстро писать скетчи, не лезя сразу в чистый C или ASM. При этом авторы хоть сколько-нибудь сложных библиотек всё равно опускались на низкий уровень и мешали высокоуровневый код с С/ASM, как, например, тут. Это ужасно с точки зрения чистоты кода: библиотеки превращаются в свалку из миллионов
#define под каждый контроллер. Но тем не менее это был самый простой способ доставить рабочий код конечному пользователю. Arduino помогала доставлять не только библиотеки, но и целые проекты. Самый яркий пример - Marlin. Очевидно, что сам проект разрабатывается не в Arduino IDE, но конечный пользователь, как правило, использует именно её.Что происходило дальше? Партнёрство с Intel (2013–2017). Немногие вспомнят такие платы, как Arduino 101 (2015-2016), а также попытки в Arduino с Linux - Intel Edison (2014-2017) и Intel Galileo (2013–2015). Где они сейчас? Проблема была в том, что Intel обеспечила поддержку базовых ардуиновских функций, но внутрь платформы лезть было трудно: отсутствовала документация и примеры и ни кто этим не стал занимался. Не помогло даже то, что Edison раздавали пачками - у меня было 5 или 6 отладочных плат.
Спустя ещё несколько лет началась активная диверсификация (2018): стали появляться новые платы. Например, Arduino с FPGA - MKR Vidor 4000 (2018), Arduino с NB-IoT - MKR NB 1500 (2018), "промышленный" контроллер - Opta (2022). Особо никто не знает и не видел - и причина та же: хреновая поддержка по верхам и игнорирование потребностей энтузиастов на низком уровне (инструменты, драйверы, документация, отладка).
Последний по-настоящему массовый продукт - Arduino UNO R4 (2023). Можно наивно предположить, что по USB там есть встроенный отладчик, как на многих нормальных девбордах, но нет. Видимо отладка слишком сложна для пользователя. Если у Minima хотя бы есть разъём под JTAG, то у версии WiFi он вообще не выведен. Да, можно закостылить ESP32 как CMSIS-DAP, но что делать, если я хочу отлаживать код вместе с Wi-Fi-частью?
И вот мы в текущем дне: Arduino UNO Q (2025). Супер-переусложнённая плата с большими вопросами по поддержке. Работает как макбук: можно вешать Type-C-хаб для вывода видео и подключения периферии, все в одном type C. Прогрессивно, но что с низким уровнем и инструментами?
Подводя итог: UNO Q - новый Edison. Qualcomm не славится любовью к опенсорсу, и с большой вероятностью HAL окажется закрытым или полузакрытым - это быстро убьёт экосистему вокруг платы. Слишком высокая сложность тоже не сыграет на руку мейкерам, которые привыкли тыкать модули в гребёнку, не погружаясь в схемотехнику. А что касается самой Arduino, их новые сложные платы так и не встали на один уровень с классикой и, по большому счёту, никому особо не нужны. Идея супер-сложных ардуин с очень высоким уровнем абстракции мертва уже около десятилетия. Так что остаётся порадоваться за тех, кто заработал хорошие деньги перед тем, как всё само развалится.
🔥14👍3❤2
Всем привет появилось желание написать что-то по поводу нового года. Этот год выдался не очень продуктивным с точки зрения контента, зато мне удалось чуть-чуть наладить жизнь за пределами интернета. Надеюсь в следующем году конткнта выйдет больше, посмотрим rust, zig в контексте микроконтроллеров, а также поковыряем RiscV и Zephyr os.
Вообщем всем с наступающем и надеюсь что следущий год будет хотябы немного лучше чем предыдущий.
Вообщем всем с наступающем и надеюсь что следущий год будет хотябы немного лучше чем предыдущий.
🔥16👍6❤3
В этом году в очередной раз посещаю Embedded World в Нюрнберге, и если вы где-то рядом то пишите, давайте кооперироватся.
ST кстати раздает бесплатные билеты.
Также постараюсь сделать посты если удастся найти что-то интересное непосредственно на самой выставке.
ST кстати раздает бесплатные билеты.
Также постараюсь сделать посты если удастся найти что-то интересное непосредственно на самой выставке.
👍9🥰6🔥5
Многих интересовал вопрос, зачем нужно было в
Компания ST представила 2 новых семейства:
Таким образом,
Сам
CubeIDE 2.0 вырезать CubeMX, и во время Embedded World я нашёл ответ.Компания ST представила 2 новых семейства:
STM32C5 и STM32V8. Первое -> это самый энергоэффективный микроконтроллер в мире, второе -> самый мощный (по производительности) контроллер от ST. Но важно не это, а то, что они не поддерживаются ни CubeMX, ни HAL. Для них теперь будут CubeMX 2 и HAL 2. Это не версии 2.0, это фундаментально другие продукты.CubeMX 2 позволит не просто назначать пины конкретным периферийным блокам, а позволит подключать конкретные драйверы из списка поддерживаемых ST. Как я понял, основная идея именно в том, чтобы связать пакеты конкретной версии с определёнными пинами. Очень сильно поменяется интерфейс. Например, будет отображаться код непосредственно перед генерацией.HAL 2 показался мне гораздо более интересным. Новый HAL должен стать минимальной обёрткой над LL, по сути, вызовы HAL будут объединением минимально необходимых функций LL.Таким образом,
CubeIDE должен поддерживать как первый, так и второй CubeMX, вот и причина. Я же очень с опаской смотрю на второй CubeMX: мне кажется, что в нём слишком много всего лишнего и что он действительно превращается в ардуино (мы берём рандомные библиотеки и наобум пытаемся их совместить). HAL 2 же, наоборот, мне показался очень интересным, скорее всего, я попробую полностью отказаться от CubeMX и перейти на чистый HAL. К тому же мне удалось пообщаться с человеком, который отвечает за архитектуру HAL 2, и он сказал, что CubeMX - фигня и настоящие мужики используют чистый HAL, у меня нет причин ему не доверять.Сам
CubeMX 2 должен выйти в релиз в ПН (16.03.26).👍10🔥2👎1