Monday, September 29, 2025 in Blog
Getting started with a new simulation tool is hard enough without needing to worry about the installation. There’s a lot to love about the FEM Workbench that ships with FreeCAD. Interoperability and ease of setup isn’t it. Out of the box, …
Friday, September 12, 2025 in Blog
Introduction The following goes through a recommended Zephyr project setup and integrates with a single stage MCUBoot bootloader. The first section uses the Renode emulator and then moves to actual hardware. In previous posts we introduced Renode …
Sunday, September 07, 2025 in Blog
TL;DR: Bury your Aces Counterintuitively, in War you don’t want your hand to be packed with strong cards. Simulation code available here. Introduction The card game War is, at its core, a game of dumb luck. Whoever gets the better draw usually walks …
Friday, August 29, 2025 in Blog
The code for this project is available here. Why use Renode? Faster Iterations: It allows faster testing without the delays of physical hardware, especially useful when tweaking bootloader and firmware behavior. Flash Wear Prevention: Running tests …
Wednesday, August 27, 2025 in Blog
Renode is a C# based emulator for embedded architecture, it’s like if QEMU was focused only on embedded. It’s lightweight and effective with several preconfigured chips ready to use. What to use it for and why you should care: Easier, …
Tuesday, August 26, 2025 in Blog
Introduction When I’m designing the control interface for a new device intended for lab equipment use or an OEM device that doesn’t require constant high data rates, SCPI is the obvious first consideration. It’s human-readable and …
Tuesday, August 26, 2025 in Blog
Introduction During electronics design reviews, it’s overwhelmingly common to find changes are needed for basic bypass and DC storage caps due to ignoring the C(V). The Voltage Rating is the maximum operating voltage that doesn’t risk …
Tuesday, August 26, 2025 in Blog
Quick tip on enabling Neovim LSP for C/C++ using Clangd TL;DR: Add this to your CMakeLists.txt: set(CMAKE_EXPORT_COMPILE_COMMANDS ON) This will generate a compile_commands.json file in your build directory. Copy or symlink it into your project root …
Saturday, August 02, 2025 in Blog
The thermistor model, jupyter notebook and C++ code I used is available here. Introduction So you’re using a thermistor to measure temperature and need to digitize it. Let’s assume you’re trying to get an accurate temperature …
Saturday, July 26, 2025 in Blog
Github Repo: pulse_transitions Over the past few months, I’ve found myself repeatedly needing step response analysis for control systems, TDR work, pulsed light sources, photoreceivers, and flash lidar applications. Matlab has a solid set of tools, …