ref: fc5424cb72e477c5f1bbfaeddb5c50b851a965ae
doc/PinetimeStubWithNrf52DK.md
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# Build a stub for PineTime using NRF52-DK [NRF52-DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF52-DK) is the official development kit for the NRF52832 SoC from Nordic Semiconductor used in the PineTime. This development kit can be very useful for PineTime development: - You can use its embedded JLink SWD programmer/debugger to program and debug your code on the PineTime - As it's based on the same SoC than the PineTime, you can program it to actually run the same code as the PineTime. This page is about the 2nd point. We will build a stub that will allow us to run the same code you can run on the PineTime. This will allow you to work more easily if you don't have a PineTime dev kit around, if you don't want to modify your dev kit for SWD programming, or if you want to use some feature from the NRF52-DK (like power measurement). This stub only implements the display, the button and the BLE radio. The other features from the pintime are missing: - heart rate sensor - SPI flash - touchpad - accelerometer These devices could be added on this stub, but I do not have the parts to try them out for now. ![Pinetime stub](../images/pinetimestub1.jpg "PinetimeStub") Here are the parts you need to build this simulator: - [NRF52-DK](https://www.nordicsemi.com/Software-and-Tools/Development-Kits/nRF52-DK) - An ST7889 display (I bought [this one](https://www.aliexpress.com/item/32859772356.html?spm=a2g0s.9042311.0.0.1b774c4dSoc4Xz)) - A push-button (the one I use comes from a previous project build around ESP8266 board Wemos D1 Mini). - Dupont wires You just need to make the following connections: | NRF52-DK | ST7889 display | | -------- | -------------- | | VDD | VCC | | GND | GND | | P0.03 | SDA | | P0.26 | RES | | P0.02 | SCL | | P0.18 | DC | | NRF52-DK | Push Button | | -------- | ------------------------- | | P0.13 | Button IN (D3 in my case) | | GND | GND | You also need to enable the I/O expander to disconnect pins from the buttons and LED on the NRF52-DK and leave them available on the pin headers: | NRF52 -DK | NRF52- DK | | --------- | --------- | | DETECT | GND | Now, you should be able to program the SoC on the NRF52-DK board, and use it as if it was running on the PineTime. |