Golioth
Leveraging DevOps for Streamlined Firmware Delivery
This talk aims to provide a comprehensive understanding of how DevOps principles can be applied to IoT development for improved efficiency and reliability. We will discuss integrating firmware building and over-the-air (OTA) updates into a continuous integration/continuous deployment (CI/CD) pipeline, resulting in increased release frequency, dependability, and quality. The presentation will draw from real-world IoT projects that have successfully implemented DevOps methodologies to expedite time-to-market and enhance overall performance.
Attendees will also gain practical knowledge of best practices for troubleshooting, monitoring, and scaling IoT deployments, ensuring that devices remain secure and updated throughout their life cycle. This session will offer valuable insights into implementing DevOps for IoT, equipping attendees with the tools and techniques necessary to optimize their embedded system development processes.
Improve your Embedded IoT Hardware Today
We all want to build hardware that is bulletproof on the first rev. I can't promise you that, but I know how to add in hooks and capabilities that make troubleshooting, upgrading, and measuring deficiencies much easier. Your second rev will be leaps and bounds ahead of your first, and you can get to market faster.
This talk will showcase components, tools, and troubleshooting methods that enable better hardware, regardless of the parts you choose or the form factor you need to fit into. This talk will also feature some recently created hardware that focused on modularity and flexbility, as it was not targeted at a production environment; this could form the basis of a good “rev a” build of hardware and help engineers to focus on validating new product ideas before digging into more complex layouts and smaller form factors.
Building a Modular Codebase with Zephyr RTOS and Devicetree
If there’s one thing the chip shortage has taught us, it’s to be ready to pivot to different hardware on a short timeline. I’ve found that the Zephyr Real-Time Operating System makes this much less painful for firmware engineers. It borrows many concepts from the Linux ecosystem, delivering Devicetree, Pin Control, and Kconfig to microcontroller-land.
In this talk I will detail how I use Zephyr to maintain one codebase that can be built for many different hardware combinations. Once a Kconfig and Devicetree overlay files have been created for each target, compiling the same project for Nordic, Espressif, or NXP chips (to name just a few) is simple. Changing vendors or models of sensor and other peripherals is a similar experience. The C code grabs all necessary hardware information like what pins are connected and which peripheral bus should be used for a particular build. From there it’s just a matter of changing the board name in the build command.
Join me for a tour of what this looks like in real-world examples where changing out a microcontroller or sensor no longer leads to premature hair loss and hypertension.