How to Use the Simulator

Master the canvas, wire up your circuits, and learn how to interact with all the available components.

🖱️ Canvas Controls & Wiring

✋
Moving Components

Drag a component body to move it. Shift-click to select multiple, or drag across the empty canvas to rubber-band select. Drag the selection to move them together.

🔌
Adding Wires

Click a pin, then click empty space to add routing bends, then click the destination pin to finish. Press Esc to cancel.

🎨
Wire Colors

Pick a color from the swatches in the top bar before wiring, or select an existing wire and click a color to recolor it.

〰️
Adjusting Wires

Select a wire and drag any amber dot to move that bend. Double-click an amber dot to remove it.

🗑️
Deleting

Click a wire or component, then click the Delete buttons in the top bar (or press Del / Backspace).

▦
Grid & Alignment

Click the Grid button to toggle the background grid for cleaner layout alignment.

Comprehensive Component Guide

Learn how to wire and interact with all supported parts.

🧰 Basic Electronics

💡 LED & RGB LED

Requires a series resistor (e.g. 220Ω). The bent longer leg is the Anode (+), straight shorter leg is Cathode (-). RGB has 4 pins (Common Cathode).

🟫 Resistor

Limits current flow. Double-click a resistor in the simulator to edit its resistance value (e.g., 220, 1k, 10k).

🔘 Push Button & Switch

Press and hold the Push Button, or click the Switch to toggle it. Connect with a pull-up/pull-down resistor.

🎛 Potentiometer

A variable resistor. Drag the knob to change its analog voltage. Connect outer pins to 5V/GND, middle to an Analog pin.

🔋 Power (5V & 9V)

Use the 5V Supply or 9V Battery to power external circuits like motors without overloading the Arduino.

🍞 Breadboard

Rows are connected horizontally (power rails) and columns vertically. Great for organizing complex wiring.

📡 Sensors & Inputs

🌡 Analog Sensors (LM35, LDR)

Drag the floating value text above the sensor to dynamically change its simulated temperature/light value.

💦 Digital (DHT11, Soil, Gas)

Click the +/- buttons that appear on the sensor to modify its simulated environment values (Temp/Humidity/Gas).

🚶 Motion (PIR) & Distance (HC-SR04)

Click the PIR sensor to trigger motion. Drag the HC-SR04 slider to change the simulated distance in cm.

📐 MPU6050 (Gyro/Accel)

I2C device (SDA/SCL). Drag the sliders in the simulator to change its X/Y/Z acceleration and rotation.

⌨️ 4x4 Keypad

Press and hold a key on the keypad in the simulator to bridge its corresponding row and column pins.

⏱️ DS1307 RTC

Real-Time Clock module via I2C. Connect to SDA (A4) and SCL (A5). Automatically syncs with your browser's current time.

🔥 Toggle Sensors (IR, Tilt, Flame)

Click the sensor to toggle it ON (detecting flame/tilt/obstacle) or OFF.

⚙️ Motors & Drivers

🎚 Servo Motor

Moves to specific angles. Connect Power (Red) to 5V, Ground (Brown) to GND, and Signal (Orange) to a PWM pin.

🌀 DC Motor, Fan, Bulb

Draw too much current for Arduino pins directly. Always use a motor driver (L293D) or a Relay to control them.

🔩 Stepper Motor (28BYJ-48)

Requires a driver like the ULN2004A. Connect the 4 control pins to the driver, and wire the driver to Arduino digital pins.

🔲 L293D (DC Motor Driver)

H-Bridge IC. Connect Enable and Input pins to Arduino, Output pins to the motor, and VS/VSS to external power (e.g. 9V Battery) and 5V.

🔳 ULN2004A (Stepper Driver)

Darlington array. Connect IN1-IN4 to Arduino, and OUT1-OUT4 to the stepper motor. Connect GND to Arduino GND.

🔵 Relay

Electromechanical switch. Use the Signal pin to toggle the coil. Connect COM to power, and NO/NC to the device you are powering.

🖥️ Displays & Output

📟 16x2 LCD (Standard / I2C)

The I2C version must be wired to SDA → A4 and SCL → A5. The standard version requires wiring all data/control pins (RS, E, D4-D7).

📺 SSD1306 OLED

I2C graphical display (128x64). Wire SDA to A4, SCL to A5. Make sure to use the Adafruit_SSD1306 library functions in code mode.

🔢 Seven Segment Display

Common cathode. Wire the individual segment pins (a-g) to digital pins via resistors, and the common ground to GND.

🔊 Buzzer

Connect the positive terminal to a digital pin and negative to GND. Use the Blockly tone block or `tone()` in C++ to play sounds.

🧠 Logic ICs & RFID

🧩 74HC Series Logic Gates

Includes AND (08), OR (32), NOT (04), NAND (00), NOR (02), and XOR (86). Ensure VCC is 5V and GND is connected. Pins follow standard 14-pin IC layouts.

🪪 RC522 & EM18 RFID

RC522 uses SPI (MISO, MOSI, SCK, SDA, RST). EM18 uses Serial (TX/RX). Drag an RFID Tag/Card near the reader in the simulator to trigger a scan.

📈 LM358 Op-Amp

Dual operational amplifier. Can be used for signal conditioning or as a comparator.

🔬 Test Equipment

📊 Oscilloscope

Visualizes voltage over time. Drag the oscilloscope's bottom knob to change the time scale (zoom). Click RUN/HOLD to freeze the trace for inspection.

⚡ Voltmeter

Measures the voltage difference between its + and - probes. Useful for debugging sensor outputs or voltage dividers.