SimDuino SimDuino v0.14.4

Articles

One article per lesson, grouped by unit. Read the article for the why; do the lesson for the how. 42 articles, all paired.

Basics 3 Why blinking an LED is the most important program you'll write A blink is dismissed as the trivial hello-world of hardware. It's actually a complete computer system in three lines. 5 min read · paired with Hello, LED read → Serial: the developer's flashlight in a dark room Hardware has no print statements. Except it does, and the protocol that runs them is the same one teletypes used in 1962. 6 min read · paired with Serial.hello read → The hidden world of pull-up resistors You wire a button. Press it. Release it. The pin reads HIGH, then sometimes LOW, then random. The fix is one resistor. 6 min read · paired with Button = light read →
Digital I/O 4 What actually lives inside your Arduino Open an Uno. The big chip is the brain. What does that chip actually contain — and why is digitalWrite really just one register write? 8 min read · paired with PWM breath read → The Knight Rider scanner: arrays meet timing A row of LEDs sweeping back and forth is the cleanest possible introduction to indexed loops over hardware. 4 min read · paired with Knight Rider read → Pot to serial: streaming an analog signal Reading a pot is half the picture. Streaming it over serial turns a static circuit into a live data feed. 3 min read · paired with Pot → Serial read → Traffic lights: state machines for embedded code A traffic light is the simplest computer program in the world. It's also a state machine — and once you see one, you start seeing them everywhere. 5 min read · paired with Traffic light read →
Analog 5 Smooth PWM ramps: making digital pins fake analog PWM is a deception. The pin only knows HIGH and LOW — but by switching them fast and varying the ratio, you get something the eye reads as brightness. 4 min read · paired with Smooth PWM ramp read → From sensor to pin: how a continuous signal becomes a number A potentiometer gives you "twelve o'clock." The chip reads 512. Where does that number come from? 7 min read · paired with Read the pot read → Pot dims LED: closing the analog loop A pot reads 0–1023. A PWM output writes 0–255. Connecting them is the simplest closed-loop control system you can build. 3 min read · paired with Pot dims LED read → RGB mixing: three PWM channels make any colour Your eye has three colour receptors. An RGB LED has three PWM-driven channels. Match the second to the first and you can make any colour. 4 min read · paired with RGB cycle read → Building a voltage divider, and why it's everywhere Two resistors in series. One node between them. That's a voltage divider — and almost every analog sensor in your house works this way. 4 min read · paired with Build the divider read →
Sensors 5 LDR night-light: when a resistor reads the world A photoresistor changes its resistance based on incident light. Wrap that in a divider and you have an analog light meter for free. 3 min read · paired with Night-light read → Thermistors: temperature from resistance A bead of doped ceramic shifts resistance precisely with temperature. The conversion to °C goes through one beautiful equation. 4 min read · paired with Thermistor → Serial read → HC-SR04: distance from the time light couldn't reach Send a pulse of 40 kHz sound. Listen for the echo. Measure the microseconds. Multiply by 343 m/s and divide by two. Distance. 5 min read · paired with HC-SR04 distance read → Debouncing: why "one button press" is actually twenty A mechanical switch doesn't close cleanly. It bounces for a few milliseconds, faking dozens of press events. 4 min read · paired with Button counter read → Wiring the HC-SR04: four pins, two signals VCC, GND, TRIG, ECHO. Two are power, two are logic. Routing them takes a minute and explains how sensor modules are designed. 3 min read · paired with Build the HC-SR04 read →
Communication 5 Serial echo: reading bytes back Sending text from a chip is easy. Receiving it — and doing something with it — is where most sketches stop. An echo loop is the smallest program that listens. 3 min read · paired with Serial echo read → On / Off: the smallest serial command parser Two strings. One newline-terminated line. A tiny if-else. Suddenly the chip listens, decides, and acts. 4 min read · paired with On / Off command read → CSV streams: structured telemetry from a tiny chip A serial line with one number per loop is debugging. A serial line with several comma-separated values is a data feed. 4 min read · paired with CSV pot stream read → Help menus: a small REPL for your sketch A "?" command that prints a list of available commands turns your sketch from a black box into something a user can poke at. 3 min read · paired with Help menu read → Bare Uno + Serial: the smallest interesting circuit No LED. No resistor. No button. Just an Uno and the USB cable. You can still get useful work done. 3 min read · paired with Bare Uno + Serial read →
Display 4 How character LCDs talk: the HD44780 protocol A 16×2 LCD looks like a screen. It's actually a tiny computer with its own command set and 40 years of inertia behind it. 5 min read · paired with LCD hello read → Flicker-free counters: don't clear when you don't have to A counter that flashes between values means the screen is being cleared and rewritten every loop. Skip the clear; the flicker disappears. 3 min read · paired with LCD counter read → Live readouts: turn an LCD into a meter You've got a sensor. You've got a screen. Wire them together with a unit label and the device suddenly feels finished. 3 min read · paired with LCD pot meter read → Wiring an LCD: the six wires that matter A 16×2 LCD has 16 pins. Four are power and contrast. Six carry control + data. The others you don't connect unless you want to do something fancy. 4 min read · paired with Wire the LCD read →
Drivers 4 Relays: when the chip can't drive enough current A microcontroller pin sources about 20 mA. A heater needs 8 amperes. A relay is the cheapest bridge between them. 4 min read · paired with Relay click read → Servo sweep: hijacking PWM for position A hobby servo cares about pulse width, not duty cycle. The convention dates to model-aircraft radios from 1972, and you're still using it. 4 min read · paired with Servo sweep read → Servo follows pot: composing input and output A pot drives a servo. The pot is a knob; the servo is a pointer. Connecting them in software is composition. 3 min read · paired with Servo follows pot read → The H-bridge: making a motor go backwards A motor with two wires can only spin one way per polarity. Reverse it with four switches and you have an H-bridge — the topology behind every cordless drill's reverse switch. 5 min read · paired with Wire the H-bridge read →
Multi-Uno 3 Two boards, two clocks: the moment hardware feels real A single Uno is a computer. Two on the same canvas is something else — two independent CPUs, two independent clocks, two programs that never see each other. 4 min read · paired with demo: Two Unos · independent blink read → Independent control loops: two thermostats, one room Two Unos, two pots, two LEDs — and not a single wire between them. Each board has its own sense-think-act loop. 4 min read · paired with demo: Two Unos · two pots, two LEDs read → When chips talk: why every interesting device is many chips A drone. A 3D printer. A car. Open any of them and you find a dozen small computers talking over short wires. The TX→RX bridge between two Unos is the smallest model of that whole world. 5 min read · paired with demo: Two Unos · serial bridge (A → B) read →
Studio demos 9 NPN transistors: how one digital pin drives anything A microcontroller pin sources 20 mA. A solenoid wants 500 mA. The bridge is a single transistor and three resistors' worth of intuition. 5 min read · paired with demo: NPN Low-Side Switch read → PNP transistors: switching the high side, inverted logic PNP is the mirror image of NPN. Same three pins, opposite polarities. Switching the V+ rail with an inverted-polarity logic pin. 5 min read · paired with demo: PNP High-Side Switch read → Capacitors block DC, pass AC — and why every circuit has them A capacitor lets nothing through at steady state, then forgets the rule entirely when the signal changes. The frequency-dependent component. 5 min read · paired with demo: Capacitor blocks DC read → Buzzers: pitch is just frequency, melody is just a sequence A piezo buzzer is a speaker with a one-octave imagination. Drive it with a square wave at any audible frequency and you get that pitch. 4 min read · paired with demo: Buzzer melody read → Shift registers: trading three pins for eight outputs The Arduino Uno has 20 GPIO pins. Some projects need 32 LEDs. The 74HC595 is the cheap, ancient, beautiful trick that makes that possible. 5 min read · paired with demo: 74HC595 LED chase read → DHT11: a custom 1-wire protocol decoded in 40 pulses The $2 humidity-and-temperature sensor has its own bespoke timing protocol on a single data wire. A beautiful intro to bit-banged sensors. 6 min read · paired with demo: DHT11 read read → IR remotes: how the NEC protocol fits a TV channel into 4 ms Every TV remote flashes 38 kHz infrared in carefully timed bursts. The NEC protocol has been the de-facto standard since the 1980s. 5 min read · paired with demo: IR remote read → SSD1306 OLED: 128×64 pixels over two wires The blue half-inch OLED on every hacker's Arduino project speaks I²C. The protocol is straightforward — but the framebuffer dance is the interesting part. 5 min read · paired with demo: OLED Hello read → NeoPixels: 800 kHz one-wire, where every nanosecond matters WS2812 LEDs read color data off a single wire by measuring pulse widths down to the nanosecond. Too fast for the library — bit-banged in assembly. 5 min read · paired with demo: NeoPixel rainbow read →

Looking for the lessons themselves? Browse all lessons →