The Linux Plumbers Conference, the premier event for developers working at all levels of the plumbing layer and beyond, takes place in Richmond, Virginia on November 13-15. The event will be in-person at the Omni Richmond Hotel and remotely, however most of the presenters will be in-person. Learn more about the conference on the main conference website.
Zephyr will be represented in several sessions and a microconference. As these accepted sessions are scheduled, we will update the website.
Putting Linux into Context – Towards a reproducible example system with Linux, Zephyr & Xen (45 minutes) – Philipp Ahmann, Technical Business Development Manager at Robert Bosch GmbH and Chair of the ELISA Project Technical Steering Committee
Demos on embedded systems using Linux are plentiful, but when it comes to reproducing them, things get complicated. Additionally, on decent embedded systems Linux is only one part of the system and interacts with real-time operating systems and virtualization solutions. This makes reproduction even harder.
Within the Linux Foundation’s ELISA project, we started to create a reproducible example system consisting of Linux, Xen, and Zephyr on real hardware. This is the next step after we achieved a reproducible system with a pure Linux qemu image.
The idea is to have documentation, a continuous integration including testing, which can be picked up by developers to derive and add their own software pieces. In this way they should be able to concentrate on their use case rather than spending effort in creating such a system (unless they explicitly want this). We also show how to build everything from scratch. The assumption is that only in this way it is possible to get a system understanding to replace elements towards their specific use cases.
We had challenges finding good hardware, tools, freely available GPU drivers and more and we are still not at the end. A good system SBOM is also creating additional challenges, although leveraging the Yocto build system has provided some advantages here.
While we are setting up the first hardware with documentation from source to build to deployment and testing on embedded hardware, we aim to have at least two sets of all major system elements like Linux flavor, a choice of virtualization technique, real-time OS and hardware. Only when software elements and hardware can be exchanged, we identify clear interfaces and make a system reproducible and adoptable.
Open Questions are:
- What will be a good next hardware to extend this PoC scope?
- Where do open source, security, safety, and compliance come best together?
- Which alternative real-time operating systems and virtualization should be incorporated?
Breaking Barriers: Arduino Core API advancements in Zephyr, Linux and IoT Systems (20 minutes) – Dhruva Gole, Embedded Software Engineer at TI
his presentation will provide an overview of the Arduino Core API and Zephyr RTOS, and explain how their integration can simplify and streamline IoT development. We will cover the advantages of using the Arduino programming model with Zephyr, and how it can benefit developers by providing access to a wide range of pre-built functions and modules. The presentation will also cover the key features of the Arduino Core API for Zephyr RTOS, including digital and analog input/output, serial communication, and peripheral interfaces. We will discuss how these features can be used to create real-time applications with reduced development time and complexity.
There is still scope to achieve an even more seamless experience for beginners, by integrating it with Platform IO or Arduino IDE. However this approach of how we can tie zephyr, the Arduino core module and platform IO needs to be discussed further, as to what the ideal way to do this would be, and if there are other better platforms to target instead.
We will also explore possibilities as to how one can leverage a Linux Host machine as a CI tool to enable development and testing of an Arduino application code with the help of native_posix target. This can help Arduino Code projects to test and validate their codes faster and in a simpler fashion. No clear way to do this exists today and this too is a topic that could garner some attention.
There is also room for improving the Arduino Core API support to include the SPI, CAN and USB implementations. There’s also an opportunity to leverage the excellent BLE stack in zephyr in an Arduino friendly way using something like the ArduinoBLE compatible calls. The talk will cover a few approaches to tackling these challenges and hope to get better suggestions or reviews from the community.
Internet of Things MC (20 minutes) – Chris Friedt, Friedt Professional Engineering Services, and Stefan Schmidt
he IoT Microconference is a forum for developers to discuss all things IoT. Topics include tools, telemetry, device drivers, and protocols in not only the Linux kernel but also Real-Time Operating Systems such as Zephyr.
Since last year, there have been a number of new technical topics with significant updates.
- Opportunities in IoT and Edge computing with the Linux /dev/accel API
- Using the Thrift RPC framework between Linux and Zephyr
- Zephyr’s new HTTP Server (a GSoC project)
- Rust in the Zephyr RTOS: Benefits, Challenges and Missing Pieces
- BeagleConnect Freedom Updates, Greybus, and the Linux Interface
- Linux-wpan updates on 6lowpan, 802.15.4 PAN coordinators and UWB
Current Problems that require attention (stakeholders):
- IEEE 802.15.4 SubGHz improvement areas in Zephyr, Linux (Florian Grandel, Stefan Schmidt, BeagleBoard.org)
- WpanUSB upstreaming in the Linux kernel, potentially dropping Zephyr support (Andrei Emeltchenko, BeagleBoard.org)
- IEEE 802.15.4 Linux subsystem device association handling (Miquel Raynal, Alexander Aring, Stefan Schmidt)
- Zephyr potentially dropping Bluetooth IPSP?
On a slightly less technical topic.
- Reflections after Two Years of Zephyr LTSv2
We hope you will join us either in-person or remote for what is shaping up to be another great event full of collaboration, discussion, and interesting perspectives.
Stay tuned for more details.