Welcome Benjamin Cabé of The Zephyr Project!
Benjamin is the developer advocate at The Zephyr Project, which is both a Real Time Operating System and an ecosystem (or almost like a “distro”, rather than an OS)Benjamin does videos on the Zephyr YouTube and maintains an awesome blog / newsletterThe ecosystem is deep: Chris recently learned there is a state machine frameworkMultiple people involved in dev like an OSThe Platinmum Members includes chip companies like NXP, Nordic, ADIThere are 600+ boards supported in the ecosystem (and more if you do custom)Devicetree is a tough concept, but a powerful one that was borrowed from LinuxWho is the audience for Zephyr?Chromebook embedded controllerWhat’s the smallest processor that Zephyr can run on? M0s can run it no problemChris thinks one of the benefits is the ability to bolt new stuff on to a projectSimulation through Wokwi (Past Guest Uri) or Renode (Past Guest Michael)Using different levels of abstractionzephyr i2c initBenefits of abstractionSwapping out chips (bubblegum tapshoes)Tying stuff together (bolting stuff on)Infrastructure with CI/CDZephyr doesn’t have an official IDE but VScode “just works”Helper tools from NordicOpen SourceHobby projectsDev surveyCustom Keyboards (ZMK)RP2040 supportArduino recenlty joined the projectLayers of abstractionArchitecture (ie. arm, nios2, x86)SOC (available peripherals surrounding the core)Board (PCB definition which might have:)SOCMemoryPeripherals / SensorsCheck the tree and PRs for sensors that might be in-flightCompared to Arduino IDEChoosing ecosystemsWeekly newsletterThings you didn’t know you needed: NMEA subsystemIn Jay Carlson’s 2nd appearance on the show, he said “I’m reading more code than I’m writing”Benjamin’s profile photo is of his artificial nose he created a few years agoMaking a machine model for bread (pandemic)It uses TFLiteWhat is the project doing? (in parallel)Acquire dataMachine learning inferenceDisplay updateNetwork interfaceBenjamin reimplemented the Nose in Zephyr using ZBus (Chris recorded a video with the author of this subsystem)Like an MQTT broker on deviceSome of the concerns I (Chris) had when I was starting was not understanding RTOS concepts (threads, queues, etc). Brian Amos was on the show talking about his book, which is a great way to get started with these ideas.Threading / work queuesThe importance of a project when starting outStarter hardwareHero devkits (Chris likes the nRF9160-DK as a starter board or the nRF5340-DK)M5stack boardsiMX8Jumping down to Zephyr from LinuxMPU + MCUTight integrationZephyr can run POSIX codeWhat about the the RT in RTOS? Does this operate realtime often? (timing critical)BOM cost and software costSecurity and dependenciesJoin the Zephyr discord to talk to other people using ZephyrTechTalks / YouTubeInterested in going to a conference in Seattle in 2024 for Zephyr? The ZDS / EOSS CFP is open now!