EmbeddedRelated.com

Embedded Toolbox: Windows GUI Prototyping Toolkit

Miro SamekMiro Samek July 7, 20172 comments

You can prototype and debug complex embedded device user interfaces on Windows using the tiny, free QWin toolkit. It runs the same C code you compile for the target by implementing a Windows BSP, letting you develop UI code quickly with MinGW or Visual C++ and a visual resource editor. The result is far faster compile-run-debug cycles and a simpler path around flaky prototype hardware.


Linear Feedback Shift Registers for the Uninitiated, Part I: Ex-Pralite Monks and Finite Fields

Jason SachsJason Sachs July 3, 20176 comments

Jason Sachs demystifies linear feedback shift registers with a practical, bitwise view and the algebra that explains why they work. Readable examples compare Fibonacci and Galois implementations, show a simple software implementation, and reveal the correspondence between N-bit Galois LFSRs and GF(2^N) so you can pick taps and reason about maximal-length pseudorandom sequences.


Tenderfoot: Recommended Reading

Matthew EshlemanMatthew Eshleman June 28, 20171 comment

Twenty years on, these are the books that turned an electrical engineer into an embedded software pro. Matthew Eshleman walks through influential reads from Code Complete to Practical Statecharts and Test Driven Development, explaining how each shaped his design, estimation, and testing practices. This short list is a practical starting point for 'tenderfoots' launching an embedded firmware career.


Embedded Toolbox: Programmer's Calculator

Miro SamekMiro Samek June 27, 20178 comments

A tiny but powerful cross-platform tool, QCalc evaluates full C-syntax expressions so you can paste results straight into firmware. It handles bitwise ops, mixed hex/decimal/binary constants, and scientific math, and it automatically shows integer results in formatted hex and binary. The post explains key features, variable handling, error messages, and how to run qcalc.tcl with the wish Tk interpreter.


VERY Fast Japanese Sumo Robots

Stephane BoucherStephane Boucher June 20, 20171 comment

Japanese sumo robots can be oddly mesmerizing, and this short post captures that perfectly. Stephane Boucher shares a quick reaction to a video and points out the parts embedded engineers would want to hear about, like the sensors, microcontroller, algorithms, and design challenges behind the machine. It is more of a teaser than a teardown, but it makes a strong case for a deeper technical writeup.


Ten Little Algorithms, Part 6: Green’s Theorem and Swept-Area Detection

Jason SachsJason Sachs June 18, 20173 comments

Jason shows how Green's Theorem becomes a practical, low-cost method to detect real-time rotation from two orthogonal sensors by accumulating swept area. The post derives a compact discrete integrator S[n] = S[n-1] + (x[n]*(y[n]-y[n-1]) - y[n]*(x[n]-x[n-1]))/2, compares integer and floating implementations, and analyzes noise scaling and sampling rate tradeoffs. Includes Python demos and threshold guidance.


Going back to Germany!

Stephane BoucherStephane Boucher June 13, 20176 comments

A conference conversation turned into a return trip to Germany for Stephane Boucher, this time to visit SEGGER’s headquarters in Dusseldorf and produce videos. The post shares how a chance introduction at ESC Boston led to the invitation, and it teases coverage from SEGGER’s 25th anniversary celebration. He also invites local tips and customer questions before the trip.


ESC Boston's Videos are Now Up

Stephane BoucherStephane Boucher June 5, 2017

Stephane Boucher shares the videos he produced from ESC Boston, including a short highlight montage, a booth video for DLOGIC, and full talk clips from the conference. He also reflects on what he learned shooting on the show floor, especially the challenge of getting engineers on camera. It’s a quick behind-the-scenes look at technical event videography, with a preview of his next stop in Germany.


How to Give Persistent Names To USB-Serial Devices on Ubuntu 14.04

Tayyar GUZELTayyar GUZEL May 22, 2017

When your dock reshuffles ttyUSB assignments, Tayyar shows how to bind USB-serial devices to persistent names on Ubuntu 14.04. The post walks through using dmesg and udevadm to locate unique attributes like KERNELS and ATTRS{serial}, creating /etc/udev/rules.d entries with NAME and SYMLINK, and applying rules with udevadm trigger. It includes common pitfalls and quick fixes to get minicom talking to the right port.


Tenderfoot: Introduction to Magic (Numbers that is...)

Matthew EshlemanMatthew Eshleman May 10, 20173 comments

A source-code review revealed repeated numeric literals in C, exposing the classic problem of magic numbers in embedded software. This post explains what magic numbers are, why they are especially painful in firmware, and simple fixes using named constants and comments tied to specs. Read this if you want clearer, safer embedded C code and fewer surprises during maintenance.


