Logo
Fast Delivery 1 – 2 days From UK
Best Prices in UK
60 Days Easy Free Returns
Free Shipping Over £35

Arduino IDE Setup & First Sketch, Step-by-Step Guide

How Do I Install and Set Up the Arduino IDE?

The Arduino IDE is the free software you use to write, compile, and upload code to any Arduino-compatible board. Download it from arduino.cc/en/software, install it on Windows, Mac, or Linux, plug in your board via USB, select the correct board and port, and upload the built-in Blink example to confirm everything works. The whole process takes under 10 minutes.

This guide walks through every step with troubleshooting for the most common problems, including CH340 driver issues on clone boards, charge-only USB cables, and boards that refuse to show up in the port menu. If you haven’t bought your board yet, see our getting started with Arduino roadmap for recommendations.

What Is the Arduino IDE?

The Arduino IDE (Integrated Development Environment) is where you write Arduino programs, called sketches. It includes a code editor with syntax highlighting and autocomplete, a compiler that translates your code into instructions the board can execute, and an uploader that sends the compiled code to the board over USB. It also includes the Serial Monitor, which lets you see data sent back from the board in real time.

As of April 2026, the current version is Arduino IDE 2.3.8. This is the version you should install. The older IDE 1.8.19 (sometimes called the “Legacy IDE”) still works but is no longer under active development and only receives critical security patches. All instructions in this guide use IDE 2.

How Do I Download the Arduino IDE?

Go to the official Arduino software page at arduino.cc/en/software and download the installer for your operating system. The download is free. Arduino may show a donation page — you can skip it and proceed directly to the download.

Do not download the IDE from third-party sites. Some repackage it with bundled software or outdated versions. The official download is always the safest option.

The file you download depends on your system:

Windows: arduino-ide_2.3.8_Windows_64bit.exe (151 MB). There is also an .msi installer for IT-managed deployments and a .zip for portable installations.

macOS: arduino-ide_2.3.8_macOS_arm64.dmg for Apple Silicon Macs (M1, M2, M3, M4). Use the macOS_64bit.dmg if you have an older Intel Mac.

Linux: arduino-ide_2.3.8_Linux_64bit.AppImage (193 MB). This runs on most modern Linux distributions without installation.

How Do I Install the Arduino IDE on Windows?

Run the downloaded .exe file and follow the installer prompts. Accept the licence agreement, choose an install location (the default is fine), and click Install. When the installer finishes, leave “Run Arduino IDE” ticked and click Finish.

The first time the IDE opens, Windows Firewall may ask whether to allow network access. Click Allow — the IDE needs network access to download board packages and libraries.

If Windows SmartScreen shows a warning, click “More info” and then “Run anyway.” This happens because the installer is not always signed with an Extended Validation certificate.

How Do I Install the Arduino IDE on Mac?

Open the downloaded .dmg file. Drag the Arduino IDE icon into the Applications folder. Eject the disk image.

The first time you launch the IDE, macOS may warn that it was downloaded from the internet. Right-click the app in Applications, select Open, and click Open again in the dialog. This only happens once.

On Apple Silicon Macs (M1 and later), make sure you downloaded the arm64 version. The Intel version will still run through Rosetta 2, but the native arm64 build is faster and uses less battery.

How Do I Install the Arduino IDE on Linux?

Make the downloaded AppImage executable and run it:

chmod +x arduino-ide_2.3.8_Linux_64bit.AppImage
./arduino-ide_2.3.8_Linux_64bit.AppImage

If you cannot access the serial port after connecting your board, add your user to the dialout group:

sudo usermod -a -G dialout $USER

Log out and back in for the change to take effect. Without this step, the IDE will not be able to communicate with your board.

How Do I Connect My Board to the Computer?

Plug your Arduino-compatible board into your computer using a USB cable. The power LED on the board should light up immediately.

If the power LED does not light up, the most likely cause is a charge-only USB cable. Many cables that come with phone chargers only carry power — they have no data wires inside. Try a different cable. If you bought a starter kit from Kunkune, the included USB cable supports data transfer.

Which USB connector does my board use?

Most Arduino-compatible boards from Kunkune use USB-B (the square connector) or Mini-USB. Official Arduino Uno R4 boards use USB-C. Check which connector your board has and use the matching cable.

How Do I Select the Correct Board and Port?

After connecting your board, look at the dropdown near the top-left of the IDE window. In IDE 2, this is the board selector. If the IDE detects your board automatically, it will show the board name and port here. Click it and select your board.

