首页文章详情

MacBook wird plötzlich zu einer elektronischen Waage. Ein Programmierer hat das Trackpad umgebaut. Nachdem das Open-Source-Projekt 2,6k Stars auf GitHub erhalten hat, hat er dringend die Nutzer abgeraten, es zur Körpergewichtsmessung zu verwenden.

CSDN2025-07-24 09:18
Software + Hardware: Geek-Programmierer entdecken neue Verwendungsmöglichkeiten des MacBook-Touchpads.

Kann der MacBook Pro, der normalerweise zum Schneiden von Videos und Schreiben von Code verwendet wird, tatsächlich auch als elektronische Waage eingesetzt werden?

Kürzlich hatte der aus Kanada stammende Maker Krish Shah eine Idee. Nach einiger Zeit des "Kopfzerbrechens" veröffentlichte er auf X ein ziemlich beeindruckendes Projekt: Er hat eine App entwickelt, die es ermöglicht, dass die Force Touch-Trackpad in der Mitte des MacBook Pro-Computers plötzlich zu einer kleinen elektronischen Waage wird. Mit ihr können kleine Gegenstände wie frisch gemahlene Kaffeebohnen, Fernbedienungen und kleine Getränkedosen gewogen werden.

Wie aus seiner Videodemonstration hervorgeht, liegt die Abweichung zwischen dem Gewichtsergebnis und dem tatsächlichen Gewicht innerhalb von 2 Gramm.

Dies mag vielleicht ein bisschen unglaublich klingen, aber dieses Projekt basiert tatsächlich auf der echten Software- und Hardwarefähigkeit des Apple-Notebooks.

Eine App "verwandelt" den MacBook

Es ist bekannt, dass die MacBook Pro-Modelle ab 2015 und die MacBook Airs ab 2016 bereits mit einem Force Touch-Trackpad ausgestattet sind. Seine Funktionen gehen über die Erkennung von Klickaktionen hinaus und können auch die Druckkraft wahrnehmen.

Apple hatte es ursprünglich für Gesten wie "starker Druck zum Nachschlagen im Wörterbuch" entwickelt. Niemand hätte gedacht, dass dieses Design der Schlüssel für die Realisierung der Waagefunktion in diesem Projekt werden würde.

Genauer gesagt nutzt die von Krish Shah entwickelte App namens TrackWeight genau die "Drucksensor"-Funktion des Force Touch, um Ihren MacBook zu einer elektronischen Waage zu verwandeln. Ihr Prinzip ist auch nicht kompliziert - die App liest die vom Trackpad erfassten Druckdaten und wandelt sie in Gewichtsangaben um.

Shah erklärt, dass all dies möglich ist, weil das Trackpad des MacBook nicht ein herkömmliches Touchpanel ist, sondern ein Kraftsensor mit haptischer Rückmeldung, der das Gefühl eines "Klicks" durch Software simuliert.

Manche mögen sich fragen: Da die Hardware bereits lange die Voraussetzungen hat, warum hat bisher niemand das gemacht?

Shah enthüllt, dass er eine private API im Apple-System entdeckt hat, mit der man in Echtzeit Druckdaten erhalten kann, wenn man den Finger auf das Trackpad legt.

Als ein Nutzer ihn fragte, wie er diese private API entdeckt hat, antwortete Shah einfach: "Durch intensive Forschung."

Die Schritte zur Verwendung sind auch sehr einfach:

Öffnen Sie die TrackWeight-App

Legen Sie Ihren Finger sanft auf das Trackpad und halten Sie ihn in Kontakt

Legen Sie den Gegenstand, den Sie wiegen möchten, auf das Trackpad

Ohne den Finger loszulassen, sollten Sie möglichst keine zusätzlichen Druckkräfte auf das Trackpad ausüben. Warten Sie, bis die Anzeige auf dem Bildschirm erscheint, und so erhalten Sie das Gewicht des Gegenstands

In Bezug auf den Technologie-Stack verwendet TrackWeight SwiftUI zur Erstellung der Benutzeroberfläche und nutzt das Combine-Framework für die reibungslose Datenübertragung. Aus diesem Grund sieht TrackWeight eher wie eine native macOS-App aus.

