Arduino Circuit Diagram: Complete Wiring Reference for Common Circuits

Arduino Circuit Diagram — circuit diagram showing component connections+12V/24V SupplySensorPull-up RARDUINOUNOMCU / ReaderIndicatorSensor Circuit
Arduino Circuit Diagram: Complete Wiring Reference for Common Circuits — interactive diagram. Open it in the editor to customise components and wiring.

This is a free printable arduino circuit diagram: download the diagram as SVG or open it and print to paper or PDF.

An Arduino circuit diagram maps the microcontroller's GPIO pins, power rails, and peripherals, showing how sensors, actuators, and communication modules connect to build embedded projects.

The Arduino platform centres on an AVR or ARM microcontroller mounted on a development board with standardised headers, a USB-to-serial interface for programming, and an onboard voltage regulator. Understanding the circuit diagram conventions used for Arduino projects lets you design reliable, repeatable hardware.

The most widely used variant — the Arduino Uno — exposes 14 digital I/O pins (D0–D13, of which D3, D5, D6, D9, D10, D11 support PWM), 6 analogue input pins (A0–A5), one I2C port (A4 = SDA, A5 = SCL), one SPI port (D10 = SS, D11 = MOSI, D12 = MISO, D13 = SCK), and one hardware UART (D0 = RX, D1 = TX).

Power pins include 5 V (regulated output from the onboard regulator), 3.3 V (regulated, typically 150–500 mA limit), GND (multiple pins, all common), VIN (unregulated input, 7–12 V recommended), and IOREF (logic voltage reference for shields).

Every digital output pin sources or sinks a maximum of 40 mA (absolute maximum) with a recommended limit of 20 mA per pin, and a total chip current limit of 200 mA. Exceeding these limits permanently damages the microcontroller. Always use a current-limiting resistor when driving an LED directly from a GPIO pin. A 220 Ω to 470 Ω resistor limits current to a safe level for a standard 5 V supply and a 2 V LED forward voltage.

For higher current loads — relays, motors, solenoids — use a transistor (NPN BJT or MOSFET) or a dedicated motor driver IC as a buffer between the Arduino pin and the load. The Arduino's 5 V rail cannot supply more than 400–500 mA (limited by the USB host or onboard regulator) — power motors from a separate supply and share only the GND reference.

Decoupling capacitors (100 nF ceramic across each power rail near the microcontroller) reduce supply noise and improve ADC accuracy when reading analogue sensors.

Arduino circuit diagrams range from simple LED blink schematics to multi-sensor data-logging systems, and having an accurate schematic before you breadboard is essential to avoid miswiring and damaged components. Two common questions centre on whether a dedicated circuit diagram maker supports Arduino components and how to draw a clean schematic specifically for an Arduino project. Regardless of tooling, a good Arduino schematic shows pin labels (D2–D13, A0–A5), power rails (5 V, 3.3 V, GND), pull-up or pull-down resistors, and any decoupling capacitors near ICs. Draft your Arduino schematic in the free browser-based editor to share with collaborators or include in project documentation.

How to wire arduino circuit diagram

  1. Identify the Arduino variant and pinout Confirm which Arduino board you are using (Uno, Nano, Mega, Leonardo, etc.) — each has a different pinout and microcontroller. Download the official pinout diagram for your specific board and identify power, digital, analogue, communication, and interrupt pins before connecting anything.
  2. Plan your power requirements List every component's supply voltage and current draw. Verify the total current does not exceed the Arduino's regulator and USB host limits (typically 500 mA on USB power). Separate high-current loads (motors, relays) onto their own supply and share only GND with the Arduino.
  3. Draw or review the schematic before building Sketch your circuit on paper or in free schematic software before breadboarding. Mark every resistor value, capacitor, and the pin number used on the Arduino. This prevents errors and makes debugging far faster. Verify GPIO pin function (PWM, I2C, SPI, interrupt) matches your code's pin assignments.
  4. Add current-limiting resistors to LEDs and outputs Calculate the required series resistor: R = (V_supply – V_forward) / I_led. For a 5 V supply and 2 V LED: R = (5 – 2) / 0.02 = 150 Ω minimum. Use 220 Ω as standard practice. Place the resistor in series between the Arduino pin and the LED anode.
  5. Wire pull-up or pull-down resistors for inputs Unconnected (floating) digital inputs produce random readings. Connect a 10 kΩ resistor from the input pin to GND (pull-down) for active-high buttons, or to 5 V (pull-up) for active-low buttons. Alternatively, use the Arduino's internal pull-up resistors (INPUT_PULLUP mode) for active-low configurations.
  6. Connect decoupling capacitors to power rails Place a 100 nF ceramic capacitor between 5 V and GND near each IC or module. Add a 10 µF electrolytic capacitor at the main power entry point. These suppress high-frequency noise and prevent false resets or ADC errors caused by supply transients.
  7. Test incrementally with a multimeter before uploading code Before powering the circuit, use a multimeter to check for short circuits between 5 V and GND. Power up with no code running and verify supply voltages at each subsystem. Upload the simplest possible test sketch (e.g., Blink on D13) before adding peripheral code.

Specifications

