Meta vừa mở mã nguồn Muse Gadgets, bộ công cụ giúp người dùng tự chế thiết bị kết nối với trợ lý AI Muse. Phần cứng nền tảng là bo mạch ESP32, một vi điều khiển giá vài đô la. Vậy một con chip nhỏ như thế vận hành thế nào? Hãy cùng đi từ bên trong.
Vi điều khiển khác máy tính ở đâu
Laptop của bạn chạy hệ điều hành, còn vi điều khiển thì không nhất thiết. ESP32 gom CPU, bộ nhớ RAM, bộ nhớ flash, radio Wi-Fi và Bluetooth vào một con chip duy nhất. Chương trình của bạn, gọi là firmware, nằm trong flash và chạy ngay khi cấp điện. Không có ổ cứng, không có màn hình khởi động, chỉ có mã của bạn và phần cứng.
Quá trình khởi động
Khi bật nguồn, chip chạy một đoạn mã cố định trong ROM, gọi là bootloader cấp một. Đoạn mã này tìm bootloader thứ hai trong flash, rồi bootloader thứ hai nạp ứng dụng chính vào bộ nhớ và nhảy tới điểm bắt đầu. Cả quá trình thường chỉ mất vài trăm mili giây.
Giao tiếp với thế giới bên ngoài
Mỗi chân của chip là một cổng GPIO. Bạn có thể ghi điện áp cao hoặc thấp để bật đèn LED, hoặc đọc trạng thái một nút bấm. Với cảm biến và màn hình, chip dùng các giao thức như I2C hay SPI, trong đó chip gửi xung nhịp và dữ liệu qua vài sợi dây để trò chuyện với linh kiện khác.
Thay vì liên tục hỏi xem nút có được bấm chưa, firmware thường dùng ngắt. Khi có tín hiệu, CPU tạm dừng việc đang làm, chạy một hàm xử lý ngắn rồi quay lại. Cách này vừa nhanh vừa tiết kiệm điện.
Vì sao nó phù hợp với AI agent
Các thiết bị tự chế như Muse Gadgets không tự chạy mô hình AI. Chúng đóng vai tai và mắt: ghi âm, đọc cảm biến, rồi gửi dữ liệu qua Wi-Fi tới trợ lý chạy trên đám mây, nhận lệnh trả về để bật loa hoặc hiển thị chữ. Nhờ vậy, một bo mạch vài đô la vẫn trở thành cánh tay nối dài của AI.
Để tiết kiệm pin, ESP32 còn có chế độ ngủ sâu. Gần như mọi thứ tắt đi, chỉ một bộ đếm thời gian nhỏ vẫn chạy để đánh thức chip theo lịch hoặc khi có tín hiệu. Nhờ chế độ này, thiết bị chạy pin có thể hoạt động nhiều tháng liền.
Mã nguồn của dự án dùng giấy phép Apache 2.0, nên ai cũng có thể sửa và dùng lại. Với kỹ sư phần mềm, đây là cánh cửa dễ nhất để bước sang lập trình nhúng.






