Happy Friday, folks! There is a really cool addition this week which I thought deserved a quick video to walk you through what it’s all about. Support for CodeChecker was just added, which means that it’s now super easy to run a wide variety of static analysis and code style rules against your Zephyr applications, and get very detailed, actionable, reports. Just keep reading, it’s literally the next section below 🙂
Codechecker support
As mentioned in the intro, this the most exciting thing for me this week. I have to admit I wasn’t familiar with CodeChecker and it really is an impressive tool. Not only is it very powerful and versatile for… well… code checking 🙂 but it also comes with a complete server infrastructure and web UI that allows you to track how many defects get added/resolved over time, collaborate with coworkers on flagging what might be false positives, etc.
After having played with CodeChecker for a few minutes today, I realized it would be even better if I would share my findings with y’all, so I recorded a video which goes through some of the cool features of the tool, and that shows you how easy it is to enable CodeChecker support for any Zephyr project.’, so I recorded a video which goes through some of the cool features of the tool, and that shows you how easy it is to enable CodeChecker support for any Zephyr project.
Check out the documentation page for more information on how to get started.
LVGL getting some love
All the glue code for LVGL, that used to live in Zephyr’s fork of the upstream LVGL repo, has now been moved to the main Zephyr repository. (PR #61300)
This will make it much easier to improve LVGL support going forward, and there are actually several pull requests lined up already that are really promising with regards to bringing significant performance improvements to LVGL in Zephyr.
Boards & SoCs
- Support has been added for the YD-ESP32 dev kit. (PR #60067)
- Support for ARM Cortex-M4F core of the phyBOARD-Lyra from PHYTEC has been added. (PR #60603)
Samples
- The USB HID Mouse sample has been updated to leverage the Input subsystem. To quote the author, “this makes the sample much simpler and smaller”.
Any board with USB device support and a set of 4 keys defined asINPUT_KEY_[0-3]
will act as a mouse when plugged to a computer (for example, pressing Key-0 will be the equivalent of a left mouse button click). (PR #61104)
Drivers
- To facilitate synchronization between heterogeneous processors, a hardware spinlock driver API has just been introduced, with a driver implementation for Sequans SoCs. (PR #60625)
- ADC support is now available for ESP32-S3. (PR #60623)
- A new IPM (inter-process mailbox) driver is available for AMD-Xilinx platforms. (PR #61008)
- PWM support is now available for TI cc13xx_cc26xx. (PR #60828)
- New Synopsys DesignWare timer driver (PR #60783)
- New HyperRAM driver for Winbond W956A8MBYA. (PR #59845)
- Microchip XEC tachometer sensor now supports low-power mode. (PR #60718)
- Added support for Ambiq watchdog driver. (PR #61417)
A big thank you to the 9 individuals who had their first pull request accepted this week, 💙 🙌: @tnmysh, @0bijian0, @jcsxdev, @pbalsundar, @moradelk, @cesta2z, @Frauschi, @Christian-Marx, and @blemouzy.
As always please feel free to jump in with your thoughts or questions in the comments below. See you next week!
If you enjoyed this article, don’t forget to subscribe to this blog to be notified of upcoming publications! And of course, you can also always find me on Twitter and Mastodon.
Catch up on all previous issues of the Zephyr Weekly Update: