Dojo Five Dev Blog

Best-in-class embedded firmware content, resources and best practices

Sign up to get our content updates!

Unlock the full potential of your embedded projects with our expert insights! Dive into our comprehensive resources to stay ahead in firmware development. Subscribe now to get the latest best practices and guides delivered straight to your inbox.

More From the Blog

Docker Whale

Docker: An Ideal Development Environment

Docker is a revolutionary tool that provides speed and repeatability for an embedded team. While traditionally used in non-firmware environments, there is enormous potential to improve the development efforts of

Read More »
Dev Containers

Dev Containers

Docker is well-known and is widely used in the software application realm. In recent years, it has made its way into many embedded software projects. In embedded development, it is

Read More »

Documenting System Architecture With AsciiDoctor

By: Steve Branam

As the adage says, a picture is worth a thousand words. Diagrams provide a high level of information abstraction. Somewhere between zero and too much is the sweet spot for the right amount of documentation for a system, balancing the needs of development, quality, cost, and effort.

Read More »
Power Optimization Techniques for Firmware

Power Optimization Techniques for Firmware

Introduction Power efficiency is a critical factor in the success of modern embedded systems, especially for battery-powered devices. Efficient firmware design can significantly extend battery life, reduce heat, and improve

Read More »
Nanopb Traps and How to Avoid Them

Nanopb Traps and How to Avoid Them

Intro Protobuf is a language-neutral, platform-neutral extensible mechanism for serializing structured data protocol that Google initially created internally in 2001, now on its 3rd release (Proto 3). Since its release,

Read More »
Introduction to Rust

An Introduction to Rust

Overview So you’ve heard about Rust, a shiny new tool taking people by storm, and now you want to know what the fuss is all about. Rust is a programming

Read More »
Automated Firmware Builds

Setting Up Automated Firmware Builds

Why do you need automated firmware builds (sometimes called a Continuous Integration (CI) pipeline) for your embedded project? Oftentimes we have found  that customers do not trust their firmware release

Read More »
Introduction to Serial Framing Formats

Introduction to Serial Framing Formats

Introduction Serial communication (UART, RS-232, SPI, I2C, etc) provides the ability to transfer raw data between devices in Embedded Systems. There are a number of challenges to consider when developing

Read More »
What is TLS?

What is TLS and When Can It Be Used?

Transport Layer Security (TLS) is a cryptographic protocol that provides secure communication over computer networks. It is the successor to the Secure Sockets Layer (SSL) protocol and has become the

Read More »
Updating your hardware in the field

Device Updates: Cut Down Time and Data Usage

Have you ever suspected that the way updates are handled on your embedded devices wastes electricity, drives up customer cellular data bills or takes longer than really needed? Let’s look at how device updates have traditionally been done…

Read More »

What does a modern pipeline look like for embedded?

What does a modern pipeline look like for embedded? Featured Categories Our Engineers Security Embedded CI All Categories Recent Posts By: Aaron Fontaine Having a modern pipeline helps automate the tools you need to ensure high software quality and consistent results. Although the cost of setup is higher, once a modern pipeline (and corresponding practices)…

Read More »
HIL Raspberry Pi

Hardware-in-the-loop is hard! Sometimes.

By: Ander Galisteo, Ph.D.
The concept of hardware-in-the-loop (HIL) is not new in the embedded space. The basic idea is to automate the functional tests of your device under development to verify if your implementation does what it’s supposed to do.

Read More »
Behavior Driven Development for Embedded Systems

BDD for Embedded Systems

Introduction Behavior-Driven Development (BDD) is a software development methodology that focuses on defining the behavior of a system in plain, human-readable language. While commonly associated with end user business requirements

Read More »
A phone projecting app icons above

Medical Device Documentation

If you’ve ever built a medical device, you’ll know how much documentation is required. The amount of documentation required by regulatory bodies like the FDA can intimidate even the most

Read More »