IEEE 802.15.4 subsystem
Sign in or create your account | Project List | Help
IEEE 802.15.4 subsystem Git Source Tree
Root/
Source at commit 29ff186882c0bb78138bfb32e30b686bec44824e created 12 years 10 months ago. By Werner Almesberger, prod/doc/: make END macro generate the date and autor line; use current date | |
---|---|
1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
2 | <HTML> |
3 | <TITLE>Production and testing: Functional test</TITLE> |
4 | <BODY bgcolor="#ffffff" link="#000000" vlink="#404040"> |
5 | |
6 | <INCLUDE file="style.inc"> |
7 | |
8 | <PAGE_BAR title="Production and testing"> |
9 | <PAGE_ITEM href="setup.html">Software setup</PAGE_ITEM> |
10 | <PAGE_ITEM href="flash.html">Flashing</PAGE_ITEM> |
11 | <PAGE_CURR href="test.html">Functional test</PAGE_CURR> |
12 | <PAGE_ITEM href="analysis.html">Fault analysis</PAGE_ITEM> |
13 | </PAGE_BAR> |
14 | |
15 | <SECTION_BAR> |
16 | <SECTION_ITEM href="#atben">atben setup</SECTION_ITEM> |
17 | <SECTION_ITEM href="#atusb">atusb setup</SECTION_ITEM> |
18 | <SECTION_ITEM href="#procedure">Test procedure</SECTION_ITEM> |
19 | </SECTION_BAR> |
20 | |
21 | |
22 | <!-- ====================================================================== --> |
23 | |
24 | |
25 | <SECTION ref="atben" title="Test setup for atben"> |
26 | |
27 | To test an <B>atben</B> board, place a reference <B>atusb</B> board into |
28 | the PC, insert the |
29 | <P> |
30 | <IMG src="setup-A.png"> |
31 | <P> |
32 | |
33 | |
34 | <!-- ====================================================================== --> |
35 | |
36 | |
37 | <SECTION ref="atusb" title="Test setup for atusb"> |
38 | |
39 | <P> |
40 | <IMG src="setup-B.png"> |
41 | <P> |
42 | |
43 | |
44 | <!-- ====================================================================== --> |
45 | |
46 | |
47 | <SECTION ref="procedure" title="Test procedure"> |
48 | |
49 | The test process is started with |
50 | <PRE> |
51 | make ben |
52 | </PRE> |
53 | for an <B>atben</B> DUT and with |
54 | <PRE> |
55 | make usb |
56 | </PRE> |
57 | for an <B>atusb</B> DUT. It performs the following steps: |
58 | <UL> |
59 | <LI>Enumeration (<B>atusb</B> only) |
60 | <LI>LED (<B>atusb</B> only; not yet implemented) |
61 | <LI>GPIO scan (not yet implemented) |
62 | <LI>Identification |
63 | <LI>Crystal frequency (only implemented on <B>atben</B>) |
64 | <LI>Spectrum |
65 | <LI>Receive |
66 | <LI>Send |
67 | </UL> |
68 | |
69 | Of these tests, only "LED" and "Spectrum" require operator input. The |
70 | other tests run without interaction. |
71 | <P> |
72 | The test scripts log the commands they execute and their output in the |
73 | file <B>_log</B>. |
74 | |
75 | |
76 | <!-- ---------------------------------------------------------------------- --> |
77 | |
78 | |
79 | <SUBSECTION title="Enumeration (atusb only)"> |
80 | |
81 | The enumeration test verifies that the <B>atusb</B> board has been |
82 | identified by the PC's USB stack. If this test fails, the board may |
83 | not be plugged in correctly or it may be missing the firmware. A |
84 | board that has passed both stages of the firmware flashing process |
85 | should always pass the enumeration test. |
86 | |
87 | |
88 | <!-- ---------------------------------------------------------------------- --> |
89 | |
90 | |
91 | <SUBSECTION title="LED (atusb only)"> |
92 | |
93 | @@@ |
94 | |
95 | |
96 | <!-- ---------------------------------------------------------------------- --> |
97 | |
98 | |
99 | <SUBSECTION title="GPIO scan"> |
100 | |
101 | @@@ |
102 | |
103 | |
104 | <!-- ---------------------------------------------------------------------- --> |
105 | |
106 | |
107 | <SUBSECTION title="Identification"> |
108 | |
109 | This test reads the transceiver's registers that contain values identifying |
110 | the manufacturer, the chip's part number, and the chip revision. If an |
111 | <B>atusb</B> board fails this test, this probably means that the MISO signal |
112 | between transceiver and the microcontroller has a problem. |
113 | <P> |
114 | On <B>atben</B>, failure may simply indicate an improperly |
115 | inserted board. Eject the board, re-insert, and try again. If the test |
116 | keeps on failing, this may indicate a problem with MOSI, MISO, nSEL, |
117 | SCLK, the power supply, the crystal oscillator, or possibly the position |
118 | of the transceiver chip. |
119 | <P> |
120 | Note: this test is meant as a higher level test. The GPIO test should |
121 | eventually provide more detailed results for problems with the SPI interface. |
122 | |
123 | |
124 | <!-- ---------------------------------------------------------------------- --> |
125 | |
126 | |
127 | <SUBSECTION title="Crystal frequency (atben only)"> |
128 | |
129 | This test measures the frequency of the crystal oscillator in the DUT. |
130 | On <B>atben</B>, it does this by transmitting packets, and measuring |
131 | the time between the SLP_TR pulse that starts the transmission and the |
132 | interrupt signaling the end of the transmission. |
133 | <P> |
134 | If this test fails, this may indicate that the load capacitors of the |
135 | crystal are missing, badly soldered, or have the wrong value. It could |
136 | also mean that the crystal itself is defective. Another possible cause |
137 | of oscillator malfunction could be flux residues bridging traces. |
138 | <P> |
139 | The <A href="fault.html">fault analysis page</A> has more details on |
140 | testing the crystal oscillator. |
141 | |
142 | |
143 | <!-- ---------------------------------------------------------------------- --> |
144 | |
145 | |
146 | <SUBSECTION title="Spectrum"> |
147 | |
148 | The spectrum test measures the reception of a signal sent from the |
149 | reference device to the DUT. It does this across the entire frequency |
150 | range in which the WPAN boards operate, allowing the detection of |
151 | frequency-dependent anomalies. |
152 | <P> |
153 | This test depends on numerous external factors, like the exact position |
154 | and orientation of the two devices with respect to each other, and the |
155 | presence of any items that can reflect or absorb RF signals. Such items |
156 | include metal chairs and human bodies. Because of the test's sensitivity |
157 | to environmental factors, the operator needs to decide when the result |
158 | represents a valid measurement and then confirm the result shown. |
159 | <P> |
160 | The image below shows the typical display during the spectrum test: |
161 | the white line is the measured signal strength. The red lines indicate |
162 | the minimum and maximum allowed values. The green circle in the upper |
163 | right corner indicates that the signal strength is within the limits. |
164 | A downward-pointing red triangle would indicate that the signal is too |
165 | weak, an upward-pointing yellow triangle would indicate that the signal |
166 | is too strong. |
167 | <P> |
168 | <A href="atrf-path.png"><IMG src="atrf-path-small.png"</A> |
169 | <P> |
170 | To finish the test, the operator must type either <B>P</B>, <B>F</B>, |
171 | or <B>Q</B> in the window shown. <B>P</B> means "pass" and can only be |
172 | entered if the measurement is within the limits. <B>F</B> means "fail" |
173 | and can only be entered if the measurements is outside the limits. |
174 | <B>Q</B>, quit, can be entered at any time and also fails the test. |
175 | |
176 | |
177 | <!-- ---------------------------------------------------------------------- --> |
178 | |
179 | |
180 | <SUBSECTION title="Receive"> |
181 | |
182 | In the receive test, the reference device sends a number of frames to the |
183 | DUT. The test program verifies correct reception of all the frames. A |
184 | device that has passed all the preceding tests should not encounter |
185 | problems in the receive test. If it does, there may be a problem with |
186 | the bypassing of the transceiver's 1.8 V supplies. |
187 | |
188 | |
189 | <!-- ---------------------------------------------------------------------- --> |
190 | |
191 | |
192 | <SUBSECTION title="Send"> |
193 | |
194 | The send test is like the receive test, but with the DUT acting as the |
195 | sender and the reference acting as the receiver. If a device passes the |
196 | receive test but fails the send test, there is probably an issue with |
197 | the bypass capacitors of the analog 1.8 V supply. |
198 | <P> |
199 | Another possible cause could a problem with the SLP_TR signal. The |
200 | GPIO test should eventually catch this issue, but it may currently |
201 | remain undetected until the send test. |
202 | |
203 | <END author="Werner Almesberger" date="<GEN_DATE>"> |
204 | </BODY> |
205 | </HTML> |
206 |