Hacking với Claude trên Đồng hồ thông minh 27 đô la
Một kỹ sư nhân viên sử dụng Claude và các mô hình trọng số mở để xây dựng mặt đồng hồ tùy chỉnh cho PineTime, đồng hồ thông minh mã nguồn mở giá 27 đô la, chứng minh rằng phát triển firmware với sự hỗ trợ của AI là khả thi và thú vị.

PineTime là một chiếc đồng hồ thông minh giá 27 đô la chạy firmware mã nguồn mở. Nó đã có mặt từ lâu, nhưng một tweet gần đây của Steve Ruiz về việc hack các thiết bị ESP32 với Claude đã truyền cảm hứng cho Mike Kasberg, kỹ sư nhân viên tại Strava, lôi PineTime ra khỏi ngăn kéo và xem một tác nhân mã AI có thể làm gì với nó.
Mục tiêu rất đơn giản: xây dựng một mặt đồng hồ tùy chỉnh, lấy cảm hứng từ mặt đồng hồ kiểu Casio mà levelsio đã tạo cho Apple Watch. PineTime là mục tiêu tuyệt vời cho phát triển có sự hỗ trợ của AI vì nó rẻ, có tài liệu tốt và có trình mô phỏng (InfiniSim) cung cấp vòng phản hồi nhanh. Firmware (InfiniTime) đủ đơn giản để bạn phải tự thêm những gì mình muốn, điều này hoàn hảo cho việc thử nghiệm.
Kasberg thực sự không dùng Claude cho hầu hết công việc—anh ấy dùng OpenCode với các mô hình trọng số mở như Kimi K3 & K2.6 và DeepSeek v4 Pro & Flash. Anh ấy bắt đầu bằng cách clone InfiniSim và làm cho bản build chạy trên Ubuntu. Sau đó, anh ấy đưa cho AI một bức ảnh mặt đồng hồ Casio và yêu cầu nó tái tạo, sử dụng một mặt đồng hồ InfiniTime hiện có làm điểm khởi đầu.
Lần thử đầu tiên khá thô—các phần tử văn bản chồng lên nhau và không đọc được vì AI đoán kích thước và vị trí. Nhưng đó là một điểm khởi đầu. Kasberg lặp lại, sửa từng phần tử một với phản hồi cụ thể. Anh ấy cũng nhận ra rằng việc xây dựng các phần tĩnh của màn hình bằng mã là lãng phí, vì vậy anh ấy chuyển sang hình nền toàn màn hình, chỉ để lại các phần động để lập trình.
Điều đó hoạt động trên trình mô phỏng, nhưng trên phần cứng thực tế, nó bộc lộ những hạn chế của PineTime: truyền hình ảnh 240x240 qua Bluetooth mất khoảng 10 phút và làm mới màn hình mất 1-2 giây vì đồng hồ không thể giữ toàn bộ hình ảnh trong bộ nhớ—nó phải truyền từ hệ thống tệp. Đối với một mặt đồng hồ được xây dựng trong vài giờ, điều đó có thể chấp nhận được.
Kasberg đã đẩy mã lên GitHub và yêu cầu AI tạo một tệp AGENTS.md để giúp người khác bắt đầu. Anh ấy nhấn mạnh rằng môi trường rủi ro thấp của một dự án sở thích giúp dễ dàng lặp lại nhanh chóng và làm việc trên firmware cho một thiết bị vật lý rất bổ ích.
Bài học rút ra: các tác nhân mã AI không chỉ dành cho ứng dụng web hoặc dịch vụ backend. Chúng có thể hiệu quả cho phát triển nhúng và firmware, đặc biệt khi nền tảng mục tiêu có tài liệu tốt và trình mô phỏng. PineTime là một nền tảng rẻ và dễ tiếp cận để thử nghiệm quy trình làm việc này.
Môi trường rủi ro thấp (không phải mã sản xuất tại công việc hàng ngày của tôi) khiến tôi cảm thấy có thể thử bất cứ điều gì mình muốn và lặp lại nhanh chóng, và thật bổ ích khi làm việc trên firmware cho một thiết bị vật lý mà tôi có thể cầm và sử dụng khi hoàn thành!
Thảo luận
0 bình luận
Hãy là người đầu tiên thảo luận.