Außerdem erwähnte Shah, dass er sich der von einem anderen Programmierer namens Takuto Nakamura entwickelten Open Multi-Touch Support-Bibliothek (https://github.com/Kyome22/OpenMultitouchSupport) bedient hat, um die Genauigkeit und Spaßfaktor der App weiter zu verbessern. Die Stärke dieser Bibliothek liegt darin, dass sie globale Multi-Touch-Ereignisse auf macOS überwachen und detaillierte Daten des Trackpads erfassen kann, einschließlich Position, Druck, Winkel, Dichte usw. Darüber hinaus bietet diese Bibliothek thread-sicheren asynchronen/await-Unterstützung, verfolgt den Touch-Zustand und ermöglicht den Zugang zu umfassenden Sensorinformationen.

Der Code der TrackWeight-App ist derzeit auf GitHub (https://github.com/KrishKrosh/TrackWeight) unter der MIT-Lizenz veröffentlicht, die die freie Modifikation und Weitergabe erlaubt.

Innerhalb von nur zwei Tagen nach der Projektveröffentlichung erhielt es 2.6k Sterne, was zeigt, wie beliebt es ist.

Einige Einschränkungen

Auf der GitHub-Projektseite warnt Krish Shah besonders, dass nicht alle Macs TrackWeight verwenden können. Benutzer, die es ausprobieren möchten, müssen die folgenden Bedingungen erfüllen:

Systemanforderungen: Es muss macOS 13.0 oder eine höhere Version ausgeführt werden, um die Kompatibilität mit der Open Multi-Touch Support-Bibliothek sicherzustellen.

Hardwarebeschränkungen: Nur MacBooks mit Force Touch-Trackpad werden unterstützt, d. h. MacBook Pro ab 2015 und MacBook Air ab 2016.

Berechtigungseinstellungen: Da auf die unterliegende Hardware zugegriffen werden muss, muss die App Sandbox deaktiviert werden (dies ist die Voraussetzung für den Zugang zum unteren Trackpad).

Entwicklungsumgebung: Es müssen Xcode 16.0 oder eine höhere Version sowie Swift 6.0 oder eine höhere Version installiert sein, hauptsächlich um die erforderlichen Abhängigkeiten während der Entwicklung und des Betriebs zu unterstützen.

Shah macht auch besonders darauf aufmerksam, dass TrackWeight derzeit noch ein experimentelles Projekt ist, das hauptsächlich für Enthusiasten zur Erkundung und zum Lernen gedacht ist. Es wird nicht für kommerzielle Zwecke oder in Situationen mit strengen Genauigkeitsanforderungen empfohlen.

Außerdem bestimmt der Arbeitsmechanismus des Apple Force Touch, dass bei der Verwendung von TrackWeight der Finger ständig in Kontakt mit dem Trackpad bleiben muss (die kapazitive Erfassung muss fortgesetzt werden), damit das System gültige Druckdaten ausgibt.

Diese Bedienungsanforderung mag möglicherweise die Genauigkeit des Wiegevorgangs etwas beeinträchtigen, da man nicht weiß, wie viel Druck man mit der Hand auf das Trackpad ausübt. Aber Shahs praktische Tests zeigen: "Die Genauigkeit ist dennoch ziemlich gut."

Um die Wiegeergebnisse zu überprüfen, hat er auch eine Reihe von Vergleichstests durchgeführt: Er hat den MacBook direkt auf eine elektronische Waage gelegt. Unter der Voraussetzung, dass der Finger in Kontakt bleibt, hat er nacheinander Gegenstände mit bekanntem Gewicht aufgelegt und dann die Anzeige von TrackWeight mit der Anzeige der elektronischen Waage verglichen und kalibriert.

Die Testergebnisse zeigen, dass die Anzeige sowohl für leichte als auch für etwas schwerere Gegenstände sehr stabil ist. Noch erfreulicher ist - die Druckwerte, die über MultiTouchSupport gelesen werden, werden bereits in "Gramm" ausgegeben, sodass fast keine manuelle Umrechnung erforderlich ist.

Natürlich gibt es auch einige "Haken" bei der Verwendung dieses kleinen Tools:

Metallgegenstände können möglicherweise fälschlicherweise als "Finger" erkannt werden, da sie möglicherweise die kapazitive Erfassung auslösen. Shah empfiehlt, beim Wiegen von Metallgegenständen ein Papiertuch darunter zu legen, um eine fehlerhafte Erkennung durch das System zu vermeiden.

Der Gegenstand muss innerhalb des Trackpads platziert werden. Wenn er schräg platziert oder über den Rand hinausragt, kann das gewogene Gewicht möglicherweise ungenau sein.

Vorsicht bei Tests: Einige haben es versucht, ihr Gewicht oder das Gepäck zu wiegen, und das Ergebnis war...

Sobald das TrackWeight-Projekt veröffentlicht wurde, löste es zahlreiche Diskussionen auf Hacker News und Reddit aus.

Einige haben fantasievolle Ideen: Kann man damit auch sein eigenes Gewicht oder das Gepäck wiegen?

Bevor Shah die Warnung "Nicht Ihr Gepäck auf Ihrem MacBook wiegen" aussprechen konnte, hat jemand seinen MacBook in zwei Hälften zerdrückt.

Deshalb hat Shah in sozialen Medien dringend darauf hingewiesen, dass das leichteste Gewicht, das er gewogen hat, 1 Gramm war, und das schwerste 3,5 Kilogramm.

Darüber hinaus sollte man es nicht versuchen. Es ist nicht, dass TrackWeight nicht funktioniert, sondern dass der MacBook selbst dies nicht ertragen kann. Man kann es also Spaß haben, aber nicht über die Grenzen hinaus gehen.

Wenn die Belastungsgrenze überschritten wird, können zwei Dinge passieren: Entweder tritt, wie oben beschrieben, ein Hardwareproblem auf, wie z. B. ein zerbrochenes Trackpad-Glas oder eine beschädigte innere Struktur; oder es gibt ein Problem auf der Softwareebene, und die gelesenen Druckwerte sind ungenau und können nicht genau in Gramm umgerechnet werden.

Natürlich ist es dennoch gut, kleine Gegenstände zu wiegen:

Dennoch finden einige Benutzer, dass es beim Wiegen von leichten Gegenständen nicht sehr genau ist, aber sie können es nicht lassen, zu sagen: "Das ist so cool! Ich werde es wahrscheinlich nicht als elektronische Waage verwenden, aber als Demonstration für Freunde ist es sehr gut."

Diese Erfahrung hat auch das Interesse vieler Benutzer an der Art von "Entdeckung versteckter Funktionen der Hardware" geweckt.

Ein Benutzer hat auch seine eigene Geschichte geteilt: "Vor mehr als zehn Jahren hat er mit dem Festplattenvibrationssensor eines PowerBook eine einfache Erdbebenerkennungseinrichtung namens SeisMac gebaut und sogar Vibrationsdaten von Benutzern aus der ganzen Welt gesammelt. Obwohl es nicht als strenge Forschung angesehen werden kann, war das Gefühl, während des Spielens zu bauen, unglaublich spaßig."

Andere haben auch darauf hingewiesen, dass es tatsächlich viele "private Frameworks" im macOS-System gibt. Wenn man sich bemüht, kann man untere Bibliotheken wie OpenMultiTouchSupport extrahieren und zu Entwicklungstools verpacken. "Das ist auch keine hochschwellige Angelegenheit."

Das Auftauchen von TrackWeight hat tatsächlich viele Ideen angeregt: Einige sagen, sie möchten eine "Mikrowaage"-Funktion in ihre Küchen-App hinzufügen; andere stellen sich eine Kopplung mit Smart Home-Geräten vor; sogar einige hoffen, dass Apple diese Funktion offiziell integriert und daraus eine kleine Waage mit Feinabstimmfunktion macht.

Wenn man darüber nachdenkt, scheint es auch nicht unmöglich.

Quellen:

https://github.com/KrishKrosh/TrackWeight

https://www.tomshardware.com/laptops/macbooks/macbook-pro-trackpad-can-double-as-a-weighing-scale-and-the-source-code-is-free-creator-hacks-trackpad-to-weigh-items-claims-force-touch-system-pretty-accurate

https://www.reddit.com/r/macapps/comments/1m5tha5/trackweight_turn_your_macbooks_trackpad_into_a/

https://news.ycombinator.com/item?id=44635808

Dieser Artikel stammt aus dem WeChat-Account "CSDN", bearbeitet von Tu Min, veröffentlicht von 36Kr mit Genehmigung.