Dojo Five Blog

Sharing our insights about modern embedded development

Featured Post

Finding Time for Rust: 7 Simple Steps to Learn Rust

By: Nwanua Eluweze

Rust appears to be gaining steam as a solid language to solve complex and challenging problems in embedded systems. Here are a few tips that may help you learn Rust.

Read More...

Recent Posts

Dojo Five logo inside craft box

Our Engineers: Ander Galisteo

June 30, 2021

Dr. Ander Galisteo started at Dojo Five as our resident security expert and Senior Firmware Engineer in May of 2021. While he probably can’t actually see into the future, he resides in Andoain, Spain…

Code Jumble

Making Your Code Easy to Read

June 14, 2021

Making code easy to read is not only a kindness shown to your fellow developers, but also to future you! If you read our previous post in this series, you should know the basics on how to read code and the important things to look out for…

Dojo Five logo inside craft box

Our Engineers: Zhi Xuen Lai

May 27, 2021

Zhi Xuen Lai is a Firmware Engineer with Dojo Five, and has been slinging code with us since May of 2019. Zhi has a BS in Electrical and Electronics Engineering from the University of Minnesota…

Dojo Five logo inside craft box

Our Engineers: Aaron Fontaine

May 27, 2021

Aaron Fontaine joined Dojo Five as a Senior Firmware Engineer in April of 2021. He has Minnesota in his heart, growing up in Southwest Minneapolis, attending college in Duluth and settling back in South Minneapolis…

Dojo Five logo inside craft box

Our Engineers: Taylor Street

April 28, 2021

Taylor Street is a Senior Firmware Engineer at Dojo Five and joined us in March of 2021. He works remotely from beautiful Carson City, Nevada. Taylor’s background is diverse, which helps him bring a unique…

Dojo Five logo inside craft box

Our Engineers: Patrick Little

April 27, 2021

Patrick Little is a Senior Firmware Engineer at Dojo Five and joined us in March of 2021. Patrick always thought he was going to be “a programmer” growing up…

ST Microelectronics-NUCLEO image

Plant Moisture Monitoring with an STM32 Nucleo

March 23, 2021

Zhi Xuen Lai of Dojo Five walks you through his plant moisture monitoring project, which uses an STM32 Nucleo board and includes mobile notifications.

Python logo

Useful Python Packages For Parsing HTML Report

January 7, 2021

Static analysis tools such as IAR C-STAT, Cppcheck, and Flawfinder are able to generate reports in the form of HTML files. To learn how and why it is necessary to add a static analysis tool to your firmware builds, check out our 10 Easy Steps to Add Static Analysis to Your Firmware Build and Static…

Man using a macbook track pad

I’ve been using Markdown all this time??

December 31, 2020

Sometimes you need something lightweight for text files that doesn’t require all the fancy tools and formatting that is offered by other languages, such as HTML – but is still readable and mergeable as a text file. If that resonates with you, chances are good that Markdown is what you are looking for. Even if…

Two guys in front of macbooks marking up a paper

Three Suggestions for Successful Code Reviews

December 22, 2020

We’ve all been a part of bad code reviews. Both as the developer and as the reviewer. If you haven’t, you’re extremely lucky! Code approved with zero comments seconds after the pull request was submitted are just as frustrating as ones with an entire novel, possibly with several copies of the same chapter, written across…

Get gui showing commit messages

Using a Git GUI Isn’t All Bad (And Sometimes Pretty Useful)

December 17, 2020

While not the popular opinion of CLI git users, I’ve gotten a ton of mileage from my git GUI. Using the CLI rather than a GUI provides a lot of value: seeing the bigger picture of your code and being able to navigate through different branches, commits or history can become clean and easy to…

Testing Python Scripts in A Docker Container

December 15, 2020

Most Python scripts require external packages. Many require a specific version of these packages or even the Python interpreter. Instead of installing these dependencies globally on your machine, you can either create an isolated virtual environment using Python virtual environments (venv) or create a Docker container. While there is a lot to like about virtual…

Someone typing on a keyboard

Start with the Process, Finish with the Work

December 10, 2020

Start with the process, Finish with the work To obtain regulatory approval for medical device software, you’ll need to comply with the IEC-62304 Medical Device Software Lifecycle standard. This standard requires that specific methodologies are followed. It doesn’t dictate the specifics, but it does require that the medical device manufacturer defines a set of software…

Man sitting in front of three monitors

The Case for EmbedOps (Embedded DevOps)

December 8, 2020

From even before the first computer was working, the technology industry has been looking for the best way to write code. Today, as code “eats the world”, the types of things developers need to do is not limited to coding. There are managing releases and versions, managing development environments, testing, integrating, and so on. In…

Lit up circuitry on transparent board

Secure Boot – What Is It?

December 4, 2020

Secure Boot Secure Boot is a security standard for devices used during the boot process to ensure only software that is created and trusted by the manufacture is executed. In the embedded world, this translates to preventing malicious code created by an outside source from running on your embedded project. Past Experiences with Secure Boot…

Depiction of data being sent around the globe

Simulators in EmbedOps: Another Reason DevOps is Beneficial to your Embedded Development Workflow

December 3, 2020

Arm is no stranger to DevOps or Continuous Integration (CI). They have  several pipeline scripts available  for Travis CI and outline how they use Jenkins to build and test Mbed OS. But so far, there has not been a demonstration of how to use a simulator in pipelines. We partnered with Arm to show how…

Peter flying

Our Engineers: Peter Gabrail

November 20, 2020

Pete joined Dojo Five in November of 2019 as a Senior Firmware Engineer. He grew up in a little seed in the forest back in Syracuse, NY and did his first programming in high school, working on Commodores and Amigas as a hobby…

A wave of data in front of binary code

How to set up Xilinx Vivado and Vitis on MacOS

November 18, 2020

Xilinx makes a number of great products that we have worked with in the past. If you haven’t used an FPGA-based platform before, it is amazing what you can do with these devices. You can literally build hardware accelerators, meet hard real-time deadlines in silicon, make changes to the FPGA logic in the field with…

Medical devices in an operating room

Software Bill of Material (SBOM) for Medical Devices

November 18, 2020

Software Bill of Material (SBOM) for Medical Devices Modern devices are becoming increasingly more complex. Higher user expectations for product features and connectivity have developers looking to include third-party code instead of creating functionality from scratch. Some of these third-party libraries are fairly large and complex. Having third party origins, you’re likely to find code…

Man writing some code

3 Steps to Reading New Code

November 11, 2020

Approaching Code For The First Time Whether you are approaching a code base for the first time or you are doing a code review for another developer, reading code may be like reading another “language”. In school, you get extensive instruction on how to write code, but rarely hear about how to approach a large…