Разработчик Криш Шах (Krish Shah) выпустил приложение Track Weight, которое превращает трекпад MacBook в весы. Это возможно благодаря встроенному датчику Force Touch, который распознаёт силу нажатия. Код проекта открыт.
Приложение совместимо с macOS 13.0 и новее. На версиях ниже не работает библиотека Open Multi-Touch Support, на базе которой построен проект. Также понадобится MacBook Pro от 2015 года или обычный MacBook от 2016 года. На других ноутбуках Apple нет датчика Force Touch в трекпаде. Также важно отметить, что для сборки приложения нужен Swift 6.0+, Xcode 16.0+ и отключённый параметр App Sandbox в настройках сборки.
Какие есть ограничения:
Трекпад реагирует на нажатия пальцами, поэтому для начала взвешивания надо сперва прикоснуться к трекпаду пальцем, а после класть на него предмет.
Для взвешивания металлических предметов надо использовать прокладку в виде листа бумаги или кусочка ткани. Это из-за того, что трекпад принимает металл за палец.
Автор проекта утверждает, что если проводить взвешивание, точно следуя инструкции, то погрешность составит до пары грамм.
Код проекта полностью написан на Swift, а интерфейс — на SwiftUI. Для обработки данных разработчик использовал нативный фреймворк Combine. В репозитории приложения есть код и инструкция по сборке.
Источник: habr.com