NanoLOC Development Kit User Guide
NanoLOC Development Kit User Guide
Kit 3.0
User Guide
Version 3.0
NA-06-0230-0402-3.0
Document Information
nanoLOC Development Kit 3.0 User Guide
Document Information
Document Title:
Document Version:
3.0
Published (yyyy-mm-dd):
2010-03-22
Current Printing:
2010-3-19, 1:00 pm
Document ID:
NA-06-0230-0402-3.0
Document Status:
Released
Disclaimer
Nanotron Technologies GmbH believes the information contained herein
is correct and accurate at the time of release. Nanotron Technologies
GmbH reserves the right to make changes without further notice to the
product to improve reliability, function or design. Nanotron Technologies
GmbH does not assume any liability or responsibility arising out of this
product, as well as any application or circuits described herein, neither
does it convey any license under its patent rights.
As far as possible, significant changes to product specifications and
functionality will be provided in product specific Errata sheets, or in new
versions of this document. Customers are encouraged to check the Nanotron website for the most recent updates on products.
Page ii NA-06-0230-0402-3.0
Trademarks
All other trademarks, registered trademarks, and product names are the
sole property of their respective owners.
This document and the information contained herein is the subject of
copyright and intellectual property rights under international convention.
All rights reserved. No part of this document may be reproduced, stored
in a retrieval system, or transmitted in any form by any means, electronic, mechanical or optical, in whole or in part, without the prior written
permission of Nanotron
Technologies GmbH.
Copyright 2010 Nanotron Technologies GmbH.
Table of Contents
nanoLOC Development Kit 3.0 User Guide
Table of Contents
List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Minimum Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Kit Software. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 nanoLOC DK Board Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1 Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.3 Voltage Regulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 nanoLOC TRX Transceiver Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3 Evaluating Wireless Transmissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1 Reliability of Radio Frequency (RF) Links. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Reliable Data Communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3 Ranging Precision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.4 Obtainable Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.5 Receiver Sensitivity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.6 Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4 nanoLOC API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.1 nanoLOC nTRX Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2 General Layer Interface SAP, MESAP and Callback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.3 General Message Structure MsgT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.4 Hardware Adaption Layer Microcontroller and Hardware Dependent . . . . . . . . . . . . . . . . . . . . 13
4.4.1 SPI Bus Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.4.2 Interrupt Service Routine Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.5 Chip Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.6 PHY Layer (nTRX Driver) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.6.1 PHY Layer Data SAP PDSap (). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.6.2 PHY Layer Management Entity SAP PLMESap () . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.6.3 Upstream Callback Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.7 Application Layer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
4.7.1 Using PDSap () on the PHY Layer for Data Transmission Requests. . . . . . . . . . . . . . . . . . 15
4.7.2 Using PLMESap () on the PHY Layer Chip Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.7.3 Upstream Callback Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5 nanoLOC Ranging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1 Symmetrical Double Sided Two-Way Ranging (SDS-TWR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.1 SDS-TWR Defined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.2 Propagation and Processing Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.1.3 Generating First Set of Time Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.1.4 Granting Permission to Perform Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.1.5 Eliminating Clock Errors by a Second Symmetrical Measurement . . . . . . . . . . . . . . . . . . . 20
5.1.6 Collecting the Time Values with a Third Data Packet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.1.7 Calculating the Ranging Distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.2 Ranging Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.1 SDS-TWR 3W_A Providing Ranging Results to Peer A . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.2 SDS-TWR 3W_B Providing Ranging Results to Peer B . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.2.3 SDS-TWR 2W_PP Energy Saving Ranging Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.3 Success and Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.3.1 Success Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.3.2 Error Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6 nanoLOC Location Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1 Image Files and the nanoLOC DK Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.2 How Tag Locations are Determined . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.2.1 Initializing and Configuring the Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.2.2 Requesting Ranging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2010 Nanotron Technologies GmbH.
Table of Contents
nanoLOC Development Kit 3.0 User Guide
10
11
12
13
14
Page iv NA-06-0230-0402-3.0
Table of Contents
nanoLOC Development Kit 3.0 User Guide
107
111
112
113
Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Loss and V.S.W.R. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
119
119
120
121
NA-06-0230-0402-3.0 Page v
Table of Contents
nanoLOC Development Kit 3.0 User Guide
Page vi NA-06-0230-0402-3.0
List of Figures
nanoLOC Development Kit 3.0 User Guide
List of Figures
Figure 1: nanoLOC Development Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Figure 2: nanoLOC DK Board key features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Figure 3: nanoLOC DK Board components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Figure 4: Power supply to the nanoLOC DK Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Figure 5: Layer structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Figure 6: nTRX Driver API General layer interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Figure 7: MsgT message structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figure 8: Hardware adaption layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figure 9: PHY layer SAPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figure 10: Application layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Figure 11: SDS-TWR (simplified) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Figure 12: First set of measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 13: Second set of measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Figure 14: Third Data packet to provide Peer B time values to Peer A . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 15: Third Data packet to provide Peer A time values to Peer B . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 16: Third Data packet not required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Figure 17: Key components of the nanoLOC Development Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Figure 18: Locating tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figure 19: Request configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figure 20: Hardware acknowledgements indicate which tags are alive . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 21: Request Ranging using Start command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 22: Ranging performed between each alive tag and each anchor . . . . . . . . . . . . . . . . . . . . . . . . . 31
Figure 23: Ranging data provided to Location application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figure 24: nanoLOC Location Server - no nanoLOC USB Stick detected . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 25: Location Server and Location Engine Server running . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figure 26: nanoLOC Location Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 27: nanoLOC Location Demo with Log Area minimized.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figure 28: nanoLOC Location Demo Settings dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Figure 29: Common Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Figure 30: Anchors tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Figure 31: Values entered in the Anchors table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figure 32: Tags tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 33: Saving settings to a configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figure 34: nanoLOC Location Demo with loaded tutorial.xml file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Figure 35: Warning to remove the existing FTDI Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 36: Placing nanoLOC DK Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Figure 37: Anchors tab - test settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Figure 38: Unsaved changes to configuration file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Figure 39: Raw data in Location Engine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Figure 40: Log data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Figure 41: nanoLOC Location Demo running . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Figure 42: Tag LED and Key usage nanoLOC Location Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Figure 43: Obtaining a log file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Figure 44: nanoLOC Ranging Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Figure 45: nanoLOC Ranging Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Figure 46: Selecting and opening COM port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Figure 47: Ranging measurement results displayed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Figure 48: nanoLOC Ranging Demo - running . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Figure 49: Ranging report. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Figure 50: Saving a log file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
List of Figures
nanoLOC Development Kit 3.0 User Guide
List of Figures
nanoLOC Development Kit 3.0 User Guide
Figure 103:
Figure 104:
Figure 105:
Figure 106:
Figure 107:
Figure 108:
Figure 109:
Figure 110:
Figure 111:
Figure 112:
Figure 113:
Figure 114:
Figure 115:
Figure 116:
Figure 117:
Figure 118:
Figure 119:
Figure 120:
Figure 121:
Figure 122:
Figure 123:
Figure 124:
Figure 125:
Figure 126:
Figure 127:
Figure 128:
Figure 129:
Figure 130:
Figure 131:
Figure 132:
Figure 133:
Figure 134:
Figure 135:
Figure 136:
Figure 137:
Figure 138:
Figure 139:
Figure 140:
Figure 141:
Figure 142:
Figure 143:
Figure 144:
Figure 145:
NA-06-0230-0402-3.0 Page ix
List of Figures
nanoLOC Development Kit 3.0 User Guide
Page x NA-06-0230-0402-3.0
List of Tables
nanoLOC Development Kit 3.0 User Guide
List of Tables
Table 1: nanoLOC Development Kit components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Table 2: nanoLOC DK Board components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Table 3: Power Supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Table 4: Description of MsgT Message structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Table 5: NTRX_LogChannel attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Table 6: NTRX_Channel attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Table 7: Message structure for callback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Table 8: Message structure for callback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Table 9: nanoLOC Location Demo image files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Table 10: Common Settings tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Table 11: Anchor 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Table 12: Anchor tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Table 13: Anchor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Table 14: Anchor 3 and Anchor 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Table 15: Anchor 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Table 16: Tag tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Table 17: Common Settings tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Table 18: Location Demo GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Table 19: Address range for anchors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Table 20: Address range for tags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Table 21: NTRX_LogChannel attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Table 22: Hyperterminal connection properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Table 23: Transmit power settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Table 24: NTRX_LogChannel attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Table 25: NTRX_LogChannel attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
Table 26: MAC frame types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Table 27: JTAG interface pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Table 28: Microcontroller to ISP pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Table 29: Microcontroller to light sensor pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Table 30: Microcontroller to PORTA pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Table 31: Microcontroller to PORTB pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Table 32: Microcontroller to PORTC pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Table 33: PORTD pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Table 34: ATmega128L microcontroller to PORTE pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Table 35: ATmega128L microcontroller to PORTF pin connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Table 36: nanoLOC DK Board Bill of Materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Table 37: nanoLOC USB Stick bill of materials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Table 38: Antenna electrical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Table 39: Antenna mechanical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Table 40: Antenna environmental specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Table 41: Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
NA-06-0230-0402-3.0 Page xi
List of Tables
nanoLOC Development Kit 3.0 User Guide
Introduction
nanoLOC Development Kit 3.0 User Guide
1 Introduction
The nanoLOC Development Kit 3.0 is designed for prototyping and developing ranging and location-aware wireless applications based on the nanoLOC TRX Transceiver. The kit includes an
extensive set of applications as both image files and source code as well the development tools
AVR Studio and WinAVR to get started immediately developing and testing wireless applications. This document describes the hardware in the kit and provides instructions for using the
nanoLOC LOCATION DEMO. Additional instructions are provided for flashing the RANGING DEMO and
other other applications to the nanoLOC DK Boards that demonstrate nanoLOCs ranging and
robust wireless communication capabilities.
Note: This document assumes the software for the nanoLOC Development Kit 3.0 has been
installed and the nanoLOC DK Boards have been assembled. If not, refer to the nanoLOC
Development Kit 3.0 Quick Start Guide.
1.1
Components
All the hardware and software required for developing and testing applications is provided in the
kit. Figure 1 below shows the hardware components of the nanoLOC Development Kit 3.0.
Hardware
Qty
Description
nanoLOC DK Board
This versatile board uses the nanoLOC TRX Transceiver and the
ATmega128L microcontroller and is specifically designed for location and
ranging applications.
USB cable
(type A male/female)
Used for flashing and debugging under Windows. Uses the JTAG or ISP
interface on the nanoLOC DK Board.
NA-06-0230-0402-3.0 Page 1
Introduction
nanoLOC Development Kit 3.0 User Guide
Hardware
Qty
Description
Third-party device for flashing and debugging. Uses the JTAG interface on
the nanoLOC DK Board and a USB port on the PC.
USB cable
(type B male/female)
RS-232 cables
Required for applications that use the COM port of the PC.
Software
Description
FTDI Driver
Location Server
Location Client
+ Windows-based GUI
+ Set of image files
+ Source code: embedded
application only
nanoLOC RANGING DEMO
+ Windows-based GUI
+ Set of image files
+ Source code: embedded
application only
nanoLOC TALK DEMO
+ Windows-based GUI
+ Set of image files
+ Source code: embedded
application only
nanoLOC THROUGHPUT DEMO
1.2
nanoLOC DRIVER
+ Source code
Documentation
Description
Nanotron Documentation
Third-Party Documentation
Datasheets and user guides for third-party software included in the kit.
Minimum Requirements
The applications included in the nanoLOC Development Kit operate on a PC running Microsoft
Windows or XP or later OS with a 1.8 GHz Pentium 4 processor or equivalent. A minimum
installation of the software requires at least 30 MBs free space, while a full installation requires at
least 210 MBs free space.
The nanoLOC LOCATION DEMO uses only one PC, while other demo programs require two PCs or,
ideally, laptops, all of which need an available USB port.
Page 2 NA-06-0230-0402-3.0
Introduction
nanoLOC Development Kit 3.0 User Guide
1.3
Kit Software
The nanoLOC Development Kit includes an extensive set of applications that demonstrate the use
of the nanoLOC chip for location-aware, ranging, and robust communication wireless applications.
Most demo programs have both an embedded application and a Windows-based graphical user
interface. Others are embedded applications only and run on the command line or by key buttons
on the nanoLOC DK Boards. Source code (written in ANSI C) of all embedded applications are
provided as examples for starting your own application development.
Note: Windows-based GUIs are not provided as source code.
+
NA-06-0230-0402-3.0 Page 3
Introduction
nanoLOC Development Kit 3.0 User Guide
Page 4 NA-06-0230-0402-3.0
2.1
Components
SMA connector
nanoLOC EVR
Module
JTAG connector
ATmega128L
microcontroller
TX/RX
jumpers for RS-232
Reset
button
Programmable
LEDs
Connector for
battery pack
Programmable
buttons
On/Off Switch
Connector for
RS-232 cable
2.1 mm barrel connector
Ground
TX/RX
LED
Programmable
buttons
Power
LED
JP2 for
Voltage
Regulator
Programmable
LEDs
L8
K3
K2
L1
K1
7.3728 MHz
External
Oscillator
2.1 mm
barrel
connector
DC-DC
converter
RX jumper
for RS-232
32.768 kHz
Quartz
Oscillator
ATmega128L
microcontroller
DE-9 D-sub
connector
Reset
button
nanoLOC
EVR Module
TX jumper
for RS-232
SMA
connector for
2.4 GHz
antenna
Light
Sensor
Connector for
Battery Pack
+
-
JP3 for
ADC Converter
1
2
Port D
connectors
ADC/IO
connectors
JTAG
connector
ISP
Port B
connectors connectors
NA-06-0230-0402-3.0 Page 5
Part
Description
nanoLOC EVR
Module
Contains the nanoLOC TRX Transceiver along with external circuitry required for its
operation. It provides basic RF functionality including transmission (TX) and reception (RX) as well as basic digital operations. It also includes an ISM bandpass filter
at antenna connector for filtering signal disturbances.
ATmega128L
microcontroller
A low power CMOS 8-bit microcontroller based on the AVR enhanced RISC architecture with 128 Kb Flash and 4 Kb SRAM. This microcontroller drives the
nanoLOC TRX Transceiver via the SPI interface. Operates between 2.7 V and 5.5
V. See also Atmel ATmega128L datasheet available from Atmel.
Light sensor
Uses a 2.1 mm barrel connector from a maximum 3.0 V unregulated power supply.
Power ON/OFF
switch
Disconnects from either the barrel connector or the JP1 power source but NOT from
the JTAG connector power source.
PWR LED
DC-DC converter
(voltage regulator)
When a power supply of 3.0 V or less is used, the DC-DC converter is required to
provide a constant 3.3 V output to the ATmega128L c and to the nanoLOC RF
Module. (Input voltage: Between 1.0 V and 3.0 V. Output voltage: 3.3 V)
Note: The voltage regulator jumpers (JP2) need to be connected when the DC-DC
converter is used.
TX/RX LED
Programmable LEDs
Eight user-programmable red, orange, and gold activity LEDs. Their anodes and
cathodes are connected to PORTC via 680 resistors and to ground.
Reset button
Programmable
buttons
I/O Ports
JTAG connector
ISP (In-System
Programming)
connector
Page 6 NA-06-0230-0402-3.0
Note: If a power supply is provided by the ISP connector, it must not be higher than
3.0 V or damage may occur to the board.
2.2
Power Supply
Both the nanoLOC DK Board and the nanoLOC EVR Module mounted on the board operate at
3.3 V. However, since the nanoLOC DK Board uses an up-converter to 3.3 V, a power supply of
between 1.0 V and 3.0 V is required (and should not exceed 3.3 V - see warning below).
Table 3: Power Supply
A power supply unit with a maximum 3.0 V unregulated supply voltage, which uses the 2.1 mm DC barrel connector (center pin is positive).
Sliding Switch
When a power supply is provided to the nanoLOC DK Board, the power supply LED (labelled PWR)
is illuminated. To switch off the board without having to remove the power supply, a sliding switch
(labelled ON/OFF) has been provided. Figure 4 shows the location of the ON/OFF sliding switch.
Note: The ON/OFF sliding switch does not affect power provided by the JTAG/ISP connectors.
Board switched on
and PWR LED
illuminated
1 V to 3V
power
supply
OR
battery
pack
+
BAT
2.3
Voltage Regulator
Both the ATmega128L microcontroller and the nanoLOC RF Module require a steady voltage of
3.3 V. Therefore, the board provides a voltage regulator, which is a monolithic micropower step-up
DC-DC converter for powering equipment from battery packs containing either one or two cells.
The voltage regulator starts up with a voltage of 0.8 V and operates down to less than 0.3 V. This
regulator is capable of up to 200 mA of output current at an input voltage of 2.0 V and an output
voltage of 3.3 V.
Note: The voltage regulator output becomes inaccurate if the input voltage exceeds 3.0 V.
NA-06-0230-0402-3.0 Page 7
2
2.4
1 Mbps
+ Modulation technique: CSS (Chirp Spread
Spectrum)
+ Programmable output power dynamic
range1: 37.5 dB
+ Receiver sensitivity: -95 dBm @
voltage
+ Power down mode for increased current
saving
+ Extremely low shut down current 2 A1
+ Software controlled power supply for exter-
function
+ General purpose 4-bit digital I/Os for easy
Note: For a full technical description, refer to the nanoLOC TRX Transceiver Datasheet.
Page 8 NA-06-0230-0402-3.0
3.1
3.2
3.3
Ranging Precision
Strong RF interferers and high signal attenuation also affect the obtainable precision for ranging.
The implemented ranging algorithm is based on a Time of Flight (ToF) measurement. For very
reflective RF environments in combination with a blocked direct signal (non-line-of-sight), the measured signal can actually be a reflected signal. So the measured distance will be longer than the
actual distance (direct line) between the two RF devices.
Note: For more details about ranging, see 5. nanoLOC Ranging on page 19.
3.4
Obtainable Range
In performing ranging, a frequently asked question is What is the maximum obtainable range?. In
general, the range is determined by the link budget that is available for a given data link. Link budget is the output power of the transmitter vs. the input sensitivity of the receiver.
For true line-of-sight conditions where no interferers exist, the obtainable distance can be easily
calculated for a given frequency. However, in most cases this ideal environment is not possible due
to reflections by walls, buildings, vegetation or the earths ground. These interferers can severely
influence the propagation characteristics of the signal. This inevitably leads to shorter communication ranges compared to ranges calculated for ideal scenarios.
NA-06-0230-0402-3.0 Page 9
3
3.5
Receiver Sensitivity
When interferers are present at the receivers end of the wireless link, the receivers sensitivity is
degraded by the prevailing amount of RF noise. For a comparison, consider ordinary audio noise
at a radio receiver where a considerable noise floor is present. A persons ear sensitivity has no
effect on the quality of the audio sound. Likewise, with RF receivers the quality of the received signal is degraded if a considerable noise floor is present. The noise floor determines the receivers
sensitivity and, therefore, limits the maximum obtainable communication range.
3.6
Summary
In summary, a communication range can not be stated by considering the RF link alone without
also taking in account the environment in which the communication takes place.
The effects mentioned in this section are generally true for RF links. They have to be taken in consideration during the system design to successfully implement a specified radio application.
Page 10 NA-06-0230-0402-3.0
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
4 nanoLOC API
This section describes how an application accesses chip functionality through the use of the application programming interface (API) of the nanoLOC nTRX Driver. The API uses the same naming
convention as IEEE 802.15.4.
4.1
Logical Connection
Application Layer
TX
= Message
Application Layer
RX
= SAP
PHY Layer (nTRX Driver)
Event Handler
Event Handler
Hardware Adaption
Layer
Hardware Adaption
Layer
nanoLOC
TRX Transceiver
nanoLOC
TRX Transceiver
Physical Connection
Transmitted Packet
TX
RX
Received Packet
The nanoLOC TRX Driver API reads and writes values into the registers of the nanoLOC TRX
Transceiver. Some of the key settings of the nanoLOC TRX Driver include the following:
+
Repeat
NA-06-0230-0402-3.0 Page 11
4
4.2
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
PDSap
PLMESap
PHY layer (nTRX Driver)
C and HW independent
PDCallback
SPI Interface
IRQ
C and HW dependent
Reset
nanoLOC Chip
Figure 6: nTRX Driver API General layer interface
The PHY layer provides two Service Access Points (SAPs) for downstream messages from the
Application Layer: LayernameSAP and LayernameMESAP. The PHY layer also provides one callback function for upstream messages from the Hardware Adaption Layer: LayernameCallback.
The general form for these SAPs are:
+
Downstream SAPs:
void LayernameSAP (MsgT *msg);
void LayernameMESAP (MsgT *msg);
In addition to these services, every layer has variables that have to be initialized. This action is
put into a separate function called LayernameInit:
void LayernameInit (void);
Page 12 NA-06-0230-0402-3.0
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
4.3
4.4
Variable
Description
uint8_t prim;
AddrT addr;
uint8_t len;
uint8_t *pdu;
uint8_t
data[MAX_PACKET_SIZE];
uint8_t status;
uint16_t value;
Value of requested parameter used for setting or getting chip configuration requests (2 bytes)
uint8_t attribute;
Selected attribute used with the value parameter for setting or getting chip configuration requests (1 byte)
SPI Interface
IRQ
Reset
nanoLOC Chip
Note: This layer must be written for each microcontroller family. The nanoLOC Development Kit
uses the Atmel ATmega128L microcontroller, which is part of the AVR family of microcontrollers.
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 13
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
where:
+
The interrupt service routine will read the IRQ status register and raise a flag for transmission finished or message reception. The actual processing of the interrupt source is done in normal context through the use of the function PHYPoll().
4.5
Chip Initialization
To prepare the nanoLOC chip for message sending and receiving, the following function is used:
bool_t NtrxInit(void)
4.6
PDSap
PLMESap
PHY layer (nTRX Driver)
PDCallback
Page 14 NA-06-0230-0402-3.0
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
For details on the structure MsgT and parameters required for the SAP PDSap (), see 4.7.1. Using
PDSap () on the PHY Layer for Data Transmission Requests on page 15:
4.6.2 PHY Layer Management Entity SAP PLMESap ()
PLMESap() is used by the Application Layer for nanoLOC chip configuration requests and queries.
void PLMESap (MsgT *msg)
For details on the structure MsgT and parameters required for the SAP PLMESap (), see 4.7.2.
Using PLMESap () on the PHY Layer Chip Configuration on page 16:
4.6.3 Upstream Callback Function
The PHY layer provides a single upstream Callback function PDCallback.
void PDCallback (void)
4.7
Application Layer
The Application Layer accesses the two downstream SAPs on the PHY layer PDSap () and
PLMESap ()and provides to the PHY layer an upstream callback function, as shown in figure 10
below:
Application Layer
APPCallback
PDSap
PLMESap
PHY layer (nTRX Driver)
Figure 10: Application layer
4.7.1 Using PDSap () on the PHY Layer for Data Transmission Requests
The Application layer uses the PHY layer SAP PDSap () for data transmission.
void PDSap (MsgT * msg)
The Application layer uses MsgT, as described in section 4.3 (unused parameters noted below).
typedef struct
{
uint8_t prim;
AddrT addr;
uint8_t len;
uint8_t *pdu;
uint8_t data[128];
uint8_t status;
uint16_t value;
uint8_t attribute;
} MsgT;
NA-06-0230-0402-3.0 Page 15
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
Primitives
The parameter prim uses the following primitives (attribute parameter) to indicate the requested
service:
+
The Application layer uses MsgT, as described in section 4.3 (unused parameters noted below).
typedef struct
{
uint8_t prim;
AddrT addr;
Not used
uint8_t len;
uint8_t *pdu;
uint8_t data[128];
uint8_t status;
uint16_t value;
uint8_t attribute;
} MsgT;
Primitives
The parameter prim uses the following primitives (attribute parameter) to indicate the requested
service:
+
PLME_GET_REQUEST
PURPOSE: Queries a setting of the layer parameter. For example, is FEC set to on?
The attribute parameter is used to select one of the supported attributes (see below), while
the value parameter selects the current setting of the attribute. The value field is only valid if
the status field indicates no error.
PLME_SET_REQUEST
PURPOSE: Sets a parameter of the layer. For example, set FEC to on.
The attribute parameter is used to select one of the supported attributes (see below), while
the value parameter provides the new value to set.
Page 16 NA-06-0230-0402-3.0
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
Attributes
The following attributes are available to be set or queried through the function PLMESap().
+
PHY_LOG_CHANNEL
PURPOSE: Selects or requests a logical channel, which is a predefined set of transmission
mode settings. Table 5 lists the supported logical channels.
Table 5: NTRX_LogChannel attributes
Logical Channel
Bandwidth [MHz]
Bitrate [ns]
FEC
Centerfreq ID
NLC_80_1_N_0
80
1000
No
NLC_22_4_N_1
22
4000
No
NLC_22_4_N_7
22
4000
No
NLC_22_4_N_13
22
4000
No
13
PHY_CHANNEL
PURPOSE: Sets the center frequency used in the NTRX_Mode. Table 6 lists the available channels:
Table 6: NTRX_Channel attributes
Channel ID
Description
2.442.175
CSS, 80 MHz
2.412
802.11b, CHNL_ID 1
2.417
802.11b, CHNL_ID 2
2.422
802.11b, CHNL_ID 3
2.427
802.11b, CHNL_ID 4
2.432
802.11b, CHNL_ID 5
2.437
802.11b, CHNL_ID 6
2.442
802.11b, CHNL_ID 7
2.447
802.11b, CHNL_ID 8
2.452
802.11b, CHNL_ID 9
10
2.457
802.11b, CHNL_ID 10
11
2.462
802.11b, CHNL_ID 11
12
2.467
802.11b, CHNL_ID 12
13
2.472
802.11b, CHNL_ID 13
14
2.484
15
2412.75
16
2470.76
PHY_ARQ
PURPOSE: Turns on and off automatic retransmissions. When on, it also sets the maximum
number of retransmissions. The range for maximum retransmissions is 0 to 14.
PHY_FEC
PURPOSE: This attribute turns on and off Forward Error Correction (FEC). For more details
about FEC, see nanoLOC TRX (NA5TR1) Transceiver User Guide.
PHY_TX_POWER
PURPOSE: This attribute sets the output power of the transmitter. The programmable output
power of the nanoLOC chip is from -33 dBm to 0 dBm.
NA-06-0230-0402-3.0 Page 17
nanoLOC API
nanoLOC Development Kit 3.0 User Guide
PHY_ADDR_MATCHING
PURPOSE: This attribute turns on and off address matching. For more details about address
matching, see nanoLOC TRX (NA5TR1) Transceiver User Guide.
NTRX_RTC
PURPOSE: This attribute accesses the Real Time Clock of the nanoLOC chip. For more details
about the Real Time Clock, see nanoLOC TRX (NA5TR1) Transceiver User Guide.
PHY_PWR_DOWN_MODE
PURPOSE: This attribute is used to put the nanoLOC chip into PowerDownModeFull or PowerDownModePad. For more details about power down modes, see nanoLOC TRX (NA5TR1)
Transceiver User Guide.
PHY_RECALIBRATION
PURPOSE: This attribute is used to switch cyclic recalibration on or off. In case of on, it also sets
the calibration interval. For more details about recalibration, see nanoLOC TRX (NA5TR1)
Transceiver User Guide.
PHY_MAC_ADDRESS1
PURPOSE: This attribute is used to set the local MAC address. This address is used for address
matching and as sender address when transmitting messages. For more details address
matching, see nanoLOC TRX (NA5TR1) Transceiver User Guide.
Page 18 NA-06-0230-0402-3.0
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
5 nanoLOC Ranging
nanoLOC Ranging uses a methodology called Symmetrical Double-Sided Two-Way Ranging
(SDS-TWR) developed by Nanotron Technologies and is part of the nanoLOC nTRX Driver. In the
nanoLOC Development Kit three different ranging modes are available:
5.1
SDS-TWR 3W_A provides measurement results to Peer station A (the local station that
requested the ranging)
SDS-TWR 3W_B provides measurement results to Peer station B (the remote station with
which the location station is performing ranging)
SDS-TWR 2W_PP operates identical to 3W_A except it uses time data from the previous ranging request to reduce energy consumption and quicker generation of ranging results
Symmetrical as the first ranging measurement from Peer A to Peer B is mirrored by a second
ranging measurement from Peer B to Peer A
Double-Sided as the ranging measurement is performed between two peer nanoLOC - enabled
devices
Two-Way as a Data packet and an automatic hardware acknowledgement provide the time values used for determining the ranging measurement
Figure 11 below shows a SDS-TWR ranging request cycle with two-way (Data and Ack packet),
double-sided (Peer A and Peer B), and symmetrical (ABA and BAB) ranging.
Data packet
A to B to A
Ack packet
Peer A
Peer B
Data packet
B to A to B
Ack packet
Peer A
Peer B
TX Propagation Delay, which is the time required for a speed of a signal propagating through
the air is known (speed of light), as is the time when the packet was sent and the time when it
was received. Using the delay and speed of light, a distance value can be generated.
Processing Delay
The nanoLOC TRX Transceiver uses a measured time delay to receive a data packet and to
generate and transmit a hardware acknowledgement packet.
NA-06-0230-0402-3.0 Page 19
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Generating T1
When the application on Peer A requests ranging, a Data packet is sent to Peer B which automatically returns an Ack packet. Peer A generates T1 using the time when the Data packet was
sent, when the Ack packet was received, and the known value of the signal propagation speed.
This value T1 is stored in memory on Peer A.
Generating T2
T2 is the measured value of processing an Ack packet in the nanoLOC TRX Transceiver. This
value T2 is stored in memory on Peer B.
Peer A
T1
Peer B
TX propagation delay - A to B to A
T2
Processing
delay
Generating T3
After Peer B grants permission to continue with ranging, Peer B sends a Data packet to Peer A
which automatically returns an Ack packet. Peer B generates T3 using the time when the Data
packet was sent, when the Ack packet was received, and the known value of the signal propagation speed. This value T3 is stored in memory on Peer B.
Generating T4
T4 is the measured value of processing an Ack packet in the nanoLOC TRX Transceiver. This
value T4 is stored in memory on Peer A.
Peer A
T1
Peer B
TX propagation delay - A to B to A
Peer A
Processing
delay
T4
T2
Processing
delay
Peer B
TX propagation delay - B to A to B
T3
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
SDS-TWR 3W_A uses Peer A to generate the ranging distance. This requires a third packet to
provide Peer B time values to Peer A, as shown in figure 14 below.
Peer A
Peer B
TX propagation delay - A to B to A
T1
T2
Peer A
Peer B
TX propagation delay - B to A to B
T4
T3
Peer A
Peer B
T2 and T3 provided to Peer A
Figure 14: Third Data packet to provide Peer B time values to Peer A
SDS-TWR 3W_B provides Peer A time values to Peer B, as shown in figure 15 below.
Peer A
Peer B
TX propagation delay - A to B to A
T1
T2
Peer A
Peer B
TX propagation delay - B to A to B
T4
T3
Peer A
Peer B
T1 and T4 provided to Peer B
Figure 15: Third Data packet to provide Peer A time values to Peer B
SDS-TWR 2W_PP uses time values from a previous ranging request to generate the ranging
distance.
T1 and T4 from
previous ranging
request provided
to Peer A
Peer A
Peer B
TX propagation delay - A to B to A
T1
T2
Peer A
Peer B
TX propagation delay - B to A to B
T4
T3
T2 and T4 for
next ranging
ranging
Peer B
Figure 16: Third Data packet not required
These methods are described in detail in 5.2. Ranging Modes on page 22.
5.1.7 Calculating the Ranging Distance
With all four time values available, the distance between Peer A and Peer B can be generated
using the following formula:
( T1 T2 ) + ( T3 T4 )
Distance = -------------------------------
where:
T1 - T2 = measurement 1
T1 = TX Propagation delay time of a round trip between Peer A and Peer B
T2 = Processing delay in Peer B
T3 - T4 = measurement 2
T3 = TX Propagation delay time of a round trip between Peer B and Peer A
T4 = Processing delay in Peer A
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 21
5
5.2
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Ranging Modes
Three ranging modes are provided to allow flexible development of ranging and location-aware
applications: 3W_A, 3W_B, and 2W_PP.
5.2.1 SDS-TWR 3W_A Providing Ranging Results to Peer A
In this mode, Peer A generates the ranging distance. Data can be included in payload. Permission
to perform measurements can be denied.
1
Peer A requests 3W_A ranging mode. User data can also be sent to Peer B, but will not be
read out after the ranging measurements have been completed.
void PDSap (MsgT *msg)
Variable
Description
uint8_t prim;
PD_RANGING_REQUEST
AddrT addr;
uint8_t data[];
uint8_t len;
uint8_t attribute;
RANGING_TYPE_3W_A
Variable
Description
uint8_t prim;
PD_RANGING_CONFIRM
uint8_t status;
Peer B must grant permission for ranging to continue. User data can also be sent to Peer A at
this point.
bool_t Permission(uint8_t *macAddr, uint8_t *data, uint8_t *len)
Description
AddrT *macAddr
uint8_t *data
A pointer to user data with a maximum of 100 bytes grants permission to ranging. To deny the ranging request, a null value must be
set.
uint8_t *len
Note: Permission code must be written as efficiently as possible to prevent Peer A station
from excessive waiting for the Data packet from Peer B. Otherwise, Peer A may switch
into sleep mode after a timeout.
Page 22 NA-06-0230-0402-3.0
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
If Peer B has put user data in the Data packet, a data indication is provided to Peer A.
void APLCallback (MsgT *msg)
Variable
Description
uint8_t prim;
PD_DATA_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Peer B transmits a second Data packet containing time values T2 and T3 to Peer A. When
Peer A receives this packet, it performs the distance measurement calculations using the four
accumulated time values T1, T2, T3, and T4. The resulting measurement is provides to an
application on Peer A via a ranging Indication.
void APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_RANGING_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Description
uint8_t error;
double distance;
AddrT addr;
1.
If Peer A has sent user data to Peer B during the ranging request, it is now provided to the
application.
void APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_DATA_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
NA-06-0230-0402-3.0 Page 23
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Variable
Description
uint8_t prim;
PD_RANGING_REQUEST
AddrT addr;
uint8_t data[];
uint8_t len;
uint8_t attribute;
RANGING_TYPE_3W_B
Variable
Description
uint8_t prim;
PD_RANGING_CONFIRM
uint8_t status;
Peer B must grant permission for ranging to continue. User data can be added to the Data
packet at this point.
bool_t Permission(uint8_t *macAddr, uint8_t *data, uint8_t *len)
Parameter
Description
uint8_t *macAddr
uint8_t *data
uint8_t *len
If Peer A has sent user data to Peer B during the ranging request, it is now provided to the
application.
void APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_DATA_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Page 24 NA-06-0230-0402-3.0
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Peer A transmits a second Data packet containing time values T1 and T4 to Peer B. When
Peer B receives this packet, it performs the distance measurement calculations using the four
accumulated time values T1, T2, T3, and T4. The resulting measurement is provides to an
application on Peer B via a ranging Indication.
void APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_RANGING_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Description
uint8_t error;
double distance;
AddrT addr;
1.
If Peer B has put user data in the Data packet when it granted permission to perform ranging, a
data indication is now provided to Peer A.
APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_DATA_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Peer A requests 2W_PP ranging mode. User data can be sent to Peer B also, but will not be
read out after the ranging measurements have been completed. All time values (T1, T2, T3,
and T4) are provided by the previous ranging measurements.
void PDSap (MsgT *msg)
Description
uint8_t prim;
PD_RANGING_REQUEST
NA-06-0230-0402-3.0 Page 25
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Variable
Description
AddrT addr;
uint8_t data[];
uint8_t len;
uint8_t attribute;
RANGING_TYPE_2W_PP
After sending the ranging request, Peer A will receive a ranging confirmation.
void APLCallback (MsgT *msg)
Description
uint8_t prim;
PD_RANGING_CONFIRM
uint8_t status;
1.
Peer A now performs the ranging calculations using the accumulated time values T1, T2, T3,
and T4 from the previous ranging cycle. The results, however, are not provided to an application until a later step.
Peer B must grant permission for ranging to continue. User data can be added to the Data
packet at this point.
bool_t Permission(uint8_t *macAddr, uint8_t *data, uint8_t *len)
Parameter
Description
AddrT *macAddr
uint8_t *data
uint8_t *len
If Peer B has put user data in the Data packet when permission was granted, a data indication
is provided to Peer A.
void APLCallback (MsgT *msg)
Variable
Description
uint8_t prim;
PD_DATA_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
The results of the ranging calculations performed previously is now provided to an application
on Peer B via a ranging indication. The is part of the time and energy saving feature of this
mode, It is now provided to the application.
Note: As the four accumulated time values T1, T2, T3, and T4 are stored in memory for use by
the next ranging request, the peer stations cannot communicate with other stations.
Page 26 NA-06-0230-0402-3.0
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Description
uint8_t prim;
PD_RANGING_INDICATION
AddrT addr;
uint8_t data[];
uint8_t len;
Description
uint8_t error;
double distance;
AddrT addr;
1.
5.3
Variable
Description
MyByte8T prim;
PD_RANGING_INDICATION
MyAddrT addr;
MyByte8T len;
MyByte8T data[128];
MyByte8T status;
MyWord16T value;
MyByte8T attribute;
RANGING_TYPE_3W_A
RANGING_TYPE_3W_B
RANGING_TYPE_2W_PP
NA-06-0230-0402-3.0 Page 27
nanoLOC Ranging
nanoLOC Development Kit 3.0 User Guide
Variable
Description
MyByte8T prim;
PD_RANGING_INDICATION
MyAddrT addr;
MyByte8T len;
MyByte8T data[128];
MyByte8T status;
MyWord16T value;
MyByte8T attribute;
Error Status
+
RG_STAT_DEFAULT
Default value is 0x00 when ranging starts. No measurement have been done.
RG_STAT_NO_ERROR
When the value is 0x0F, then all parts of the measurements were performed successfully.
RG_STAT_VALUE_ERROR
Indicates ranging value not logical (value < 0)
RG_STAT_T1
If set, then measurement T1 measured correctly
RG_STAT_T2
If set, then measurement T2 measured correctly
RG_STAT_T3
If set, then measurement T3 measured correctly
RG_STAT_T4
If set, then measurement T4 measured correctly
RG_STAT_TIMEOUT
Measurement aborted due to non-answer from paired station. Only occurs when paired station
exists. The paired station has sent a hardware acknowledgement but did not provide a ranging
answer within the set time.
RG_STAT_VALUE_ERROR
Measurements from mirrored measurements are different and therefore rejected. For example,
The difference between the measurement results calculated using times T1 and T2 as well as
T3 and T4 should be no greater than 10 meters, based on the use of a 40 ppm quartz clock. If
the difference is greater than 10 meters, it will be reported in this error message.
Page 28 NA-06-0230-0402-3.0
Note: For hardware assembly and software installation instruction, see the nanoLOC Development Kit Quick Start Guide.
6.1
Board
Image File
MAC Address
AP 1
Location_80MHz1000ns_Anchor1.hex
01
AP 2
Location_80MHz1000ns_Anchor2.hex
02
AP 3
Location_80MHz1000ns_Anchor3.hex
03
AP 4
Location_80MHz1000ns_Anchor4.hex
04
TAG
Location_80MHz1000ns_Tag17.hex
17
Additional tag
Location_80MHz1000ns_Tag18.hex
18
Note: Each nanoLOC DK Board is labeled to identify the image file that has been pre-flashed to
that board. The additional tag image file is provided for an optional second nanoLOC DK
Board (not provided in kit).
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 29
6
6.2
The LOCATION SERVER via the base station searches for tags.
All found tags in the nanoLOC network perform ranging to all anchors.
Each tag generates raw ranging data and is provided via the base station and LOCATION
ENGINE to the LOCATION ENGINE SERVER.
The LOCATION ENGINE SERVER uses this data to calculate the X/Y coordinates of the tag.
These coordinates are provided to the Windows based application for display or as a text
string to the LOCATION CLIENT.
Base
Station
nanoLOC Network
(Anchors and Tags)
Location
Server
Location Server
Engine
Location Demo
GUI
Location
Client
The LOCATION SERVER requests network configuration. Data packets, which contain a list of
anchor MAC addresses are sent to all alive tags, as shown in figure 19 below.
Transmit data packet
to all possible tags.
Anchor
Tag
Anchor
Tag
Tag
Tag
Anchor
Anchor
Base
Station
Location
Engine
Server
Request
Configuration
Location
Server
Page 30 NA-06-0230-0402-3.0
Tags automatically reply with hardware Acknowledgements. These Acknowledgements indicate to the L OCATION S ERVER that these tags are alive. The server then adds the MAC
address of the alive tags to a list of active tags, as shown in figure 20 below.
Anchor
Anchor
Tag
Tag
Tag
Tag
Anchor
Anchor
Base
Station
Location
Server
After initialization, the LOCATION DEMO or LOCATION CLIENT requests ranging by sending a
START command to the LOCATION SERVER, which then request ranging to all alive tags, as
shown in figure 21 below.
Anchor
Anchor
Tag
Tag
Tag
Tag
Anchor
Anchor
Base
Station
START command
Location
Engine
Server
Location
Server
Each tag then performs distance measurements (ranging) between itself and each anchor in
the list of anchors provided during network configuration, as shown in figure 22 below.
All alive tags begin ranging with all
anchors in the list of anchors
Anchor
Anchor
Tag
Tag
Tag
Tag
Anchor
Anchor
Base
Station
Figure 22: Ranging performed between each alive tag and each anchor
NA-06-0230-0402-3.0 Page 31
After ranging has been performed, each tag sends the raw ranging data to the LOCATION
ENGINE SERVER, via the LOCATION SERVER, determines the X/Y coordinates of each tag. These
coordinates are provided to the LOCATION CLIENT as a text string OR LOCATION DEMO GUI for
display in the Location area of the application, as shown in figure 23 below
Anchor
Anchor
Tag
Tag
Tag
Anchor
Anchor
Base
Station
Location
Engine
Server
Raw ranging
data
Location
Server
6.3
6.4
Run the NANOLOC LOCATION DEMO by selecting from the start menu Nanotron nanoLOC AVR
Development Kit > Demo Windows Applications > Start nanoLOC Location GUI.
This will run the LOCATION SERVER (LocationServer.exe), the LOCATION ENGINE Server
(LEServer.exe), and the LOCATION GUI (LocationGUI.exe).
Page 32 NA-06-0230-0402-3.0
If the nanoLOC USB Stick was not connected to the USB port, the LOCATION SERVER will
briefly give an error message shown below and will shut down after 2 seconds.
Stop the Location Server by selecting from the start menu Nanotron nanoLOC AVR
Development Kit > Demo Windows Applications > Stop all nanoLOC Location
application. Connect the USB stick to the USB Port, and then restart the nanoLOC
Location Demo as described above.
2
Note: Do not close these command windows while using the nanoLOC LOCATION DEMO.
Then the nanoLOC Location GUI launches. as shown in figure 26 below.
NA-06-0230-0402-3.0 Page 33
Log window
Now, configure the four anchors and one tag by selecting Settings > Anchors, Tags...
as shown in figure 28 below.
Note: In this tutorial you will set arbitrary X/Y coordinates for the anchors and tags. These values will then be used later when you set up the demo using the nanoLOC DK Boards.
Page 34 NA-06-0230-0402-3.0
The first tab is COMMON SETTINGS. These settings determine the type of operation for the application, which can be either live with the anchors and tags, or simulated with a log file. For this
tutorial, we will simulate location tracking. Later we will change these settings to live to run the
application with the anchors and tag.
In the COMMON SETTINGS tab, enter the settings as shown in table 10 below.
Table 10: Common Settings tab
Value
Settings
Mode
Input type
Port
Distance Penalty
NLOS Penalty
NA-06-0230-0402-3.0 Page 35
Select the ANCHORS tab. A single row with five fields for one anchor is provided initially. Up to
16 rows can be added. Each field is selectable by clicking in the field to make it editable.
Anchor ID
X Position
(in meters)
Y Position
(in meters)
Z Position
(in meters)
Anchor Name
Anchor 1
Value
Settings
Anchor ID
X position, y position
Z position
Anchor Name
Add a new row for Tag 2 by right clicking on the left margin of the table and selecting Insert
Row as shown in figure 30 below.
Set the values for the second anchor as shown in table 13 below.
Table 13: Anchor 2
Anchor ID
X Position
(in meters)
Y Position
(in meters)
Z Position
(in meters)
Anchor Name
Anchor 2
Page 36 NA-06-0230-0402-3.0
Anchor ID
X Position
(in meters)
Y Position
(in meters)
Z Position
(in meters)
Anchor Name
Anchor 3
Anchor 4
11 Now, select the TAG tab. A single row with five fields for one tag is provided initially. As with the
anchors, up to 16 rows can be added. Each field is selectable by clicking in the field to make it
editable.
Table 15: Anchor 2
Tag ID
Tag Name
Tag Symbol
Symbol Color
Symbol Size
17
Tag
[Selection]
Windows colors
10
Value
Settings
Tag ID
The value for Tag 1 MUST be set to 17. This is the MAC address
of the image file pre-flashed to the Tag supplied in the kit.
The MAC address range for tags is 17 to 32. A second image file
for a tag is also provided and has a MAC address of 18. Any additional tags start at 19 and continue up to and including 32.
Tag Name
An arbitrary name.
Tag Symbol
Symbol Color
Symbol Size
12 Figure 32 below shows the TAGS tab with the correct values. The name can be any text, while
symbol, color, and size can be any of the possible choices. Tag ID must be 17.
NA-06-0230-0402-3.0 Page 37
15 Reload the settings by opening the newly saved configuration file Tutorial.xml. Select
File > Open Data File from the File menu and select the new file.
16 Before continuing, review the settings in the COMMON SETTINGS, ANCHOR and Tag tabs.
17 The nanoLOC Location Demo should now look as shown in figure 34 below.
Page 38 NA-06-0230-0402-3.0
18 The new configuration file Tutorial.xml can also be opened in a text editor.
<?xml version="1.0" encoding="UTF-8"?>
<nanole>
<penalty distance="0" nlos="0.1" offset="2.122e-314"/>
<anchor id="1" x="0" y="0" z="0" name="Anchor 1"/>
<anchor id="2" x="5" y="0" z="0" name="Anchor 2"/>
<anchor id="3" x="5" y="4" z="0" name="Anchor 3"/>
<anchor id="4" x="0" y="4" z="0" name="Anchor 4"/>
<penalty distance="0" nlos="0.1" offset="2.122e-314"/>
<socket server="localhost" port="6868"/>
<tag id="17" name="Tag 1" color="#00ff00" shape="ellipse" size="10"/>
<tag id="18" name="Tag 2" color="#00fff7" shape="ellipse" size="10"/>
</nanole>
6.5
Four nanoLOC DK Boards are labelled AP1, AP2, AP3, and AP4 while one nanoLOC DK Board
is labelled Tag.
Connect the nanoLOC USB Stick to an available USB port on the PC via the USB cable.
Warning: Remember to insert the nanoLOC USB Stick into the USB port
AFTER the nanoLOC Location Demo software has been installed.
Failure to do so may result in the PC unable to find the correct
driver or the nanoLOC USB Stick using the incorrect driver.
Note: Using the USB cable ensures better RF performance for the nanoLOC USB Stick and
allows for a vertical positioning of the devices antenna (recommended).
3
An LED on the nanoLOC USB Stick is illuminated when Windows recognizes the device.
Windows will display a message indicating that new hardware was found. Windows will then
search for the FTDI USB Serial Converter Driver that was installed during setup.
NA-06-0230-0402-3.0 Page 39
Note: If during setup, a warning message appeared indicating an existing FTDI driver was
found, then this driver needs to be removed before continuing and the correct FTDI
driver installed by rerunning the Installation Assistant. For more details, refer to the
nanoLOC Development Kit Quick Start Guide.
The four nanoLOC DK Boards labelled as anchors need to be placed in a grid. Use figure 36
below as a guide. Note the X / Y coordinates of the anchors. This will be needed later when we
reconfigure the configuration file to run live with the nanoLOC DK Boards.
Anchor 1 is typically at the X/Y coordinate (0,0), although it is not necessary to do so as any of
the four anchors can be placed at (0,0). Continue placing the four anchors as shown in the figure below and note their X/Y coordinates.
Y axis
Anchor 4
Anchor 3
Anchor 1
Anchor 2
Y axis
Provide the recommended power supply to the four anchors (labelled AP1, AP2, AP3, AP4)
and the one tag (labelled Tag).
Warning: Ensure that the correct power supply has been provided. See 2.2.
Power Supply on page 7.
6.6
We can now run the nanoLOC LOCATION DEMO in Socket Mode. This will require making
changes to the Tutorial.xml configuration file first.
Restart the nanoLOC LOCATION DEMO by selecting from the start menu Nanotron nanoLOC
AVR Development Kit > Demo Windows Applications > Start nanoLOC Location
GUI.
Select File > Open and open TUTORIAL.XML. This configuration file needs to be modified to
run the LOCATION DEMO in Socket Mode.
Value
Page 40 NA-06-0230-0402-3.0
Settings
Select SDS-TWR (Socket Mode) to run the demo live using the kit
hardware.
Mode
Server Address
Port
This value is preset to 6868 which is the standard port for Local Host.
Distance Penalty
NLOS Penalty
Select the ANCHORS tab and modify the X and Y coordinates based on the coordinates you
noted previously. In the following example, we have used a typical office environment.
NA-06-0230-0402-3.0 Page 41
Select File > Save to save the changes to the Tutorial.xml configuration file.
Reload the file by selecting File > Open and selecting Tutorial.xml.
The LOCATION ENGINE SERVER will display in the command window the raw data from the
Tag.
g. The ranging value for Anchor 1 should be 0 meters. If the value is, for example, 1 meter,
when it should clearly be 0 meters, this can be compensated by an offset.
h. Adjust the Offset Compensation until the ranging data in the Location Engine for Anchor 1 is
0.0 meters.
Page 42 NA-06-0230-0402-3.0
10 Move the tag around within the area of the Anchors. The results of the calculations will be
shown in the Plot area, as shown in figure 41 below.
NA-06-0230-0402-3.0 Page 43
Two generic configuration files are provided to accelerate the setup process:
6.7
SettingOffline, which has default settings that can be used when running the demo
in File mode.
SettingOnline, which has default settings that can be used when running the demo
in Socket mode.
Task
Description
Zoom Out
Zoom In
Click
Click
or select View > Show Trace. Enables the tracing of all
locations of the tag since Start or Clear.
Click
, or select Settings > Location Engine Control >
Enable Ranging Filter
Click
, or select Settings > Location Engine Control >
Enable Position Filter
Click
Start. The Location Engine will connect wit the
nanoLOC Network and begin data aquisition.
Click
Stop. The Location Engine will continue to run in the
background.
Click
Clear. Clears all traces in the display area. New tag location data will be displayed, if the application is still running.
Click
log file.
Click
Open. Opens a configuration file into the Common Settings dialog. Two generic configuration files are provided to accelerate the setup process:
+ SettingOffline, which has default settings that can be
used when running the demo in File mode.
+ SettingOnline, which has default settings that can be used
when running the demo in Socket mode.
Click
data.
Select Settings > Anchors Tabs... and select the COMMON SETTINGS tab.
Click Browse next to the Input File field, and browse to one of the saved log files.
Page 44 NA-06-0230-0402-3.0
Click Run
or select File > Run to display in the Plot area the data from the log file.
Note: In this mode, the LOCATION DEMO does not connect with the LOCATION SERVER to begin
data acquisition from the Tag.
The log file captures the data used to calculate the X/Y coordinates of a tag.
Note: A negative distance value indicates an error in the ranging calculation.
6.8
A single notice in the command window TcpConnection will indicate the server has established a
connection with the nanoLOC network via the BASE STATION SERVER. It then waits for a request
from the nanoLOC LOCATION DEMO.
6.9
Location Commands
The LOCATION SERVER uses the commands START, STOP, INIT, MODE, and DATA. Instruction are
sent to the LOCATION SERVER in ASCII code. Either the LOCATION DEMO (the Client) or a hyperterminal can be used for accessing the LOCATION SERVER.
+
INIT command
The INIT command causes the LOCATION SERVER to initialize and configure the nanoLOC network:
INIT <Parameter 1><Parameter 2><Parameter X>
where,
+
For example:
INIT 4 1 2 3 4
In this example, the LOCATION SERVER initializes the network with 4 anchors having MAC
addresses 1 2 3 4.
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 45
START command
The START causes the LOCATION SERVER to send a command to the nanoLOC network to
begin ranging data collection.
START
STOP command
The STOP command causes the LOCATION SERVER to send a command to the nanoLOC network to stop ranging data collection.
STOP
MODE command
The MODE command sets the operating mode of the LOCATION SERVER which determines how
the server handles incoming ranging data from the nanoLOC tags.
MODE <Mode>
1 = On Demand, where the LOCATION SERVER stores incoming data received from the tags
and returns the data only with the DATA command is executed.
2 = Continuous, where the LOCATION SERVER immediately forwards all incoming data
from the tags as the data is received without requiring the DATA command to be executed.
DATA command
The DATA command requests the data accumulated by the LOCATION SERVER. It is valid only
when the mode is set to 1 = On Demand.
DATA
6.10
Start the LOCATION SERVER (see 6.6. Running the Location Demo with the nanoLOC DK
Boards on page 40).
Start HYPERTERMINAL.
From the Properties tab, click the ASCII Configuration button to open the ASCII Configuration dialog. In this dialog, ensure the following are checked:
+
Page 46 NA-06-0230-0402-3.0
6.11
0X01 (AP1)
0x05
0x09
0x0D
0x02 (AP2)
0x06
0x0A
0x0E
0x03 (AP3)
0x07
0x0B
0x0F
0x04 (AP4)
0x08
0x0C
0x10
The nanoLOC DK Boards set as anchors have been pre-flashed with a set of image files containing the MAC addresses 0x01, 0x02, 0x03, and 0x04. Each board has been labelled to indicate
the hex file.
Up to 16 tags can be used with the nanoLOC LOCATION DEMO. The range of addresses available
for tags are listed (as hex values) in table 20.
Table 20: Address range for tags
0x11 (TAG)
0x15
0x19
0x1D
0x12
0x16
0x1A
0x1E
0x13
0x17
0x1B
0x1F
0x14
0x18
0x1C
0x20
The nanoLOC DK Board set as a tag is pre-flashed with an image file containing the address 0x11.
In this file locate the following line of code (addresses will differ for tag and anchor files):
#define MY_ADDRESS 0x01
Change the address to one of the available addresses for anchors and tags.
To change the bandwidth or symbol duration from the default settings, locate the file
config.h.
NA-06-0230-0402-3.0 Page 47
Comment out the default setting (80 MHz and 1000 ns) and uncomment the required setting.
10 Add the new anchor to the nanoLOC LOCATION DEMO, as described in 6.4. nanoLOC Location
Demo Tutorial on page 32.
Note: Ensure that no two nanoLOC DK Boards have been flashed with image files with the same
address as inaccurate ranging calculations will occur in this case.
6.11.3 Adding or Deleting Tags
Tags are automatically added or removed from the nanoLOC network. The Location Server periodically reconfigures the nanoLOC network by sending out Data packets to all possible tags (one for
each of the 16 possible addresses). When a tag having a matching address receives the Data
packet, it replies to the base station with a hardware Acknowledgement, which indicates that it is
alive. The Location Server is then provided with a list of alive tags from the base station.
In this way, the network is self-configuring. A tag having an appropriate address can be added to
the network and at the next network configuration will be added to the list of alive tags stored in
the Location Server.
If a tag is removed from the network or powered off, this tags alive status will be removed from
the Location Server at the next network configuration.
6.11.4 Deleting an Anchor from the Location Demo
When an anchor is removed from the nanoLOC network, the list of anchor addresses in the Location Server needs to be updated so the network is aware of how many anchors are currently in
use.
To delete an anchor, do the following:
6.12
Page 48 NA-06-0230-0402-3.0
Location_80MHz1000ns_Anchor1.hex
Location_80MHz1000ns_Anchor2.hex
Location_80MHz1000ns_Anchor3.hex
Location_80MHz1000ns_Anchor4.hex
Location_80MHz1000ns_Tag17.hex
Flash the five hex files to their respective nanoLOC DK Boards labelled AP1, AP2, AP3, AP4 and
Tag as described in 14.1. Flashing a Hex File to a nanoLOC DK Board on page 91.
6.13
Reset
L8 L7 L6 L5 L4 L3 L2 L1
Reset button
LED1: Packet sent to anchor
LED2: Packet sent to base station
LED3: RS-232 printout
LED4: Fast ranging enabled
LED5: Receiving
LED6: no ACK received
LED7: Calibration
K2
K3: Unused
K3
K1
+
-
On / Off Switch
Figure 42: Tag LED and Key usage nanoLOC Location Demo
NA-06-0230-0402-3.0 Page 49
K3
RS-232 to
PC
K2
K1
L8 L7 L6 L5 L4 L3 L2 L1
Reset
+
-
Page 50 NA-06-0230-0402-3.0
NA-06-0230-0402-3.0 Page 51
Page 52 NA-06-0230-0402-3.0
Anchor
Point
Tag
Ranging measurement
RS-232
PC
7.1
Image Files
To use the nanoLOC RANGING DEMO, two image files are provided in the Embedded Hex Files
subdirectory of the installation directory:
+
Note: Any two boards in the kit can be used as the tag or an anchor. Detailed instructions for
flashing the hex files to the nanoLOC DK Boards are provided in 14.1. Flashing a Hex File
to a nanoLOC DK Board on page 91.
7.2
Connect the board with the anchor hex file to a COM port of the PC using the provided RS-232
cable.
Note: Connecting the board with the tag hex file to a COM port of a PC will result in no communication between the anchor and the tag.
7.3
Start the nanoLOC RANGING DEMO by selecting the Start menu: Nanotron nanoLOC AVR
Development Kit > Demo Windows Applications > nanoLOC Ranging Demo.
Ranging measurements area that displays the ranging distance between the two nodes.
Log area that displays a log of the time and average distance values.
NA-06-0230-0402-3.0 Page 53
Log area
Controls Area
Select from the Open Port dropdown the COM port to which the anchor has been connected.
1. Select
COM port
2. Click Open
Port
Figure 46: Selecting and opening COM port
Select an averaging amount for the ranging calculations, either 5, 10, or 100 measurements.
Page 54 NA-06-0230-0402-3.0
displays distance at
each measurement
Select averaging
Displays average
distance (over five
meas rements)
Figure 47: Ranging measurement results displayed
Provide a power supply to both anchor and tag (see 2.2. Power Supply on page 7 for details)
and switch on both boards.
The nanoLOC RANGING DEMO will begin calculating the ranging distance between the anchor
and the tag. The results will be displayed in the nanoLOC RANGING DEMO user interface.
Log of measurements
at each time point
The distance measured between the two devices will be displayed (in meters):
+
The average measured distance will be displayed both numerically and graphically.
The packet record will be displayed in the Log area, which lists the ranging calculations at
each time point, the destination address and status messages.
NA-06-0230-0402-3.0 Page 55
Time
point
Measured
Distance
Average
distance
Remote Station
MAC Address
Status
message
Note: If insufficient data is available to compute the range, an RF Error message will
appear. There can be several causes for insufficient data. For instance, if there are lost
packets, the tag cannot calculate the distance between the nodes and will retry the
ranging algorithm.
5
To save a log file, click Save Report, provide a file name for the log file in the SAVE AS dialog,
and then click Save in the dialog.
3. Click Save
Page 56 NA-06-0230-0402-3.0
Clear report
Figure 51: Clear report
To exit the nanoLOC RANGING DEMO, close the port by clicking Close Port, then click Exit
Application.
2. Exit application
Note: For more information about using the ranging, see 5. nanoLOC Ranging on page 19.
NA-06-0230-0402-3.0 Page 57
7
7.4
Reset
K2
K3: Unused
K3
K1: Unused
K1
+
-
On / Off Switch
Figure 53: Tag LED and Key usage nanoLOC Ranging Demo
Figure 54:
Page 58 NA-06-0230-0402-3.0
Node
Node
RS-232
RS-232
PC
PC
8.1
Image Files
To use the nanoLOC TALK DEMO, an image file is provided in the Embedded Hex Files directory of the installation directory:
+
Note: Any two nanoLOC DK Boards in the nanoLOC Development Kit can be used. Detailed
instructions for flashing hex files to the nanoLOC DK Boards are provided in 14.1. Flashing
a Hex File to a nanoLOC DK Board on page 91.
8.2
Ensure that the nanoLOC TALK DEMO hex file has been flashed to two nanoLOC DK Boards.
See 14.1. Flashing a Hex File to a nanoLOC DK Board on page 91 for details.
Connect each nanoLOC DK Board to a COM port of the PC using the provided RS-232 cables.
Note: Although a single PC with two COM ports can be used with this application, Nanotron
recommends that two PCs be used.
Provide a power supply to both nanoLOC DK Boards and switch on the boards. LED 7 will be
illuminated to indicate the nanoLOC chip is being calibrated, while LED 8 will blink continuously
to indicate the embedded application is running.
Note: For supply voltages for the nanoLOC DK Boards, see 2.2. Power Supply on page 7.
NA-06-0230-0402-3.0 Page 59
For both instances of the nanoLOC Talk Demo, run the application by selecting from the Start
menu: Nanotron nanoLOC AVR Development Kit > Demo Windows Applications
> nanoLOC Talk Demo.
Note: Selecting Help provides procedural information on using the nanoLOC TALK DEMO.
Page 60 NA-06-0230-0402-3.0
In the SELECT COM PORT dialog, select the COM port to which the nanoLOC DK Board is connected and click OK.
Note: The number and availability of the COM ports may differ in each PC.
NA-06-0230-0402-3.0 Page 61
Push the Reset button on each nanoLOC DK Board to start the embedded application. The
prompt nn> will appear in the nanoLOC TALK DEMO.
Figure 61: nn
> Prompt
Page 62 NA-06-0230-0402-3.0
a. Set the MAC address of the local station, or accept the default settings:
nn>src <mac addr>
Note: The MAC address of each node in the nanoLOC TALK DEMO has been set by default
to 000009. This is sufficient to run the application.
b. Set the MAC address of the destination station, or accept the default setting:
nn>dest <mac addr>
Note: Remember to set the local and destination station MAC addresses in the second
instance of the nanoLOC TALK DEMO.
c. Set the logical channel by enter the following in both instances of the application:
nn>sc <n: 0 or 1 or 2 or 3>
The following table lists the configuration of each logical channel:
Table 21: NTRX_LogChannel attributes
Logical Channel
Bandwidth
[MHz]
Symbol
Duration [ns]
Center
Frequency ID
FEC-Enabled
80
1000
No
22
4000
No
22
4000
No
22
4000
13
No
The available logical channels are displayed in the console, as well as through the nanoLOC Logical Channels menu in the GUI.
NA-06-0230-0402-3.0 Page 63
Note: Using the Return Key is not required to transmit the text. Each character is transmitted as soon as it has been typed in. Hence, backspacing does not eliminate a previously
typed in character.
11 In the selected chat mode, type some text and then Enter <Return Key> to transmit the text
to the second station, for example:
HELLO WORLD
Page 64 NA-06-0230-0402-3.0
12 The text entered on the local station will be received by the remote station, with the response
from the remote station displayed below the sent text.
Note: As the nanoLOC TALK DEMO application is character-based, it is not possible to backspace on the prompt line. Each character is transmitted as it is entered in the keyboard.
13 Text from a remote station is always displayed in red.
NA-06-0230-0402-3.0 Page 65
8.3
Select the COM port to which the nanoLOC DK Board is connected to the PC.
BPS
Data bits
Parity
Stop bits
Flow control
38400
none
None
Push the Reset button on each nanoLOC DK Board to start the embedded application. The
nanoLOC TALK DEMO prompt nn> will appear.
Enter text.
Page 66 NA-06-0230-0402-3.0
8.4
Reset
L8 L7 L6 L5 L4 L3 L2 L1
Reset button
LED1: Unused
LED2: Unused
LED3: Unused
LED4: Unused
LED5: Receiving
LED6: no ACK received
LED7: Calibration
K3: Unused
K2
K2: Unused
K3
K1: Unused
K1
PWR: Power on
+
-
On / Off Switch
Figure 68: Tag LED and Key usage nanoLOC Talk Demo
NA-06-0230-0402-3.0 Page 67
Page 68 NA-06-0230-0402-3.0
TX
RX
RS-232
RS-232
PC
PC
The transmitter (TX) sends 128 Byte data packets as fast as possible. The receiver (RX) receives
the packets and calculates every second net and gross data throughput between these two points,
counts the lost packets, and prints the results as a table on the terminal.
+
Net throughput:
MessagesReceived
-----------------------------------
---payloadSize
----------------------1 sec ond
Gross throughput:
MessagesReceieved
--------------------------------------
---payloadSize
-------------------------+---SyncWord
------------------+---Preamble
------------------+
---Tail
---------+
---Header
-----------1 sec ond
Lost packets:
Actual message Last message 1
The transmitter increments a counter and includes this counter as part of the payload. The
receiver stores the last message and compares it with the actual received message.
9.1
Image Files
To use the nanoLOC THROUGHPUT DEMO, an image file is provided in the Embedded Hex Files
directory of the installation directory:
+
Note: Any two nanoLOC DK Boards in the nanoLOC Development Kit can be used. Detailed
instructions for flashing hex files to the nanoLOC DK Boards are provided in 14.1. Flashing
a Hex File to a nanoLOC DK Board on page 91.
9.2
Ensure that the nanoLOC THROUGHPUT DEMO hex file Throughput.hex has been flashed to
two nanoLOC DK Boards. See 14.1. Flashing a Hex File to a nanoLOC DK Board on page 91
for details.
Connect each nanoLOC DK Board to a COM port of the PC using the provided RS-232 cables.
NA-06-0230-0402-3.0 Page 69
Connect a power supply to the nanoLOC DK Board and switch on the board. The power LED
PWR should be illuminated.
Note: For supply voltages for the nanoLOC DK Boards, see 2.2. Power Supply on page 7.
Run two instances of the nanoLOC THROUGHPUT DEMO, one on each PC used in the demo, by
selecting from the Start menu: Nanotron nanoLOC AVR Development Kit >
Demo Windows Applications > nanoLOC Throughput Demo.
In the dialog that appears, select either Set Station as Receiver or Set Station as
Transmitter. In the following example, Set Station as Transmitter was selected.
Set the TX Power from the Transmit Power dropdown. The default value is 63. The range of
values (0-63) are listed in the following table:
Table 23: Transmit power settings
Value
Pout /
dBm
Value
Pout /
dBm
Value
Pout /
dBm
Value
Pout /
dBm
-36.20
16
-23.28
32
-12.07
48
-3.33
-35.30
17
-22.48
33
-11.41
49
-2.87
-34.47
18
-21.75
34
-10.80
50
-2.45
-33.65
19
-21.03
35
-10.20
51
-2.05
-32.83
20
-20.31
36
-9.61
52
-1.66
-32.02
21
-19.60
37
-9.03
53
-1.28
-31.21
22
-18.89
38
-8.46
54
-0.92
-30.41
23
-18.19
39
-7.91
55
-0.57
-29.54
24
-17.44
40
-7.31
56
-0.23
-28.70
25
-16.70
41
-6.74
57
0.12
10
-27.92
26
-16.02
42
-6.22
58
0.42
11
-27.14
27
-15.36
43
-5.71
59
0.72
Page 70 NA-06-0230-0402-3.0
Value
Pout /
dBm
Value
Pout /
dBm
Value
Pout /
dBm
Value
Pout /
dBm
12
-26.37
28
-14.70
44
-5.21
60
1.00
13
-25.60
29
-14.04
45
-4.73
61
1.28
14
-24.85
30
-13.40
46
-4.26
62
1.54
15
-24.09
31
-12.76
47
-3.80
63
1.79
Select a logical channel from the Logical Channel dropdown. The default is 0. These channels are listed in the following table:
Table 24: NTRX_LogChannel attributes
ID
Logical Channel
Bandwidth [MHz]
Bitrate [ns]
FEC
Centerfreq ID
NLC_80_1_N_0
80
1000
No
NLC_22_4_N_1
22
4000
No
NLC_22_4_N_7
22
4000
No
NLC_22_4_N_13
22
4000
No
13
Click Open Port to select the COM Port to which the nanoLOC DK Board is connected. In the
COM port dialog that appears, select the appropriate COM port. Unavailable COM ports are
greyed out.
10 The TX station will begin transmitting packets. The number of packets transmitted together with
the number of retransmissions will be displayed in the View and the TX Counter fields.
Note: A high number of retransmissions indicates that the Receiving Station is not ready.
NA-06-0230-0402-3.0 Page 71
11 Start the RX station by running another instance of the NANOLOC THROUGHPUT DEMO demo. In
the dialog that appears, select Set Station as Receiver.
12 The GUI for the NANOLOC THROUGHPUT DEMO RX station will open.
13 Ensure that the same logical channel is set in the receiving station is set in the transmitting station, otherwise no data will be received from the transmitting station. The channel is shown in
the Logical Channels field.
Note: Clicking Modes opens a dialog that lists the available logical channels. Click OK to close
dialog. These are the same channels as shown in step 7 above.
14 Click Open Port to open the COM Port dialog and select the COM Port to which the second
nanoLOC DK Board is connected. Unavailable COM ports will be greyed out.
Page 72 NA-06-0230-0402-3.0
In the GUI for NANOLOC THROUGHPUT DEMO RX station, the following information is displayed:
a. RX Counter shows the number of received and lost packets.
b. Port View shows the status of the COM port as well as a log of received and lost packets.
Note: Clicking Clear Port View clears the log and restarts the logging of received and
lost packets.
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 73
c. Throughput Bars shows the net (without header) and gross (with header) throughput in
Kbits/s.
d. Throughput Graph shows the same data as in Throughput Bars but as a graph where
the net throughput is shown in red and the gross throughput is shown in blue.
16 To close both the TX and RX stations, click Close Port and then select Exit on both nanoLOC THROUGHPUT DEMO GUIs, switch off the nanoLOC DK Boards, and disconnect the power
supplies and RS-232 cables.
9.3
Reset
L8 L7 L6 L5 L4 L3 L2 L1
Reset button
LED1: Unused
LED2: Unused
LED3: Unused
LED4: Unused
LED5: Receiving
LED6: no ACK received
LED7: Calibration
K2: Unused
K2
K3: Unused
K3
K1: Unused
K1
PWR: Power on
+
-
On / Off Switch
Figure 79: Tag LED and Key usage nanoLOC Throughput Demo
Page 74 NA-06-0230-0402-3.0
10
10.1
Image File
To use this demo, an image file is provided in the Embedded Hex Files subdirectory of the installation directory:
+
Note: Detailed instructions for flashing hex files to the nanoLOC DK Boards are provided in 14.1.
Flashing a Hex File to a nanoLOC DK Board on page 91.
10.2
Ensure that the nanoSniffer.hex file has been flashed to one nanoLOC DK Boards. See
14.1. Flashing a Hex File to a nanoLOC DK Board on page 91 for details.
Connect the nanoLOC DK Board to a COM port of the PC using the provided RS-232 cable.
Provide an appropriate power supply to the board and switch on the board. LED 7 will be illuminated to indicate the nanoLOC chip is being calibrated. LED 8 will blink continuously to indicate
the embedded application is running.
Note: For supply voltages for the nanoLOC DK Boards, see 2.2. Power Supply on page 7.
Run the nanoLOC Packet Sniffer Demo selecting from the Start menu: Nanotron nanoLOC
AVR Development Kit > Demo Windows Applications > nanoLOC Packet
Sniffer Demo.
NA-06-0230-0402-3.0 Page 75
10
Select from the menu Select COM Port > Open Port and choose an available COM port
from the SELECT COMMUNICATION PORT dialog that appears.
Note: Unavailable COM ports will be greyed out. The number of available COM ports may differ in different PCs.
6
Page 76 NA-06-0230-0402-3.0
10
Push the Reset button on each nanoLOC DK Board to start the embedded application. The
nanoLOC SNIFFER DEMO prompt nn> will appear.
Set the logical channel by selecting one of the channel configurations at the prompt, or accept
the default settings (Logical Channel 0):
nn>sc <n: 0 or 1 or 2 or 3>
The following table lists the configuration of each logical channel:
Table 25: NTRX_LogChannel attributes
Logical Channel
Bandwidth [MHz]
Symbol
Duration [ns]
Center
Frequency ID
FEC-Enabled
80
1000
No
22
4000
No
22
4000
No
22
4000
13
No
The available logical channels are displayed in the console, as well as through the nanoLOC
Modes menu in the GUI.
NA-06-0230-0402-3.0 Page 77
10
Run any demo application from this nanoLOC Development Kit from a second PC.
Note: Any other application from the nanoLOC Development Kit can be run and have the
packets reported by Sniffer. However, it is important that the logical channel is the same
within both the Sniffer demo and any other application from the nanoLOC Development
Kit. Also FEC should be switched off.
Page 78 NA-06-0230-0402-3.0
10
11 The nanoLOC PACKET SNIFFER will begin reporting any nanoLOC packets in the air.
For each reported packet, the contents of each field in the packet is decoded and displayed.
a. The packet counter will be incremented for each received packet. The initial value is 1.
NA-06-0230-0402-3.0 Page 79
10
Frame Type
Description
DATA
Data packet
ACK
Acknowledgement packet
TIMB
BRDC
Broadcast packet
RTS
CTS
Note: For details on MACFrame types, see nanoLOC TRX (NA5TR1) User Guide.
f.
Length of the data field of the MACFrame: 1.. 128. The example below shows a simple talk
application packet with a length of 1.
h. Data payload contents will be displayed, first as a hexidecimal value and the displayed
value. In the following example, the letter h was transmitted in this packet.
i.
MACFrame data field payload 1... 128 byte will be printed, if any.
For example, 67 c6 69...
Page 80 NA-06-0230-0402-3.0
10.3
10
Reset
L8 L7 L6 L5 L4 L3 L2 L1
Reset button
LED1: Unused
LED2: Unused
LED3: Unused
LED4: Unused
LED5: Receiving
LED6: no ACK received
LED7: Calibration
K2: Unused
K2
K3: Unused
K3
K1: Unused
K1
PWR: Power on
+
-
On / Off Switch
Figure 88: Tag LED and Key usage nanoLOC Packet Sniffer Demo
NA-06-0230-0402-3.0 Page 81
10
Page 82 NA-06-0230-0402-3.0
11
11.1
Initialize a transmission
Activate a reception
Image File
To use this demo, an image file is provided in the Embedded Hex Files subdirectory of the installation directory:
+
Note: Detailed instructions for flashing hex files to the nanoLOC DK Boards are provided in 14.1.
Flashing a Hex File to a nanoLOC DK Board on page 91.
11.2
NA-06-0230-0402-3.0 Page 83
11
Flash to both nanoLOC DK Boards the PING application hex file nanoPing.hex, which is provided in the Embedded Hex Files subdirectory of the installation directory.
Note: Detailed instructions for flashing the hex file to the nanoLOC DK Boards are provided in
14.1. Flashing a Hex File to a nanoLOC DK Board on page 91.
Connect the appropriate power supply to the two nanoLOC DK Boards and switch on the
boards. See 2.2. Power Supply on page 7 for voltage requirements.
With both boards now pinging each other, a successful RF link will be indicated by Tx/ RX.
Blinking Tx/Rx indicates successful TX/RX
Power LED is on
Forward Error Correction (FEC) can be disabled by toggling button 1 (K1) on both nanoLOC DK
Boards.
+
Transmissions can be stopped by toggling button 3 (K3) on one or both nanoLOC DK Boards.
+
Page 84 NA-06-0230-0402-3.0
12
Remote board
Local board
12.1
Image Files
To use this demo, a set of image files are provided in the Embedded Hex Files subdirectory of
the installation directory:
+
Note: Detailed instructions for flashing hex files to the nanoLOC DK Boards are provided in 14.1.
Flashing a Hex File to a nanoLOC DK Board on page 91.
12.2
NA-06-0230-0402-3.0 Page 85
12
Connect the appropriate power supply to both nanoLOC DK Boards and switch on the boards.
See 2.2. Power Supply on page 7 for voltage requirements.
If no RF Link could be established between the local transmitter and the remote receiver (if the
remote device was out of range or had its power disconnected), then the LEDs on the local
transmitter will not be illuminated.
LEDs 1, 2 and 3 are illuminated to indicate the
corresponding LEDs on the remote station are illuminated
Power LED is on
Clicking one of the 3 buttons illuminates a
corresponding LED on the remote station
Page 86 NA-06-0230-0402-3.0
13
From the Start menu, select Atmel AVR Tools > AVR Studio 4.
A WELCOME dialog will appear to start a new project or to open a project. The procedure
described in this section uses the nanoLOC THROUGHPUT DEMO as an example and is provided
as source code in the sources subdirectory of the nanoLOC Development Kit installation
directory.
Select Open and browse to the project file, which has an .aps extension, of the nanoLOC
Throughput Demo application.
NA-06-0230-0402-3.0 Page 87
13
Click Open to load the project files of the nanoLOC THROUGHPUT DEMO into AVR STUDIO 4.
In the AVR GCC area, right-click the project file name nanoThroughput (default) and
select Build Project.
Page 88 NA-06-0230-0402-3.0
13
Note: If WinAVR was not installed, or not installed correctly, the following error message will
appear.
After AVR STUDIO 4 has compile the application, it saves the compiled hex file, as well as a
number of other files, to a default directory within the nanoLOC THROUGHPUT DEMO source
code directory.
NA-06-0230-0402-3.0 Page 89
13
The hex file can now be flashed to a nanoLOC DK Board. See 14.1. Flashing a Hex File to a
nanoLOC DK Board on page 91.
Page 90 NA-06-0230-0402-3.0
14
14.1
Connect the JTAG Adapter to the JTAG header on the nanoLOC DK Board and connect the
JTAG adapter to the PC using the provided USB cable (male/male). Connect a power supply to
the nanoLOC DK board and switch on the board.
Warning:
See 2.2. Power Supply on page 7 to provide a power supply with the correct
voltage.
Run AVR STUDIO 4 and open the project file for the nanoLOC THROUGHPUT DEMO. See 13.
Compiling with AVR Studio 4 on page 87 for details on opening projects.
Ensure that the correct AVR programmer is used by clicking the Connect button to open the
Select AVR Programmer dialog.
NA-06-0230-0402-3.0 Page 91
14
Select Auto
In the SELECT AVR PROGRAMMER dialog, select the JTAG ICE from the Platform list and
select Auto from the Port list. Click Connect. Auto will cause the software to scan the ports
to look for the JTAG Adapter.
Select STK500
or AVRISP
Click Connect...
Note: If AVR STUDIO 4 could not connect to the nanoLOC DK Board, ensure that the correct
platform was selected and the USB cable is properly connected to the PC and JTAG
Adapter.
5
After AVR STUDIO 4 connects with the nanoLOC DK Board, the JTAG ICE dialog will appear.
Page 92 NA-06-0230-0402-3.0
14
Select ATmega128
Select JTAG mode
In the JTAG ICE dialog, select the PLATFORM tab and set the following:
a. In the Device dropdown, select Atmega128.
b. In the Programming mode section, select JTAG mode. Leave all other selections as is.
c. In the Flash section, click the browse button (...) and browse to the required hex file in
the Embedded Hex Files subdirectory of the Development Kit installation directory, or in
the sources subdirectory, if an application was compiled.
d. In the EEPROM section, make no selections.
6
After the hex file has been selected, click Program from the Flash section to begin flashing
the file to the nanoLOC DK Board.
Note: Do not select PROGRAM from the EEPROM area, as a error will occur.
7
Programming
NA-06-0230-0402-3.0 Page 93
14
14.2
Connect the JTAG Adapter to the JTAG header on the nanoLOC DK Board.
Connect the JTAG adapter to the PC using the provided USB cable (male/male).
Connect a power supply to the nanoLOC DK board and switch on the board.
Warning:
See 2.2. Power Supply on page 7 to provide a power supply with the correct
voltage.
Run AVR STUDIO 4 and open the project file for the nanoLOC THROUGHPUT DEMO. See 13.
Compiling with AVR Studio 4 on page 87 for details on opening projects.
Page 94 NA-06-0230-0402-3.0
14
NA-06-0230-0402-3.0 Page 95
14
Page 96 NA-06-0230-0402-3.0
A1
A1.1
Block Diagram
Figure 105 below shows a block diagram of the nanoLOC DK Board.
PWR LED
Power
Supply
RS-232 serial
interface
On/Off
Switch
Keys
K1, K2, K3, K4
Voltage
Regulator
nanoLOC EVR
Module
ATmega128L microcontroller
Light
Sensor
PORTD
ADC/IO
JTAG
LEDs
L1
L2
L3
L4
L5
L6
L7
L8
SPI
Antenna
TX/RX
LED
PORTB
A1.2
TX jumper
9 pin D-sub
connector
Figure 106: Communication Interface
The schematics for the Communication Interface are provided in the figure 107 below.
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 97
A1
A1.3
JTAG Interface
The JTAG Interface provides a debugging interface to the nanoLOC DK Board. This interface can
be used for software debugging and for flashing image files to the microcontroller using either the
AVR JTAGICE mkII from Atmel or any other compatible device. The JTAG connector on the
nanoLOC DK Board is shown in figure 108 below.
JTAG connector
Table 27 on page 98 shows the connections between the microcontroller and the JTAG interface.
Table 27: JTAG interface pin connections
Microcontroller
JTAG Interface
Pin #
Pin name
Pin #
Pin Name
Signal
57
PF4 (ADC4/TCK)
PF4
TCK
GND
Ground
55
PF6 (ADC6/TDO)
PF6
TDO
GND
Ground
56
PF5 (ADC5/TMS)
PF5
TMS
Not connected
VCC
Power supply
Not connected
54
PF7 (ADC7/TDI)
PF7
TDI
10
GND
Ground
Page 98 NA-06-0230-0402-3.0
A1.4
A1
ISP connector
Table 28 on page 99 shows the connections between the microcontroller and the ISP connector.
Table 28: Microcontroller to ISP pin connections
Microcontroller
A1.5
ISP Connector
Pin #
Pin Name
Pin #
Pin Name
Signal
PE1 (TXD/PDO)
PE1
TXD/PDO
VCC
Supply voltage
11
PB1 (SCK)
PB1
SPICLK
PE0 (RXD/PD1)
PE0
RXD/PD1
20
RESET
RESET
Reset
GND
Ground
Light sensor
Note: For detailed technical specifications about the light sensor, refer to the datasheet available
in the Documentation subdirectory of the kit installation directory.
2010 Nanotron Technologies GmbH.
NA-06-0230-0402-3.0 Page 99
A1
Table 29 on page 100 shows the connections between the microcontroller and the light sensor.
Table 29: Microcontroller to light sensor pin connections
Microcontroller
A1.6
Light Sensor
Pin #
Pin Name
Pin #
Pin Name
Signal
VDD
44
PA7 (AD7)
ADDRSEL
GND
Ground.
25
PD0 (SCL/INT0)
SCL
PE5 (OC3C/INT5)
INT
26
PD1 (SDA/INT1)
SDA
The connections provided by the Digital I/O module are provided for application development.
Note: For a detailed description of these I/O ports on the ATmega128L microcontroller, refer to
the ATmega128L documentation available in the Documentation subdirectory of the kit
installation directory.
A1.6.1 PORTA (Light Sensor)
On PORTA on the ATmega128L microcontroller, pin 44 is connected to the light sensor pin 2
(ADDRSEL). Pin 48 is connected to RS232 FORCEON (which could be used to disable/enable
RS-232 automatic sleep mode) while the remaining pins of PORTA are extended to solder pads.
Table 30 on page 100 shows the connections between the microcontroller PORTA and the PORTA
connector:
Table 30: Microcontroller to PORTA pin connections
Microcontroller
Light Sensor
Pin #
Pin name
Pin #
Pin Name
Signal
44
PA7 (AD7)
ADDRSEL
ADDRSEL
45
PA6 (AD5)
46
PA5 (AD5)
47
PA4 (AD4)
48
PA3 (AD3)
RS232FO
RS232 FORCEON
49
PA2 (AD2)
A1
Microcontroller
Light Sensor
Pin #
Pin name
Pin #
Pin Name
Signal
50
PA1 (AD1)
51
PA0 (AD0)
Table 31 on page 101 shows the connections between the microcontroller PORTB and the PORTB
connector.
Table 31: Microcontroller to PORTB pin connections
Microcontroller
Pin #
Pin Name
Pin #
Pin Name
Signals
10
PB0 (SS)
PB0
SPISS
11
PB1 (SCK)
PB1
SPICLK
12
PB2 (MOSI)
PB2
SPIRXD
13
PB3 (MISO)
PB3
SPITXD
14
PDB4 (OC0)
PB4
OC0
15
PB5 (OC1A)
PB5
OC1A
16
PB6 (OC1B)
PB6
OC1B
17
PB7 (OC2/OC1C)
PB7
OC2/OC1C
GND
Ground.
10
VCC
Power Supply.
A1
Table 32 on page 102 shows the connections between the microcontroller PORTB and the LEDs.
Table 32: Microcontroller to PORTC pin connections
Microcontroller
LEDs
Signals
Pin #
Pin Name
LED #
Color
35
PC0 (A8)
LED1
Red
36
PC1 (A9)
LED2
Orange
37
PC2 (A10)
LED3
Yellow
38
PC3 (A11)
LED4
Red
39
PC4 (A12)
LED5
Orange
40
PC5 (A13)
LED6
Yellow
41
PC6 (A14)
LED7
Red
42
PC7 (A15)
LED8
Orange
A1
Table 33 on page 103 shows the connections between the microcontroller PORTD and PORTD
connector.
Table 33: PORTD pin connections
Microcontroller
Pin #
Pin Name
Pin #
Pin Name
Signals
25
PD0 (SCL/INT0)
PD0
26
PD1 (SDA/INT1)
PD1
27
PD2 (RXD1/INT2)
PD2
RXD1 RS232 RX
28
PD3 (TXD1/INT3)
PD3
TXD1 RS232 TX
29
PD4 (IC1)
PD4
30
PD5 (XCK1)
PD5
31
PD6 (T1)
PD6
32
PD7 (T2)
PD7
GND
Ground.
10
VCC
Power supply.
User-programmable
buttons
Table 34 on page 103 shows the connections between the microcontroller PORTE and the SPI pin
connector and user-programmable buttons.
Table 34: ATmega128L microcontroller to PORTE pin connections
Microcontroller
Connections
Pin #
Pin Name
Pin #
Pin Name
Signals
PE0 (RXD/PD1)
4 (SPI)
RXD/PD1
PE1 (TXD/PDO)
1 (SPI)
TXD/PDO
PE2 (XCK0/AIN0)
1 (Key 4)
Button K3
A1
Microcontroller
Connections
Pin #
Pin Name
Pin #
Pin Name
Signals
PE3 (OC3A/AIN1)
1 (Key 3)
Button K2
PE4 (OC3B/INT4)
UCIRQ
PE5 (OC3C/INT5)
INT5
PE6 (T3/INT6)
1 (Key 2)
Button K1
PE7 (ICP3.INT7)
UCRESET
INT7
ADC/IO pin
connector
JTAG connector
Table 35 on page 104 shows the connections between the microcontroller PORTF and the ADC/IO
pin connector and the JTAG connector.
Table 35: ATmega128L microcontroller to PORTF pin connections
Microcontroller
Pin #
Pin Name
Pin #
Pin Name
Signal
61
PF0 (ADC0)
PF0
ADC0
60
PF1 (ADC1)
PF1
ADC1
59
PF2 (ADC2)
PF2
ADC2
58
PF3 (ADC3)
PF3
ADC3
57
PF4 (ADC4/TCK)
PF4
56
PF5 (/ADC5/TMS)
PF5
55
PF6 (ADC6/TDO)
PF6
54
PF7 (ADC7/TDI)
PF7
GND
Ground
10
VCC
Power supply.
A1.7
A1
LED Block
The nanoLOC DK Board provides 10 LEDs two have a dedicated function while eight are userprogrammable:
A1.8
The power indicator LED (labelled PWR) is a power supply indicator and can only be used for
this function.
The TX/RX LED (labelled TX/RX) is connected to pin 29 on the nanoLOC RF Module and is
used to indicate the transmission and reception of data packets.
Eight user-programmable LEDs (labelled L1, L2, L3, L4, L5, L6, L7 and L8) are connected via
680 resistance arrays to PORTC on the ATmega128L microcontroller. For pin connections,
see 1.6.3. PORTC (User-Programmable LEDs) on page 102.
Function Buttons
The nanoLOC DK Board provides four function buttons one has a dedicated function while three
are user-programmable, as follows:
+
Button 2 (labelled K1) is a user-programmable button and is connected to PORTE pin number
6 (PE6 /INT6) on the microcontroller pin number 8
Button 3 (labelled K2) is a user-programmable button and is connected to PORT E pin number
5 on the microcontroller (AIN1/PORTE/PE3).
Button 4 (labelled K3) is a user-programmable key and is connected to PORT E pin number 4
on the microcontroller (AIN0/PORTE/PE2).
A1
A2
Schematics
A2
A2
A2
A2.2
A2
PCB Layout
A2
A2.3
Bill of Materials
Table 36: nanoLOC DK Board Bill of Materials
Description
Part
QTY
Value
Package
Buttons
4pins
Capacitors
C1
10nF
c0402
100pF
c0402
C9, C25
22pF
c0402
C4
22uF
c1210
C24
47uF
c1210
100nF
c0402
X1
2.1mm
(Barrel)
neb21r /
X4
9 pins
(RS232 Female)
f09hp
U2
1.51mm
(SMA antenna)
Connector - JTAG
JTAG
10 pole
ml10
Crystals
Q1
7.3728 MHz
HC-49US SMD
Q2
32.768 KHz
MS1V-T1K
Diode
D1
zhcs2000
sot23/6l
ICs
IC2
mega128-a
(Microcontroller)
TQFP64
IC3
(Voltage regulator)
sot23-5
RS 232 driver
U1
isl4223e
mlfp5x5
Inductors
L1
10nH
l0805
L3
33uH
ind_pd3
L4
2200
l0603
JP1, JP3
1x2 way
1x2
JP2
1x3 way
1x3
LED6, LED3
gold
plcc2
LED1, LED4
red
plcc2
LED2, LED5
orange
plcc2
Light Sensor
LS1
TSL2561T
sot-6
RF Module
nanoLOC EVR
PCB stands
dkr
6mm
M3
Pin headers
ADC/IO
2x5 way
ma05-02
SPI/USART
2x3 way
ma03-2
RS232/TXRX
2x2 way
pinhd-2x2
Pins
DIIO1, DIIO2
13
1.0mm
lsp10, 12h555
Resistors
R1
4,7k
r0603
R2,R10,R11, R14
10k
r0603
R20
1k3
r0603
R19
390R
r0603
Connectors -
Jumpers
LED
Resistors (contd)
A2
Description
QTY
Value
Package
R15
100
r0603
R3
2k7
r0603
R4, R5
560
r0603
680
r0402
R6,R7,R8,R9
1M
r0805
R12,R13,R16
1M
r0402
Sliding switch
S1
10mm
255SB
Transistor
T1
bc856
sot-23
Dimensions
L8
K3
K2
L1
K1
ATmega128L
microcontroller
nanoLOC RF
Module
67 mm
2.4
Part
1
2
100 mm
Figure 123: nanoLOC DK Board dimensions
A2
A3
Schematics
A3
A3.2
A3
PCB Layout
A3
A3.3
Bill of Materials
Table 37: nanoLOC USB Stick bill of materials
Description
Part
Qty
Value
Package
Antenna
ANT1
WE-ANT20245
WE-ANT20245
Capacitor
C5,C9,C10,C11,C12
100nF
0402
C1
15pF
0402
C2,C3
27pF
0402
C4
100pF
0402
C7
100nF
0603
C6, C8
10uF
0805
IC1
FT2232C
LD-LQFP48
IC2
93-C46BSN
SO-08
IC-SM Regulator
LDO 3.3V
IC3
LD1117S33
SOT-223
Inductor
L1
nb
0402
Resistor
R2,R3
27R
0402
R5
270R
0402
R4
1k5
0402
R8
2k2
0402
R1,R6,R7,R9
10k
0402
R10
470R
0603
C13
33nF
0402
RF Module
nanoLOC_PAN_REL10
nanoLOC_PAN_
REL10
nanoLOC_
PAN_REL10
LED, green
LED1
TLHG4405
LED3MM
Quartz crystal
Q1
6MHz
HC49/S
USB
X1
USB6
USB-M6-LPDIP
ICs
A4
A4.1
Dimensions
Scale = mm
SMA Plug
13
90
12.5
30
196
A4.2
Specifications
A.4.2.1 Electrical Specifications
Table 38: Antenna electrical specifications
Frequency Range
2400~2500 MHz
Impedance
50
VSWR
2.0
Gain
5 dBi
Radiation
Omni
Polarization
Vertical
Standard connector
Cable
None
Bushing Type
Swivel 0,45, 90
Waterproof
no
Antenna cover
Polyurethane
Swivel mechanism
Polycarbonate
Colour
Black
Weight
32 g (est.)
Operating Temperature
-20 ~ +65 C
Storage Temperature
-30 ~ +70 C
A4
A4.3
A4.4
A4
Patterns
E_PLANE
2450MHz
H_PLANE
2450MHz
A4
A5
From the Start menu, select WinAVR > Programmers Notepad [WinAVR].
A5
Browse to the project file of one of the embedded applications in the nanoLOC Development
Kit and click Open. The project will open in the Programmers Notebook.
Select Tools > Make Clean to clean up an object files that may be in the application.
A5
The compiled hex file, as well as a number of other files, will be saved to the root of the application directory.
Note: A debug file, which has the extension .cof, will also be outputted by WinAVR and can be
used to debug the application. For more details, see 6. Flashing Hex Files with STK500
Board on page 127.
The hex file can now be flashed to the nanoLOC DK Board(s). See 6. Flashing Hex Files with
STK500 Board on page 127.
A5
A6
Connect the supplied 6-wire cable to the ISP (labelled SPI) header on the nanoLOC DK Board
and to the ISP6PIN header on the STK500 Board.
Note: Ensure that the 6-wire cable is connected properly to the nanoLOC DK Board. The red
wire on the 6-wire cable is connected to pin 1 on the ISP header, as shown in figure 138
below.
Connect the STK500 Board to the PC with the supplied RS-232 cable.
Figure 139 below shows the hardware assembled.
A6
Run AVR STUDIO 4 and open the project file for the nanoLOC THROUGHPUT DEMO. See 5.
Compiling with WinAVR on page 123 for details on opening projects.
Ensure that the correct AVR programmer is used by clicking the Connect button to open the
Select AVR Programmer dialog.
Click the Connect button
to open the Select AVR
Programmer dialog
A6
In the SELECT AVR PROGRAMMER dialogue, choose STK500 or AVRISP for the platform and
Auto for the port and then click Connect....
Select STK500
or AVRISP
Click Connect...
Select Auto
Note: Auto will cause the software to scan the ports to look for the STK500 Board.
7
Select ATmega128
Select ISP
After the hex file has been selected, click Program from the Flash section to begin flashing
the file to the nanoLOC DK Board.
A6
AVR Studio 4 begins flashing the selected Hex file to the nanoLOC DK Board.
10 Flashing is complete when the Status LED on the STK 500 Board turns green and the message Leaving Programming Mode. OK appears in the log in the dialog.
A6
Warnings: Disconnect JTAG Adapter or the Atmel STK500 Board from the nanoLOC DK
Board before providing a power supply to the nanoLOC DK Board.
A6
Glossary
nanoLOC Development Kit 3.0 User Guide
A7
A7 Glossary
Table 41: Glossary
Term
Definition
Attenuation
BER
Bit Error Rate: The percentage of bits that have errors relative to the
total number of bits in a transmission, usually expressed as ten to a
negative power.
BER (payload)
See BER.
CRC
See CRC.
dB
dBm
FDR
Frame Drop Rate: Ratio of erased frames to total frames. Care should
be used to distinguish between frame drop rate and frame error rate.
They are similar, but not identical. Dropped frames usually are counted
as errored frames, but not all errored frames are dropped, that is, some
may be undetected by the receiver.
FEC
Forward Error Correction: A system of error control for data transmission wherein the receiving device has the capability to detect and correct any character or code block that contains fewer than a
predetermined number of symbols in error. FEC is accomplished by
adding bits to each transmitted character or code block, using a predetermined algorithm.
A7
Glossary
nanoLOC Development Kit 3.0 User Guide
Definition
FER
Frame Error Rate: Ratio of errored frames to total frames. For purposes
of this calculation, dropped frames are counted as errored frames.
Fresnel zone
The area around the visual line-of-sight from the transmitter into which
radio waves spread out after they leave the antenna.
See FEC.
FPGA
See FDR.
See FER.
Gain
ISM
Industrial, Scientific and Medical: Radio frequency bands made available for use by communication equipment without license, within certain
maximum emitted power limits. Equipment which uses the ISM band
must tolerate interference from other such equipment.
Link Budget
The term "link budget" is used to specify how much loss (attenuation) in
signal strength can be tolerated and still allow the receiver to interpret
an accurate signal.
See RSSI.
RSSI
Received Signal Strength Indicator: Detects activity in the media. A signal or circuit that indicates the strength of the incoming (received) signal
in a receiver.
USB
Index
nanoLOC Development Kit 3.0 User Guide
Index
Symbols
.aps extension............................................................................. 87
.cof extension............................................................................ 125
Numerics
32.768 kHz quartz......................................................................... 6
7.3728 MHz external oscillator ..................................................... 6
80 MHz bandwidth ...................................................................... 29
A
ACK packet................................................................................. 80
activating packet reception ......................................................... 83
ADC/IO pin, and PORTF .......................................................... 104
address matching ....................................................................... 11
anchor
deleting from Location Demo .................................................. 48
antenna
electrical specifications ......................................................... 119
environmental specification................................................... 119
mechanical specification ....................................................... 119
patterns ................................................................................. 121
return loss ............................................................................. 120
technical description ............................................................. 119
APPCallback............................................................................... 18
application layer.......................................................................... 15
ARQ, see Automatic Repeat Request
ATmega128L microcontroller.................................................. 6, 97
external ports ........................................................................ 100
PORTA.................................................................................. 100
PORTB.................................................................................. 101
PORTC ................................................................................. 102
PORTD ................................................................................. 102
PORTE.................................................................................. 103
PORTF .................................................................................. 104
Atmel AVR microprocessor....................................................... 123
Atmel STK500 Board ................................................................ 127
attenuation ............................................................................ 9, 133
Automatic Repeat Request (ARQ).............................................. 11
automatic retransmissions .......................................................... 17
averaging amount ....................................................................... 54
AVR ............................................................................................ 87
AVR JTAGICE mkII ................................................................ 2, 98
AVR programmer................................................................ 91, 128
AVR Studio 4 ................................................................................ 2
compiling applications with...................................................... 87
flashing hex files with ...................................................... 91, 127
installing .......................................................................... 91, 127
B
BAT connector .............................................................................. 7
battery connector pin (JP1)........................................................... 6
battery pack
connected to BAT ..................................................................... 7
maximum 3.0 V ......................................................................... 7
not included in kit ...................................................................... 7
not to be used with power supply.............................................. 7
BER (payload) .......................................................................... 133
Bit Error Rate ............................................................................ 133
block diagram of the nanoLOC DK Board .................................. 97
BRDC.......................................................................................... 80
Brdcast packets .......................................................................... 11
Broadcast packet ........................................................................ 80
buttons
Light Switch Demo usage ....................................................... 86
Packet Sniffer usage ............................................................... 81
Ranging Demo usage ............................................................. 58
RESET .................................................................................. 105
Talk Demo usage .................................................................... 67
Throughput Demo usage ........................................................ 74
user programmable ............................................................... 105
C
callback function ......................................................................... 12
center frequency ......................................................................... 17
chat mode ................................................................................... 64
Chirp Spread Spectrum ................................................................ 9
Clear to Send packet .................................................................. 80
COM port
and nanoLOC Talk Demo ....................................................... 61
HyperTerminal ........................................................................ 66
Packet Sniffer Demo ............................................................... 76
Ranging Demo ........................................................................ 54
Talk Demo............................................................................... 59
Throughput Demo ................................................................... 69
communication Interface ............................................................ 97
compiling
embedded applications ........................................................... 87
using WinAVR....................................................................... 123
with WinAVR ......................................................................... 123
compiling HEX files..................................................................... 87
connecting battery packs .............................................................. 6
connector BAT .............................................................................. 7
console, viewing in nanoLOC Talk Demo................................... 62
Correct Payload Receive Rate ................................................. 133
CRC .......................................................................................... 133
CRC2 checking and nanoLOC TRX Driver ................................ 11
CSMA/CA ................................................................................... 11
CSS .............................................................................................. 9
CTS ............................................................................................ 80
Cyclic Redundancy Check........................................................ 133
D
DATA command, Location Server .............................................. 46
DATA packet .............................................................................. 80
Data reception, Ping Demo an example of ................................. 83
data transmission rates .............................................................. 11
dB ............................................................................................. 133
dBm .......................................................................................... 133
DC-DC converter .......................................................................... 6
DE-9 D-sub connector .................................................................. 6
debugging embedded applications ............................................. 94
developing sensor applications .................................................. 83
digital I/O module...................................................................... 100
dimensions, nanoLOC DK Board ............................................. 113
driver
and PHY layer......................................................................... 14
and promiscuous mode........................................................... 75
API .......................................................................................... 11
general layer interface of ........................................................ 12
key settings of ......................................................................... 11
located in phy.c ....................................................................... 11
overview.................................................................................. 11
purpose of ................................................................................. 2
driver, FTDI................................................................................... 1
warning ................................................................................... 39
E
electromagnetic interferers ........................................................... 9
embedded applications
and nanoLOC driver................................................................ 11
compiling with WinAVR......................................................... 123
debugging ............................................................................... 94
flashing to nanoLOC DK Boards............................................. 91
error checking, function of nanoLOC TRX Driver ....................... 11
error messages, ranging............................................................. 28
error rate..................................................................................... 69
F
fading............................................................................................ 9
FDMA ........................................................................................... 8
FDR .......................................................................................... 133
FEC ............................................................................ 17, 133, 134
enabling by nanoLOC TRX Driver .......................................... 11
Ping Demo showing enabled .................................................. 84
FER .......................................................................................... 134
flashing
with STK500 Board ............................................................... 127
flashing HEX files with AVR Studio 4 ......................................... 91
Forward Error Correction, See FEC
FPGA ........................................................................................ 134
Frame Drop Rate...................................................................... 134
Frame Error Rate...................................................................... 134
frame type................................................................................... 79
Fresnel zone ............................................................................. 134
FTDI driver
cannot be installed warning message..................................... 40
removing ................................................................................. 40
Windows searching for............................................................ 39
G
Gain .......................................................................................... 134
general I/O
PORTB.................................................................................. 101
PORTD ................................................................................. 102
gross data throughput................................................................. 69
Index
nanoLOC Development Kit 3.0 User Guide
H
Hardware Adaption Layer ........................................................... 13
HEX files
compiling ................................................................................. 87
flashing with AVR Studio 4...................................................... 91
generating with WinAVR ....................................................... 123
LightSwitchRX.hex .................................................................. 85
LightSwitchTX.hex .................................................................. 85
location in directory ............................................................... 125
HyperTerminal
nanoLOC DK Board connector ............................................... 97
properties ................................................................................ 66
settings.................................................................................... 66
Talk Demo............................................................................... 66
I
I/O Ports........................................................................................ 6
INIT command ............................................................................ 45
initializing
driver function for .................................................................... 14
nanoLOC chip with Ping Demo ............................................... 83
transmission, Ping example of ................................................ 83
input voltage ................................................................................. 7
interfering systems........................................................................ 9
ISM ........................................................................................... 134
ISP (In-System Programming) connector ..................................... 6
ISP (In-System-Programming) Interface..................................... 99
ISP connector ........................................................................... 127
ISP port......................................................................................... 6
ISP, and PORTE....................................................................... 103
ISP6PIN header........................................................................ 127
J
JP1, battery pack connector pin ................................................... 6
JTAG
adapter .................................................................................... 91
connector ............................................................................ 6, 98
connector and sliding switch ..................................................... 7
connector on nanoLOC DK Board .......................................... 98
JTAG ICE dialog ......................................................................... 92
JTAG programming adapter ......................................................... 2
K
K1
button user programmable .................................................... 105
Light Switch Demo .................................................................. 86
K2
button user programmable .................................................... 105
Light Switch Demo .................................................................. 86
K3
button user programmable .................................................... 105
Light Switch Demo .................................................................. 86
L
LayernameCallback .................................................................... 12
LayernameMESAP ..................................................................... 12
LayernameSAP........................................................................... 12
LED
L1 to L8 connected to PORTC .............................................. 102
Light Switch Demo usage ....................................................... 86
Packet Sniffer usage ............................................................... 81
power indicator...................................................................... 105
Ranging Demo usage ............................................................. 58
Throughput Demo usage ........................................................ 74
TX/RX ................................................................................... 105
user programmable ............................................................... 105
LED 1
Light Switch Demo .................................................................. 86
Ping Demo .............................................................................. 84
LED 2
Light Switch Demo .................................................................. 86
Ping Demo .............................................................................. 84
LED 3
Light Switch Demo .................................................................. 86
Ping Demo .............................................................................. 84
LED 7
Packet Sniffer Demo ............................................................... 75
LED 8
Packet Sniffer Demo ............................................................... 75
LED Block ................................................................................. 105
LED L8
in nanoLOC Talk Demo .......................................................... 59
light sensor ................................................................................. 99
described .................................................................................. 6
PORTA.................................................................................. 100
Light Switch Demo
about ....................................................................................... 85
LightSwitchRX.hex ..................................................................... 85
LightSwitchTX.hex ...................................................................... 85
Link Budget........................................................................... 9, 134
Location Demo
about ....................................................................................... 29
Adding Tags............................................................................ 48
deleting anchor ....................................................................... 48
determining location of tag...................................................... 30
Hex files .................................................................................. 29
network self-configuration with................................................ 30
reflashing HEX files................................................................. 48
Location_80MHz1000ns_Anchor1.hex....................................... 29
Location_80MHz1000ns_Anchor2.hex....................................... 29
Location_80MHz1000ns_Anchor3.hex....................................... 29
Location_80MHz1000ns_Anchor4.hex....................................... 29
Location_80MHz1000ns_Tag17.hex .......................................... 29
Location_80MHz1000ns_Tag18.hex .......................................... 29
log file
generating in nanoLOC Location Demo.................................. 45
setting in Ranging Demo......................................................... 56
logical channel
attributes described................................................................. 17
Packet Sniffer Demo ............................................................... 77
Talk Demo............................................................................... 63
Throughput Demo ................................................................... 71
Logical Network ID ..................................................................... 11
lost packets................................................................................. 69
M
MAC address ........................................................................ 63, 79
MAC header ............................................................................... 79
MACFrame types........................................................................ 80
Make All, WinAVR .................................................................... 125
Make Clean, WinAVR ............................................................... 124
Minicom ...................................................................................... 97
MODE command ........................................................................ 46
modulation methods ................................................................... 11
MyMsgT ...................................................................................... 13
N
nanoLOC API ............................................................................. 11
nanoLOC chip
initializing with Ping Demo ...................................................... 83
nanoLOC DK Board
bill of materials ...................................................................... 112
block diagram.......................................................................... 97
communication interface ......................................................... 97
components .............................................................................. 5
described .................................................................................. 5
digital I/O module .................................................................. 100
dimensions............................................................................ 113
ISP interface ........................................................................... 99
JTAG Interface........................................................................ 98
light sensor.............................................................................. 99
modules .................................................................................. 97
PCB Layout........................................................................... 111
power supply............................................................................. 7
power supply connector locations............................................. 7
RS-232/UART ......................................................................... 97
Schematics ........................................................................... 107
technical description ............................................................. 107
nanoLOC EVR Module
described .................................................................................. 6
power supply............................................................................. 7
nanoLOC nTRX Driver
and embedded applications .................................................... 11
described ................................................................................ 11
nanoLOC TRX Transceiver
data rates .................................................................................. 8
key features .............................................................................. 8
operating temperature............................................................... 8
output power ............................................................................. 8
receiver sensitivity..................................................................... 8
SPI interface ............................................................................. 8
supply voltage ........................................................................... 8
nanoLOC USB Stick
bill of materials ...................................................................... 118
PCB layout ............................................................................ 117
schematics ............................................................................ 115
technical description ............................................................. 115
nanoPing.hex.............................................................................. 83
nanoSniffer.hex .......................................................................... 75
Index
nanoLOC Development Kit 3.0 User Guide
nanoTalk.hex .............................................................................. 59
nanoThroughput.hex................................................................... 69
net data throughput..................................................................... 69
noise ....................................................................................... 9, 10
NTRX_RTC................................................................................. 18
NTRXInterrupt............................................................................. 14
ntrxtypes.h .................................................................................. 13
P
packet counter ............................................................................ 79
Packet Sniffer Demo
about ....................................................................................... 75
Hex file .................................................................................... 75
PD_DATA_CONFIRM ................................................................ 16
PD_DATA_INDICATION ............................................................ 16
PD_DATA_REQUEST................................................................ 16
PHY Layer .................................................................................. 14
PHY_ADDR_MATCHING ........................................................... 18
PHY_ARQ................................................................................... 17
PHY_CHANNEL ......................................................................... 17
PHY_FEC ................................................................................... 17
PHY_LOG_CHANNEL................................................................ 17
PHY_MAC_ADDRESS1 ............................................................. 18
PHY_PWR_DOWN_MODE........................................................ 18
PHY_RECALIBRATION ............................................................. 18
PHY_TX_POWER ...................................................................... 17
Pin access points.......................................................................... 6
Ping Demo
about ....................................................................................... 83
Hex file .................................................................................... 83
PLME_GET_REQUEST ............................................................. 16
PLME_SET_REQUEST.............................................................. 16
point-to-point wireless communication........................................ 59
polarity, and power supply ............................................................ 7
PORT E and function buttons ................................................... 105
PORTA described......................................................................... 6
PORTA, for light sensor............................................................ 100
PORTB
described .................................................................................. 6
for general I/O ....................................................................... 101
PORTC
described .................................................................................. 6
for pins 35 to 42 .................................................................... 102
PORTC, for user-programmable LEDs..................................... 102
PORTD
described .................................................................................. 6
for general I/O ....................................................................... 102
PORTE
and button 2 .......................................................................... 105
described .................................................................................. 6
PORTE, for ISP and buttons..................................................... 103
PORTF described ......................................................................... 6
PORTF, for ADC and JTAG...................................................... 104
power indicator LED ................................................................. 105
Power ON/OFF switch .................................................................. 6
power supply
2.1 mm barrel connector ........................................................... 6
connector for battery pack ........................................................ 6
nanoLOC DK Board .................................................................. 7
polarity ...................................................................................... 7
power supply unit
preset for 3.0 V ......................................................................... 7
Process Exit Code, WinAVR..................................................... 125
Processing Delay........................................................................ 19
programmable buttons.................................................................. 6
programmable LEDs..................................................................... 6
Programmers Notepad ............................................................. 123
project files for AVR Studio 4...................................................... 87
promiscuous mode ............................................................... 75, 80
PWR LED ..................................................................................... 6
R
ranging
calculations in Ranging Demo................................................. 54
measurements in Ranging Demo............................................ 53
Ranging Demo
about ....................................................................................... 53
Hex files .................................................................................. 53
Ranging_80MHz1000ns_Anchor.hex ......................................... 53
Ranging_80MHz1000ns_Tag.hex .............................................. 53
Received Signal Strength Indicator, see RSSI
receiver sensitivity ...................................................................... 10
reflections ..................................................................................... 9
Request to Send packet ............................................................. 80
requirements, minimum for computer ........................................... 2
RESET...................................................................................... 105
Reset button ................................................................................. 6
retransmissions .......................................................................... 84
RF Error message ...................................................................... 56
RF link, establishing example demo ........................................... 83
RISC microprocessors.............................................................. 123
RS-232 ....................................................................................... 53
RS-232/UART port ..................................................................... 97
RSSI ......................................................................................... 134
RTS ............................................................................................ 80
S
SAPs........................................................................................... 12
SDS-TWR ................................................................................... 19
sensitivity .................................................................................... 10
sensor applications, examples of ............................................... 83
serial communication .................................................................. 97
Service Access Points, see SAPs
software components ................................................................... 2
software for kit, installing .............................................................. 1
SPI Interface ................................................................................. 6
START command ....................................................................... 46
STK500 Board
flashing with .......................................................................... 127
STOP command ......................................................................... 46
success messages, ranging ....................................................... 27
T
Tags
adding ..................................................................................... 48
deleting ................................................................................... 48
Talk Demo
about ....................................................................................... 59
Hex file .................................................................................... 59
Throughput Demo
about ....................................................................................... 69
Hex file .................................................................................... 69
TIMB ........................................................................................... 80
Time of Flight (ToF) measurement ............................................... 9
TimeB packets ............................................................................ 11
transceiver registers ................................................................... 11
transmission, initializing .............................................................. 83
TX power settings ....................................................................... 70
TX Propagation Delay ................................................................ 19
TX/RX LED ........................................................................... 6, 105
U
USB cable............................................................................. 91, 94
USB .......................................................................................... 134
user-programmable buttons (keys)........................................... 105
user-programmable LEDs ........................................................ 105
V
voltage regulator ........................................................................... 7
voltage requirements
power supply............................................................................. 7
W
WinAVR ........................................................................................ 2
compiling Hex files with......................................................... 123
installing ................................................................................ 123
must be installed to use AVR Studio 4.................................... 87
overview................................................................................ 123
WinAVR Programmers Notepad............................................... 123
wireless transmissions.................................................................. 9
Index
nanoLOC Development Kit 3.0 User Guide
Revision History
nanoLOC Development Kit 3.0 User Guide
Revision History
Version
Date
1.00
2007-01-09
Initial Version.
1.01
2007-01-19
Schematics and PCB layout added for nanoLOC DK Boards and nanoLOC USB Stick.
1.02
2007-02-19
Updated GUI for nanoLOC Location Awareness Demo, nanoLOC Ranging Demo, and
nanoTALK Demo.
1.03
2007-02-27
1.04
2007-06-29
1.05
2007-07-30
Changes to nanoLOC Location Demo GUI; second USB cable added to kit, changes to
Ranging Library description and to Ping instructions. Minor edits throughout.
2007-11-19
Minor edits throughout; description of Sleep and Wake-Up demo added; Ranging
Library description removed; nTRX Driver section enlarged with description of ranging
functions and states; averaging range added to Location Demo description; nanoLOC
DK Board Schematics, PCB and BOM updated; nanoLOC Talk Demo updated; Talk
demo GUI modified.
2008-10-01
New and updated demo applications: nanoLOC Location Demo, nanoLOC Ranging
Demo, nanoLOC Packet Sniffer and nanoLOC Throughput Demo; new chapters on the
nanoLOC API and nanoLOC Ranging; new Location Server and Client Server; new
GUIs for all demos, except nanoLOC Ranging; complete edit throughout; compiling and
flashing with AVR Studio updated, compiling with WinAVR moved to appendix, flashing
with STK500 moved to appendix, index updated.
2010-03-31
Completely new nanoLOC Location Demo added, including new GUI, new Location
Server, new Location Engine Server, and new image files. Complete review of document.Updated chapter 1. Updated nanoLOC API description. Updated Ranging description - three new ranging modes. nanoLOC DK Board schematics and PCB layout moved
to appendix.
1.1
2.0
3.0
Description/Changes
Revision History
nanoLOC Development Kit 3.0 User Guide
Further Information:
Nanotron provides reliable loss protection technology and solutions that are
used to protect people and animals. Energy efficient, battery- powered wireless nodes are the key building blocks. These small devices create a Virtual
Safety Zone which protects tagged people and animals. Robust wireless
Chirp technology underpins nanotron's offering of chips, modules and loss
protection software for indoor and outdoor environments world wide.
For more information about this product and other products from Nanotron
Technologies, contact a sales representative at the following address:
Nanotron Technologies GmbH
Alt-Moabit 60, 10555 Berlin, Germany
Phone: +49 30 399 954 - 0 | Fax: +49 30 399 954 - 188
Email: [email protected] | Internet: www.nanotron.com