Hướng dẫn chi tiết
Bài 5: Xử lý lỗi thường gặp
Tổng hợp lỗi upload, Serial Monitor, BLE, DHT22 và Door Sensor — kèm checklist khắc phục từng bước.
Cập nhật 10/05/2026
Lỗi khi Upload Code
| Lỗi | Nguyên nhân | Cách sửa |
|---|---|---|
Sketch too big |
Partition quá nhỏ cho BLE | Tools → Partition Scheme → Huge APP (3MB No OTA) PlatformIO: đã cấu hình sẵn |
Failed to connect |
ESP32-C3 không vào chế độ download | Nhấn giữ BOOT trên board khi nhấn Upload |
| Không thấy Port | Cáp không có data hoặc thiếu driver | Dùng cáp USB data; cài driver CH340 (wch-ic.com) |
Lỗi Serial Monitor
- Không thấy log: Kiểm tra baud rate = 115200, đúng port, nhấn RESET
- Log reset liên tục: BLE crash → kiểm tra Partition = Huge APP + Board = ESP32C3 Dev Module
Lỗi BLE
- advertising start failed: Kiểm tra Partition Huge APP, restart board
- Gateway không nhận: Xem Serial có
[BLE][Advertising] advertise successkhông, kiểm tra khoảng cách <10m - nRF Connect không thấy: Tìm bằng prefix
IOTL(payload dài bị truncate)
Lỗi Real Mode — DHT22
Checklist khi thấy temperature=0.0°C:
- Đã uncomment
dht.begin()vàdht.readTemperature()chưa - Đã cài library DHT sensor library by Adafruit chưa
- VCC = 3.3V (không phải 5V)
- DATA cắm đúng GPIO 4
- GND đã cắm chưa
Lỗi Real Mode — Door Sensor
- Luôn báo cùng trạng thái → GND chưa cắm, hoặc đổi logic:
== HIGH↔== LOW
Tip debug nhanh
Chuyển về mock mode để xác nhận BLE hoạt động trước, rồi mới debug phần cứng. Nếu mock mode OK → vấn đề ở cảm biến, không phải BLE.
