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, here and 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 …
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, …
Friday, July 25, 2025 in Blog
Introduction TDRs don’t exclusively belong in $10K benchtop boxes. Ours fits in your hand, handles field abuse, and still gets sub-100 ps resolution. We’ve been developing this one for a few precision agriculture and infrastructure …
Monday, July 14, 2025 in Blog
Correction: The examples here are all in microvolts but includes multiplication and division which is dimensionally incorrect. I prefer to remove operator* and operator/ in favor of explicit functions for those calculations which can be done for all …
Wednesday, July 09, 2025 in Blog
It’s been a busy couple of decades but one thing that is helping us get some time back is our (relatively) recently launched LP870 Nanosecond LED Pulser. We’re now on Version 2, which improves further on the original’s performance …