{"id":52247,"date":"2026-11-01T10:50:45","date_gmt":"2026-11-01T10:50:45","guid":{"rendered":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/"},"modified":"2026-11-01T10:50:45","modified_gmt":"2026-11-01T10:50:45","slug":"getting-started-arduino-uno","status":"publish","type":"siratek_tutorial","link":"https:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/","title":{"rendered":"Getting Started with Arduino Uno"},"content":{"rendered":"<body><p><\/p>\n<h2>What it does<\/h2>\n<p>The Arduino Uno is a small board built around an ATmega328P microcontroller. It runs one program at a time, from the moment it receives power until it loses it, and it gives you pins that can switch things on and off, read sensors, and talk to a computer over USB.<\/p>\n<p>It solves two practical problems. It removes the specialist hardware normally needed to get a program onto a microcontroller, because the board arrives with a bootloader and needs only a USB cable. And it fixes a known pin layout, so a module built for an Uno plugs into any Uno.<\/p>\n<p>This guide takes you from an unopened board to a running program and readable serial output. Every other tutorial in this library assumes you have finished it.<\/p>\n<h2>Before you begin<\/h2>\n<h3>Required parts and tools<\/h3>\n<ul>\n<li>An Arduino Uno R3 or compatible board.<\/li>\n<li>A USB cable that matches the board\u2019s connector and carries data, not only power.<\/li>\n<li>A computer running Windows, macOS or Linux.<\/li>\n<li>The Arduino IDE, version 2.x, from the official Arduino website.<\/li>\n<\/ul>\n<h3>Power and voltage<\/h3>\n<ul>\n<li>The Uno runs at <strong>5 V logic<\/strong>. A 3.3 V sensor connected directly to a 5 V output can be damaged. Check a module\u2019s rated voltage before wiring it.<\/li>\n<li>USB supplies enough power for the board and a handful of LEDs or small sensors.<\/li>\n<li>The barrel jack accepts roughly <strong>7-12 V DC<\/strong>, centre positive. Below that the board browns out; above it the regulator overheats.<\/li>\n<li>The <code>5V<\/code> and <code>3.3V<\/code> pins are <strong>outputs<\/strong>, not inputs. Feeding voltage into them bypasses the regulator and can destroy the board.<\/li>\n<\/ul>\n<h3>Safety notes<\/h3>\n<ul>\n<li>Each I\/O pin is rated for about <strong>20 mA<\/strong>. An LED without a series resistor, a motor, or a relay coil driven straight from a pin will exceed that.<\/li>\n<li>The <code>3.3V<\/code> pin can supply only about <strong>50 mA<\/strong> in total.<\/li>\n<li>Wire and rewire with the USB cable unplugged. A stray wire across <code>5V<\/code> and <code>GND<\/code> is a short.<\/li>\n<li>This board is for low-voltage work. Mains electricity is out of scope and needs separate equipment and training.<\/li>\n<\/ul>\n<h2>Pin reference<\/h2>\n<p>This is the board layout you will need for the rest of the library. It is not the full pinout.<\/p>\n<figure class=\"siratek-tutorial-figure\"><img decoding=\"async\" src=\"http:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg\" alt=\"Arduino Uno pin map showing the digital pins along the top edge, the power and analog pins along the bottom edge, and the USB socket and barrel jack on the left\" loading=\"lazy\"><figcaption>The pins you will meet in this library. The tilde marks the ones that can do PWM.<\/figcaption><\/figure>\n<table>\n<thead>\n<tr>\n<th>Pin or label<\/th>\n<th>Connect to<\/th>\n<th>Purpose<\/th>\n<th>Notes<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>USB<\/code><\/td>\n<td>Computer<\/td>\n<td>Power, uploading, serial communication<\/td>\n<td>Must be a data cable<\/td>\n<\/tr>\n<tr>\n<td><code>BARREL JACK<\/code><\/td>\n<td>7-12 V DC supply<\/td>\n<td>Power without a computer<\/td>\n<td>Centre positive<\/td>\n<\/tr>\n<tr>\n<td><code>5V<\/code><\/td>\n<td>Module VCC<\/td>\n<td>5 V output to modules<\/td>\n<td>Output only<\/td>\n<\/tr>\n<tr>\n<td><code>3.3V<\/code><\/td>\n<td>3.3 V module VCC<\/td>\n<td>3.3 V output<\/td>\n<td>About 50 mA total<\/td>\n<\/tr>\n<tr>\n<td><code>GND<\/code><\/td>\n<td>Module GND<\/td>\n<td>Common ground<\/td>\n<td>Three pins, all equivalent<\/td>\n<\/tr>\n<tr>\n<td><code>VIN<\/code><\/td>\n<td>External supply<\/td>\n<td>Unregulated input ahead of the regulator<\/td>\n<td>Rarely needed at this stage<\/td>\n<\/tr>\n<tr>\n<td><code>D0<\/code>\u2013<code>D13<\/code><\/td>\n<td>Digital inputs and outputs<\/td>\n<td>On\/off signals<\/td>\n<td><code>D0<\/code> and <code>D1<\/code> are shared with USB serial<\/td>\n<\/tr>\n<tr>\n<td><code>D3 D5 D6 D9 D10 D11<\/code><\/td>\n<td>PWM-capable outputs<\/td>\n<td>Dimming and tone generation<\/td>\n<td>Marked with a tilde on the board<\/td>\n<\/tr>\n<tr>\n<td><code>A0<\/code>\u2013<code>A5<\/code><\/td>\n<td>Analog inputs<\/td>\n<td>Read a varying voltage as 0-1023<\/td>\n<td>Usable as digital pins too<\/td>\n<\/tr>\n<tr>\n<td><code>D13<\/code> \/ <code>L<\/code><\/td>\n<td>Onboard LED<\/td>\n<td>Built-in test output<\/td>\n<td>Already wired, nothing to connect<\/td>\n<\/tr>\n<tr>\n<td><code>RESET<\/code><\/td>\n<td>Reset button<\/td>\n<td>Restart the running program<\/td>\n<td>The program restarts, it is not erased<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Avoid <code>D0<\/code> and <code>D1<\/code> for your own wiring while you are using the Serial Monitor. They carry the USB serial traffic, and a module on those pins will interfere with uploading.<\/p>\n<h2>Wiring steps<\/h2>\n<p>Nothing needs to be wired for this tutorial. The LED you will control is already fitted to the board and connected to digital pin 13.<\/p>\n<ol>\n<li>Take the board out of its packaging and place it on a non-conductive surface. Bare metal underneath the board can short the pins on the underside.<\/li>\n<li>Check that nothing is plugged into the headers.<\/li>\n<li>Connect the USB cable to the board, then to the computer.<\/li>\n<li>Confirm that the green ON LED is lit. If it is not, the cable is not supplying power. Try a different cable or port before going further.<\/li>\n<\/ol>\n<h2>Software and libraries<\/h2>\n<p>No library is required for this tutorial. The functions used are part of the Arduino core.<\/p>\n<h3>Install the IDE<\/h3>\n<ol>\n<li>Download Arduino IDE 2.x from the official Arduino site and install it.<\/li>\n<li>Open it and let it finish its first-run setup.<\/li>\n<\/ol>\n<h3>Select the board and port<\/h3>\n<ol>\n<li>Open <strong>Tools &gt; Board &gt; Arduino AVR Boards &gt; Arduino Uno<\/strong>.<\/li>\n<li>Open <strong>Tools &gt; Port<\/strong> and select the port that appears when the board is plugged in. Unplug the board and look again if you are unsure which one it is. The board\u2019s port is the entry that disappears.<\/li>\n<\/ol>\n<p>If no new port appears, the board\u2019s USB-to-serial chip needs a driver. Official boards use a chip that Windows recognises without one; many compatible boards use a <code>CH340<\/code> or <code>CP2102<\/code> chip that needs a driver installed first. Read the marking on the small chip nearest the USB connector and install the matching driver from the manufacturer.<\/p>\n<h3>Install a library<\/h3>\n<p>You will need libraries for later tutorials, so it is worth learning the route now.<\/p>\n<ol>\n<li>Open <strong>Tools &gt; Manage Libraries<\/strong>, or click the books icon in the left sidebar.<\/li>\n<li>Type a library name into the search box.<\/li>\n<li>Click <strong>Install<\/strong> on the entry you want.<\/li>\n<\/ol>\n<p>Installed libraries appear under <strong>File &gt; Examples<\/strong>, below the built-in examples.<\/p>\n<h2>Minimal working example<\/h2>\n<p>This sketch blinks the onboard LED and reports each change over the serial connection, so it tests uploading and serial output at once.<\/p>\n<pre><code>\/\/ Siratek: first Arduino Uno program.\n\/\/ Blinks the onboard LED and reports each change over USB.\n\nconst int ledPin = LED_BUILTIN;  \/\/ Pin 13 on an Uno, already wired to the onboard LED.\nconst int interval = 1000;       \/\/ Milliseconds the LED stays in each state.\n\nvoid setup() {\n  pinMode(ledPin, OUTPUT);  \/\/ The pin drives the LED, so it must be an output.\n  Serial.begin(9600);       \/\/ Opens the USB serial link. The Serial Monitor must match this rate.\n  Serial.println(\"Siratek: board is running.\");\n}\n\nvoid loop() {\n  digitalWrite(ledPin, HIGH);\n  Serial.println(\"LED on\");\n  delay(interval);\n\n  digitalWrite(ledPin, LOW);\n  Serial.println(\"LED off\");\n  delay(interval);\n}<\/code><\/pre>\n<p>Change <code>interval<\/code> to make the blink faster or slower. Nothing else needs editing. <code>LED_BUILTIN<\/code> resolves to the right pin for whichever board you have selected.<\/p>\n<h3>Upload it<\/h3>\n<ol>\n<li>Open <strong>File &gt; New Sketch<\/strong> and replace its contents with the code above.<\/li>\n<li>Click <strong>Upload<\/strong>, the arrow in the toolbar.<\/li>\n<li>Watch the two small <code>TX<\/code> and <code>RX<\/code> LEDs flicker while the code transfers.<\/li>\n<\/ol>\n<h2>Expected result<\/h2>\n<p>The onboard LED, marked <code>L<\/code>, turns on for one second and off for one second, repeating.<\/p>\n<p>Open <strong>Tools &gt; Serial Monitor<\/strong> and set the rate selector to <strong>9600 baud<\/strong>. You should see:<\/p>\n<pre><code>Siratek: board is running.\nLED on\nLED off\nLED on<\/code><\/pre>\n<p>A new line should appear each second, in step with the LED. If the LED blinks but the Serial Monitor shows nothing or shows unreadable characters, the baud rate is wrong.<\/p>\n<h2>Troubleshooting<\/h2>\n<table>\n<thead>\n<tr>\n<th>Symptom<\/th>\n<th>Likely cause<\/th>\n<th>Check or fix<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>No ON LED when plugged in<\/td>\n<td>Charge-only USB cable, or a dead port<\/td>\n<td>Try another cable, then another port<\/td>\n<\/tr>\n<tr>\n<td>No port in <strong>Tools &gt; Port<\/strong><\/td>\n<td>Missing USB-to-serial driver<\/td>\n<td>Identify the chip near the USB connector and install its driver<\/td>\n<\/tr>\n<tr>\n<td><code>programmer is not responding<\/code><\/td>\n<td>Wrong port or board selected<\/td>\n<td>Reselect both, then upload again<\/td>\n<\/tr>\n<tr>\n<td>Upload fails while Serial Monitor is open<\/td>\n<td>The port is already in use<\/td>\n<td>Close the Serial Monitor and upload again<\/td>\n<\/tr>\n<tr>\n<td>Upload succeeds, LED does nothing<\/td>\n<td>Sketch uploaded to the wrong board<\/td>\n<td>Confirm the selected port belongs to this board<\/td>\n<\/tr>\n<tr>\n<td>Serial Monitor shows symbols<\/td>\n<td>Baud rate mismatch<\/td>\n<td>Set the Serial Monitor to 9600<\/td>\n<\/tr>\n<tr>\n<td>Serial Monitor stays empty<\/td>\n<td>Something is wired to <code>D0<\/code> or <code>D1<\/code><\/td>\n<td>Remove it and upload again<\/td>\n<\/tr>\n<tr>\n<td>Board gets hot<\/td>\n<td>Short circuit, or wrong barrel-jack supply<\/td>\n<td>Unplug immediately, then check wiring and supply polarity<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Next steps<\/h2>\n<ul>\n<li><strong>Easier first:<\/strong> nothing. This is the starting point for the library.<\/li>\n<li><strong>Related product:<\/strong> the Siratek Arduino Starter KIT, which supplies the parts used across the other tutorials.<\/li>\n<li><strong>Next project:<\/strong> LED Traffic Light Module, which applies what you have just done to an external module on three pins.<\/li>\n<\/ul>\n<h2>Sources and attribution<\/h2>\n<p>All text, wiring guidance and code in this tutorial are original Siratek work.<\/p>\n<ul>\n<li>Arduino Uno R3 product documentation and ATmega328P datasheet, for electrical limits.<\/li>\n<li>Arduino IDE 2 documentation, for the board, port and Library Manager routes.<\/li>\n<\/ul>\n<p>No third-party tutorial text, diagrams, photographs or code has been reproduced here.<\/p>\n<p><\/p>\n<\/body>","protected":false},"excerpt":{"rendered":"<p>The Arduino Uno is a small board built around an ATmega328P microcontroller. It runs one program at a time, from the moment it receives power until it loses it, and it gives you pins that can switch things on and&#8230;<\/p>\n","protected":false},"featured_media":0,"template":"","siratek_tutorial_level":[],"class_list":["post-52247","siratek_tutorial","type-siratek_tutorial","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Getting Started with Arduino Uno - siratek<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Getting Started with Arduino Uno - siratek\" \/>\n<meta property=\"og:description\" content=\"The Arduino Uno is a small board built around an ATmega328P microcontroller. It runs one program at a time, from the moment it receives power until it loses it, and it gives you pins that can switch things on and...\" \/>\n<meta property=\"og:url\" content=\"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/\" \/>\n<meta property=\"og:site_name\" content=\"siratek\" \/>\n<meta property=\"og:image\" content=\"http:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/\",\"url\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/\",\"name\":\"Getting Started with Arduino Uno - siratek\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/siratek.net\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/#primaryimage\"},\"image\":{\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/siratek.net\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/getting-started-arduino-uno-pin-map.svg\",\"datePublished\":\"2026-11-01T10:50:45+00:00\",\"breadcrumb\":{\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/#primaryimage\",\"url\":\"https:\\\/\\\/siratek.net\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/getting-started-arduino-uno-pin-map.svg\",\"contentUrl\":\"https:\\\/\\\/siratek.net\\\/wp-content\\\/uploads\\\/2026\\\/11\\\/getting-started-arduino-uno-pin-map.svg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/getting-started-arduino-uno\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/siratek.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorials\",\"item\":\"https:\\\/\\\/siratek.net\\\/index.php\\\/tutorials\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Getting Started with Arduino Uno\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/siratek.net\\\/#website\",\"url\":\"https:\\\/\\\/siratek.net\\\/\",\"name\":\"siratek\",\"description\":\"Your Best Electronic Retail Shop\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/siratek.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Getting Started with Arduino Uno - siratek","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/","og_locale":"en_US","og_type":"article","og_title":"Getting Started with Arduino Uno - siratek","og_description":"The Arduino Uno is a small board built around an ATmega328P microcontroller. It runs one program at a time, from the moment it receives power until it loses it, and it gives you pins that can switch things on and...","og_url":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/","og_site_name":"siratek","og_image":[{"url":"http:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/","url":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/","name":"Getting Started with Arduino Uno - siratek","isPartOf":{"@id":"https:\/\/siratek.net\/#website"},"primaryImageOfPage":{"@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/#primaryimage"},"image":{"@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/#primaryimage"},"thumbnailUrl":"http:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg","datePublished":"2026-11-01T10:50:45+00:00","breadcrumb":{"@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/#primaryimage","url":"https:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg","contentUrl":"https:\/\/siratek.net\/wp-content\/uploads\/2026\/11\/getting-started-arduino-uno-pin-map.svg"},{"@type":"BreadcrumbList","@id":"http:\/\/siratek.net\/index.php\/tutorials\/getting-started-arduino-uno\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/siratek.net\/"},{"@type":"ListItem","position":2,"name":"Tutorials","item":"https:\/\/siratek.net\/index.php\/tutorials\/"},{"@type":"ListItem","position":3,"name":"Getting Started with Arduino Uno"}]},{"@type":"WebSite","@id":"https:\/\/siratek.net\/#website","url":"https:\/\/siratek.net\/","name":"siratek","description":"Your Best Electronic Retail Shop","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/siratek.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/siratek_tutorial\/52247","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/siratek_tutorial"}],"about":[{"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/types\/siratek_tutorial"}],"version-history":[{"count":0,"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/siratek_tutorial\/52247\/revisions"}],"wp:attachment":[{"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/media?parent=52247"}],"wp:term":[{"taxonomy":"siratek_tutorial_level","embeddable":true,"href":"https:\/\/siratek.net\/index.php\/wp-json\/wp\/v2\/siratek_tutorial_level?post=52247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}