Learn Zephyr RTOS from Embedded Software Experts Jacob Beningo and Mohammed Billoo
5 Live Sessions, every Thursday @ 11 - 12:30 ET from January 18 - February 15, 2024.
Recording will be made available and the course converts to on-demand access.
- - -
Looking to get started with Zephyr RTOS to develop embedded systems? In this hands-on workshop, participants will learn everything they need to know to get started designing and implementing Zephyr applications. You’ll learn how to set up, configure, and use Zephyr in your own projects. Once you have Zephyr running, you’ll learn how to interface with common peripherals like GPIO, USART, SPI, I2C, etc. We’ll even show you how to leverage Zephyr’s connectivity stacks!
Moreover, you’ll learn modern RTOS design techniques that will help you ensure your application runs smoothly and without issues. We’ll discuss the various options for designing an application and how to leverage the Zephyr API’s. By the end of the course, you’ll be knowledgeable enough to develop your own applications.
Key topics covered in this workshop include:
- The Zephyr architecture and development model
- How to configure Zephyr with west
- Device tree fundamentals
- Interfacing with common busses like GPIO, USART, SPI, and I2C
- Application design fundamentals like manage threads, semaphores, and mutexes
- Getting up and running with the BLE stack
The workshop includes five sessions on the following topics:
- Introduction to Zephyr RTOS
- Deep Dive into Zephyr’s Architecture and Modules
- Interfacing with common buses
- Application Design with Zephyr
- Connectivity and Communication in Zephyr
By the end of this workshop, participants will have a solid understanding of Zephyr and how to use to for embedded systems development. Armed with these skills, attendees will be well-equipped to navigate the complexities of firmware projects, streamline their development processes, and deliver robust and optimized embedded systems.
Join us for this immersive workshop and unlock the keys to mastering modern embedded software practices through an in-depth exploration of the Zephyr RTOS.
Detailed Session Descriptions:
Session 1: Introduction to Zephyr RTOS
In this session, participants will familiarize themselves with the Zephyr RTOS, its ecosystem, and the tools required for development. They will set up their first project, ensuring a solid foundation for more complex tasks. Topics covered include, but are not limited to:
- Overview of Zephyr RTOS and its place in the embedded system landscape
- Setting up the Zephyr development environment
- Basic project creation and exploration of the Zephyr directory structure
Session 2: Deep Dive into Zephyr’s Architecture and Modules
Participants will delve into the architecture of Zephyr RTOS, gaining insights into its modular design. They'll learn how to navigate and utilize the device tree for effective hardware configuration. Topics covered include, but are not limited to:
- Understanding the Zephyr kernel and core architecture
- Exploration of modules and their integration into applications
- Working with the device tree to configure hardware components
Session 3: Interfacing with Common Buses
This session covers the practical aspects of interfacing Zephyr with common bus systems. Attendees will engage in hands-on exercises to control hardware components and manage data transfer. Topics covered include, but are not limited to:
- Interfacing with GPIO for input/output operations
- Communication over USART and understanding serial data transfer
- Utilizing SPI and I2C for peripheral connectivity
Session 4: Application Design with Zephyr
The focus here is on robust application design. The attendees will learn how to structure their code to manage threads effectively, ensuring smooth operation and synchronization within their applications. Topics covered include, but are not limited to:
- Designing applications with task management in mind
- Implementing semaphores and mutexes for synchronization
- Efficient thread management and inter-process communication
Session 5: Connectivity and Communication in Zephyr
The final session will empower participants with the knowledge to incorporate connectivity features into their Zephyr applications. They will learn about the BLE stack and secure communication protocols, rounding out their skill set in embedded systems development. Topics covered include, but are not limited to:
- Introduction to Zephyr’s connectivity stacks, including Bluetooth Low Energy (BLE)
- Strategies for integrating wireless communication in embedded devices
- Best practices for network security and data integrity