ELAB Nano V3 ATmega328P CH340 | Compact Arduino Compatible Board
ELAB Nano V3 — Compact ATmega328P Development Board with CH340G USB The ELAB-Nano V3-Board is a compact, breadboard-friendly microcontroller development board powered by the ATmega 328P — the same proven 8-bit AVR microcontroller found in the Arduino Nano and UNO. Designed for makers, students, and engineers who need a powerful yet space-efficient platform, the ELAB Nano V3 measures just 45×18mm, making it ideal for embedded installations, wearable prototypes, and any project where board real estate is at a premium. The board ships fully assembled with all headers pre-soldered and includes a ready-to-use USB cable, so you can plug in and start programming within minutes. The CH340G USB-to-serial chip ensures reliable communication on Windows 7, 8, and 10 without compatibility issues, while the standard Arduino Nano pin layout guarantees full compatibility with the Arduino IDE and the vast Arduino library ecosystem. Technical Specifications Parameter Specification Main Microcontroller ATmega328P USB-to-Serial Chip CH340G Operating Voltage 5V Input Voltage (Recommended) 7–10V (via VIN pin) Input Voltage (Limit) 6–12V USB Connector Mini-B USB Clock Speed 16 MHz Flash Memory 32 KB (2 KB used by bootloader) SRAM 2 KB EEPROM 1 KB Digital I/O Pins 22 (including analog pins used as digital) PWM Output Pins 6 (D3, D5, D6, D9, D10, D11) Analog Input Pins 8 (A0–A7, 10-bit ADC) DC Current per I/O Pin 40 mA max Communication Interfaces UART, SPI, I2C ICSP Header Yes (in-circuit serial programming) Onboard LEDs Power LED, TX LED, RX LED, D13 LED Reset Button Yes Board Dimensions 45mm × 18mm Weight ~7g OS Compatibility Windows 7 / 8 / 10, macOS, Linux Pre-soldered Yes — headers fully assembled For complete register-level and electrical specifications, refer to the official ATmega328P Datasheet (Microchip Technology). For USB-to-serial driver details, see the CH340G Datasheet. Board Layout & Label Guide Mini-B USB Port — For programming and serial monitoring; connects to CH340G chip CH340G USB-to-Serial Chip — Converts USB to UART; compatible with Win7/8/10 natively ATmega328P MCU — Main processor running at 16 MHz; handles all logic and I/O 16 MHz Crystal Oscillator — Provides stable clock reference for the MCU Reset Button — Manually resets the board and restarts the running sketch Digital Pins D0–D13 — General-purpose I/O; D3/D5/D6/D9/D10/D11 support PWM Analog Pins A0–A7 — 10-bit ADC inputs; A6 and A7 are analog-input only ICSP Header — 6-pin header for in-circuit serial programming / bootloader burning Power Pins — VIN (6–12V input), 5V output, 3.3V output (limited to ~50mA), GND TX / RX LEDs — Flash during serial data transmission and reception Power LED — Solid green when board is powered D13 LED — Driven by digital pin 13; standard debug indicator AREF Pin — Analog reference voltage input for ADC measurements The Nano's 2.54mm DIP pin layout plugs directly into a standard breadboard with no adapters needed. For clean sensor wiring, pair it with a KeyeStudio Sensor Shield V5 (via an UNO carrier board) or use a 400-Hole Transparent Mini Breadboard for compact prototyping setups. Application Scenarios 1. Beginner Project — Blink the Onboard LED Verify your board and toolchain with the classic "Hello World" of microcontrollers. The ELAB Nano V3 has a built-in LED on pin D13 — no extra hardware needed. // Blink Example — ELAB Nano V3 // Uses the onboard LED on D13 void setup() { pinMode(13, OUTPUT); // Set D13 as digital output } void loop() { digitalWrite(13, HIGH); // LED ON delay(1000); digitalWrite(13, LOW); // LED OFF delay(1000); } 2. Analog Sensing — Read a Potentiometer or NTC Thermistor The Nano provides 8 analog input pins (A0–A7), giving it 2 more than the Arduino UNO. This makes it well-suited for multi-channel sensor data acquisition. The following example reads analog voltage from A0 and prints it to the Serial Monitor. // Analog Read — Potentiometer or Sensor on A0 // Open Arduino IDE → Tools → Serial Monitor (9600 baud) void setup() { Serial.begin(9600); } void loop() { int rawValue = analogRead(A0); // Read 0–1023 float voltage = rawValue * (5.0 / 1023.0); // Convert to voltage Serial.print("Raw: "); Serial.print(rawValue); Serial.print(" | Voltage: "); Serial.print(voltage, 2); Serial.println(" V"); delay(250); } For a wide range of plug-and-play sensors compatible with this board, explore the Gravity 27 PCS Arduino Sensor Kit — includes temperature sensors, LDRs, motion detectors, relays, and more. 3. PWM Output — LED Fade or Servo Control Pins D3, D5, D6, D9, D10, and D11 support 8-bit PWM via analogWrite(). Use them to smoothly dim LEDs, control servo angle, or drive a motor driver's speed input. // PWM Servo Control — Control a standard servo on D9 // Library: Servo (built into Arduino IDE) // Connect: Servo signal → D9, VCC → 5V, GND → GND #include Servo myServo; void setup() { myServo.attach(9); // Attach servo to pin D9 } void loop() { for (int angle = 0; angle = 0; angle -= 5) { myServo.write(angle); // Sweep back from 180° to 0° delay(20); } } 4. I2C Communication — SSD1306 OLED Display The Nano's A4 (SDA) and A5 (SCL) pins support I2C. Connect an SSD1306 0.96" OLED display to visualize sensor data in compact projects — perfect for wearables or portable instruments. // SSD1306 OLED Display via I2C // Libraries needed: Adafruit_SSD1306 + Adafruit_GFX // Install via Arduino IDE Library Manager // Connect: SDA → A4, SCL → A5, VCC → 3.3V or 5V, GND → GND #include #include #include #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void setup() { display.begin(SSD1306_SWITCHCAPVCC, 0x3C); display.clearDisplay(); display.setTextSize(1); display.setTextColor(SSD1306_WHITE); display.setCursor(0, 0); display.println("ELAB Nano V3"); display.println("ATmega328P Ready!"); display.display(); } void loop() { // Static display — no loop updates needed } If you're looking for a more capable Arduino Nano alternative with SPI and additional peripherals, check out the DFRduino Nano V3.1 by DFRobot — also fully compatible with the Arduino Nano ecosystem. 5. SPI Communication — Wireless with NRF24L01 The Nano supports SPI via D10 (SS), D11 (MOSI), D12 (MISO), and D13 (SCK). Pair it with an NRF24L01 2.4GHz radio module to build simple wireless sensor networks or remote controls. // NRF24L01 Transmitter Example // Library: RF24 (install via Arduino Library Manager) // Connect: CE → D9, CSN → D10, SCK → D13, MOSI → D11, MISO → D12 // VCC → 3.3V (NOT 5V!), GND → GND #include #include RF24 radio(9, 10); // CE=D9, CSN=D10 const byte address[6] = "00001"; void setup() { radio.begin(); radio.openWritingPipe(address); radio.setPALevel(RF24_PA_LOW); radio.stopListening(); } void loop() { const char message[] = "Hello from Nano!"; radio.write(&message, sizeof(message)); delay(1000); } 6. Compact Embedded Project — Standalone Sensor Logger The Nano's small footprint (45×18mm, ~7g) makes it ideal for embedding inside enclosures, robots, and wearable devices. Combine it with a DHT22 temperature/humidity sensor and a microSD module to build a standalone data logger — no PC connection needed after deployment. // DHT22 + Serial Logger Example // Library: DHT sensor library (Adafruit) — install via Library Manager // Connect: DHT22 DATA → D2, VCC → 5V, GND → GND #include #define DHTPIN 2 #define DHTTYPE DHT22 DHT dht(DHTPIN, DHTTYPE); void setup() { Serial.begin(9600); dht.begin(); } void loop() { delay(2000); float humidity = dht.readHumidity(); float temperature = dht.readTemperature(); if (isnan(humidity) || isnan(temperature)) { Serial.println("Sensor read error!"); return; } Serial.print("Temp: "); Serial.print(temperature); Serial.print(" °C | Humidity: "); Serial.print(humidity); Serial.println(" %"); } If your project requires a breadboard for prototyping, the 400-Hole Transparent Mini Breadboard is perfectly sized for the Nano's DIP footprint. For a complete all-in-one learning kit built around Arduino, see the DFRobot Arduino Beginner Starter Kit. Packing List 1× ELAB-Nano V3-Board (ATmega328P, CH340G, headers pre-soldered) 1× USB-A to Mini-B USB Cable Note: Breadboards, jumper wires, and sensors are sold separately. FAQ Q1: Is the ELAB Nano V3 fully compatible with the Arduino Nano? Yes. This board uses the same ATmega328P microcontroller with the Arduino Nano bootloader pre-installed. In the Arduino IDE, simply select Board: "Arduino Nano" and Processor: "ATmega328P (Old Bootloader)" to upload sketches. All Arduino Nano libraries and shields are fully compatible. Q2: What is the difference between the ELAB Nano V3 and the Arduino UNO? Both boards use the same ATmega328P MCU, but the Nano is significantly smaller (45×18mm vs 68×53mm for the UNO). The Nano also has 2 additional analog pins (A6 and A7) for a total of 8 analog inputs, compared to 6 on the UNO. The Nano uses a Mini-B USB port and connects directly to a breadboard. For comparison, see our Arduino UNO R3 Compatible Board. Q3: Do I need to install a driver for the CH340G chip? On Windows 10/11 and macOS 10.14+, the CH340G driver is typically installed automatically. For Windows 7/8 or if the board is not recognized, download the official CH340 driver from www.wch-ic.com and install it manually. After installation, the board appears as a COM port in Device Manager or System Preferences. Q4: Can I power the ELAB Nano V3 without USB? Yes. Apply 6–12V DC to the VIN pin (7–10V recommended) with GND connected to any GND pin. The onboard voltage regulator steps down the input to 5V for the board and peripheral modules. This is the standard method for battery-powered or standalone deployments. A 9V battery with a connector is a common choice. Q5: Why do upload attempts fail with "avrdude: stk500_recv() programmer not responding"? This usually means one of three things: (1) The wrong COM port is selected — check Device Manager (Windows) or /dev/tty.* (macOS/Linux). (2) The wrong bootloader is selected — try switching between "ATmega328P" and "ATmega328P (Old Bootloader)" under Tools → Processor. (3) The CH340G driver is missing — install it from the WCH official site. Q6: What is the maximum current I can draw from the 5V and 3.3V pins? The 5V pin can source approximately 400–500 mA when powered via USB, or up to ~800 mA when powered via VIN with the onboard regulator. The 3.3V pin is limited to approximately 50 mA. Do not power motors or high-current devices directly from I/O pins — use a motor driver or relay module for such loads. Q7: Are A6 and A7 usable as digital pins? No. Analog pins A6 and A7 on the ATmega328P are analog-input only and cannot be configured as digital output pins. A0–A5, however, can be used as both analog inputs and digital I/O, giving you flexible pin management for complex projects. Q8: Is this board suitable for beginners? Absolutely. The ELAB Nano V3 ships fully assembled and ready to use — just install the Arduino IDE, plug it in via USB, and start coding. Its compact size and breadboard compatibility make it one of the most versatile entry points into embedded development. If you're new to Arduino, the DFRobot Arduino Beginner Starter Kit bundles a Nano-compatible board with sensors, LEDs, motors, and 30 step-by-step project tutorials.
More you might like
Related
DFRobot DFRduino Nano V3.1 - ATmega328P (Arduino Nano Compat
Related
DFRobot DFRduino Nano V3.1 - ATmega328P (Arduino Nano Compat
Related
DFRobot DFRduino Nano V3.1 - ATmega328P (Arduino Nano kompat
Related