📋 เนื้อหาในบทความ
🎯 ภาพรวม ESP32-H21
ESP32-H21 คือไมโครคอนโทรลเลอร์รุ่นล่าสุดจาก Espressif ที่เปิดตัวในงาน CES 2026 โดยเป็นการพัฒนาต่อยอดจาก ESP32-H2 ที่มีชื่อเสียงในด้านการรองรับโปรโตคอล Matter, Thread และ Zigbee สำหรับ Smart Home แต่ H21 มีการปรับปรุงที่สำคัญคือเพิ่ม on-chip DC-DC converter เข้ามาเพื่อลดกำลังไฟในโหมดทำงานและโหมดพักผ่อน ทำให้เหมาะสำหรับโปรเจกต์ IoT ที่ใช้แบตเตอรี่และต้องการทำงานต่อเนื่องยาวนาน
✨ จุดเด่นหลักของ ESP32-H21
- • On-Chip DC-DC Converter: ลด active current ลงเหลือ 6-8 mA (ลดลง 30% เทียบกับ H2)
- • Ultra-Low Deep Sleep: เพียง 10 µA ในโหมด Deep Sleep
- • Multi-Protocol Support: Matter over Thread, Zigbee, BLE 5.0
- • Always-On IoT: ออกแบบมาสำหรับอุปกรณ์ที่ต้องทำงานตลอดเวลา
- • Rich Peripherals: GPIO, ADC, PWM, I2C, SPI, UART
ชิพนี้มุ่งเน้นไปที่ตลาด Smart Home และ IoT ที่ต้องการการเชื่อมต่อที่เสถียรและประหยัดพลังงาน โดยเฉพาะอุปกรณ์ที่ทำงานบนแบตเตอรี่เช่น เซ็นเซอร์วัดอุณหภูมิ/ความชื้น สวิตช์ไฟอัจฉริยะ อุปกรณ์ติดตามสินทรัพย์ และอื่นๆ ที่ต้องการอายุการใช้งานแบตเตอรี่หลายเดือนถึงหลายปี
🔑 คุณสมบัติหลัก
On-Chip DC-DC Converter
นี่คือการปรับปรุงที่สำคัญที่สุดของ H21 เมื่อเปรียบเทียบกับ H2 DC-DC converter ที่ติดตั้งบนชิพจะช่วย:
- • ลดกำลังไฟในโหมด Active จาก ~12 mA เหลือ 6-8 mA
- • ลดกำลังไฟในโหมด Deep Sleep เหลือเพียง 10 µA
- • ยืดอายุการใช้งานแบตเตอรี่ได้ 2-3 เท่า
- • ลดความร้อนที่เกิดจากการแปลงไฟภายนอก
Multi-Protocol Wireless
H21 รองรับโปรโตคอลหลายรูปแบบเพื่อการเชื่อมต่อที่ยืดหยุ่น:
- • Matter over Thread: เชื่อมต่อกับ Apple Home, Google Home, Amazon Alexa
- • Zigbee 3.0: เข้ากันได้กับ Smart Home Hub ทั่วไป
- • Bluetooth LE 5.0: สำหรับ commissioning และการเชื่อมต่อโดยตรง
- • IEEE 802.15.4: รากฐานสำหรับ Thread และ Zigbee
Processing & Memory
ประมวลผลและหน่วยความจำที่เพียงพอสำหรับงาน IoT:
- • CPU: RISC-V 32-bit แบบ single-core ที่ 160 MHz
- • SRAM: 400 KB (สำหรับโค้ดและข้อมูล)
- • ROM: 512 KB (สำหรับ bootloaders และ libraries)
- • Flash: สูงสุด 16 MB external flash
⚙️ สเปกฮาร์ดแวร์
| คุณสมบัติ | สเปก |
|---|---|
| CPU | RISC-V 32-bit @ 160 MHz |
| SRAM | 400 KB |
| ROM | 512 KB |
| Flash | External สูงสุด 16 MB |
| Active Current | 6-8 mA (with DC-DC) |
| Deep Sleep | ~10 µA |
| GPIO | 22 pins |
| ADC | 12-bit SAR ADC, 13 channels |
| Wireless | Matter, Thread, Zigbee, BLE 5.0 |
| Temperature Range | -40°C ถึง +85°C |
| Package | QFN 5×5 mm |
📊 เปรียบเทียบกับรุ่นอื่น
เพื่อให้เข้าใจความแตกต่างของ H21 มาเปรียบเทียบกับ ESP32 รุ่นยอดนิยมอื่นๆ
| คุณสมบัติ | ESP32-H21 | ESP32-H2 | ESP32-C6 |
|---|---|---|---|
| CPU | RISC-V @ 160 MHz | RISC-V @ 160 MHz | RISC-V @ 160 MHz |
| On-Chip DC-DC | ✓ | ✗ | ✗ |
| Active Current | 6-8 mA | ~12 mA | ~12 mA |
| Deep Sleep | ~10 µA | ~15 µA | ~15 µA |
| Matter/Thread | ✓ | ✓ | ✓ |
| Wi-Fi | ✗ | ✗ | ✓ (2.4 GHz) |
| BLE 5.0 | ✓ | ✓ | ✓ |
| Zigbee | ✓ | ✓ | ✓ |
| Best For | Battery IoT Devices | Matter Devices | Wi-Fi + Matter |
💡 หมายเหตุ: ESP32-H21 ไม่มี Wi-Fiในตัว หากโปรเจกต์ของคุณต้องการ Wi-Fi ให้พิจารณา ESP32-C6 หรือ ESP32 รุ่นดั้งเดิมแทน แต่หากต้องการประหยัดพลังงานสูงสุดและเชื่อมต่อผ่าน Thread/Zigbee/Matter H21 คือตัวเลือกที่ดีที่สุด
💡 การประยุกต์ใช้งาน
ESP32-H21 ออกแบบมาเพื่อโปรเจกต์ IoT ที่ต้องการประหยัดพลังงานสูง นี่คือ use cases ที่เหมาะสม:
🌡️ เซ็นเซอร์วัดอุณหภูมิ/ความชื้น
ใช้ H21 เพื่อส่งข้อมูลทุก 5-10 นาทีผ่าน Thread และทำงานต่อเนื่องด้วยแบตเตอรี่ขนาดเล็กได้นาน 1-2 ปี
💡 สวิตช์ไฟอัจฉริยะ
สวิตช์ที่ควบคุมผ่าน Matter และทำงานด้วยแบตเตอรี่ได้หลายเดือนโดยไม่ต้องชาร์จบ่อย
🚪 ประตู/หน้าต่าง Smart
เซ็นเซอร์ตรวจจับการเปิด-ปิดประตูและส่งแจ้งเตือนผ่าน Thread network ด้วยกำลังไฟต่ำ
🏷️ ติดตามสินทรัพย์
อุปกรณ์ Tracker ขนาดเล็กที่ใช้ BLE และ Matter เพื่อรายงานตำแหน่งและสถานะ
🌾 การเกษตรอัจฉริยะ
เซ็นเซอร์วัดความชื้นดิน แสงแดด และอุณหภูมิในไร่นาโดยใช้พลังงานแสงอาทิตย์ + แบตเตอรี่
🏥 อุปกรณ์สุขภาพ
Wearables ที่ติดตามสัญญาณชีพและส่งข้อมูลผ่าน BLE ไปยัง smartphone หรือ hub
🚀 เริ่มต้นใช้งาน
ณ ตอนนี้ (มีนาคม 2026) ESP32-H21 เพิ่งเปิดตัวในงาน CES 2026 และอาจยังไม่มีบอร์ด development จำหน่ายในตลาดทั่วไป แต่คุณสามารถเริ่มเตรียมตัวได้ดังนี้:
1. เตรียมเครื่องมือพัฒนา
- • ติดตั้ง ESP-IDF v5.4+ (รองรับ ESP32-H2/H21)
- • ใช้ ESP-AT command หรือ ESP-Hosted สำหรับการเชื่อมต่อ
- ศึกษาเอกสาร Matter SDK และ OpenThread
2. ศึกษาตัวอย่างโปรเจกต์
- • เริ่มต้นด้วย ESP32-H2 เพื่อเรียนรู้พื้นฐาน Thread/Matter
- • ดูตัวอย่างจาก Espressif Matter SDK
- • ศึกษาโค้ดตัวอย่างจาก GitHub repositories
3. เข้าร่วมชุมชน
- • ESP32 Thailand Group บน Facebook
- • Espressif Forums สำหรับการอัปเดตข่าวสาร
- • GitHub discussions สำหรับปัญหาเทคนิค
📅 Timeline ความพร้อมจำหน่าย
- • Q2 2026: บอร์ด development จำหน่ายแก่ partners
- • Q3 2026: บอร์ดจำหน่ายในตลาดทั่วไป
- • Q4 2026: ชิพมีจำหน่ายใน mass production
💻 ตัวอย่างโค้ด
นี่คือตัวอย่างโค้ดพื้นฐานสำหรับ ESP32-H21 ในการสร้าง Temperature Sensor ที่เชื่อมต่อผ่าน Thread และใช้ Deep Sleep เพื่อประหยัดพลังงาน:
/*
* ESP32-H21 Temperature Sensor พร้อม Deep Sleep
* ส่งข้อมูลผ่าน Thread ทุก 10 นาที
* ใช้งานร่วมกับ CynoIoT Platform
*/
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_sleep.h"
#include "esp_log.h"
#include "driver/temp_sensor.h"
// Thread และ Matter headers
#include "esp_openthread.h"
#include "esp_matter.h"
// ตั้งค่า Deep Sleep
#define SLEEP_DURATION_US 10 * 60 * 1000000 // 10 นาที (หน่วยเป็นไมโครวินาที)
static const char *TAG = "H21_TEMP_SENSOR";
// ฟังก์ชันอ่านค่าอุณหภูมิจากภายในชิพ
float read_internal_temperature() {
float temp = 0;
temp_sensor_read_celsius(&temp);
return temp;
}
// ฟังก์ชันส่งข้อมูลผ่าน Thread
void send_via_thread(float temperature) {
// ส่งข้อมูลไปยัง Thread Border Router
// ซึ่งจะส่งต่อไปยัง CynoIoT Cloud
ESP_LOGI(TAG, "Sending temperature: %.2f°C via Thread", temperature);
// โค้ดนี้เป็นเพียงตัวอย่าง ในการใช้งานจริงต้อง:
// 1. เริ่มต้น OpenThread stack
// 2. เชื่อมต่อกับ Thread network
// 3. สร้าง Matter endpoint
// 4. ส่งข้อมูลผ่าน Matter
}
// ฟังก์ชันเข้าสู่โหมด Deep Sleep
void enter_deep_sleep() {
ESP_LOGI(TAG, "Entering Deep Sleep for 10 minutes...");
// ตั้งค่า wake-up source ด้วย TIMER
esp_sleep_enable_timer_wakeup(SLEEP_DURATION_US);
// เข้าสู่ Deep Sleep
esp_deep_sleep_start();
}
void app_main(void)
{
// เริ่มต้น Temperature Sensor
temp_sensor_config_t temp_sensor = TSENS_CONFIG_DEFAULT();
temp_sensor_set_config(temp_sensor);
temp_sensor_start();
ESP_LOGI(TAG, "ESP32-H21 Temperature Sensor started");
ESP_LOGI(TAG, "Active current: ~6-8 mA with DC-DC");
ESP_LOGI(TAG, "Deep sleep current: ~10 µA");
while (1) {
// อ่านค่าอุณหภูมิ
float temperature = read_internal_temperature();
ESP_LOGI(TAG, "Temperature: %.2f°C", temperature);
// ส่งข้อมูลผ่าน Thread
send_via_thread(temperature);
// รอส่งข้อมูลให้เสร็จ (ประมาณ 5 วินาที)
vTaskDelay(pdMS_TO_TICKS(5000));
// เข้าสู่ Deep Sleep เพื่อประหยัดพลังงาน
enter_deep_sleep();
}
}💡 คำอธิบายโค้ด
- • Deep Sleep: ใช้ `esp_deep_sleep_start()` เพื่อเข้าสู่โหมดพักผ่อนที่ใช้พลังงานเพียง 10 µA
- • Timer Wake-up: ใช้ `esp_sleep_enable_timer_wakeup()` เพื่อกำหนดให้ตื่นขึ้นทุก 10 นาที
- • Thread Communication: ในทางปฏิบัติต้องใช้ ESP-Hosted หรือ OpenThread SDK เพื่อเชื่อมต่อกับ Thread network
- • CynoIoT Integration: สามารถใช้ CynoIoT SDK เพื่อส่งข้อมูลไปยัง platform ของเราได้อย่างง่ายดาย
🔋 เทคนิคประหยัดพลังงาน
นอกจาก DC-DC converter ที่ติดตั้งมาในตัวแล้ว ยังมีวิธีอื่นๆ ในการลดกำลังไฟเพื่อยืดอายุการใช้งานแบตเตอรี่:
1. ใช้ Deep Sleep อย่างมีประสิทธิภาพ
- • เพิ่มช่วงเวลาระหว่างการส่งข้อมูล (เช่น ทุก 10-30 นาที)
- • ใช้ external RTC หรือ ULP สำหรับ wake-up โดยไม่ต้องใช้ CPU
- • ปิด peripheral ที่ไม่ได้ใช้ก่อนเข้า Deep Sleep
2. ปรับค่า CPU Frequency
- • ลดค่า CPU frequency เมื่อไม่ต้องการประมวลผลหนักๆ
- • ใช้ `esp_pm_configure()` เพื่อปรับ dynamic frequency scaling
- • ปกติ 80 MHz หรือ 40 MHz เพียงพอสำหรับงาน IoT ส่วนใหญ่
3. เลือกใช้สัญญาณไร้สายที่เหมาะสม
- • Thread: กินไฟน้อยกว่า Wi-Fi มาก ใช้สำหรับ mesh networks
- • BLE: กินไฟน้อยในการเชื่อมต่อระยะใกล้
- • Zigbee: คล้ายกับ Thread แต่ ecosystem แตกต่าง
4. ใช้ Hardware Peripherals อย่างชาญฉลาด
- • ใช้ DMA แทนการ poll ข้อมูลด้วย CPU
- • ใช้ interrupt แทนการ polling
- • ปิด peripheral ที่ไม่ได้ใช้เช่น ADC, PWM, I2C
📊 ตัวอย่างการคำนวณอายุแบตเตอรี่
หากใช้แบตเตอรี่ CR2032 (220 mAh) กับ ESP32-H21:
- • Active 10 วินาที: ~8 mA × 10s = ~0.022 mAh per cycle
- • Sleep 10 นาที: ~10 µA × 600s = ~0.0017 mAh per cycle
- • รวมต่อรอบ (10 นาที): ~0.024 mAh
- • จำนวนรอบ: 220 mAh / 0.024 mAh ≈ 9,167 cycles
- • อายุการใช้งาน: 9,167 cycles × 10 minutes ≈ 63 วัน (2 เดือน)
💡 หากเพิ่มเวลาเป็นส่งทุก 30 นาที อายุการใช้งานจะยาวนานถึง 6 เดือน!
🎯 สรุป
ESP32-H21 คือไมโครคอนโทรลเลอร์รุ่นใหม่ที่มาพร้อมกับ on-chip DC-DC converter สำหรับลดกำลังไฟและยืดอายุการใช้งานแบตเตอรี่ ชิพนี้เหมาะสำหรับโปรเจกต์ IoT ที่ต้องการทำงานต่อเนื่องด้วยแบตเตอรี่เป็นเวลานาน เช่น เซ็นเซอร์วัดอุณหภูมิ/ความชื้น สวิตช์ไฟอัจฉริยะ และอุปกรณ์ติดตามสินทรัพย์
✨ จุดเด่นหลัก
- ✅ On-chip DC-DC converter ลดกำลังไฟลง 30%
- ✅ Deep sleep เพียง 10 µA
- ✅ รองรับ Matter, Thread, Zigbee, BLE 5.0
- ✅ ออกแบบมาสำหรับ Always-on IoT devices
ณ ตอนนี้ชิพยังไม่มีจำหน่ายในตลาดทั่วไป แต่คุณสามารถเริ่มเตรียมตัวได้โดยการศึกษา ESP32-H2 ซึ่งมีสถาปัตยกรรมคล้ายกัน เมื่อ H21 มีจำหน่ายแล้วคุณจะพร้อมที่จะใช้งานทันที
📚 อ่านเพิ่มเติม
- • ESP32 Selection Guide 2026 - เปรียบเทียบบอร์ด ESP32 ทุกรุ่น
- • ESP32 Low Power Sensor Node - สร้าง Sensor Node ประหยัดไฟ
- • เริ่มต้นใช้งาน RP2040 - อีกตัวเลือกบอร์ด ARM Cortex-M