A Reusable Zbus Based Architecture, Abstracting Core Application...
summary
Plentify ports products to Zephyr and builds a reusable application base using zbus channels for commands and events, splitting functionality into ~5 independent services. zbus gives one-to-many inter-thread messaging with three subscriber types (listener, message subscriber, normal subscriber), improving modularity, testability and reuse. Practical issues include unioned struct payloads hurting type safety, copying large data (images) for subscribers versus pointer ownership and lifetime management, and choosing thread vs listener execution context per service.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:05Reusable architecture motivation
- 2:29Command and event channels
- 5:40Zbus introduction
- 7:07Zbus for inter-thread communication
- 9:37Architecture benefits and REST analogy
- 11:00Reusable services advantages
- 11:44Channel challenges
- 13:20Q&A
related talks
15mLightning Talk: A Reusable Zbus Based Architecture, Abstracting Core Application Components
01h 31mTutorial: Zbus - the Lightweight & Flexible Zephyr Message Bus
46mZbus - New Features and Roadmap
43mZbus 2030: Community-Driven Directions for Zbus
39mZBus - New Features and Roadmap
38mMicroservices for Microcontrollers: Composable Software Architecture for Embedded...
30mCombining Zephyr & C++20 to Build Safe, Low-footprint, Event-based Applicati...
38mMicroservices for Microcontrollers: Composable Software Architecture for Embedded De...
