Contents
Revision history. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Minimum requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Related documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4 Development kits, boards, and chips. . . . . . . . . . . . . . . . . . . . . 7
5 SoftDevices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
6 Running a first test. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
7 Setting up your toolchain. . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.1 Nordic tools and downloads . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
7.2 Setting up the nRF5 SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
7.3 Installing SEGGER tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
7.4 Installing the nRF5x Command Line Tools . . . . . . . . . . . . . . . . . . . . . . 14
8 Programming an application. . . . . . . . . . . . . . . . . . . . . . . . . 15
8.1 Erasing the board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
8.2 Importing Keil projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
8.3 Compiling the application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
8.4 Configuring placement of the SoftDevice . . . . . . . . . . . . . . . . . . . . . . 21
8.5 Programming the firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.6 Adding files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.6.1 Adding source files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8.6.2 Including header files . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
9 Communicating with the board. . . . . . . . . . . . . . . . . . . . . . . 27
9.1 Connecting via RTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
9.1.1 Connecting via RTT on Windows . . . . . . . . . . . . . . . . . . . . . . . . 27
9.1.2 Connecting via RTT on Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 28
9.2 Connecting via CDC-UART . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
10 Testing the application. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
10.1 Testing with a mobile device . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
10.2 Testing with a computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
11 Debugging. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Acronyms and abbreviations. . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Legal notices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1159720_163 v1.1
ii