บทนำ
บทความนี้สรุปวิธี “เพิ่ม/อัปเดต/ลบ” ไลบรารีใน Arduino IDE ทั้งเวอร์ชัน 2.x และ 1.x ครบ 3 วิธี: ผ่าน Library Manager, จากไฟล์ .zip, และแบบคัดลอกโฟลเดอร์ด้วยมือ พร้อมทริกแก้ปัญหายอดฮิต
พร้อมจะเริ่มเขียนโค้ดกับ Arduino แล้วหรือยัง? ดาวน์โหลดและติดตั้ง Arduino IDE ได้ที่ Arduino IDE Download & Install
ไลบรารีคืออะไร? ทำไมต้องติดตั้ง
- Library คือโค้ดสำเร็จรูปที่ช่วยให้เราใช้งานเซนเซอร์/จอ/เครือข่าย ได้ง่ายขึ้น เช่น DHT22, BH1750, OLED, AsyncWebServer
- เมื่อติดตั้งแล้ว เราสามารถ #include <LibraryName.h> แล้วเรียกใช้ฟังก์ชันได้ทันที
- ในโปรเจกต์ Smart Farm PoPo (ESP32 + Relay + DHT22 + BH1750 + Soil) เราจะใช้หลายไลบรารี เพื่ออ่านค่าเซนเซอร์และควบคุมอุปกรณ์อัตโนมัติผ่านแอป
วิธีที่ 1: ติดตั้งผ่าน Library Manager (แนะนำสำหรับมือใหม่)
เหมาะที่สุด: ง่าย, ปลอดภัย, มีอัปเดตเวอร์ชันให้เลือก
Arduino IDE 2.x
- เปิด Arduino IDE → มองที่แถบซ้าย กดไอคอน Libraries (รูปหนังสือ)
- ช่อง Search libraries… พิมพ์ชื่อที่ต้องการ เช่น DHT sensor, BH1750
- เลือกไลบรารีที่ถูกต้อง แล้วกด Install (ถ้ามีปุ่ม “Select version” ให้เลือกเวอร์ชันล่าสุด Stable)
- ถ้าระบบถามให้ติดตั้ง Dependencies (ไลบรารีที่เกี่ยวข้อง) กด Install All
- ทดสอบ: ไปที่ File → Examples → [ชื่อไลบรารี] แล้วเปิดตัวอย่าง Compile/Upload
ตรวจสอบการติดตั้ง
- เมนู File → Examples ต้องเห็นโฟลเดอร์ชื่อตรงกับไลบรารีที่เพิ่งลง
- ตัวอย่าง Compile ผ่าน ไม่มีข้อความ “No such file or directory”

วิธีที่ 2: ติดตั้งจากไฟล์ Add .ZIP Library…
ใช้เมื่อเจ้าของโปรเจกต์แจกเป็น .zip หรือ Library Manager ยังไม่มี
- ดาวน์โหลดไฟล์ .zip ของไลบรารีจากแหล่งที่เชื่อถือได้ (เช่น GitHub ของผู้พัฒนา)
- IDE 2.x/1.x ไปที่ Sketch → Include Library → Add .ZIP Library…
- เลือกไฟล์ .zip ที่โหลดมา → กด Open
- IDE จะคัดลอกไปไว้ในโฟลเดอร์ libraries ให้อัตโนมัติ → เปิด Examples ทดสอบ
ทริก: ถ้าลง .zip แล้วไม่ขึ้นตัวอย่าง ให้ปิด-เปิด IDE หนึ่งรอบ

วิธีที่ 3: คัดลอกโฟลเดอร์ไลบรารีด้วยตัวเอง (Manual Install)
กรณีพิเศษ เช่น รีโปแจกเป็นโฟลเดอร์ ไม่ใช่ .zip
- แตกไฟล์/คัดลอกโฟลเดอร์ชื่อไลบรารี (ต้องมีไฟล์ .h/.cpp/library.properties)
- วางลงที่โฟลเดอร์ libraries ตาม OS:
- Windows: Documents\Arduino\libraries\
- macOS: ~/Documents/Arduino/libraries/
- Linux: ~/Arduino/libraries/
- ปิด-เปิด IDE → ดู File → Examples ต้องเห็นไลบรารี




