Arduino Nano simulator, pushed into the breadboard
The Nano is the Uno's ATmega328P on a board 45 by 18 mm. Same core, same timers, same USART, same ADC, same firmware; two more analog inputs, and headers 0.6 inch apart, so it goes into the breadboard rather than beside it.
- 7peripheral areas modeled
- 10projects ready to run
- Real timeon your own machine
What is modeled
Taken from the board's own contract document and put in plain words, with what is missing beside it.
Modeled
- Core
- Every ATmega328P mnemonic with datasheet cycle counts, at 16 MHz
- Timers
- Three, in every waveform mode, including hardware PWM on the six marked pins
- USART0
- Wired to the serial monitor, paced at the baud rate you set
- ADC
- Eight channels: A0 to A5 on port C, and A6 and A7, which have no port pin at all
- Interrupts
- External and pin-change, with the real vector table
- Sleep and EEPROM
- Both, so an idle sketch costs almost nothing to simulate
- The board
- The real 45 by 18 mm outline, headers 0.6 inch apart, RESET at both ends on one trace
Not modeled
- The USB-to-serial bridge, the FT232RL or the CH340. Serial reaches the monitor directly, and pins 0 and 1 stay plain GPIO.
- The Nano Every, the Nano 33 and the rest of the newer family: they are different chips, and this is the ATmega328P v3.
- The Arduino IDE library ecosystem. The runtime here is ours and Arduino-shaped, not the Arduino core.
Open one and press Run
Each of these opens in the editor exactly as it is drawn here.
Every built-in project on the Arduino Nano
Each has its own page with the circuit running, the code and a parts list.
- Nano dialBeginner
- Tug of war gameBeginner
- Laser tag: two NanosIntermediate
- Animated diorama: DFPlayer sound + stepperIntermediate
- Ultrasonic thereminBeginner
- Electronic voting machineBeginner
- Stopwatch with lap timesBeginner
- Drum padsIntermediate
- Camera slider with eased movesAdvanced
- Eurorack CV quantizerAdvanced
Parts wired to the Arduino Nano, step by step
Each page has the wiring with the Arduino Nano’s own pin names, the code, the common mistakes and the circuit running.
- Arduino Nano DHT22
- Arduino Nano SSD1306 OLED
- Arduino Nano I2C LCD
- Arduino Nano Servo
- Arduino Nano HC-SR04
- Arduino Nano NeoPixel
- Arduino Nano Potentiometer
- Arduino Nano Buzzer
- Arduino Nano Relay
- Arduino Nano MPU6050
- Arduino Nano DS18B20
- Arduino Nano IR Receiver
- Arduino Nano TM1637 Display
- Arduino Nano Button
- Arduino Nano PIR Sensor
- Arduino Nano BMP280
- Arduino Nano Keypad
- Arduino Nano 28BYJ-48 Stepper
- Arduino Nano RC522 RFID
- Arduino Nano LDR
- Arduino Nano BME280
- Arduino Nano Joystick
- Arduino Nano 7-Segment Display
- Arduino Nano DS3231 RTC
Arduino libraries that compile as they are
Paste a tutorial that includes one of these and it builds. For any other library, the build names the Mokxi header that does the same job.
And 15 more, 23 in all: OneWire.h and DallasTemperature.h; Adafruit_BME280.h, Adafruit_BMP280.h and SparkFunBME280.h; RTClib.h; Adafruit_SHT31.h; Adafruit_PCF8591.h; Adafruit_ADXL345_U.h; LedControl.h; Adafruit_LEDBackpack.h; Adafruit_TCS34725.h; Adafruit_SGP30.h; Adafruit_INA219.h; Adafruit_ADS1X15.h; Adafruit_MCP23X17.h; Bounce2.h; HX711.h.
Tutorials that use this board
Each one ends in a running circuit, on this same board.
Questions
Is it free?
Yes. Every board and every part is on the free plan, with no account needed.
Which Nano?
The v3, on the ATmega328P. Not the Nano Every, the Nano 33 or the Nano ESP32, which are other chips.
Will an Uno sketch run on it?
Yes, and the other way around. It is the same chip and the same register map, so the same ELF runs on both.
What are A6 and A7?
Two extra ADC inputs the TQFP package bonds out. They can be read with analogRead and nothing else: no digitalRead, no output, no pull-up. An Uno has no pad for them at all.
The other boards
Every one of these runs today, and every one is free.
Looking for the shorter introduction? See the Arduino Nano simulator page.
Every Arduino board in one place: the Arduino simulator.
A RISC-V chip at 160 MHz, on the real memory map.
The classic Arduino, with an ATmega328P running at 16 MHz.
The big Arduino, with 54 digital pins and four serial ports.
An Uno-shaped board whose chip does its own USB serial.
A second RISC-V board, with 31 pins and simulated WiFi.
The classic ESP32 at 240 MHz, with simulated WiFi.
The ESP32-S3 at 240 MHz, with USB serial and an RGB LED.
The NodeMCU’s ESP8266 at 80 MHz, with simulated WiFi.
Try it on your own firmware
What you build here runs on the board on your desk, unchanged. Nothing to install and no account needed.