PLAY PODCASTS
Zephyr - First Experiences
Episode 21

Zephyr - First Experiences

Some thoughts on our first few months with Zephyr

The TMPDIR podcast · Cliff Brake and Khem Raj

May 26, 202334m 22s

Audio is streamed directly from the publisher (storage.googleapis.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.

Show Notes

Available on your favorite podcast platform.

  • backstory
    • working on a project using freeRTOS on STM32H743
    • a lot of work integrating things like Ethernet/USB
    • code generation has tradeoffs
    • without one week, 1 engineer working part-time had Zephyr running with most drivers working
  • Build
    • Kconfig (very granular)
    • Device Tree -> C headers
    • extensive use of Macros
    • no C++
  • differences between other RTOS models
    • most MCU tooling takes RTOS, and MCU integrates and delivers
    • Zephyr does the opposite – they take MCU HAL, and then integrate and deliver directly to developers
  • Support/Community
    • Discord
    • Github discussions
  • Shell
    • is amazing
    • proper terminal with tab completion, proper backspace support, etc
    • keeps what you are typing at bottom of screen even if there are logging messages scrolling
    • list threads, memory used, %CPU, etc
    • Projects like Beagle Connect Freedom – they are piping shell over radio connection
  • Logging
    • standard levels ERR, WRN, INF, DBG
    • easy to add a logging domain in any module
    • Macros automatically apply LOG_WRN() to current logging domain
    • can change log level of each domain at runtime in shell
  • Tooling
    • well-integrated flashing
    • debugging uses the command line GDB
  • Linux connections
  • Performance
  • challenges
    • configuration
    • tracing code through system calls
    • documentation is fairly good, but can be hard to find things
  • opinion
    • The Zephyr project is a sustainable approach as MCUs become more complex

Discuss this episode at our community site.