All About Circuits

Latest Microcontroller Technical Articles

Categories

Building and Certifying an Open-Source IoT Controller, Part 1

Building and Certifying an Open-Source IoT Controller, Part 1

In this four-part series, we walk through the development of the Anthilla Controller, an open-source IoT hardware platform. Part 1 introduces the project's specifications and explains key design decisions.


A Raspberry Pi Pico Controlled Frequency Shift Audio Oscillator:  A Radio Shack Classics Circuit Remix

A Raspberry Pi Pico Controlled Frequency Shift Audio Oscillator:  A Radio Shack Classics Circuit Remix

A PIR sensor detects objects to allow a Raspberry Pi Pico running MicroPython code to adjust the frequency of a Science Fair electronic oscillator circuit with audio output.


Projects Nov 26, 2023 by Don Wilcher
The Challenge of Integrating an Antenna Into Small IoT Devices

The Challenge of Integrating an Antenna Into Small IoT Devices

Designing antennas for compact IoT devices is a tricky task, but an increasingly important one. Learn more about this challenge and how to meet it.


Understanding Security Keys in Bluetooth Low Energy

Understanding Security Keys in Bluetooth Low Energy

Learn the roles of the three security keys in Bluetooth LE—Long Term Key (LTK), Connection Signature Resolving Key (CSRK), and Identity Resolving Key (IRK).


Controlling a Potentiometer-based Servo Motor Using a M5Stack Core

Controlling a Potentiometer-based Servo Motor Using a M5Stack Core

In this project, learn how to use a potentiometer's reading on the M5Stack core to control a servo motor.


Projects Jun 04, 2023 by Don Wilcher
Creating a DCO-based Audio Synthesizer With an Arduino Nano

Creating a DCO-based Audio Synthesizer With an Arduino Nano

In this project, learn to create a digitally-controlled oscillator or DCO-based audio synthesizer with an Arduino Nano or an Arduino Uno.


Projects Apr 09, 2023 by Darby Hewitt
Designing Firmware for Embedded Systems Using Warnier-Orr Diagrams

Designing Firmware for Embedded Systems Using Warnier-Orr Diagrams

Go from chaos to clarity by learning how to design programs for embedded systems leveraging the Warnier-Orr diagrams.


From Parallel to Serial and Back Again: Understanding SerDes

From Parallel to Serial and Back Again: Understanding SerDes

Serialization/deserialization circuitry, known collectively as SerDes, provides important benefits for digital communication systems, especially when high data rates are required.


Is Assembly Language Still Relevant for Embedded Software Development?

Is Assembly Language Still Relevant for Embedded Software Development?

As embedded systems continue to evolve, you might wonder: should I learn assembly language for embedded software development? Learn the answer in this article.


Ratiometric Resistance Measurement Basics Using an Analog to Digital Converter

Ratiometric Resistance Measurement Basics Using an Analog to Digital Converter

Learn the basics of ratiometric resistance measurements in analog to digital (A/D) converters, how it's measured, and example uses in a digital multimeter (DMM), microprocessor, and various resistive sensors.


TinyML In Action—Creating a Voice Controlled Robotic Subsystem

TinyML In Action—Creating a Voice Controlled Robotic Subsystem

We’ll be walking you through creating a robotic subsystem with a voice-activated motor leveraging machine learning (ML) and an Arduino Nano 33 BLE Sense.


Projects Jul 03, 2022 by Jake Hertz
An Introduction to RISC-V—Understanding RISC’s Open ISA

An Introduction to RISC-V—Understanding RISC’s Open ISA

This article is a primer into the basics of RISC-V. The open architecture philosophy is exposed, along with a technical description of the modular ISA, and some commercial RISC-V microprocessor implementations.


Four Lessons an Adult Engineer Can Learn From Children’s Toys

Four Lessons an Adult Engineer Can Learn From Children’s Toys

Children’s toys aren’t just for children. Inside every toy, there are hundreds of hours of engineering experience just waiting to be discovered.


Introduction to Battery Management Systems

Introduction to Battery Management Systems

Learn the high-level basics of what role battery management systems (BMSs) play in power design and what components are necessary for their basic functions.


Introduction to JTAG and the Test Access Port (TAP)

Introduction to JTAG and the Test Access Port (TAP)

In this article, we’re going to be talking about JTAG, the ubiquitous hardware tool used for testing, programming, and debugging.


A Low-Cost Method of Powering a Microcontroller

A Low-Cost Method of Powering a Microcontroller

This article proposes a simple microcontroller power-supply circuit that is worth considering when you’re developing a (very) cost-sensitive system.


Using a Supervisory Circuit to Turn a Conventional SRAM into Fast Non-Volatile Memory

Using a Supervisory Circuit to Turn a Conventional SRAM into Fast Non-Volatile Memory

How can you build a fast non-volatile memory from a conventional SRAM? It turns out, you only need a back-up battery and some control circuitry.


An Engineer’s Introduction to Mechanical Ventilation

An Engineer’s Introduction to Mechanical Ventilation

Learn about the basics of mechanical ventilation in terms of subsystems, control loops, and algorithms.


Watchdog Timers in Microcontrollers

Watchdog Timers in Microcontrollers

This article is the fourth of a series on microcontroller timers which discusses internal watchdogs.


 Real Time Clocks (RTCs) in Microcontroller Timers

Real Time Clocks (RTCs) in Microcontroller Timers

This article is the third of a series on microcontroller timers which describes the RTCs inside a microcontroller.