Wie man eine Smartwatch baut: Die Chip-Auswahl
(ericmigi.com)- Um 2025 eine brauchbare Smartwatch zu bauen, muss man zuerst das angestrebte Nutzungserlebnis festlegen und es dann innerhalb der Beschränkungen von MCU, Display, Akku und Software umsetzen
- Die Chip-Auswahl ist nicht einfach ein Leistungsvergleich, sondern eine Produktdesign-Entscheidung, bei der Software-Kompatibilität, Stromverbrauch und Stückkosten gleichzeitig eine Rolle spielen
- Beim Core 2 Duo setzte man auf den vertrauten Nordic nRF52840, um PebbleOS schnell zu portieren, aber das Core Time 2 brauchte wegen des größeren Farbdisplays mehr RAM und Rechenleistung
- Die SiFli-Familie SF32LB52x bietet mehr als 512 KB SRAM, 16 MB PSRAM, Peripherie für MIP-Displays, rund 50 µA BLE-Verbindungsleistung, einen Preis von unter 2 Dollar und ein Open-Source-SDK
- Im Core Time 2 soll der SF32LB52J zum Einsatz kommen, eine 1,8-V-Variante des SF32LB527; damit sollen bei Beibehaltung des Open-Source-PebbleOS die Anforderungen an Stromverbrauch, Kosten und Display erfüllt werden
Smartwatch-Design heißt, mit Beschränkungen zu arbeiten
- Eine Smartwatch lässt sich grob in drei Teile aufteilen
- die eigentliche Uhr, also die Watch-Hardware
- die Watch-Software, meist Firmware oder Betriebssystem genannt
- die iOS- und Android-Companion-App für Mobilgeräte, die Benachrichtigungen überträgt, Watchfaces herunterlädt usw.
- Smartwatches sind keine Geräte nach dem Prinzip „eine Form passt für alle“, und die Open-Source-Freigabe von PebbleOS soll hoffentlich dazu führen, dass Menschen Smartwatches für ihre jeweils eigenen Bedürfnisse bauen
- Das Design von Consumer-Elektronik ist ein Prozess, bei dem man zuerst das Zielerlebnis festlegt und dieses dann in umsetzbare Spezifikationen und Komponenten herunterbricht
- Beispiel: „eine Smartwatch, die immer eingeschaltet ist, sich in der Sonne ablesen lässt und 30 Tage durchhält“
- Beispiel für Spezifikationen: e-paper-Display, Bluetooth LE, Wasserdichtigkeit, Verkaufspreis von 150 Dollar
- Beispiel für Komponenten: Sharp Memory LCD, 150-mAh-Lithium-Polymer-Akku, FreeRTOS
Die fünf Systeme der Watch-Hardware
- Die Watch-Hardware lässt sich in fünf Kernsysteme gliedern
- den Mikrocontroller-Chip, der meist auch das Bluetooth-Funkmodul enthält
- das Display
- Sensoren und Ausgabegeräte wie Taster, Touch, Mikrofon, Beschleunigungsmesser und Lautsprecher
- sonstige elektronische Bauteile wie Chips, passive Bauelemente, PCB und Akku
- die mechanische Konstruktion mit Gehäuse, Glas, Tasten, Armband und Ladekabel
- Bei den letzten drei Systemen — also Sensoren, Akku, Armband, Gehäuse, Mikrofon usw. — gibt es heute in vielen Preisklassen gute Optionen, deshalb sind sie vergleichsweise leicht auszuwählen
- Die schwierigsten Komponentenentscheidungen beim Smartwatch-Design betreffen die Wahl von MCU/Bluetooth-Funkmodul und Display
MCU- und Bluetooth-Beschränkungen in der Pebble-Ära
- In der ersten Pebble-Ära kam eine STM32F2 MCU zum Einsatz
- Das Produkt vor Pebble, inPulse, nutzte einen LPC2103 mit 8 KB RAM
- Frühere Pebble-MCUs lagen bei 64 bis 144 MHz und 128 bis 256 KB RAM
- Damals war das Bluetooth-Funkmodul noch nicht in die MCU integriert, daher musste zusätzlich ein separater Chip wie der TI CC2564 verbaut werden
- Die MCU ist der Kernchip einer Smartwatch: ein kleiner integrierter Schaltkreis, der CPU, RAM, meist Flash-Speicher, Ein-/Ausgabe-Peripherie und manchmal sogar Funk in einem Baustein vereint
Warum die MCU-Auswahl das gesamte Produkt beeinflusst
- Die MCU steht im Zentrum der engsten Randbedingungen einer Smartwatch: Software-Kompatibilität, Stromverbrauch und Kosten
- Embedded-Software ist stärker fragmentiert als Computer-Betriebssysteme und eng an Hardware-Anforderungen gebunden
- Linux kann wegen geringerer Beschränkungen beim Speicherplatz auf der Festplatte mehr als 17.000 Gerätetreiber enthalten
- PebbleOS war praktisch fest auf MCUs der STM-Familie zugeschnitten
- Wechselt man zu einer MCU einer anderen Marke, müssen Peripherietreiber für I2C, SPI, DMA usw. neu geschrieben, ein anderes SDK übernommen und in manchen Fällen sogar das Build-System geändert werden
- Solche Änderungen sind nicht besonders riskant, benötigen aber Implementierungs- und Testzeit
- Manche MCUs unterstützen FreeRTOS nicht ohne Weiteres
- Wenn man nicht Hunderttausende bis Millionen Geräte produziert, lassen sich die Kosten für Software-Engineering kaum auf hohe Stückzahlen verteilen, was die Gesamtkosten pro Uhr stark beeinflusst
- Da eine Smartwatch rund um die Uhr per Bluetooth mit dem Smartphone verbunden sein muss, gehört der durchschnittliche Stromverbrauch im verbundenen Zustand zusammen mit dem Display zu den größten Verbrauchsfaktoren
Chip-Kandidaten für Core 2 Duo und Core Time 2
- Für das Core 2 Duo fiel die Wahl auf den Nordic nRF52840
- Er ist zwar ein älterer Chip, war aber bereits vertraut, und man ging davon aus, PebbleOS relativ schnell darauf portieren zu können
- Anfangs war geplant, den Nordic-SoftDevice-BLE-Stack zu verwenden, später wechselte man jedoch zum Open-Source-BLE-Stack nimBLE
- Für das Core Time 2 wurden mehr RAM und mehr Rechenleistung als beim nRF52840 benötigt
- Das größere Farbdisplay verlangt mehr RAM
- Außerdem wollte man Spielraum für neue Funktionen
- Man hätte Nordic gern weiterverwendet, aber die Roadmap der BLE-MCUs passte nicht gut zu den Anforderungen
- Der nRF54L15 bietet nur 256 KB RAM und ist erst seit Kurzem in Massenproduktion, weshalb es noch nicht viele Praxiserfahrungen gibt
- Die 54H-Serie mit 1 MB RAM kostet mit über 4 bis 5 Dollar etwa doppelt so viel, und eine Option mit 512 KB RAM gab es nicht
- Das 64-Farben-MIP-Display des Core Time 2 erforderte eine spezielle Schnittstelle; das Pebble-Modell von 2015 nutzte dafür ein separates FPGA
Warum der SiFli SF32LB52J gewählt wurde
- Es wurden verschiedene Kandidaten wie Apollo, BES und Dialog geprüft, aber es war schwer, einen Chip zu finden, der die Anforderungen genau erfüllt
- Einer der größten Stolpersteine war das Fehlen eines Open-Source-SDK
- Ein Chip von BES sah vielversprechend aus, aber SDK und Beispielcode waren nicht öffentlich und alles stand hinter einer NDA
- Da PebbleOS Open Source sein muss, passte dieser Ansatz nicht
- SiFli bietet Bluetooth-Chips an, die für den Einsatz als Hauptchip in Smartwatches entwickelt wurden
- Sie werden bereits in zig Millionen Smartwatches von Marken wie Redmi, Oppo und Noise eingesetzt
- Selbst der kleinste Chip, SF32LB52x, bietet mehr als 512 KB SRAM und 16 MB PSRAM
- Er verfügt über dedizierte MIP-Peripherie, sodass weder ein separates FPGA noch teure spezialisierte Display-Interface-Chips wie von Epson nötig sind
- Der Stromverbrauch bei aktiver BLE-Verbindung liegt bei rund 50 µA, der Preis bei unter 2 Dollar
- Falls nötig, könnte man auch auf andere SiFli-Chips mit 1 bis 2 MB SRAM wechseln
- Das SiFli-SDK ist als Open Source unter OpenSiFli auf GitHub verfügbar, und SiFli hat zudem Unterstützung beim Portieren von PebbleOS angeboten
- Im Core Time 2 soll der SF32LB52J verwendet werden, eine 1,8-V-Variante des SF32LB527
Verwandte SiFli-Links
- SF32LB52x reference guide: Referenzhandbuch für SF32LB52x
- OpenSiFli: GitHub des Open-Source-SDK von SiFli
- Buy Devkit on Taobao: Link zum Kauf des Devkits auf Taobao; ein Aliexpress-Link soll später folgen
1 Kommentare
Hacker-News-Kommentare
PebbleOS ist nicht das Einzige in diesem Bereich; es gibt auch https://www.espruino.com/, das https://banglejs.com/ antreibt
Es ist eine winzige JavaScript-Implementierung für Mikrocontroller und macht es leicht, Geräte in Echtzeit zu hacken
Es scheint auch im Fallout Pip-Boy und in anderen Produkten von The Wand Company verwendet zu werden: https://www.thewandcompany.com/fallout-pip-boy/
Siehe auch: https://github.com/orgs/espruino/discussions/7577
Da ich das eckige Design nicht mag, würde ich gern das Modell der ersten Generation kaufen, aber das scheint nicht mehr erhältlich zu sein
Pebble ist großartig, aber auch solche Projekte verdienen Aufmerksamkeit
Und wenn sich die Gelegenheit bietet, lohnt sich auch Amazons Fallout-Serie
Es hieß zwar, das „SDK sei Open Source“, aber damit ist offenbar nicht gemeint, dass es für den BLE-Mikrocontroller ein Open-Source-Code-SDK gibt
Soweit ersichtlich, wird der BLE-Code als Binary Blob bereitgestellt
https://github.com/OpenSiFli/SiFli-SDK/tree/6c82a9b15db49871...
Das ist an sich kein Problem, aber wenn man es „Open Source“ nennt, wäre es schön, den Quellcode lesen zu können
Diese Smartwatch ist nach heutigen Maßstäben nicht besonders smart
Ich würde wohl viele Komfortfunktionen meiner aktuellen Smartwatch vermissen, etwa NFC-Zahlungen, Dual-Band-GPS-Tracking und 4G-LTE-Konnektivität
Pebble und rePebble setzen stattdessen auf eine wochenlange Akkulaufzeit, aber wegen der kleinen Unannehmlichkeit, meine Galaxy Watch alle zwei Tage zu laden, möchte ich nicht auf solche starken Funktionen verzichten
Es ist gut, dass es Geräte für unterschiedliche Nutzer gibt
Nur weil die Zielgruppe eine andere ist, ist sie nicht „nicht smart“, sondern einfach ein Gerät, das nicht zu meinem Einsatzzweck passt
Ich brauche diese Funktionen kaum; eine Uhr, die sich etwas anpassen lässt, Benachrichtigungen empfängt und eine einfache Herzfrequenzmessung bietet, reicht mir
Wenn ich sie mehr als einmal pro Woche laden müsste, würde ich sie vermutlich nicht tragen
4G gibt es zwar noch nicht, aber meines Wissens gab es Berichte, dass es in den Geräten des nächsten Jahres enthalten sein soll
Bei Garmin gibt es andere Kompromisse, etwa bei Akku, Widgets, Kalender und Display-Ablesbarkeit
Am Ende ist alles ein Trade-off
Weitere Informationen zum Chip gibt es hier:
https://www.cnx-software.com/2025/05/14/sifli-sf32lb52j-big-...
Interessant, dass sie sich nicht für ein Zwei-Chip-Design entschieden haben, mit einem Chip für die Hauptanwendung und einem für BLE
Hochleistungs-Mikrocontroller haben normalerweise kein RF, daher kann so ein Design manchmal sinnvoll sein
Es gibt die NRF-Reihe, und auch Produkte wie den ESP32, die Bluetooth und Wi-Fi in einem Package vereinen
Persönlich würde ich derzeit eher zum ESP32 tendieren; er wird stetig gut weiterentwickelt und die Community-Unterstützung ist gut
Ich entwickle gerade eine MicroPython-basierte Smartwatch-Plattform
Nicht nur die Stückliste ist ein Problem: Jeder Chip braucht zusätzliche passive Bauteile und einen Oszillator, die Kommunikation zwischen den Chips muss koordiniert werden, und auch Firmware-Updates sowie Debugging-Zugänge müssen für beide Seiten entworfen werden
Es kann besser sein, es einfacher zu halten, selbst wenn man dafür etwas Akkulaufzeit opfert
Mehr Akkulaufzeit ist dagegen sehr willkommen, und der Einsatz eines integrierten Bluetooth-Mikrocontrollers scheint ein wichtiger Grund dafür zu sein, dass sich die Akkulaufzeit von etwa einer Woche auf etwa einen Monat verbessert hat
Für Dinge wie Zeitanzeige, Herzfrequenzaufzeichnung und das Senden eines Signals an AWS braucht man keinen vollwertigen UNIX-Computer
Es ist erfreulich, dass in der Low-Power-Chip-Branche endlich Versuche in Richtung Open Source zu sehen sind
Ich habe mich sofort nach der Ankündigung von rePebble angemeldet, aber später wurde mir klar, dass ich eigentlich keine Smartwatch will, sondern eine schlichte Uhr mit Vibrationsbenachrichtigung
Ich weiß, dass das ein Minderheitengeschmack ist, aber es ist eine Nische mit ziemlich engagierten Leuten [0] [1] [2]
Nachdem ich in den letzten zwei Jahren eine Casio F105 getragen habe, fällt es mir schwer, zu etwas Größerem, Schwererem oder Dickerem zurückzukehren
Wenn ein wenig Bluetooth-Funktionalität dazukäme, wäre einmal pro Woche Laden für mich akzeptabel
Zurzeit suche ich nach einem winzigen Bluetooth-Chip, der einen kleinen Vibrationsmotor ansteuern und alle iPhone-Benachrichtigungen empfangen kann
Bei Tests habe ich gemerkt, dass man es kaum spürt, wenn man zwischen den beiden Armbandseiten der F105 einen Chip, einen Motor und einen kleinen Lithium-Akku anbringt und dadurch an dieser Stelle etwas Gewicht hinzukommt
Ich erinnere mich auch noch an mein erstes Mi Band 1
Das war ein heute vergessenes Fitnessband ohne Display, nur mit drei RGB-LEDs, und weil es je nach App, die eine Benachrichtigung schickte, eine bestimmte Farbe anzeigen konnte, wusste man sofort, dass man etwa auf einen blauen Messenger-Chat direkt antworten sollte, während man eine gelbe Google-Keep-Benachrichtigung ignorieren konnte, bis man wieder am Computer war
[0] https://www.reddit.com/r/pebble/comments/9xw2j2/im_looking_f...
[1] https://www.reddit.com/r/smartwatch/comments/174hq9x/need_a_...
[2] https://tildes.net/~tech/18nf/smartwatch_primarily_for_notif...
Ich habe kürzlich ein gut erhaltenes gebrauchtes Exemplar für unter 200 Dollar gekauft; es ist ein ziemlich ordentlicher Chronograph und hat BLE, Alarme, einen Vibrationsmotor sowie ein etwas vernachlässigt wirkendes, seltsames Ökosystem für skriptbare Benachrichtigungen
Als Uhr muss man das Handbuch komplett lesen, um die verschiedenen Bedienkonzepte zu verstehen, aber wenn man bedenkt, dass sie ohne Display alle Informationen nur über Zeiger darstellen muss, ist das nachvollziehbar
Bei der Ersteinrichtung muss man eventuell die Zeiger synchronisieren, was mich anfangs ziemlich verwirrt hat
Sie nutzt einen effizienten Solarantrieb mit Superkondensator, hält also selbst im Dunkeln monatelang durch, und wenn man sie trägt, muss man sich praktisch keine Gedanken um den Akku machen
Der Superkondensator lässt sich austauschen, wenn er verschleißt, und nach Erfahrungen mit anderen Citizen-Uhren scheint er ungefähr 15 bis 20 Jahre zuverlässig zu halten
Mir gefällt sie ziemlich gut, weil sie eine solide gebaute echte Uhr ist, und wenn man will, kann man sie tragen und vergessen; sie erledigt Jahr für Jahr ihren Job
Es könnte auch andere Citizen-Optionen mit BLE geben
Wenn jemand die Benachrichtigungen und das BLE-Kommunikationsprotokoll per Reverse Engineering entschlüsseln und eine Open-Source-Begleit-App bauen würde, ergäben sich für hacker-affine Leute wohl ziemlich spannende Möglichkeiten
Meine Anforderungen sind ebenfalls schlicht
Ich brauche Vibrationsalarme, Benachrichtigungen und vor allem ein Display, das auch in grellem Sonnenlicht lesbar und für weitsichtige Augen angenehm ist
Das eInk-Display der OG Pebble passt genau
Es ist auch praktisch, SMS lesen zu können, ohne das Handy herauszuholen
Außerdem bekommt man sie bei eBay für etwa 30 Dollar, und ein neuer Akku kostet rund 15 Dollar, also hält sich die Belastung in Grenzen
Auch die Arbeit der Rebble.io-Community funktioniert für meine Zwecke noch ausreichend gut
Ich war auf der Suche nach einem „smarten“ Armband oder einer Schließe für eine Vintage-Seiko-Uhr
Es würde reichen, wenn bei ganz bestimmten Ereignissen auf dem Handy, zum Beispiel wenn meine Frau anruft, eine Vibrationsbenachrichtigung kommt
All die Funktionen oder der Bildschirm einer normalen Smartwatch sind nicht nötig und viel zu ablenkend
Die UX der Apple Watch ist furchtbar
Ein 1-cm-Fingerende auf einem 2-cm-Display – sie versucht viel zu viel zu tun, und es ist auch nicht mein Geschmack
Die Pebble sorgt dafür, dass man auch dann SMS- oder Anrufbenachrichtigungen bekommt, wenn man vom Handy getrennt ist, und genug sehen kann, um zu entscheiden, ob man reagieren will
Die Pebble ist ziemlich leicht, und mit diesem Watchface fühlt sie sich vertraut an:
https://store-beta.rebble.io/app/52f0939b1ac7948708001fc9
Benachrichtigungen sind meistens nicht zeitkritisch
Vor ein paar Jahren habe ich gemerkt, dass mein Handy ständig mit ziemlich bedeutungslosen Benachrichtigungen klingelt und mir die Aufmerksamkeit raubt, also habe ich alle Benachrichtigungen ausgeschaltet
Ich schaue nur alle paar Stunden nach und antworte dann auf eingegangene Nachrichten
Eine normale Smartwatch ist für mich fast nutzlos, und Nachrichtenhinweise am Handgelenk sind eher eine große Fehlfunktion
Praktisch fände ich aber, bequem Alarme einstellen zu können, die dann zur richtigen Zeit am Handgelenk vibrieren
Hinweise wie „Geh jetzt los, wenn du den Bus bekommen willst“ oder „Mach jetzt Pause“ würden reichen
Mehr brauche ich nicht, und schicke Sensoren brauche ich auch nicht
Ich habe angefangen, mit einem günstigen chinesischen Freqchip-SoC herumzuspielen:
https://github.com/zoobab/FR801xH
Auf Ali konnte man eine Smartwatch mit diesem Chip für 3 Euro kaufen
Das ist absurd billig
Wie brauchbar ist das SDK?
Ich habe zweimal kurz gesucht, konnte aber nichts finden
Guter Artikel, und es ist schön zu sehen, dass PebbleOS auf einigermaßen Open-Source-Hardware läuft
Aber müssen wir uns auch 2025 noch linksbündige Blogs ansehen?
Wide-Screens gibt es schon lange, und so wird das Lesen unnötig erschwert
„Die interessanteste und schwierigste Einschränkung ist eigentlich die Softwarekompatibilität“, hieß es, aber vermutlich ist das die Einschränkung, die sich am leichtesten umgehen lässt
In der Liste würde ich sie eher weiter hinten einordnen
Erstens ist das aktuelle Team deutlich kleiner als das frühere Pebble-Team, daher ist weniger Softwarearbeit umso besser
Zweitens wurden Apps und Watchfaces für das ursprüngliche Pebble als kompilierte ARM-Binaries ausgeliefert; wenn man also einen Mikrocontroller mit einem völlig anderen Befehlssatz wählt, verliert man die Abwärtskompatibilität
ESP32 fällt zum Beispiel in diese Kategorie, auch wenn er ohnehin keine gute Wahl gewesen wäre
Wenn alles proprietär ist, stößt man auf viele Sackgassen
Das ist etwas völlig anderes als bei Standard-PC-Hardware
Mir gefällt dieser Artikel
nimBLE ist ein hervorragender Bluetooth-Stack und dürfte Core Devices künftig interessante Möglichkeiten eröffnen