Skip to Main Content
Workshop Beginner First Talk

Beyond Emulation: Hardware-in-the-Loop Testing on Shared Remote Boards

Proposal status is Rejected
Session Description

Embedded software development needs real hardware for flashing, debugging and testing. Also with silicon manufacturers producing various SoCs with varying Flash, RAM sizes and differences in IP peripherals for different domain/markets, it's almost impossible to procure all the development / evaluation boards to experiment your use cases. Shipping custom PCBs across geographies, running test suites in all the platforms for every open source releases, preparing custom CI integration and more, the dependency on hardware is endless.

labwire is a platform which helps you access hardware from anywhere. Three terminologies: the Dock is the lab host where the hardware boards are connected, the hub is the central element which handles authentication and reservation, and the client is where the remote developer or CI system lives. labwire Dock helps setting up a lab and dock it to the hub, which enables access to clients like CI/CD and remote developers to flash, watch console, reset, debug from anywhere. Technically all the connections work over HTTPS, so there is no special requirement to use a VPN or public IP. Ideally, a board in a remote location feels the same as one on your desk.

Following that, the session will run labwire live on real development boards (for example, nRF52, STM32, NXP). Some boards will be provided, and participants are encouraged to bring their own. A few participants will onboard their boards into the hub using labwire Dock. Anyone in the room will be able to reserve, flash firmware or test images, watch console and run a hardware-in-the-loop test. At this point, the idea is to prove anyone can do real hardware testing and development without holding the hardware in hand. Under the hood, flashing and console flow peer-to-peer between the client and Dock. The hub only handles authentication, secure channel and reservation. Flashing depends on the utility / driver at the lab host (for example, OpenOCD, esptool).

Note: Zephyr RTOS Upstream CI and NuttX is currently deployed using labwire

Key Takeaways
  • Make any board on a lab host remotely accessible

  • Reserve, flash, and watch console on a remote board

  • Run hardware-in-the-loop tests without physical access

  • Apply the same flow to CI, shared labs

  • RTOS and OS independent remote development and testing

References

Session Categories

Tutorial about using a FOSS project
Engineering practice - productivity, debugging

Which track are you applying for?

Real Time Operating Systems (RTOS)

Speakers

Parthiban
Parthiban Director of Engineering | Linumiz

With over 14 years of experience in software engineering, Parthiban
founded Linumiz, a company that provides domain-neutral software
services for U-Boot, Linux, and Zephyr, ranging from board bringup,
board supported package, customization, device drivers, to over the air
software updates, primarily in but not limited to ARM. Parthiban is also
an active developer, contributor, and speaker for several open source
projects, such as U-Boot, Linux Kernel, and Zephyr RTOS.