Machine Learning für Maker
Das Smartphone als Sensor fürs schnelle Prototyping in Edge Impulse
Ein Smartphone steckt voller Sensoren. Diese können Sie nutzen, um schnell Prototypen für Machine-Learning-Projekte zu erzeugen. Dadurch sparen Sie sich den Aufwand, zuerst Hardware anzuschaffen und dann einen Datenlogger erstellen zu müssen. Zudem gelangen Sie schneller an den Punkt, an dem Sie ausprobieren können, was funktioniert und was nicht.
In diesem Beitrag haben wir Ihnen bereits eine Übersicht über die Plattform „Edge Impulse“ gegeben. Nun soll es darum gehen, wie Sie mithilfe der Datenloggerfunktion Aufnahmen mit Ihrem Smartphone machen können. Ihr fertiges Modell können Sie abschließend auch auf dem Smartphone ausprobieren.
Sensoren im Smartphone
Moderne Smartphones weisen eine Vielzahl von Sensoren auf. Die meisten Smartphones verfügen mindestens über Kameras und Mikrofone sowie über Näherungs-, Lage-, Positions- und Beschleunigungssensoren. Abgesehen von der Kamera und dem Mikrofon bekommen wir meist gar nicht mit, wie die Sensoren unsere Nutzererfahrung beeinflussen. Seit der Veröffentlichung der ersten Smartphones haben viele weitere Sensoren Einzug in unsere mobilen Alltagsbegleiter erhalten. In der der nachfolgenden Tabelle sehen Sie einen Vergleich zwischen den Sensoren im ersten iPhone und im aktuellen iPhone 17.
| Sensor | Beispielhafte Einsatzgebiete | iPhone (1. Generation, 2007)1 | iPhone 17 Pro Max (2025)2 |
| Kamera | Bilder, Videos, Gesichtserkennung | 1x | 4x |
| Mikrofon | Tonaufnahme | 1x | 4x |
| Beschleunigungssensor | Schrittzähler, Displayrotation erkennen | 1x | 1x |
| Gyroskop | Displayrotation erkennen, Navigation, Bildstabilisierung | / | 1x |
| GPS | Standortbestimmung, Navigation | / | 1x |
| Näherungssensor | Display ausschalten, wenn das Smartphone zum Telefonieren ans Ohr gehalten wird | 1x | 1x |
| Umgebungslichtsensor | adaptive Helligkeit | 1x | 2x |
| LiDAR-Sensor | Tiefenerkennung für Fotografie und Augmented Reality Anwendungen | / | 1x |
| Barometer | Höhenmeter bestimmen | / | 1x |
| Magnetometer | Orientierung/ Kompass | / | 1x |
In anderen Smartphones sind teilweise noch weitere Sensoren wie Fingerabdruckscanner oder Feuchtigkeitssensoren verbaut.
Verbinden von Smartphone-Sensoren mit Edge Impulse
Einige der Sensoren können Sie auch in Edge Impulse nutzen, um Daten aufzunehmen und damit Ihre Modelle zu trainieren. Sofern verfügbar, können Sie auf eine Kamera, ein Mikrofon sowie die Beschleunigungs- und Gyroskopdaten zugreifen. Neben dem Smartphone kann auch zum Beispiel die Notebookkamera verendet werden.
Um das Smartphone mit Edge Impulse zu verbinden, gehen Sie links im Menü auf Devices und klicken auf + Connect a new device (Bild 1). Ihnen wird dort wie in Bild 2 ein QR-Code angezeigt. Alternativ können Sie auch unter Data acquisition rechts im Feld Collect data mit einem Klick auf das IC das Smartphone hinzufügen (Bild 3). Scannen Sie den dort angezeigten QR-Code und folgen Sie dem Link auf Ihrem Smartphone. In Ihrem Browser wird die erfolgreiche Verbindung bestätigt (Bild 4) und Sie werden auf dem Smartphone zu einer Webanwendung wie in Bild 5 weitergeleitet.