อัปเดต / ลบ ไลบรารี
- อัปเดต: เปิด Library Manager → ค้นหาไลบรารี → หากมี Update ให้กดอัปเดต
- เปลี่ยนเวอร์ชัน: ปุ่มลูกศร/เมนูเวอร์ชัน → เลือกเวอร์ชันเก่า/ใหม่ (กันบั๊กหรือให้เข้ากับโปรเจกต์)
- ลบ:
- IDE 2.x: ใน Library Manager เลือกไลบรารี → Remove
- มือ: ลบโฟลเดอร์ใน libraries แล้วปิด-เปิด IDE
ทดสอบอย่างไว (ตัวอย่างโค้ดสั้น ๆ)
#include <Wire.h>
#include <BH1750.h> // เปลี่ยนเป็นชื่อไลบรารีที่คุณติดตั้ง
BH1750 lightMeter;
void setup() {
Serial.begin(115200);
Wire.begin();
if (lightMeter.begin()) {
Serial.println("BH1750 ready");
} else {
Serial.println("BH1750 not found");
}
}
void loop() {
float lux = lightMeter.readLightLevel();
Serial.printf("Light: %.2f lx\n", lux);
delay(1000);
}
ถ้า Compile ผ่าน และ Serial Monitor แสดงค่า → ไลบรารีพร้อมใช้งานแล้ว
หาวิธีเริ่มเขียนโค้ดบน Arduino IDE ลองดูตัวอย่างจริง ๆ ใน Arduino IDE – Code รับรองว่าคุณจะได้แนวคิดใหม่ ๆ เพียบ!
แก้ปัญหายอดฮิต (Troubleshooting)
No such file or directory
→ ยังไม่ได้ติดตั้ง / โฟลเดอร์ชื่อไม่ตรง / #include สะกดผิดตัวพิมพ์เล็ก-ใหญ่
ซ้ำซ้อน (Duplicate Libraries)
→ มีไลบรารีชื่อเดียวกันหลายที่ ลบให้เหลือที่ Documents/Arduino/libraries เพียงตำแหน่งเดียว
ตัวอย่างไม่ขึ้น
→ ปิด-เปิด IDE / ตรวจโครงสร้างโฟลเดอร์ให้ถูก (โฟลเดอร์หลักต้องมีไฟล์ library.properties)
สถาปัตยกรรมไม่รองรับ (เช่น ทำมาสำหรับ AVR แต่คุณใช้ ESP32)
→ อ่านหน้าไลบรารีว่ารองรับ ESP32 หรือไม่
คอมไพล์ Error หลังอัปเดต
→ ลอง Downgrade เป็นเวอร์ชันก่อนหน้า (Library Manager → เลือก Version)
ติดตั้งจาก GitHub แล้วใช้ไม่ได้
→ อย่าคัดลอกทั้งรีโปแบบผิดระดับโฟลเดอร์ ให้เลือกโฟลเดอร์ที่มี library.properties
ไลบรารีแนะนำสำหรับงาน ESP32 + Smart Farm
- DHT sensor / Adafruit Unified Sensor – อ่านอุณหภูมิ/ความชื้น
- BH1750 – วัดแสง
- DallasTemperature / OneWire – วัดอุณหภูมิแบบกันน้ำ (DS18B20)
- ESPAsyncWebServer + AsyncTCP – เว็บเซิร์ฟเวอร์/สื่อสารเร็ว (เหมาะกับโหมด Local ไม่พึ่ง Cloud)
- ArduinoJson – แลกเปลี่ยนข้อมูลระหว่าง ESP32 ↔ แอป
- Preferences – เก็บค่าตั้งค่า setpoint/โหมดอัตโนมัติถาวรใน ESP32
หมายเหตุ: บางไลบรารีอาจต้องลงจาก GitHub ของผู้พัฒนา ติดตั้งแบบ .zip หรือ Manual ตามขั้นตอนด้านบน
ก่อนจะเริ่มทำโปรเจกต์ ลองไปทำความรู้จัก ESP32 และฟีเจอร์เด่นที่คุณควรรู้ กันก่อน
เพิ่งเริ่มต้นกับ ESP32? ไม่แน่ใจว่าไลบรารี WiFi มีฟังก์ชันอะไรให้ใช้บ้าง — คลิกอ่าน ESP32 WiFi Library Functions เพิ่มเติมได้เลย
คำถามพบบ่อย (FAQ)
1) ควรใช้ Library Manager หรือ .zip ดี?
เริ่มจาก Library Manager ก่อน เพราะง่ายและมีอัปเดตให้เลือก ถ้าไม่มีค่อยใช้ .zip/Manual
2) ติดตั้งแล้วขึ้น Duplicate ทำไง?
ลบอันซ้ำให้เหลือที่ Documents/Arduino/libraries เพียงตำแหน่งเดียว แล้วรีสตาร์ท IDE
3) ต้องเลือกเวอร์ชันยังไง?
ถ้าไม่มีเหตุจำเป็น ให้ใช้ ล่าสุด (Latest) แต่หากโปรเจกต์/ตัวอย่างระบุเวอร์ชัน ให้ใช้ตามนั้น
4) เปลี่ยนเครื่อง/ย้ายโปรเจกต์ ต้องลงใหม่ไหม?
ใช่ เครื่องใหม่ต้องติดตั้งไลบรารีเหมือนเดิม หรือแพ็ก .zip โฟลเดอร์ libraries ไปด้วย
5) อัปเดตแล้วคอมไพล์พัง ทำไง?
ลอง Downgrade เป็นเวอร์ชันก่อนหน้าใน Library Manager
6) ทำไม #include แล้วไม่เจอไฟล์?
สะกดชื่อไฟล์/ตัวพิมพ์ผิด หรือไลบรารีไม่อยู่ในโฟลเดอร์ libraries ที่ถูกต้อง
7) ใช้กับ ESP32 ต้องดูอะไรเป็นพิเศษ?
อ่านหน้ารายละเอียดไลบรารีว่ารองรับ ESP32 และมี Dependencies อะไรบ้าง
8) ไลบรารีจาก GitHub เลือกโฟลเดอร์ไหน?
เลือกโฟลเดอร์ที่มี library.properties (คือโฟลเดอร์ “ราก” ของไลบรารี)
9) จะลบไลบรารีแบบสะอาด ๆ ทำไง?
ผ่าน Library Manager (Remove) หรือไปลบโฟลเดอร์ใน libraries แล้วปิด-เปิด IDE
10) ติดตั้งแล้วตัวอย่างไม่ขึ้นใน File → Examples?
รีสตาร์ท IDE / ตรวจชื่อโฟลเดอร์ / โครงสร้างไฟล์ให้ถูกต้อง






