16 điểm bởi GN⁺ 2025-07-22 | 6 bình luận | Chia sẻ qua WhatsApp
  • Ứng dụng macOS cho phép tận dụng trackpad Force Touch của MacBook như một chiếc cân điện tử
  • Sử dụng cảm biến áp lực của trackpad để chuyển áp lực trên bề mặt thành trọng lượng và hiển thị theo đơn vị gram
  • Dùng thư viện Open Multi-Touch Support để lấy dữ liệu áp lực chi tiết của trackpad, vốn thường không thể truy cập trên macOS
  • Do trên trackpad, sự thay đổi điện dung, tức là chỉ khi ngón tay hoặc vật dẫn điện chạm vào bề mặt thì sự kiện áp lực Force Touch mới phát sinh, nên bắt buộc phải có tiếp xúc bằng ngón tay; khi đo vật bằng kim loại thì cần dùng giấy hoặc vải
  • Sau khi chạy ứng dụng, đặt ngón tay lên trackpad, giữ nguyên trạng thái tiếp xúc rồi đặt đồ vật lên trên trackpad để đo trọng lượng của vật thể
  • Yêu cầu

    • macOS 13.0 trở lên (cần để chạy thư viện Open Multi-Touch Support)
    • MacBook có trang bị trackpad Force Touch (MacBook Pro từ năm 2015 trở đi, MacBook từ năm 2016 trở đi)
    • Tắt App Sandbox (điều kiện để truy cập trackpad ở mức thấp)
    • Khi phát triển cần Xcode 16.0 trở lênSwift 6.0 trở lên
  • Đây là một dự án mang tính thử nghiệm/giáo dục, vì vậy trong các công việc hoặc tình huống thương mại yêu cầu đo lường chính xác, hãy обязательно sử dụng cân điện tử chính thức

6 bình luận

 
kyg5474 2025-07-22

Haha, thử thách đấy!

 
cgl00 2025-07-22

Đúng kiểu geek đây rồi haha

 
princox 2025-07-22

Đúng là mức độ điên rồ đến từng chi tiết, thật luôn.

 
wkbae 2025-07-22

> - Nhìn dự án này làm tôi nhớ lại 20 năm trước, khi tôi từng dùng cảm biến phát hiện rung động của ổ cứng trên PowerBook để đo tiếng ồn thi công của tòa nhà như một máy địa chấn.
> - Chính tôi là người đã tạo ra phần mềm đó (SeisMac).

Hacker News quả thật lúc nào cũng khiến người ta kinh ngạc...

 
reagea0 2025-07-23