Ab hier können Sie nun über zwei Wege Daten aufnehmen:
1. Remote-Zugriff über den PC
Wenn Ihr Smartphone verbunden und darauf die Webanwendung geöffnet ist, wird es unter Data acquisition rechts im Fenster Collect data angezeigt (Bild 6). Hier können Sie zwischen den verbundenen Geräten wählen. Vor der Aufnahme können Sie ein Label vergeben, das der nächsten Aufnahme zugeordnet werden soll. Sie können die Länge der Aufnahme in Millisekunden einstellen. Vor der Aufnahme wird in der Webanwendung auf dem Smartphone ein Countdown gestartet, damit Sie bei kurzen Aufnahmen den Aufnahmezeitraum nicht verpassen. Je nach Verfügbarkeit werden Ihnen unter Sensor verschiedene Sensoren angezeigt, auf die Sie zugreifen können. Gegebenenfalls müssen Sie den Zugriff Ihres Browsers auf bestimmte Sensoren erst zulassen (Bild 7). Bei einigen Sensoren lässt sich die Samplingfrequenz einstellen, bei anderen ist sie fix gesetzt. Wenn Sie hier auf Start Sampling klicken, wird auf Ihrem Smartphone zuerst ein Countdown und dann die Aufnahme gestartet (Bild 8). Im Anschluss wird die Aufnahme hochgeladen. Auf Ihrem Smartphone müssen Sie nichts auswählen.
Dieser Weg bietet etwas mehr Einstellmöglichkeiten, da Sie z. B. die Frequenz wählen können, mit der Sie Audio samplen. Außerdem können Sie hier auch auf Gyroskopdaten zugreifen, was mit der zweiten Methode aktuell noch nicht möglich ist.
Info: Wenn nach einer Aufnahme nur Nullen als Aufnahmewerte angezeigt werden, kann es sein, dass Sie die Website auf Ihrem Smartphone aktualisieren und der Verwendung der Sensoren im Browser erneut zustimmen müssen (Bild 7).



2. Direkt in der Webanwendung aufnehmen
Wählen Sie auf der Startseite der Webanwendung auf Ihrem Smartphone (siehe Bild 5) aus, ob Sie Bilder, Audio oder Bewegung aufnehmen möchten. Auch hier können Sie das Label und die Aufnahmedauer einstellen. Außerdem können Sie direkt auswählen, ob die Daten als Test- oder Trainingsdaten verwendet oder auf beide Seiten aufgeteilt werden sollen. Die Frequenz lässt sich hier aktuell noch nicht einstellen. Es wird kein Countdown angezeigt und nach der Aufnahme wird das Datenpaket in Edge Impulse hochgeladen.
Diese Variante ist flexibler, wenn Sie Ihren PC nicht an den Aufnahmeort mitnehmen wollen oder können. Allerdings sind aktuell weniger Einstellungen als mit der Remote Steuerung über den PC möglich.
Nachdem die Aufnahmen als Datensatz hochgeladen wurden, können Sie sich diese, wie in Bild 9 zu erkennen, mit einem Klick auf das Sample unter Dataset anschauen. Wenn nötig, können über die drei Punkte Anpassungen am Sample und Label durchgeführt werden. Nachdem Sie einige Aufnahmen gemacht haben, können Sie zur Erstellung des Impulses übergehen.
Info: Sie können immer wieder zwischen dem Aufnehmen und der Anpassung des Impulses wechseln. So können Sie mit leichten Trainingsbeispielen anfangen und später immer mehr Fälle hinzufügen. Mithilfe der Funktionen im Menüpunkt Retrain model kann der Impulse schnell aktualisiert werden, sobald neue Daten eingefügt wurden.

Live-Tests und Deployment auf dem Smartphone
Edge Impulse bietet mit den Live-Tests neben dem Datenlogger eine weitere praktische Funktion für schnelles Prototyping. Wenn der Impulse trainiert und die ersten Ergebnisse für gut befunden wurden, kann das Modell auch direkt in der Webanwendung auf dem Smartphone getestet werden. Hierbei wird das Verhalten auf unbekannten Daten überprüft. Da bei Mikrocontrollern das Portieren auf die Hardware ein eher aufwendiger Schritt ist, erleichtert die Live-Test-Funktion die Überprüfung der Ergebnisse, ohne zu programmieren. Auch hier gibt es wieder zwei leicht unterschiedliche Arten, wie das Smartphone verwendet werden kann.
1. Remote-Testen
Unter dem Menüpunkt Live classification befindet sich links das Feld Classify new data. Dort sollte wie in Bild 10 zu sehen Ihr Smartphone unter Device angezeigt werden. Wenn Ihr Gerät nicht angezeigt wird, kann es daran liegen, dass Sie die Webanwendung auf dem Smartphone verlassen haben. Über den Klick auf das IC und den daraufhin angezeigten QR-Code können Sie sich erneut verbinden.
Ist Ihr Gerät verbunden, können Sie wieder Einstellungen zum Sensor vornehmen und remote Daten aufnehmen. Die Aufnahme wird dann automatisch den zuvor schon aufgenommenen Testdaten mit dem Label testing zugeordnet und durchläuft die gesamte Datenverarbeitungskette. Im Anschluss können Sie sich die Ergebnisse aus der Aufnahme anschauen und, wenn Sie möchten, Label zuweisen (Bild 11). Die Verarbeitung findet in diesem Fall nicht auf dem Smartphone statt.
Der Vorteil dieser Methode ist, dass sämtliche Testdaten gespeichert werden. So können Sie später weitere Modelle auf exakt diesen Daten testen. Nachteilig ist dagegen, dass man kein Live-Ergebnis, sondern erst nach Beendigung der Aufnahme alle Teilergebnisse zusammen erhält.


