บทความ: เริ่มต้นใช้งาน Arduino Nano ESP32 ฉบับสมบูรณ์

เรียนรู้วิธีการเริ่มต้นใช้งาน Arduino Nano ESP32 บอร์ดใหม่ที่ผสานความคุ้นเคยของ Arduino เข้ากับพลังของ ESP32-S3 เหมาะสำหรับโปรเจกต์ IoT ทุกระดับ

📅 7 มีนาคม 2026⏱️ 15 นาที🎯 ระดับเริ่มต้น

ทำไมต้อง Arduino Nano ESP32?

Arduino Nano ESP32 เป็นบอร์ดใหม่ล่าสุดจาก Arduino ที่นำเสนอประสบการณ์ที่ดีที่สุดของสองโลก: ความคุ้นเคยของ Arduino และพลังของ ESP32-S3 จาก Espressif

✅ ข้อดี

  • • รูปแบบเดียวกับ Nano คุ้นเคย
  • • ใช้งานง่ายด้วย Arduino IDE
  • • WiFi + Bluetooth 5.0 ในตัว
  • • ทันสมัยและอนาคต

⚠️ สิ่งที่ควรรู้

  • • ราคาสูงกว่า Nano ดั้งเดิม
  • • ใช้ไฟฟ้ามากกว่า 3.3V เท่านั้น
  • • ต้องติดตั้ง USB Driver
  • • ไม่รองรับ 5V GPIO

บอร์ดนี้เหมาะสำหรับผู้เริ่มต้นที่ต้องการเรียนรู้ IoT และผู้ที่มีประสบการณ์ Arduino ที่ต้องการอัปเกรดโปรเจกต์ให้มีความสามารถด้านการเชื่อมต่อไร้สาย

สเปคทางเทคนิค

ส่วนประกอบรายละเอียด
MicrocontrollerESP32-S3 (dual-core Xtensa LX7)
ความเร็ว240 MHz
หน่วยความจำ512 KB SRAM, 384 KB ROM
Flash16 MB (on-board)
WirelessWiFi (802.11 b/g/n), Bluetooth 5.0
GPIO14 digital I/O, 8 analog inputs
แรงดันไฟ7-21V (DC), 3.3V logic
ขนาด45 x 18 mm (เหมือน Nano ดั้งเดิม)

ข้อกำหนดเบื้องต้น

🛠️ Hardware

  • Arduino Nano ESP32
  • USB Cable (Micro-USB หรือ USB-C)
  • คอมพิวเตอร์ (Windows, Mac หรือ Linux)
  • Breadboard และ jumper wires (สำหรับโปรเจกต์)

💻 Software

  • Arduino IDE 2.x (แนะนำ)
  • USB Drivers (CH340 หรือ CP210x)
  • บัญชี CynoIoT (ฟรี) - สำหรับ IoT

การติดตั้งและตั้งค่า

ขั้นตอนที่ 1: ติดตั้ง Arduino IDE

ดาวน์โหลดและติดตั้ง Arduino IDE เวอร์ชันล่าสุดจาก arduino.cc/en/software

ขั้นตอนที่ 2: ติดตั้ง USB Drivers

Arduino Nano ESP32 ใช้ USB-to-Serial chip สองแบบหลักๆ:

CH340 Driver (ถ้าใช้ CH340 chip)

  • Windows: ดาวน์โหลดจาก GitHub
  • macOS: ติดตั้งผ่าน Homebrew: brew install --cask ch340
  • Linux: โดยทั่วไปมี driver ในตัว kernel แล้ว

CP210x Driver (ถ้าใช้ CP2102/CP2104 chip)

ขั้นตอนที่ 3: เพิ่ม Board Support ใน Arduino IDE

  1. 1

    เปิด Arduino IDE และไปที่ File → Preferences (Windows/Linux) หรือ Arduino → Preferences (Mac)

  2. 2

    ในช่อง "Additional Boards Manager URLs" ใส่ URL นี้:

    https://espressif.github.io/arduino-esp32/package_esp32_index.json
  3. 3

    คลิก OK เพื่อบันทึก

  4. 4

    ไปที่ Tools → Board → Boards Manager

  5. 5

    ค้นหา "esp32" และติดตั้ง "esp32 by Espressif Systems"

  6. 6

    เลือกบอร์ด: Tools → Board → esp32 → Arduino Nano ESP32

ขั้นตอนที่ 4: เลือก Port และทดสอบ

เชื่อมต่อ Arduino Nano ESP32 เข้ากับคอมพิวเตอร์ด้วยสาย USB และ:

  1. 1

    ไปที่ Tools → Port และเลือก port ที่บอร์ดเชื่อมต่ออยู่

    ตัวอย่าง: COM3 (Windows), /dev/cu.usbserial-xxx (Mac), /dev/ttyUSB0 (Linux)

  2. 2

    ตรวจสอบว่าบอร์ดถูกต้อง: Tools → Board → Arduino Nano ESP32

