The first-ever Zephyr Developer Summit will offer community members a chance to learn more about the fastest growing RTOS in an informal educational environment. The event is free to attend and the last day to register for the event is June 4. Register here: http://bit.ly/register-ZDS2021.
Check out the sessions that will be take place on Wednesday, June 9.
Day 2: Mini-Conferences
Device Management Mini-Conference (Wednesday, June 9 at7am – 9am PDT / 4pm – 6pm CEST)
- How to perform Zephyr OTA update over LoRaWAN – Speakers: Piotr Król, LPN Plant
- This presentation will elaborate on how to perform an Over-The-Air (OTA) update of the Zephyr OS-based application using LoRaWAN. To achieve this goal, we will propose to use MCUboot open source bootloader. The main limitation of LoRaWAN is the maximum payload length, so the target application has to be fragmented accordingly, sent over the network, and placed by the MCU in a memory bank. There are few possible scenarios, but the one we will present is a dual bank update, which relies on replacing only one copy of 2 available firmware banks. This mechanism lets us revert the changes if anything goes wrong. The presentation will also explain how to maintain the authenticity and integrity of firmware updates. Finally, we will present a demo showing the action using the Yocto-based x86 gateway with RAK833 LoRa module and Chirpstack driving update of multiple STM32-based nodes.
- Simplifying sensor management using LwM2M and Zephyr API – Marcin Nagy, Mieszko Mieruński & Kamil Panek, AVSystem
- The growing number of deployed IoT devices, together with the increasing availability of low-power wide-area networks (LPWAN), sets new challenges for efficient and scalable device management solutions. Lightweight M2M (LwM2M) is a device management and service enablement protocol developed as an open standard by OMA SpecWorks. Device management protocols like MQTT or AMQP are excellent choices for devices with Internet access and powered by electricity. However, for constrained devices operating in cellular LPWA networks (e.g., NB-IoT, LTE-M), where long battery lifetime matters, every byte sent or received on the air interface matters. LwM2M fits perfectly in such deployments by providing very efficient data encoding over CoAP and minimizing TCP transport overhead when working over UDP.
- In addition to technological advantages in constrained environments, LwM2M defines some IPSO Objects to increase interoperability between devices and servers from different manufacturers. As IPSO objects are openly available and peer-reviewed by OMA SpecWorks members, device developers can use them to model devices, saving their time by taking an already published object instead of reinventing the wheel by creating another custom device model.
- Unfortunately, many developers fail to understand the value that IPSO objects bring. They find implementing them cumbersome and often decide to go with their own custom device model. In this presentation, we show the integration of Anjay, our open-source LwM2M client, with Zephyr and show how to use Anjay API for efficient device management. Based on this, in the second part of the presentation, we demonstrate how to use Zephyr API to reduce the development time needed to implement IPSO objects for device sensor management.
- Field Report: Setting up a Software Product Line Architecture – Gregory Shue, Legrand
- Since the 1990s, the Software Engineering Institue (sei.cmu.edu) has been researching best practices and success metrics for setting up, managing and delivering Software Product Line (SPL) architectures to support strategic reuse of software. This report presents the “Good, Bad, and Ugly” discovered from using the Zephyr ecosystem as a foundation for an extensible down-stream SPL framework.
Zephyr for Power Electronics Mini-Conference (Wednesday, June 9 at 9:30am – 11:30am PDT / 6:30pm – 8:30pm CEST)
- Using Zephyr for hard real-time applications: motor control – Gerard Marull Paretas, Teslabs Engineering S.L.
- Zephyr is not only a great RTOS but also a full-featured ecosystem. However, is it ready for hard real-time applications? Advanced motor control techniques such as SV-PWM require fast and deterministic control loops. In this presentation we will show how Zephyr can be successfully integrated into one of such applications.
-
- Zephyr is not only a great RTOS but also a full-featured ecosystem. However, is it ready for hard real-time applications? Advanced motor control techniques such as SV-PWM require fast and deterministic control loops. In this presentation we will show how Zephyr can be successfully integrated into one of such applications.
- Software Defined Power Electronics: Leveraging Zephyr to unleash the Arduino of Energy – Luiz Villa and Jean Alinei, LAAS
- Software defined systems are based on an abstraction between hardware and function. They go counter to the current practices of power electronics which are mostly function defined hardware. In this presentation the OwnTech team will explain their take on this issue and how they tap the potential of Zephyr in the hope to create the “Arduino of Energy”.
- IoT-enabled Solar Power Converters with Zephyr – Martin Jäger, Libre Solar
- Libre Solar develops charge controllers and battery management systems for off-grid renewable energy systems. The hardware comes with a CAN interface and can be easily extended with wireless communication modules for GSM and LoRa. Zephyr RTOS provides a seamless integration of IoT communication and hard real-time control.
In this presentation we will share our experience with a digitally controlled DC/DC converter developed to build a 48V DC grid for energy access applications in East Africa.
- Libre Solar develops charge controllers and battery management systems for off-grid renewable energy systems. The hardware comes with a CAN interface and can be easily extended with wireless communication modules for GSM and LoRa. Zephyr RTOS provides a seamless integration of IoT communication and hard real-time control.
- Panel Discussion: Power Electronics for Zephyr Roadmap – Gerard Marull Paretas, Luiz Villa, Jean Alinei, and Martin Jäger
- During this open panel discussion we want to draft a roadmap for power electronics features that should be added to Zephyr based on the experience of the speakers and the community
Day 2 User/Ecosystem Track:
- Real Time in the Real World, Scheduler Details for Practical Problems – Andy Ross, Intel (Wednesday, June 9 at 7am – 8am PDT / 4pm – 5pm CEST)
- An hour-long deep dive into the details of Zephyr’s evolving thread scheduling facilities, their interactions with the broader OS and their application (and misapplication) to real systems. Topics include a quick overview of the base priority-based scheduler, what “cooperative” priorities really mean, how MetaIRQ priorities work and what they are for, Earliest-Deadline-First priorities, and the new p4workq abstraction for matching pooled threads with scheduler parameters.
- Quality vs Safety in ISO 26262 – Peter Brink, UL (Wednesday, June 9 at 8am – 9am PDT / 5pm – 6pm CEST)
- This presentation looks at the different development stages described in ISO 26262 (the automotive safety standard) and resolves the underlying quality expectations for each and distinguishes those from the safety expectations. As Zephyr works towards safety certifications and the formal capture of the requirements, these are important considerations to keep in mind as that process continues.
- Using Visual Trace Diagnostics on Zephyr Applications – Johan Kraft, Percepio AB (Wednesday, June 9 at 9:30am – 10am PDT / 6:30pm – 7pm CEST)
- Developing reliable and performant RTOS applications is far from trivial, in part due to challenges related to multithreading, software timing and resource usage. Such aspects are not apparent in the source code and calls for good insight into the runtime system to facilitate software design verification and system-level debugging.
- We will present new support for visual trace diagnostics that is being introduced in Zephyr, including what this concept implies, how to enable it and relevant use-cases. A demo will be provided using Percepio Tracealyzer, that is now being extended to also support Zephyr.
- ACRN Hypervisor and Zephyr RTOS for Industrial IoT Applications – Jennifer Williams, Intel (Wednesday, June 9 at 10:00am – 10:30am PDT / 7:00pm – 7:30pm CEST)
- Open-source ACRN hypervisor and Zephyr RTOS can be used together on an x86-based platforms, such as Elkhart Lake CRB. The combination leverages the isolated virtual machine environment of the hypervisor and the real-time capabilities of the operating system. This demonstrates ACRN hybrid scenario in which Zephyr is running in a pre-launched User Virtual Machine. Example usages include industrial IoT applications. This implementation uses twister and ztest framework for testing on HW.
- Micropython binding to LVGL in Zephyr OS – Zuzana Miklánková, Masaryk University (Wednesday, June 9 at 10:30am – 11:00am PDT / 7:30pm – 8:00pm CEST)
- The talk describes the integration of LVGL + Micropython as a Zephyr application. Possible use cases of the implemented solution are mentioned; moreover, the impacts which the Micropython layer brings to LVGL on Zephyr applications are discussed. In the end, a brief comparison of resource usage of Zephyr LVGL application both with and without Micropython layer is presented.
- Lightning Talk: Open-Source Soup – Zephyr + RISC-V + Open FPGA – Chris Vondrachek, Intel (Wednesday, June 9 at 11:00am – 11:30am PDT / 8:00pm – 8:30pm CEST)
- FPGA SoC development typically requires unique tools & experience that limit acccess to those skilled in traditional microcontroller + RTOS workflows. Zephyr’s built-in support for LiteX RISC-V and related open-source FPGA SoC cores automates the bulk of the gateware generation process & sigificantly reduces the barrier of entry in programmable hardware solutions. In this short talk, we’ll demonstrate building a system consisting of open-source ingredients:
- 1.) Zephyr RTOS
- 2.) RISC-V CPU
- 3.) LiteX SoC builder
- 4.) MAX10 FPGA board
- FPGA SoC development typically requires unique tools & experience that limit acccess to those skilled in traditional microcontroller + RTOS workflows. Zephyr’s built-in support for LiteX RISC-V and related open-source FPGA SoC cores automates the bulk of the gateware generation process & sigificantly reduces the barrier of entry in programmable hardware solutions. In this short talk, we’ll demonstrate building a system consisting of open-source ingredients:
- Coredump: a brief introduction and demo – Daniel Leung, Intel (Wednesday, June 10 at 7:00am – 7:30am PDT / 4:00pm – 4:30pm CEST)
- When fatal error occurs, it is usually preferable to restart the device so that it can continue providing services with minimal downtime. With coredump, it is possible to capture the software states associated with the fatal error, and has the information available for later retrieval and analysis. This presentation provides a brief introduction of the coredump subsystem in Zephyr, and a brief demonstration on how it works.
Day 2 / Contributor Track:
- Securing MCUBoot in 5 minutes or less – Jared Wolff, Circuit Dojo LLC (Wednesday, June 9 at 7:00am – 7:30am PDT / 4:00pm – 4:30pm CEST)
- Learn how to generate and use a signing key to secure your OTA updates in a few short steps
- Using OPC UA with Zephyr – Vincent Lacroix, Systerel (Wednesday, June 9 at 7:30am – 8:00am PDT / 4:30pm – 5:00pm CEST)
- In the Industry 4.0 context, data are a valuable asset that must be protected. Ensuring the confidentiality and integrity of the data exchanged by the IIoT devices is challenging, OPC UA provides the appropriate mechanisms to build scalable, secure and interoperable solutions with end-to-end encryption. After a short introduction to OPC UA, you will see in this presentation how you can deploy S2OPC (https://gitlab.com/systerel/S2OPC) with Zephyr on your product to fulfill these requirements. As a bonus, we will see how Renode (https://github.com/renode/renode) can be used with the solution in continuous integration.
- Trusted Firmware M in Zephyr – Kevin Townsend, Linaro (Wednesday, June 9 at 8:00am – 8:30am PDT / 5:00pm – 5:30pm CEST)
- An overview of the current integration work enabling Trusted Firmware M as a secure processing environment (SPE), with Zephyr as the non-secure/application environment. Presents key features of TF-M 1.3.0, and current integration work and goals with Zephyr.
- Demand Paging: when software is bigger than available memory – Daniel Leung, Intel (Wednesday, June 9 at 9:30am – 10:30am PDT / 6:30pm – 7:30pm CEST)
- Feature rich software requires lots of memory to function. Hardware targeting IoT applications usually have limited physical memory to keep cost and power consumption low. Demand paging comes to the rescue when software grows larger than available memory by swapping memory into lower cost but slower storage devices. This presentation gives an overview of demand paging in Zephyr.
- Zephyr Developer Environments (Birds of Feather discussion topic) – Lauren Murphy, Intel (Wednesday, June 9 at 10:30am – 11:30am PDT / 7:30pm – 8:30pm CEST)
- Now that we’ve added several new members to the ranks of the Zephyr Project and even more products are adopting Zephyr, there are more Zephyr developers than ever before – almost 3000 on Slack alone! We’d like to meet informally to discuss your tips and tricks for setting up your developer environments. Topics include IDEs, text editors, tools, operating systems (Windows / Mac / Linux), and anything else you think would be helpful to Zephyr developers and maintainers. For example, we’ll be asking Visual Studio Code developers about your must-have extensions and asking Windows 10 developers for your feedback on the Getting Started Guide. Please come to this BoF session ready to share your settings, configurations, tweaks, and hacks with the Zephyr community!