-
11Program the X9 Activity Tracker with SEGGER J-Flash and Nordic nRFGo Studio
From here on instructions assume use of Windows 10 and a J-Link programmer. I dual boot Linux and Win10 but in general find Win10 easier for embedded device programming and hardware in general. See the project GitHub repository README for other programming options.
Download and install SEGGER J-Flash and Nordic nRFGo Studio.
Open SEGGER J-Flash. Make sure the device is set to Nordic "nRF52832" (Options -> Project Settings -> CPU) and the target interface is set to "SWD" (Options -> Project Settings -> Target Interface). Connect to the X9 activity tracker (Target -> Connect). There is a good chance the connection will fail - this is because the stock firmware on the X9 is read-protected. You can "Recover" ie reset the X9 using Nordic nRFGo Studio or nRFjprog (command line tool, see README).
Open Nordic nRFGo Studio and navigate to "nRFx Programming" under "Device Manager". If your X9 is read protected, you will see the above screen. Press "Recover". If your X9 is properly connected to a SWD programmer this will wipe the device and allow you to program it.
If your device stock firmware is not read protected you will see something like the above screen. This is where you can manage the application, firmware and bootloader to be installed on your device - and erase anything already installed. Think of the Nordic "SoftDevice" as an "operating system" for Nordic nRF51/nRF52 MCUs. Hit "Erase All". This will wipe your device (if it hasn't already been wiped through the previously mention "Recover" function) and make the nRFGo Studio "Region" box go blank. Under "Program SoftDevice" navigate to and load the "S132" SoftDevice file included in the project GitHub repository. Program the SoftDevice on your X9. Under the "Program Application" tab, navigate to and load the compiled raw hex file for the nrf52_X9Project_OLED sketch. Hit "Program" and you are done.
-
12Scrolling Color Changing Hackaday Logo
This is what you will see displayed on your programmed X9 activity tracker:
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
Thanks for the wealth of useful information, these devices are amazing. Do you know how to build a package that can be flashed via OTA DFU rather than USB / J-Link ?
Are you sure? yes | no
I'm trying to develop a 24/7 hearth rate tracker for my grandmom (data sent automatically to raspberry server via bluetooh for historical data, and if some condition is meet, sent a alert via telegram). I have a nodemcu with ino file working sending data to google sheets and telegram conection, but I have just read your hack and this wearable is just wat I'm looking for. My questions are: do you have a picture how the j-link jumpers are connected? how bluetooth is linked to a device? HR sensors seems to be 4 and 29, and battery 28. I only want to show batery level and conection status, so
Are you sure? yes | no
cheers
Are you sure? yes | no
Yeah, there are two steps. You need the X9 variant file directory + contents (in the repo) into the nRF5x Arduino Core variant directory and you need to add and entry to the boards.txt file in the nRF5x Arduino Core install directory (in AppData). Instructions for the boards.txt entry can be found in a comment in the variant.h file inside the variant file directory (inside "Wearable-nRF52-X9" folder in the repo). Before you do any of this its a good idea to get the generic nRF52 variant working so you know everything is installed correctly and functional. nRF5x Arduino Core comes with a bunch of baked in variants including a "Generic nRF52" and "Nordic Semiconductor nRF52 DK" both of which should allow you to at least go through the process of programming the X9 - even though the firmware won't work unless you are using the X9 variant. In depth instructions can be found on the nRF5x Arduino Core GitHub repo README: https://github.com/sandeepmistry/arduino-nRF5 .
Are you sure? yes | no
how do you add the x9 variant? Does it need to be registered somehow?
Are you sure? yes | no