โปรเจกต์แรก: Blink LED

มาเริ่มต้นด้วยโปรเจกต์คลาสสิก: ทำให้ LED กระพริบ บน Arduino Nano ESP32 มี LED ในตัวที่ขา D2 (GPIO 2)

// Arduino Nano ESP32 - Blink LED Example
// ทำให้ LED ในตัว (GPIO 2) กระพริบ

// กำหนดขา LED
const int ledPin = 2;  // LED ในตัวอยู่ที่ GPIO 2

// ฟังก์ชันตั้งค่าเริ่มต้น (รันครั้งเดียวเมื่อเปิดเครื่อง)
void setup() {
  // ตั้งค่าขา LED เป็น Output
  pinMode(ledPin, OUTPUT);
  
  // เปิด Serial Monitor สำหรับการ Debug
  Serial.begin(115200);
  Serial.println("Arduino Nano ESP32 - Blink LED Started!");
}

// ฟังก์ชันหลัก (รันวนรอบไม่สิ้นสุด)
void loop() {
  digitalWrite(ledPin, HIGH);  // เปิด LED (HIGH = 3.3V)
  Serial.println("LED ON");
  delay(1000);                  // รอ 1000 มิลลิวินาที (1 วินาที)
  
  digitalWrite(ledPin, LOW);   // ปิด LED (LOW = 0V)
  Serial.println("LED OFF");
  delay(1000);                  // รอ 1 วินาที
}

📝 คำอธิบายโค้ด:

  • pinMode(ledPin, OUTPUT) - ตั้งค่าขาให้เป็น Output (ส่งสัญญาณออก)
  • digitalWrite(HIGH) - ส่ง 3.3V ออกที่ขา (เปิด LED)
  • digitalWrite(LOW) - ส่ง 0V ออกที่ขา (ปิด LED)
  • delay(1000) - หยุดโปรแกรม 1000 มิลลิวินาที
  • Serial.println() - แสดงข้อความใน Serial Monitor (กด Ctrl+Shift+M)

วิธีอัปโหลดโค้ด:

  1. 1

    คัดลอกโค้ดด้านบนไปวางใน Arduino IDE

  2. 2

    กดปุ่ม Upload (ไอคอนลูกศร →) หรือกด Ctrl+U

  3. 3

    รอสักครู่... จะเห็นข้อความ "Done uploading" เมื่อสำเร็จ

  4. 4

    ดู LED บนบอร์ดกระพริบทุกๆ 1 วินาที!

⚠️ เคล็ดลับ: การ Debug ด้วย Serial Monitor

หากต้องการดูข้อความจาก Serial.println():

  • 1. เปิด Serial Monitor: Tools → Serial Monitor หรือกด Ctrl+Shift+M
  • 2. ตั้งค่า baud rate เป็น 115200 baud (มุมขวาล่าง)
  • 3. ดูข้อความ "LED ON" และ "LED OFF" ปรากฏทุกๆ 1 วินาที

การเชื่อมต่อ WiFi

หนึ่งในคุณสมบัติที่ทรงพลังที่สุดของ Arduino Nano ESP32 คือ WiFi ในตัว มาเรียนรู้วิธีเชื่อมต่อกับเครือข่าย WiFi กัน

// Arduino Nano ESP32 - WiFi Connection Example
// ทดสอบการเชื่อมต่อ WiFi

#include <WiFi.h>  // นำเข้าไลบรารี WiFi

// ตั้งค่า WiFi (แก้ไขให้ตรงกับเครือข่ายของคุณ)
const char* ssid = "YOUR_WIFI_SSID";        // ชื่อ WiFi
const char* password = "YOUR_WIFI_PASSWORD"; // รหัสผ่าน WiFi

// ฟังก์ชันตั้งค่าเริ่มต้น
void setup() {
  Serial.begin(115200);
  delay(1000);
  
  Serial.println();
  Serial.print("กำลังเชื่อมต่อกับ: ");
  Serial.println(ssid);

  // เริ่มการเชื่อมต่อ WiFi
  WiFi.begin(ssid, password);

  // รอจนกว่าจะเชื่อมต่อสำเร็จ
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");  // แสดงจุดเพื่อบอกสถานะ
  }

  // เชื่อมต่อสำเร็จ!
  Serial.println();
  Serial.println("✅ WiFi เชื่อมต่อสำเร็จ!");
  Serial.print("📡 IP Address: ");
  Serial.println(WiFi.localIP());  // แสดง IP ที่ได้รับ
  Serial.print("📶 Signal Strength: ");
  Serial.print(WiFi.RSSI());
  Serial.println(" dBm");
}