If the board is not detected automatically:

  1. Go to Tools → Board → Arduino AVR Boards and select Arduino Uno (for most Arduino-compatible boards from Kunkune)
  2. Go to Tools → Port and select the port that shows your board

What the port looks like on each system:

Windows: COM3, COM4, or another COM number. If you see multiple COM ports, unplug the board, check which port disappears, then plug it back in — that is your board’s port.

macOS: /dev/cu.usbserial-xxxx or /dev/cu.usbmodem-xxxx

Linux: /dev/ttyUSB0 or /dev/ttyACM0

If no port appears at all, you likely have a driver issue. See the CH340 driver section below.

Do I Need to Install a CH340 Driver?

If your board uses a CH340 USB-to-serial chip (most Arduino-compatible clone boards do), your computer may need a driver to recognise it. This is the most common reason a board connects physically (power LED on) but does not appear in the IDE’s port menu.

Windows 10 and 11: The CH340 driver is usually installed automatically through Windows Update when you plug in the board. If it does not install automatically, download the driver from the manufacturer’s site at

wch-ic.com/downloads/CH341SER_EXE.html

Run the installer and click Install. Unplug and replug your board.

macOS: Modern versions of macOS (Ventura 13 and later) include CH340 support natively. If your Mac does not recognise the board, download the macOS driver from the same WCH site. After installing, you may need to allow the driver in System Settings → Privacy & Security.

Linux: The CH340 driver is built into the Linux kernel. It should work immediately. If it does not, make sure your user is in the dialout group (see the Linux installation section above).

How do I know if my board has a CH340 chip?

Look at the small IC near the USB connector on your board. If it says CH340G, CH340C, or CH340E, your board uses a CH340 chip. Most Arduino-compatible boards sold by Kunkune use CH340.

How Do I Install a Board Package?

The Arduino IDE comes with support for official Arduino AVR boards (including the Uno) pre-installed. If you are using an Arduino-compatible Uno board from Kunkune, the default “Arduino AVR Boards” package covers you — no additional installation needed.

If you later move to ESP32 or other boards, you will need to add their board packages through the Board Manager:

  1. Go to Tools → Board → Boards Manager
  2. Search for the board name (e.g. “ESP32”)
  3. Click Install on the correct package

For ESP32 boards, you first need to add the Espressif boards URL in File → Preferences → Additional boards manager URLs. The URL is: https://espressif.github.io/arduino-esp32/package_esp32_index.json

How Do I Upload My First Sketch?

The Blink sketch is the “Hello World” of Arduino. It blinks the built-in LED on your board without any external wiring.

  1. Go to File → Examples → 01.Basics → Blink
  2. The sketch opens in the editor
  3. Click the Verify button (tick icon, top-left) — this compiles the code and checks for errors
  4. Click the Upload button (right arrow icon) — this sends the compiled code to your board

The IDE shows “Done uploading” in the status bar when the upload finishes. The built-in LED on your board (usually labelled “L”, connected to pin 13) should now blink on and off at one-second intervals.

If the upload fails, check these in order:

  1. Correct board selected? (Tools → Board → Arduino Uno)
  2. Correct port selected? (Tools → Port)
  3. USB cable supports data? (Try a different cable)
  4. CH340 driver installed? (See section above)
  5. Another program using the port? (Close the Serial Monitor if it’s open in another window, or close any other serial terminal)

What Does the Blink Code Mean?

Here is the complete Blink sketch:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

setup() runs once when the board powers on or resets. Here it configures the built-in LED pin as an output, meaning the board will send voltage out through that pin.

loop() runs continuously after setup finishes. It repeats from top to bottom, forever. Here it turns the LED on (HIGH = 5V), waits 1000 milliseconds (one second), turns it off (LOW = 0V), waits another second, and repeats.

pinMode(pin, mode) tells the board whether a pin is an INPUT (reading data in) or OUTPUT (sending data out). You must call this in setup() before using a pin.

digitalWrite(pin, value) sets a digital pin to HIGH (5V, on) or LOW (0V, off).

delay(ms) pauses the program for the specified number of milliseconds.

Try changing the delay values and re-uploading. Setting both delays to 200 makes the LED blink faster. Setting them to 2000 makes it blink slower. This is the quickest way to confirm you understand how the code controls the hardware.

What Is the Serial Monitor and How Do I Use It?

The Serial Monitor is a built-in tool that displays text data sent from your Arduino board to your computer over USB. It is the most important debugging tool in Arduino development.

Open it by clicking the magnifying glass icon in the top-right corner of the IDE, or go to Tools → Serial Monitor.