2. Testen in der Webanwendung
Wenn Sie die Webanwendung zum Aufnehmen der Daten geöffnet haben, sehen Sie unten die Schaltfläche Switch to classification mode (Bild 8). Wenn Sie diese auswählen, wird der fertige Impulse als Webanwendung geladen und es wird, wie in Bild 12 zu sehen, kontinuierlich ein Ergebnis geliefert. Das erste Laden der Oberfläche kann ein paar Minuten in Anspruch nehmen. Diese Aufnahmen werden nicht im Projekt abgespeichert.
Info: Sollten Sie die Web-App nicht mehr im Browser geöffnet haben, können Sie Ihr Smartphone jederzeit wieder über den oben beschriebenen Vorgang mit dem Projekt verbinden. Alternativ wird im Menüpunkt Deployment ein weiterer QR-Code erzeugt, mithilfe dessen man direkt zum Live-Test auf dem Smartphone geleitet wird.

Dieser Weg eignet sich besonders gut dazu, um spontan vieles auszuprobieren, das nicht unbedingt dauerhaft gespeichert werden soll. Etwa, wenn Sie eine Gestensteuerung erstellen möchten und schnell viele verschiedene Bewegungen ausprobieren, möchten Sie in der Regel sofort ein Feedback, welche Bewegung welches Ergebnis liefert und nicht bis zum Ende der Aufnahme warten. Die Rohdaten werden nicht gespeichert und stehen daher auch später nicht für andere Tests mit z. B. anderen Modellen zur Verfügung.
Übertragen des Prototypen auf die Zielhardware
Mithilfe der Vorschläge in Edge Impulse lässt sich relativ schnell ein erstes Modell erstellen, mit dem Sie abschätzen können, ob Ihr Projektansatz grundsätzlich funktioniert. Die Live Tests geben Ihnen ein gutes Gefühl dafür, wie gut Ihr Modell die Aufgabe erfüllt und ob der Speicherbedarf sowie die Inferenzzeit zu Ihrer verfügbaren Hardware passen.
Im nächsten Schritt könnten Sie über den Menüpunkt Deployment direkt eine passende C++-Bibliothek generieren, um das Modell auf Ihre Zielhardware zu übertragen. Das ist jedoch nicht immer sinnvoll, da die Sensoren eines Smartphones möglicherweise nicht mit denen Ihrer Zielhardware übereinstimmen. Selbst kleine Unterschiede in der Sensorqualität oder Positionierung können die Modellleistung beeinflussen. Zum Beispiel zeigt sich bei Anwendungen wie der Bewegungserkennung durch Smartwatches, wie entscheidend die Sensorposition ist: Ein Sensor am Handgelenk liefert andere Daten als ein Smartphone in der Hand oder der Hosentasche.
Aus diesem Grund ist es empfehlenswert, zur Datenaufnahme zurückzukehren und diesmal die Daten direkt mit Ihrer Zielhardware zu erfassen. Da Sie bereits durch den Prototyp wissen, welche Modelltypen und Vorverarbeitungsschritte gute Ergebnisse liefern, sind in der Regel nur kleinere Anpassungen nötig.
Wenn das neue Modell zufriedenstellend arbeitet, können Sie anschließend die passenden Bibliotheken für die Implementierung auf Ihrer Zielhardware erstellen lassen.
Fazit zum Prototyping mit dem Smartphone
Wenn Sie zunächst Ihr Smartphone verwenden, um zu überprüfen, ob Ihre Idee wie geplant umsetzbar ist, können Sie sich schnell voll auf die Datenverarbeitung konzentrieren und das, ohne zuvor viel Arbeit in die Programmierung von Datenloggern zu investieren.
Die Live-Test-Funktion hilft dabei, frühzeitig zu erkennen, ob Ihr Projektansatz funktioniert und welche Verarbeitungsschritte sinnvoll sind. Ist der Prototyp vielversprechend, können Sie beginnen, die Zielhardware in Betrieb zu nehmen. Sollte sich herausstellen, dass der Ansatz nicht praktikabel ist, z. B. weil die Modelle zu viel Speicher oder Rechenleistung benötigen, lässt sich gezielt nach Alternativen suchen oder passende Hardware anschaffen.
- Apple erfindet mit dem iPhone das Mobiltelefon neu – Apple (DE) (aufgerufen am 22.10.2025), iPhone (original) Manuals and Downloads – Apple Support (aufgerufen am 22.10.2025) ↩︎
- iPhone 17 Pro und 17 Pro Max – Technische Daten – Apple (DE) (aufgerufen am 22.10.2025) ↩︎