void loop() {
  // ไม่ต้องทำอะไรใน loop
  delay(1000);
}

📋 คำอธิบาย:

  • #include <WiFi.h> - นำเข้าไลบรารี WiFi (มีในตัวแล้ว)
  • WiFi.begin(ssid, password) - เริ่มเชื่อมต่อ WiFi
  • WiFi.status() - ตรวจสอบสถานะการเชื่อมต่อ
  • WiFi.localIP() - แสดง IP Address ที่ได้รับ
  • WiFi.RSSI() - แสดงความแรงสัญญาณ WiFi

วิธีใช้งาน:

  1. 1

    แก้ไข ssid และ password ให้ตรงกับเครือข่าย WiFi ของคุณ

  2. 2

    อัปโหลดโค้ดไปยังบอร์ด

  3. 3

    เปิด Serial Monitor (115200 baud) และดูผลลัพธ์

🌐 ต่อไปนี้คืออะไร?

เมื่อเชื่อมต่อ WiFi สำเร็จแล้ว คุณสามารถ:

  • • สร้าง Web Server เพื่อควบคุมอุปกรณ์ผ่านเบราว์เซอร์
  • • ส่งข้อมูลเซ็นเซอร์ไปยัง CynoIoT Platform
  • • รับคำสั่งผ่าน MQTT, HTTP หรือ WebSocket
  • • ทำโปรเจกต์ IoT อัจฉริยะต่างๆ

ปัญหาที่พบบ่อยและวิธีแก้ไข

ปัญหา 1: ไม่พบ Port (Port not found)

อาการ: ใน Tools → Port ไม่มี port ให้เลือก

สาเหตุ: ยังไม่ได้ติดตั้ง USB Driver หรือสาย USB เสีย

วิธีแก้ไข:

  • • ติดตั้ง USB Driver (CH340 หรือ CP210x)
  • • ลองเปลี่ยนสาย USB
  • • ลองเปลี่ยน USB port ในคอมพิวเตอร์
  • • รีสตาร์ท Arduino IDE

ปัญหา 2: Failed to connect

อาการ: ขึ้น error "Failed to connect" ตอนอัปโหลด

สาเหตุ: บอร์ดอยู่ในโหมดอื่น หรือ port ผิด

วิธีแก้ไข:

  • • กดปุ่ม BOOT หรือ RESET บนบอร์ดก่อนอัปโหลด
  • • ตรวจสอบว่าเลือก port ถูกต้อง
  • • ถอดและเสียบสาย USB ใหม่

ปัญหา 3: WiFi เชื่อมต่อไม่ได้

อาการ: โปรแกรมค้างที่ while loop หรือไม่ได้ IP

สาเหตุ: ชื่อ/รหัสผ่านผิด, ระยะห่างไกลเกินไป

วิธีแก้ไข:

  • • ตรวจสอบชื่อและรหัสผ่าน WiFi (ตัวพิมพ์ใหญ่-เล็กสำคัญ)
  • • ใกล้ Router หรือใช้ WiFi hotspot จากมือถือ
  • • ลองเปลี่ยนเป็น WiFi 2.4GHz (ESP32 รองรับ 2.4GHz เท่านั้น)

ปัญหา 4: Board เสียหลังจากต่อ 5V

อาการ: บอร์ดร้อน, ไม่ทำงาน

สาเหตุ: ESP32 ใช้ 3.3V logic ไม่ใช่ 5V

วิธีแก้ไข:

  • • ใช้แหล่งจ่าย 7-21V เข้า VIN pin (มี regulator ในตัว)
  • • อย่าต่อ 5V เข้า GPIO โดยตรง
  • • ใช้ voltage divider หรือ level shifter ถ้าต่อกับ 5V sensor

🎉 สรุป

ยินดีด้วย! คุณได้เรียนรู้พื้นฐานการใช้งาน Arduino Nano ESP32 แล้ว:

  • ✅ รู้จักสเปคและความสามารถของบอร์ด
  • ✅ ติดตั้งและตั้งค่า Arduino IDE ได้
  • ✅ อัปโหลดโค้ดแรกและทำให้ LED กระพริบ
  • ✅ เชื่อมต่อ WiFi และแสดง IP Address
  • ✅ รู้จักปัญหาที่พบบ่อยและวิธีแก้ไข

📚 บทความที่เกี่ยวข้อง:

🚀 ถัดไป:

คุณพร้อมที่จะสร้างโปรเจกต์ IoT แรกของคุณแล้ว! ลองทำตามบทความเหล่านี้:

© 2026 CynoIoT. Built with ❤️ for the IoT community.