Stability or insanity

Tim WescottTim Wescott May 17, 20161 comment

Tim Wescott presents a hands-on exploration of oscillator stability using a custom electromechanical pendulum. He converts a hard‑drive head actuator into a pendulum resonator, winds a 220‑ft #40 coil, and mounts the assembly on low‑friction ball bearings before integrating it into an electronic oscillator. Iteration and careful modeling—treating the pendulum as a resonator and including coil inductance in the circuit—prove essential to obtain sustained oscillation. The resulting prototype functions as an intentionally inaccurate electro‑mechanical clock driven by a "tick‑toc" circuit that minimizes load to preserve a high loaded Q and requires manual start to demonstrate a hard limit cycle. The project highlights practical tradeoffs between stability, Q, and the realities of prototyping.


BusyBox; The Swiss Army Knife of Embedded Linux

George EmadGeorge Emad March 2, 2024

In this article we cover the BusyBox, how it's designed to be optimized for embedded targets, and how to configure and build it in different ways, we also covered the license and limitation, which led to the development of ToyBox, I hope you enjoyed the article, please leave a comment for any correction or suggestions.


NULL pointer protection with ARM Cortex-M MPU

Miro SamekMiro Samek July 16, 2023

This post explains how you can set up the ARM Cortex-M MPU (Memory Protection Unit) to protect thy code from dragons, demons, core dumps, and numberless other foul creatures awaiting thee after thou dereference the NULL pointer.


FPGA Assemblers and Time Machines

Victor YurkovskyVictor Yurkovsky September 2, 20121 comment

Modern FPGA toolchains have turned tinkering into a slog, Victor Yurkovsky recalls the old joy of manual hardware hacking and wants it back. He proposes an assembler-style approach, exemplified by the proposed 'fpgasm', that preserves placement and routing, programs bitstreams in seconds, and makes live probing and rapid iteration practical again. Read this to see why low-level control could revive hands-on FPGA learning.


Mastering Modern FPGA Skills for Engineers

Lance HarvieLance Harvie October 5, 2023

In the rapidly evolving tech industry, engineers must acquire proficiency in modern FPGA skills. These skills empower engineers to optimize designs, minimize resource usage, and efficiently address FPGA design challenges while ensuring functionality, security, and compliance.


Designing Embedded System with FPGA - 1

Pragnesh PatelPragnesh Patel October 28, 200711 comments

Getting an embedded system running on an FPGA is much simpler than it sounds when you use Xilinx EDK and a soft processor. Pragnesh Patel walks through a beginner-friendly approach using the MicroBlaze CPU, drag-and-drop IP cores, and a Spartan-3E starter kit so you can assemble peripherals without deep VHDL knowledge. The post focuses on the EDK base system builder and first setup steps to generate a working design.


Mathematics and Cryptography

Mike RosingMike Rosing December 14, 20151 comment

Cryptographic math can look intimidating, but this roundup trims it to what FPGA engineers actually need. It groups concise articles on number theory and elliptic curves, focusing on polynomial math over Galois fields, FPGA-friendly inversion and one-clock-cycle techniques, and elliptic-curve key exchange and digital signatures. Read this to learn which subroutines to implement first and how to turn math into Verilog or VHDL.


FPGA skills for the modern world

GLENN KirilowGLENN Kirilow September 4, 2023

FPGA demand is booming across industries from automotive to edge AI, and employers want engineers who can think in hardware. This post explains the mindset shift to RTL-level, concurrent design, waveform-based debugging with ILAs, and modern verification flows. It also highlights the practical skills that make you marketable, including HDLs, SoC/Linux integration, RISC-V know-how, and high-speed design techniques.


First Steps in OrCAD 16 [Capture]

Dr. Maykel AlonsoDr. Maykel Alonso June 1, 20127 comments

A practical, beginner-friendly walkthrough of OrCAD 16 Capture that gets you from a blank project to a netlist ready for PCB layout. Maykel explains the OrCAD suite, project tree and design cache behavior, how to manage part libraries, and the Tools menu utilities you should run. The article ends with step-by-step instructions for creating the .mnl netlist and previews a follow-up on layout and footprint libraries.


Favorite Software AND Hardware Tools for Embedded Systems Development

Stephane BoucherStephane Boucher October 5, 2022

Tool choice can make or break an embedded project, and Stephane Boucher gathered developers' favorite hardware and software picks from the Embedded Online Conference into one handy roundup. The post points to a companion video and lists concrete tools from oscilloscopes and logic analyzers to J-Link probes, Python, unit-test frameworks, and soldering irons. It is a quick, practical peek at what experienced embedded engineers actually use.