Firmware Deployment and Troubleshooting with Akbar Dhanaliwala

The Amp Hour · 6 Apr 2021 · 1h 20m · Episode 537

What this episode covers

Chris Gammell, founder of Lager Data, explains how his experiences with companies like SolarCity, Ringly, and Minna Life revealed the tedious nature of embedded firmware testing, inspiring the creation of the Lager Gateway platform. He details how the system enables continuous integration and deployment (CI/CD) for embedded devices by allowing engineers to run unit and system tests, flash firmware, and debug remotely from a command line without physical lab access. Gammell highlights the use of Dockerized build environments and integration with GitHub Actions to automate testing, ensuring that changes to firmware do not break device functionality or over-the-air update capabilities.

Mentioned

Companies
Lager Data, Pokeboard, SolarCity, Joulé, Ringly, Minna Life
Chips
STM32
Tools
J-Link, Eclipse, GitHub Actions, Docker

Other shows on the same ground, closest first.

  • The Pragmatic Embedded Podcast · 39m

    Continuous Integration for Embedded Systems

    Jeff Gable and Luca Ingianni discuss setting up continuous integration (CI) pipelines for embedded systems, distinguishing CI from continuous delivery and deployment. They outline prerequisites like version control and single-command builds, recommend tools like Jenkins and GitHub Actions, and emphasize capturing the build environment using Docker or on-premise servers to avoid 'works on my machine' issues. The hosts advocate for 'null automation'—starting with manual scripts and gradually automating steps—to lower the barrier to entry for teams hesitant about the initial investment.

  • Embedded.fm · 1h 17m

    395: I Can No Longer Play Ping Pong

    Tyler Hoffman, co-founder of Memfault, explains how his team at Pebble and later Fitbit transformed firmware development by standardizing developer environments, optimizing build systems, and automating debugging. He details the shift from slow, sequential IAR builds to parallel GCC builds using Make and Conda, which reduced build times from 18 minutes to 2 minutes. Hoffman also describes building web applications and GDB Python scripts to enable remote debugging of field crashes without physical debuggers. The discussion highlights the importance of dedicated developer productivity roles and the evolution of tools from one-off scripts to robust, company-wide platforms.

  • Embedded.fm · 1h 12m

    390: Irresponsible At the Time

    Tyler Hoffman, co-founder of Memfault, discusses the challenges of managing firmware updates, device diagnostics, and remote monitoring for millions of IoT devices. He draws on his experience at Pebble and Fitbit to explain why existing cloud platforms are often unsuitable for resource-constrained embedded systems, highlighting the need for secure boot, staged rollouts, and efficient heartbeat reporting. Hoffman details how Memfault’s platform helps engineers detect crashes, track battery life trends, and prioritize bugs by aggregating data from large device fleets. The conversation emphasizes the importance of defensive programming and building robust OTA systems to prevent bricking devices at scale.

  • OnTrack · 56m

    Embedded Systems Engineer Discusses AI-Driven Testing Revolution

    Ari Mahpour, an Embedded Systems Engineer at Rivian with prior experience at NASA JPL and Virgin Hyperloop, discusses the integration of AI and DevOps into embedded hardware development. He demonstrates 'vibe coding' with an Arduino using voice commands and LLMs, explaining how AI agents can autonomously write, compile, and test firmware. Mahpour also covers the challenges of managing hardware revisions, the importance of Model Context Protocol (MCP) for tool guardrails, and the future of AI in automated PCB design and testing.

  • Over the Air · 34m

    Revolutionizing IoT Device Management: Updating the World with Peridio

    Bill Brock, COO, and Justin Schneck, CPO, of Peridio, discuss the challenges of managing IoT device fleets and their platform's approach to device-centric CI/CD. They explain why web development abstractions fail in embedded systems, highlighting the critical need for atomic updates to prevent 'bricked' devices from power failures or poor connectivity. The conversation covers the shift from simple sensors to complex edge AI, requiring collaborative workflows that bridge embedded engineers, data scientists, and web developers. They argue that current cloud providers offer scale but lack the necessary collaboration tools and safety nets for physical device distribution.

The summary, chapters and topics are generated from the episode’s audio by this directory, not written by The Amp Hour. The episode itself belongs to its publisher.