Cách tạo ra một chiếc smartwatch: Chọn chip
(ericmigi.com)- Đã chọn SF32LB52J của SiFli làm chip cho Core Time 2
- Một trong những quyết định quan trọng nhất khi thiết kế smartwatch chính là chọn chip
- Khả năng tương thích phần mềm, mức tiêu thụ điện năng và giá thành đều ảnh hưởng lớn đến việc chọn chip
- Chip SiFli cung cấp SDK mã nguồn mở, mức tiêu thụ điện năng thấp và bộ nhớ dồi dào
- Loạt bài này trong tương lai cũng sẽ đề cập đến cách chọn các linh kiện chủ chốt khác như màn hình
Tổng quan
- Bài viết này là phần đầu tiên của loạt bài giới thiệu cách tự làm một chiếc smartwatch
- Mục tiêu là cho thấy rằng vào khoảng năm 2025, bất kỳ ai cũng có thể tạo ra một chiếc smartwatch đủ dùng chỉ với một chút nỗ lực
- Kỳ vọng rằng việc PebbleOS được mã nguồn mở sẽ thúc đẩy sự phát triển của các mẫu smartwatch sáng tạo hơn
- Smartwatch về cơ bản gồm ba thành phần chính: phần cứng, phần mềm (firmware/hệ điều hành) và ứng dụng di động
Phân tách các thành phần phần cứng
- Phần cứng smartwatch có thể được chia thành năm nhóm hệ thống lớn
- Chip vi điều khiển (thường tích hợp radio Bluetooth)
- Màn hình
- Cảm biến và thiết bị đầu ra (nút bấm, cảm ứng, micro, gia tốc kế, loa, v.v.)
- Các linh kiện điện tử khác (chip, linh kiện thụ động, PCB, pin, v.v.)
- Cấu trúc cơ khí (vỏ đồng hồ, kính, nút bấm, dây đeo, cáp sạc, v.v.)
- Các thành phần như cảm biến, pin, dây đeo và micro hiện khá dễ chọn vì có nhiều lựa chọn ở nhiều mức giá khác nhau
- Những quyết định khó nhất là vi điều khiển + radio Bluetooth và màn hình
Tầm quan trọng của việc chọn chip (vi điều khiển)
- MCU đóng vai trò là “trái tim” của smartwatch, tích hợp CPU, RAM, bộ nhớ flash, I/O và radio vào một con chip
- Việc chọn MCU phù hợp là tìm điểm cân bằng giữa nhiều ràng buộc như chi phí, điện năng và khả năng tương thích phần mềm
- Mỗi MCU có SDK, driver và hệ thống build khác nhau nên làm tăng độ khó của phát triển phần mềm
- PebbleOS chỉ được tối ưu cho MCU của một hãng cụ thể (STM), nên khi chuyển sang MCU khác sẽ cần thay đổi driver và hệ thống build
- Một số MCU gặp khó khăn trong việc hỗ trợ FreeRTOS cần thiết cho PebbleOS
- Vì không phải sản xuất số lượng lớn, chi phí phát triển phần mềm chiếm tỷ trọng rất lớn trong giá thành sản phẩm
Các chip từng dùng và quá trình lựa chọn
- Các mẫu đồng hồ Pebble trước đây sử dụng STM32F2, và thời kỳ đầu việc chọn chip thường dựa trên quan hệ hoặc lời khuyên từ xung quanh
- Gần đây, nguyên mẫu smartwatch Core 2 Duo được chế tạo bằng chip Nordic nRF52840
- Quá trình phát triển được thực hiện bằng cách chuyển sang ngăn xếp BLE mã nguồn mở (nimBLE)
- Với Core Time 2 cần bộ nhớ lớn hơn và hiệu năng cao hơn, nRF52840 đã bộc lộ giới hạn
- Chip giá rẻ thế hệ mới của Nordic (nRF54L15) thiếu RAM, còn chip cao cấp (nRF54H) thì giá quá cao
- Cũng cần giao diện đặc biệt để điều khiển màn hình màu của Core Time 2
Phát hiện và lựa chọn chip SiFli
-
Đã xem xét nhiều ứng viên (Apollo, BES, Dialog, v.v.) nhưng vẫn chưa hài lòng vì thiếu SDK mã nguồn mở và các lý do khác
-
Một số chip như BES có môi trường phát triển không phù hợp do NDA, không công khai mã ví dụ và những hạn chế tương tự
-
Tình cờ nhận được email từ CEO của SiFli, sau khi trao đổi thì xác nhận rằng họ rất tích cực với hệ sinh thái mã nguồn mở
-
Chip SiFli hiện đã được dùng trên hàng chục triệu smartwatch (các thương hiệu: Redmi, Oppo, Noise, v.v.)
- Mẫu nhỏ nhất (SF32LB52x) có từ 512K SRAM trở lên, 16M PSRAM và bộ điều khiển màn hình MIP chuyên dụng
- Mức tiêu thụ điện năng thấp (~50uA khi kết nối BLE), giá dưới 2 USD
- Có tùy chọn bổ sung thêm 1~2MB SRAM
- Cung cấp SDK mã nguồn mở trên GitHub, đồng thời cam kết hỗ trợ port PebbleOS
-
Kết quả là chip cho Core Time 2 được chọn là SF32LB52J (phiên bản 1.8V)
Kết luận và hướng đi tiếp theo
- Core Time 2 sẽ được phát triển bằng chip SiFli SF32LB52J
- Bài tiếp theo sẽ đề cập đến quá trình chọn màn hình
1 bình luận
Ý kiến Hacker News