Đúng là nơi tập hợp mọi dị nhân trên toàn thế giới...

 
GN⁺ 2025-07-22
Ý kiến Hacker News
  • Trước đây trên iPhone cũng từng có app với tính năng tương tự
    • Nếu bạn đang dùng iPhone 6S, có thể thử TouchScale
    • Nếu là điện thoại có cảm biến áp kế thì hầu như mẫu nào cũng có thể dùng như cân. Đa số các mẫu từ iPhone 6 trở đi, Pixel, các dòng flagship của Samsung đều thuộc nhóm này. Thổi khí vào một túi zip, đặt điện thoại vào trong rồi chạy app hiển thị áp suất. Sau đó cẩn thận đặt một vật có trọng lượng đã biết lên trên túi zip, ví dụ đồng xu quarter, thì có thể đo trọng lượng của vật nhỏ dựa trên độ thay đổi áp suất trên màn hình. Làm được như vậy vì thay đổi khối lượng và thay đổi áp suất tỉ lệ tuyến tính với nhau
    • Bài viết liên quan: liên kết lưu trữ
    • Trước đây hình như weight API đã bị chuyển sang chế độ private, theo tôi nhớ là để ngăn người ta dùng iPhone cho việc buôn bán ma túy
  • Ý tưởng lần này khá thú vị, nhưng cũng hơi mang cảm giác như một cỗ máy Rube Goldberg. Cách làm như sau:
    1. Chạy app cân
    2. Đặt ngón tay lên trackpad
    3. Nhấc tay ra rồi đặt vật thể lên trackpad
    4. Tiếp tục giữ ngón tay chạm vào với lực tối thiểu
      Cảm biến áp lực cần phát hiện điện dung nên bắt buộc phải có ngón tay chạm vào, và cũng không được ấn quá mạnh
    • Tôi đã thử xem mấy thứ này có thực sự hoạt động không, và đúng là một kiểu hack cực kỳ khéo léo. Chính những thứ như vậy mới hợp với Hacker News
    • Tôi nghĩ có lẽ cũng có thể dùng một tấm đệm dẫn điện mỏng, hoặc một cấu trúc sáng tạo bằng giấy thiếc + lá nhôm. Kiểu đặt vật thể lên một tấm phụ gần như không có trọng lượng
    • Có lúc điện dung vẫn được phát hiện kể cả khi ngón tay chỉ ở cách trackpad khoảng 1–2 mm
    • Không biết có thể cân hotdog chính xác được không
    • Trên iPhone trước đây cũng có mẹo đặt một chiếc thìa kim loại lên màn hình rồi đặt vật thể vào trong thìa để cân
  • Có vẻ TrackWeight tận dụng Open Multi-Touch Support library của Takuto Nakamura để lấy toàn bộ sự kiện của trackpad, kể cả dữ liệu áp lực mà các app thông thường trên macOS không thể truy cập. Tôi thắc mắc vì sao làm được bằng library này mà lại không được công khai qua API chính thức như Swift
    • Trên Mac OS có cái gọi là "Private Frameworks". Hệ thống có dùng nhưng không cung cấp sẵn header file. Có thể truy cập bằng cách trích xuất header từ các framework này rồi bọc lại trong thư viện bên ngoài, ví dụ OpenMultitouchSupport
  • Dự án này làm tôi nhớ đến chuyện 20 năm trước từng dùng cảm biến rung của ổ cứng trên PowerBook như một máy địa chấn để đo tiếng ồn thi công trong tòa nhà. Bài viết liên quan
    • Chính tôi là người làm ra phần mềm đó, SeisMac. Tôi đã tạo một app miễn phí truy cập API private của Apple cho Sudden Motion Sensor, tức cảm biến bảo vệ ổ cứng bằng cách phát hiện rơi tự do, rồi hiển thị đồ thị gia tốc 3 trục; thậm chí còn có tính năng tự hiệu chuẩn khi nghiêng laptop theo nhiều hướng. Người dùng trên khắp thế giới từng gửi cho tôi kết quả đo từ tàu thuyền, Drake Passage và nhiều nơi khác, và tôi cũng đã nhận được tài trợ giáo dục. Việc chuyển sang SSD là một thay đổi khá đáng tiếc với tôi. Wiki Sudden Motion Sensor
    • Tôi cũng từng dùng iPhone làm máy ghi áp suất. Cốp sau xe tôi trên đường cao tốc cứ hơi mở rồi đóng lại mỗi khi đi qua mối nối mặt đường, gây cảm giác buồn nôn. Tôi đưa dữ liệu đó cho bộ phận dịch vụ Tesla xem, họ chỉnh lại cốp và vấn đề biến mất
    • Tôi từng nghe rằng IBM đã chuyển một tòa nhà vì rung động do công trình xây mới bên kia đường khiến ổ cứng trong trung tâm dữ liệu liên tục hỏng. Liên kết liên quan
    • Cũng có người từng hack cảm biến rung trên ThinkPad để phát hiện việc gõ/cốc vào máy, rồi cho desktop ảo của window manager di chuyển sang trái hoặc phải tùy theo hướng gõ vào laptop
  • Khi còn dùng Macbook có gắn HDD, app này khiến tôi nhớ đến
    LiquidMac
    • Đó là một app mô phỏng chất lỏng chuyển động như hệ hạt tùy theo góc nghiêng của máy tính
  • Dự án này thật sự rất hay nên tôi tò mò muốn biết mức khối lượng tối thiểu/tối đa mà trackpad của MacBook có thể đo được
  • Đây là một ý tưởng vừa cực kỳ sáng tạo vừa thực dụng. Tôi muốn biết họ đã thử độ phân giải/độ chính xác chưa, và vì đây không phải cách dùng được thiết kế ban đầu nên liệu sai số giữa các thiết bị có lớn không
    • Phần cứng Apple nói chung thường được hiệu chuẩn rất chính xác ngay từ khi xuất xưởng. Tính nhất quán trên toàn bộ sản phẩm là rất quan trọng, vì nếu cảm giác trackpad khác nhau giữa từng máy mới thì sẽ rất kỳ cục
    • Tham khảo thêm thì load cell thông thường cũng được hiệu chuẩn tương tự. Hiệu chuẩn hai điểm là đủ, từ không tải đến tải chuẩn, nhưng nếu muốn chính xác hơn thì cũng có thể hiệu chuẩn ba điểm. Wiki về load cell
  • Tôi rất thích những kiểu hack sáng tạo như thế này. Cái nghịch lý là cân chỉ hoạt động khi phải đặt ngón tay lên trên cũng rất thú vị.
  • Hồi trước khi còn 3D Touch, app UIForce cũng làm được chuyện tương tự. Đến giờ tôi vẫn thấy tiếc vì 3D Touch đã biến mất
    • Đó thực sự là một tính năng rất hữu ích. Mỗi lần thấy iOS chọn nhầm một đoạn văn bản kỳ quặc khi tôi chỉ muốn lưu ảnh từ Google, tôi lại càng thấy tiếc
  • Đây chính là lý do vì sao người bình thường nghĩ những người mê gadget như chúng ta là “kỳ quặc”. Cứ muốn tiếp tục làm ra những thứ lạ lùng và thú vị như vậy