Microcontroller (Uno)ATmega328P, 8-bit AVR, 16 MHz
Operating voltage5 V (Uno); 3.3 V (Zero, MKR series)
Recommended input voltage (VIN)7–12 V DC
Digital I/O pins (Uno)14 (6 with PWM output)
Analogue input pins (Uno)6 (A0–A5), 10-bit ADC, 0–5 V range
Max DC current per GPIO pin40 mA (absolute maximum); 20 mA recommended
Flash memory (Uno)32 KB (0.5 KB used by bootloader)
SRAM (Uno)2 KB

Safety warnings

Tools needed

Common mistakes

Troubleshooting

LED does not light when code sets pin HIGH
Cause: Incorrect pin number in code, LED oriented backwards, missing or wrong resistor, or pin not set as OUTPUT Fix: Verify the resistor is connected in series. Check LED polarity (longer lead = anode = to resistor/pin; shorter lead = cathode = to GND). Confirm pinMode(pinNumber, OUTPUT) is in setup(). Measure voltage at the pin with a multimeter.
Arduino resets randomly when motor or relay activates
Cause: Excessive current draw from the 5 V rail collapsing the supply voltage below the brown-out detection threshold Fix: Power the motor or relay from a separate supply. Ensure the supply's GND is connected to the Arduino GND. Add a 100 µF electrolytic capacitor across the separate supply terminals close to the load.
Serial monitor shows garbage characters
Cause: Baud rate mismatch between Serial.begin() in code and the Arduino IDE Serial Monitor setting Fix: Set both the code baud rate and the Serial Monitor baud rate to the same value (typically 9600 or 115200). Also verify TX/RX connections on UART peripherals are crossed correctly.
Analogue readings are noisy or jumping erratically
Cause: Floating input, high source impedance, switching noise coupling from nearby digital signals or motor Fix: Add a 100 nF decoupling capacitor between the analogue input pin and GND. Keep analogue signal wires short and away from motor leads. Use analogRead() averaging in code (read 10 samples and return the mean).
I2C device not found — Wire.begin() scan shows no addresses
Cause: SDA/SCL wired incorrectly, missing pull-up resistors on I2C bus, or device address mismatch Fix: Confirm SDA connects to A4 and SCL to A5 on the Uno. Add 4.7 kΩ pull-up resistors from each I2C line to 3.3 V or 5 V (matching the device logic level). Use an I2C scanner sketch to detect the actual device address.

Frequently asked questions

What voltage levels does an Arduino Uno use for its GPIO pins?

The Arduino Uno operates at 5 V logic. Digital pins output 5 V for HIGH and 0 V for LOW. Analogue inputs accept 0–5 V and are resolved to 10-bit values (0–1023). Connecting a 3.3 V peripheral may require a logic level shifter to avoid misreads or damage.

What resistor value should I use with an LED on an Arduino?

For a standard LED (forward voltage approximately 2 V, max current 20 mA) on a 5 V Arduino pin, use a resistor of at least (5 – 2) / 0.02 = 150 Ω. A 220 Ω or 470 Ω resistor is the standard safe choice, reducing current to 13.6 mA or 6.4 mA respectively.

Can I power a servo motor directly from the Arduino 5 V pin?

Only for very small servos at low load. Standard servos draw 500 mA–1 A under load, which exceeds the Arduino's USB-powered 5 V rail capacity (500 mA total) and will cause the board to reset or the regulator to overheat. Use a separate 5 V supply for servos and connect its GND to the Arduino GND.

What is the difference between analogue and digital pins on an Arduino?

Digital pins read or write two states: HIGH (5 V) or LOW (0 V). Analogue input pins (A0–A5) use the built-in ADC to read a continuous voltage from 0 to 5 V and return a 10-bit integer (0–1023). Analogue pins can also be used as digital I/O when needed.

Why does my Arduino ADC reading fluctuate even when the input is stable?

ADC noise has several causes: insufficient decoupling on the AREF or AVCC pins, a noisy power supply, floating input (add a pull-down resistor), or excessive source impedance. Add a 100 nF ceramic capacitor between AREF and GND, and keep analogue signal traces short and away from switching signals.

Is there a circuit diagram maker that supports Arduino?

Several browser-based tools support Arduino-style circuit diagrams, including the free editor at circuitdiagrammaker.com, which lets you place standard electronic symbols (resistors, capacitors, ICs, connectors) and annotate pins to represent an Arduino board. For fully simulated Arduino environments, dedicated platforms such as Tinkercad Circuits offer simulation, but for clean schematic documentation the general-purpose editor is sufficient and requires no download or account.

How do I draw a circuit diagram for an Arduino project?

Start by listing every pin used on the Arduino and its connected component. Represent the Arduino as a rectangular block with labelled pin stubs, then draw each peripheral — sensors, LEDs, motors, modules — using standard schematic symbols. Include the correct resistor values (e.g., 220–470 Ω for LEDs, 10 kΩ pull-ups for switches), show all power and ground connections, and label signal lines. Group the power section, input section, and output section visually to keep the diagram readable.

Full written guides

Related diagrams

Free electrical calculators

Edit this diagram free in the online editor