Here are the steps for testing PineTime preloaded with InfiniTime. This is to give the go-ahead to Pine64 for selling the new preloaded PineTime.
Check the following upon unboxing and on every firmware update...
-
Display: At startup PineTime shows a green "PINETIME" logo, then shows time and date. Initially the display shows "00:00" until the date and time are synched with nRF Connect (see below)
-
Button: The date and time disappears in a few seconds. Pressing the button should restore the display. Pressing the button again will hide the display.
-
Touch Panel: Swipe up from the bottom of the screen. The Menu should appear.
-
Brightness: In the Menu, set the brightness to Low, Medium, High. The brightness should change.
Check the following upon unboxing and on every firmware update...
-
Download the nRF Connect mobile app on Android and iOS to test the date/time sync with PineTime...
https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-Connect-for-mobile
-
In nRF Connect, browse for the
Pinetime-JF
device and tapConnect
If
Pinetime-JF
is not visible, or ifConnect
takes a long time, press the PineTime watch button to wake it up. -
Tap on
Menu
→Configure GATT Server
→Add Service
-
Set
Server Configuration
toCurrent Time Service
-
Tap
OK
PineTime should automatically sync the date and time.
-
On your Android or iOS phone, download ONE of the following FreeRTOS Firmware versions...
-
Version 0.8.1 (Release Candidate): https://github.com/JF002/Pinetime/releases/download/0.8.1-develop/dfu-0.8.1-develop.zip
-
Version 0.6.2 (Previous Dev Version): https://github.com/JF002/Pinetime/releases/download/0.6.2/pinetime-app-dfu.zip
-
Version 0.7.0 (Shipping Firmware): https://github.com/JF002/Pinetime/releases/download/0.7.0/pinetime-app-dfu.zip
For iOS, download with Safari and select
Open With
→nRF Connect
-
-
In nRF Connect, browse for the
Pinetime-JF
device and tapConnect
If
Pinetime-JF
is not visible, or ifConnect
takes a long time, press the PineTime watch button to wake it up. -
Tap the
DFU
circular icon at top right -
Select
Distribution Packet (ZIP)
-
Select the downloaded ZIP file. Wait for the upload to be completed.
-
PineTime should reboot and run the new firmware
-
Tap the screen, select
Soft Version
or 🛈(i)
or ✔️ (Tick) -
Check that the version number matches the firmware version that we have downloaded earlier:
0.8.0
,0.6.2
or0.7.0
-
For Firmware 0.8.0 and later: Tap the
Validate
button. This will tell the bootloader that the firmware update is sucessful, so that it won't roll back the firmware at the next reboot.
Connect Pogo Pins to PineTime and ST-Link v2 (or compatible)...
PineTime should power on when ST-Link is connected to the USB port.
On Linux or macOS: Connect ST-Link v2 (or compatible) to the SWD Port on PineTime. Run these steps to dump the Flash ROM with PineTime Updater...
# For macOS Only: Install brew according to https://brew.sh/
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
# Download the bash and OpenOCD scripts
git clone https://github.com/lupyuen/pinetime-updater
# Run the bash script to install xPack OpenOCD
cd pinetime-updater
./run.sh
# At the menu press Esc to exit
# Dump the Flash ROM
./scripts/flash-dump.sh
It should show...
**** Done! Check /tmp/nrf52-dump-boot.bin and nrf52-dump-app.bin
It should NOT show...
Error: Length of 4096 bytes with offset 0x00000000 is out of range of the flash bank
We test with ST-Link instead of JLink because ST-Link will always fail when Flash ROM Protection is enabled.
Feature | Device | Result | Remarks |
---|---|---|---|
Flash ROM Protection | Unsealed | OK | Able to dump ROM, flash bootloader+firmware with ST-Link v2 |
Charging | Sealed | OK | |
Display, Button, Touch Panel, Brightness | Sealed and Unsealed | OK | |
Pogo Pins | Unsealed | OK | Tested with ST-Link v2 |
Time Sync | Sealed and Unsealed | OK | Android Pixel 4XL |
Firmware Upgrade | Sealed and Unsealed | OK | 0.7.0 to 0.8.1, via Android Pixel 4XL |
Firmware Upgrade | Sealed | OK | 0.8.1 to 0.8.2, via Android Pixel 4XL |
Firmware Downgrade | Lup's Android Pixel 4XL | ??? | 0.8.0 to 0.7.0 |
Time Sync | Lup's iPhone 6 | ??? | |
Firmware Upgrade | Lup's iPhone 6 | ??? | 0.7.0 to 0.8.0 |
Firmware Downgrade | Lup's iPhone 6 | ??? | 0.8.0 to 0.7.0 |
There is a known problem with Time Sync on iOS. Nordic has not implemented Time GATT Service in iOS version of nRF Connect.