Hướng dẫn cài đặt VS Code và PlatformIO IDE để lập trình ESP32/ESP8266

Bài viết này hướng dẫn cài đặt và sử dụng VS Code + PlatformIO IDE để lập trình ESP32 và ESP8266 — một môi trường lập trình mạnh mẽ hơn Arduino IDE với tính năng autocomplete, debug, quản lý thư viện, và hỗ trợ nhiều board cùng lúc.
Bước 1 — Cài Visual Studio Code
🪟 Windows

- Vào code.visualstudio.com → tải bản Windows
- Chạy file installer → Next → Next → Install



⚠️ Windows cần cài thêm Python: Tải tại python.org → Tick vào "Add Python to PATH" trước khi nhấn Install Now.

🍎 macOS
- Tải VS Code tại code.visualstudio.com
- Giải nén file .zip → kéo Visual Studio Code.app vào thư mục Applications
- Cài Python qua Homebrew:
brew install python3

🐧 Linux (Ubuntu)
- Tải file .deb tại code.visualstudio.com
- Chạy:
sudo dpkg -i code_*.debhoặc cài trực tiếp từ Software Center - Cài Python:
sudo apt install python3 python3-distutils
Bước 2 — Cài PlatformIO IDE Extension

- Mở VS Code → nhấn biểu tượng Extensions (Ctrl+Shift+X)
- Tìm "PlatformIO IDE"
- Nhấn Install → chờ 3–5 phút
- Sau khi cài xong → Reload Window

Giao diện VS Code + PlatformIO

Thanh bên trái của VS Code có các biểu tượng chính:
- 📁 Explorer: quản lý file dự án
- 🔍 Search: tìm kiếm trong code
- 🔀 Source Control: tích hợp Git
- 🐛 Debug: debug chương trình
- 🧩 Extensions: quản lý extension
- 🏠 PlatformIO Home: trang chủ PlatformIO
![]()
Thanh công cụ PlatformIO ở dưới cùng (Status Bar):
- ✅ Build (checkmark): biên dịch code
- ➡️ Upload (mũi tên): nạp code lên board
- 🔌 Serial Monitor: mở cổng serial
- 🗑️ Clean: xóa file build cũ
Bước 3 — Tạo dự án mới

- Nhấn biểu tượng PlatformIO Home → New Project
- Điền tên project, chọn board (ví dụ: DOIT ESP32 DEVKIT V1)
- Chọn Framework: Arduino
- Nhấn Finish — PlatformIO tự tải board package

Cấu trúc thư mục dự án

- 📄 platformio.ini: file cấu hình board, thư viện, tốc độ serial...
- 📁 src/main.cpp: file code chính (tương đương .ino trong Arduino IDE)
- 📁 include/: header files
- 📁 lib/: thư viện local

Ví dụ file platformio.ini cho ESP32:
[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200

File src/main.cpp có cấu trúc giống Arduino — có setup() và loop(), nhưng cần thêm #include <Arduino.h> ở đầu:
#include <Arduino.h>
void setup() {
Serial.begin(115200);
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
}
Bước 4 — Nạp code lên ESP32/ESP8266

- Cắm ESP32 vào máy tính
- Nhấn biểu tượng Upload (mũi tên →) ở thanh dưới
- PlatformIO tự phát hiện cổng COM — không cần chọn thủ công
- Chờ thông báo "SUCCESS"

Serial Monitor

Nhấn biểu tượng 🔌 Serial Monitor ở thanh dưới. Muốn thay đổi baud rate, thêm vào platformio.ini:
monitor_speed = 115200
Cài thư viện trên PlatformIO

- Vào PlatformIO Home → Libraries
- Tìm tên thư viện (ví dụ: "BME280", "DHT", "NTPClient")
- Chọn thư viện → nhấn Add to Project → chọn project

Thư viện sẽ tự động thêm vào platformio.ini:
lib_deps = adafruit/Adafruit BME280 Library @ ^2.2.2
Mẹo hữu ích
- 🎨 Đổi theme màu: File → Preferences → Color Theme (Ctrl+K, Ctrl+T)
- ⌨️ Ctrl+Shift+P → gõ lệnh bất kỳ (Command Palette)
- 📂 Mở project cũ: File → Open Folder → chọn thư mục có platformio.ini
- 🔄 Upload + Monitor: dùng task
Upload and Monitorđể nạp code và mở serial cùng lúc
📖 Nguồn: Random Nerd Tutorials – VS Code + PlatformIO IDE for ESP32/ESP8266