Available on your favorite podcast platform.
backstoryworking on a project using freeRTOS on STM32H743a lot of work integrating things like Ethernet/USBcode generation has tradeoffswithout one week, 1 engineer working part-time had Zephyr running with most drivers workingBuildKconfig (very granular)Device Tree -> C headersextensive use of Macrosno C++differences between other RTOS modelsmost MCU tooling takes RTOS, and MCU integrates and deliversZephyr does the opposite – they take MCU HAL, and then integrate and deliver directly to developersSupport/CommunityDiscordGithub discussionsShellis amazingproper terminal with tab completion, proper backspace support, etckeeps what you are typing at bottom of screen even if there are logging messagesscrolling
list threads, memory used, %CPU, etcProjects like Beagle Connect Freedom – they are piping shell over radio connectionLoggingstandard levels ERR, WRN, INF, DBGeasy to add a logging domain in any moduleMacros automatically apply LOG_WRN() to current logging domaincan change log level of each domain at runtime in shellToolingwell-integrated flashingdebugging uses the command line GDBLinux connectionsPerformancechallengesconfigurationtracing code through system callsdocumentation is fairly good, but can be hard to find thingsopinionThe Zephyr project is a sustainable approach as MCUs become more complexDiscuss this episode at our