The Zephyr microPlatform is a complete software platform for developing an
updatable, connected microcontroller-based device.
The Zephyr Project is a scalable, cross-architecture RTOS for constrained
devices, designed for security and with built-in Internet connectivity. The Open
Source Foundries RTOS microPlatform is based on Zephyr because we believe that
it is the future “Linux kernel of microcontrollers”. Like the Linux kernel,
Zephyr has an open governance model that allows companies and individuals to add
features and functionality and evolve the RTOS over time. Zephyr is licensed
under the Apache 2.0 license.
The Zephyr microPlatform includes the following key features:
- Secure bootloader
- OTA updates
- Zephyr kernel
- Networking and communications stacks
- Example sensor and actuator/control applications
Zephyr microPlatform block diagram
The Zephyr microPlatform provides built-in support for MCUBoot, a portable, open
source bootloader for microcontrollers which supports firmware image updates and
secure boot. The image updater can roll back failed updates, and recovers
gracefully from power failures. The secure boot process only runs application
binaries you have authorized.
Applications using the Zephyr microPlatform can also be modified to use custom
security hardware or software required by the device.
The Zephyr kernel provides a small footprint, high performance, multi-threaded
execution environment for higher level stacks, libraries and applications. A
minimal Zephyr-based application uses less than 8KB of ROM. Complex applications
including Bluetooth support, Internet connectivity, environment sensors, and
logging can be implemented in less than 200KB. Zephyr is highly configurable,
allowing you to tune resource usage and omit unnecessary features from your
Networking and Communications Stacks
Zephyr supports a variety of network protocols out of the box, including IPv4
and IPv6, TCP (with optional TLS), UDP (with optional DTLS), DNS (with optional
mDNS), DHCP, and application-layer protocols including LwM2M, MQTT, and
HTTP. For compatibility with existing network-based applications, Zephyr
includes a BSD-like sockets API.
Zephyr also provides built-in support for a variety of connectivity solutions,
including Bluetooth (and Bluetooth Mesh) and IEEE 802.15.4. Support for WiFi and
new low power and 5G standards including LoRa, NB-IoT and LTE-M is
underway. Network interfaces can be configured to interoperate with Zephyr's
protocol stacks according to your specific hardware requirements.
The Zephyr microPlatform is continuously tested with multiple BLE and BLE Mesh
device configurations, and both the LwM2M and MQTT protocols. Open Source
Foundries will integrate, test, and deliver additional wireless support in the
continuous Zephyr microPlatform updates as they become available.
Zephyr applications can be developed on Linux, Mac and Windows. Open Source
Foundries provides an out of the box installation so you can focus on your
application and not on setting up tools and configuring your environment. The
microPlatform installation provides additional applications for gathering device
sensor data, controlling devices connected to the MCU, and performing firmware
over the air updates.
The Zephyr microPlatform is designed to enable simple development of secure
devices, with a secure boot architecture, signed update process and encrypted
data transfers. Using the microPlatform, you can provision your own keys
for checking firmware updates into the MCU during the manufacturing process. A
suitable source of entropy for secure network communication is also
required. You can also take advantage of any additional security functions
available on your hardware. Documentation is available to help you ensure that
your product takes full advantage of the provided infrastructure.
The Zephyr Project is evolving rapidly, with new functionality added on a
regular basis. The Zephyr microPlatform tames these changes, providing a stable,
integrated and tested product development platform.
Our end to end testing and continuous microPlatform update process means that
you can focus on your application, leaving our open source experts to ensure
that the microPlatform remains stable and functional over time. With each
update, we provide detailed information on changes and new functionality so that
you are easily able to keep your product software updated, even between Zephyr