Skip to Main Content
Talk Intermediate First Talk

Platform-Agnostic Recovery: SnagFactory's Hardware Abstraction for Device Flashing

Proposal status is Rejected
Session Description

Flashing bootloaders and firmware images is an important step in embedded device manufacturing, but the process is often dependent on vendor-specific tools that are difficult to reuse across different hardware platforms. SnagFactory provides an open-source framework for device recovery and flashing. However, supporting modern RTOS-based systems is still challenging. This is because multi-stage boot flows involve bootloaders, system firmware, and sometimes Linux images.

In this talk, we present our work on integrating SnagFactory with the Texas Instruments MCU+ SDK to simplify the flashing process for Sitara platforms. We developed a modular architecture that automates the generation of flashing artifacts from platform configuration files, leveraging USB DFU (Device Firmware Upgrade) protocol for device recovery and Fastboot protocol for high-speed image transfer. Unlike traditional UART-based flashing limited to ~115 kbps bandwidth, our USB DFU and Fastboot protocols deliver 40-100+ Mbps throughput, enabling faster bootloader loading and firmware image transfer. This automation reduces flashing time, minimizes configuration errors, and makes the workflow easier to maintain.

Key Takeaways

The session will cover the complete recovery and flashing flow, including configuration generation, device recovery, flashing, and validation. We will also demonstrate how the framework supports multiple storage devices, boot modes, and security variants through a configuration-driven approach. By keeping the workflow independent of platform-specific implementation, Snagfactory makes it easier to support new devices without major changes, providing a flexible and open-source solution for embedded manufacturing.

References

Session Categories

Tutorial about using a FOSS project

Which track are you applying for?

Real Time Operating Systems (RTOS)

Speakers

Meghana Potharaveni
Meghana Potharaveni Intern | Texas Instruments

Final-year B-Tech student in Electrical and Electronics Engineering at NIT Warangal with expertise in embedded software development. Currently an Embedded Software Intern at Texas Instruments, where I led the integration of the SnagFactory device recovery framework with the MCU+ SDK for automated multi-stage boot flashing on Sitara platforms. Skilled in C/C++ and Python,with a focus on embedded systems architecture and manufacturing automation.

Nikhil Jain
Nikhil Jain Software Engineer | Texas Instruments

Embedded Software Engineer with nearly 4 years of experience in bootloaders, flash memory drivers, and low-level embedded software development. Experienced in C/C++, U-Boot, OSPI/NAND flash, and embedded Linux, with a strong focus on system performance optimization and debugging. Contributed to upstream open-source projects and developed features that significantly reduced boot time. Passionate about building reliable embedded systems and continuously learning new technologies.