[Aaron Christophel] has been busy, he picked up a P8 smartwatch of the type that many of you will no doubt have seen. They cost almost nothing and do almost… nothing. In all fairness, they do connect to your phone using Bluetooth LE courtesy of a chip from Nordic (the NRF52832), and they can do several simple tasks. But they don’t run applications in the way an Android or Apple watch does. [Aaron] wants to run his own applications, so his YouTube channel has a lot of information about hacking the P8 and other watches with similar chips. In one video you can watch below, he demonstrates how he’s written support for Arduino programming to the devices. What we were really excited about was the second video below where he shows his Android app that can flash the devices via Bluetooth. That means you can potentially hack these devices without opening them up.
The app that normally runs these watches is called Da Fit, so [Aaron] called his utility DaFlasher. This is all early stuff so we expect some coaxing to get everything working, but it has great promise.
Inside the device is an ARM processor with a built-in Bluetooth stack. Apparently the same circuit board is in a lot of these cheap smartwatches and fitness trackers. We tried it with a watch we had laying around that uses Da Fit, we never saw its MAC on the DaFlasher screen but it is a lot different from the P8 that appears in the video. The program did find a lot of other BLE devices nearby, though.
Running your own code on your watch gets you a lot of geek cred. But not as much as building your own watch. From what we’ve seen, the enclosure is the hardest part.
For a while Right-Aid (Or whatever they call themselves this week!) was selling them by the big things. If I find one I might want to try and do that hack, it seems well good. Oh and Al? Parallax called again, they need your talents.
Mind change, no I am not.
It will be interesting to see if anybody writes something cool to run on one of them. You get a fair amount of hardware for very little cash and a nice little case.
….and a not sofair amount of energy, incapable of running extra calculations. :-J
l would like a smartwach worn on racket holding hands wrist to monitor ball strikes.
but can it run doom…
I would love to see that!
it probably can, honestly. there’s a surprising amount of processing power in those things, but it’s not doing much of anything useful, and the battery capacity won’t handle that for very long
There was an official port for ARM2 at 8Mhz.. Acorn Archimedes line.
Damn, beat me to it… Lol
Awwww…
I was hoping for someone to comment;
“challenge accepted!”
“challenge accepted!”
The PineTime open source smartwatch seems to be the same hardwarewise, which also fits with some of the pine64 founders reports on where they got the parts and design from.
So probably if you’re looking for some documentation (schematics) and open source software running on those devices, you’ll find some resources over at the pine64 wiki: https://wiki.pine64.org/index.php/PineTime
One of the projects I’ve sen coming along quite nicely is JFs FreeRTOS based firmware for the PineTime: https://github.com/JF002/Pinetime/blob/master/README.md
AFAIK it uses the same hardware, but some pins have a different mapping. So you can’t directly flash the same pinetime binary to the P8
The PineTime is also made by DaFit / Crrepa as the P8
i made this app for all the DaFit watches, in the Repo is a list of 400 devices that this app supports to update including the PineTime stock firmware.
On the DaFit hardware the display and External 4mb flash is always on the same pins to have the Bootloader accross all devices, only the aditional hardware is on different pins like push buttons leds or touchscreen.
Which repo? I have started to compile a list of devices using the nRF52, but if there is already one. I hunt on fccid.io and search for “smart bracelet”, and look at the internal pictures if I recognise an nRF52.
Hi its this file:
https://gist.github.com/atc1441/d0a3c1f5ee69ab901bccba4eb47a6e4e
These are all the ones that have the exact same bootloader i have created to hack, so same pinout for display and external flash.
There are even more ones but they maybe have different pinout.
Thanks a lot for that link, I didn’t know about the PineTime.
I just ordered one.
This is really great, I’ve been looking for a simple electronic watch, but I don’t a “smart” watch; I just want a moderately clever watch that can track my pulse. And I don’t really want software, I just want the hardware.
Once I have the software working the way I want, I can buy a regular DaFit and flash it!
Thank you Al Williams for the write up :)
I am currently working on the Implementation of FreeRTOS into the Arduino environment for these Watches so the Battery will drain even slower.
Would you mind sharing the details of the flashing process? I don’t have an android phone and android x86 is being a PITA to use with BT. I’d rather write the tools myself if I could use them from Linux directly.
Hi, yes i allready published the protocoll here:
https://gist.github.com/atc1441/32c940522ba7470a56c23922341ca25a
Hadn’t seen that around, Thanks!
I’ll try to write a tool to do that from the command line, probably in python. If anyone wants it too lemme know and I’ll drop a note when it’s done.
Yes, I would love to have a tool to do flashing from Linux. Please.
Doing a COVID tracing watch atm, at least that would be a good alternative to Apple or Google DP-3T solutions:
https://github.com/dyne/decode-proximity-hw
It will need a gateway to the internet though, trying to make an ESP32 act as a BT Wifi gateway, in order to provide a 6lowpan address to watch.
I would have left a link to https://banglejs.com/ (also Nordic nRF52832) in the original article. No need to hack it first, just program it.
Thats kinda funny,
The BangleJs is actually also just a hacked DT NO1 F18 Smartwach :)
This is awesome! Been experimenting with a PineTime devkit (also a Nordic chipset), contemplating finding one of these P8s to tinker with it.
Hmm would definitely pick one up to hack if the custom os offered phone/sms/mms integration
“But not as much as building your own watch. ”
Kind of a cheap shot, huh?
Awesome work that opens up some interesting possibilities. The display on these is an RGB 1.4″ TFT 240×240. With some hardware/software hacking, this thing would be just about perfect for a “look through” semi-silvered mirror or just surface-reflective one-eye head-mounted display. NRF52832 has a Cortex M4F core, so there’s lots of oomph here. I think I need to order a few just to play with them.
A scouter!!!
From the nRF52382 product page (https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52832) and the product brief:
64 MHz Cortex-M4 with FPU with 512/256 KB Flash, 64/32 KB RAM
2.4 GHz Transceiver 2 Mbps, 1 Mbps support for:
– Bluetooth Low Energy
– Bluetooth mesh
+4 dBm TX power, 100dB link budget
128-bit AES
UART, SPI, TWI, PDM, I2S
PWM
12-bit 100ksps ADC
NFC-A
32 IO’s and all sorts of goodies.
Aaron you do great stuff. We emailed a while back good to see you are still at it. Is there a place to foolow you like a blog or something?
atcnetz.de
What about the sub $12 smartwatches avalible on WISH?
Anyone interested in hacking UWatch3. It is powered by nRF52840 which is more advance than the above P8
https://www.umidigi.com/page-umidigi_uwatch3_overview.html
I have a product that could use this watch, so I would be interested. But it is 2x price of the p8.
Hi guys can anybody into a Huawei gt 2 to turn off Bluetooth?