To send data from your board to the Serial Monitor, use Serial.begin() and Serial.println() in your code:

void setup() {
  Serial.begin(9600);
  Serial.println("Arduino is running");
}

void loop() {
  Serial.println("Hello from Arduino");
  delay(1000);
}

Upload this sketch. Open the Serial Monitor and set the baud rate dropdown to 9600 (matching the value in Serial.begin()). You should see “Arduino is running” once, followed by “Hello from Arduino” repeating every second.

Common Serial Monitor uses:

Reading sensor values in real time to check if a sensor is wired correctly. Printing variable values at different points in your code to find logic errors. Tracking which parts of your program are executing by adding print statements inside if-statements or loops. Sending text commands from your computer to the Arduino using the input field at the top of the Serial Monitor.

If the Serial Monitor shows garbage characters, the baud rate in the monitor does not match the baud rate in your code. Make sure both are set to the same value (9600 is standard for beginners).

What Is the Serial Plotter?

The Serial Plotter is a visual version of the Serial Monitor. Instead of showing text, it draws a real-time graph of numeric values sent from your board.

Open it from Tools → Serial Plotter. Any numeric value you print with Serial.println() appears as a data point on the graph. This is useful for visualising sensor readings — you can see how a temperature sensor, light sensor, or potentiometer value changes over time without reading numbers.

You cannot have the Serial Monitor and Serial Plotter open at the same time. Close one before opening the other.

What Are the Key Parts of the IDE Interface?

Menu Bar — File, Edit, Sketch, Tools, Help. Most actions you need are under Tools (board, port, Serial Monitor) and Sketch (include library, upload).

Toolbar — Verify (compile), Upload, Debug, Board selector, Serial Monitor, Serial Plotter.

Editor — Where you write code. Supports syntax highlighting, autocomplete (type a function name and press Tab), and code folding.

Output Panel — Shows compiler messages, upload progress, and error messages at the bottom of the window.

Board Selector — The dropdown at the top showing your connected board and port. Click it to change boards or ports.

Sketchbook — Your saved sketches. By default, the IDE saves sketches in a folder called “Arduino” in your Documents directory.

How Do I Install Libraries?

Libraries are pre-written code packages that add functionality — sensor drivers, display controllers, communication protocols, and more. Instead of writing everything from scratch, you install a library and use its functions.

  1. Go to Sketch → Include Library → Manage Libraries (or click the library icon in the left sidebar)
  2. Search for the library you need (e.g. “DHT sensor library” for a DHT11 temperature sensor)
  3. Click Install

The library is now available. To use it in your sketch, add #include <LibraryName.h> at the top of your code, or go to Sketch → Include Library and select it from the list.

Popular beginner libraries include DHT (temperature/humidity sensors), Servo (servo motor control), LiquidCrystal_I2C (character LCD displays), and Adafruit_SSD1306 (OLED displays).

Frequently Asked Questions

Why does my Arduino board not show up in the port menu?

The three most common causes are a charge-only USB cable (swap for a data cable), a missing CH340 driver, and the board not being powered (check the power LED). On Linux, your user may need to be added to the dialout group.

Can I use Arduino IDE with clone boards?

Yes. Arduino-compatible clone boards work with the Arduino IDE in exactly the same way as official boards. The only difference is that most clones use a CH340 USB chip instead of the ATmega16U2 used on official boards, which may require a driver installation. Select “Arduino Uno” as the board type — the IDE does not distinguish between official and compatible boards.

What baud rate should I use for Serial Monitor?

Use 9600 for general debugging and learning. The baud rate in the Serial Monitor must match the value you pass to Serial.begin() in your code. Higher rates like 115200 transfer data faster but 9600 is the standard for beginners and works reliably with all boards.

Where can I buy Arduino-compatible boards in the UK?

Kunkune stocks Arduino-compatible boards from £3.90 and starter kits from £12.90. Orders are dispatched within 1 working day, with delivery in 1–2 days via Royal Mail. No customs charges, no minimum order, and free shipping over £25.

Is the Arduino IDE free?

Yes. The Arduino IDE is completely free and open-source. There are no paid tiers, no subscriptions, and no feature restrictions. Arduino also offers a free Cloud Editor at create.arduino.cc if you prefer to code in a browser.

The Bottom Line

Setting up the Arduino IDE takes under 10 minutes. Download, install, plug in your board, select the right port, and upload Blink. If the LED blinks, everything works. From here, head back to the Arduino beginner roadmap to continue with Step 4 — building your first breadboard circuit.