Root/prod/doc/test.hmac

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
27To test an <B>atben</B> board, place a reference <B>atusb</B> board into
28the 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
49The test process is started with
50<PRE>
51make ben
52</PRE>
53for an <B>atben</B> DUT and with
54<PRE>
55make usb
56</PRE>
57for 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
69Of these tests, only "LED" and "Spectrum" require operator input. The
70other tests run without interaction.
71<P>
72The test scripts log the commands they execute and their output in the
73file <B>_log</B>.
74
75
76<!-- ---------------------------------------------------------------------- -->
77
78
79<SUBSECTION title="Enumeration (atusb only)">
80
81The enumeration test verifies that the <B>atusb</B> board has been
82identified by the PC's USB stack. If this test fails, the board may
83not be plugged in correctly or it may be missing the firmware. A
84board that has passed both stages of the firmware flashing process
85should 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
109This test reads the transceiver's registers that contain values identifying
110the 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
112between transceiver and the microcontroller has a problem.
113<P>
114On <B>atben</B>, failure may simply indicate an improperly
115inserted board. Eject the board, re-insert, and try again. If the test
116keeps on failing, this may indicate a problem with MOSI, MISO, nSEL,
117SCLK, the power supply, the crystal oscillator, or possibly the position
118of the transceiver chip.
119<P>
120Note: this test is meant as a higher level test. The GPIO test should
121eventually provide more detailed results for problems with the SPI interface.
122
123
124<!-- ---------------------------------------------------------------------- -->
125
126
127<SUBSECTION title="Crystal frequency (atben only)">
128
129This test measures the frequency of the crystal oscillator in the DUT.
130On <B>atben</B>, it does this by transmitting packets, and measuring
131the time between the SLP_TR pulse that starts the transmission and the
132interrupt signaling the end of the transmission.
133<P>
134If this test fails, this may indicate that the load capacitors of the
135crystal are missing, badly soldered, or have the wrong value. It could
136also mean that the crystal itself is defective. Another possible cause
137of oscillator malfunction could be flux residues bridging traces.
138<P>
139The <A href="fault.html">fault analysis page</A> has more details on
140testing the crystal oscillator.
141
142
143<!-- ---------------------------------------------------------------------- -->
144
145
146<SUBSECTION title="Spectrum">
147
148The spectrum test measures the reception of a signal sent from the
149reference device to the DUT. It does this across the entire frequency
150range in which the WPAN boards operate, allowing the detection of
151frequency-dependent anomalies.
152<P>
153This test depends on numerous external factors, like the exact position
154and orientation of the two devices with respect to each other, and the
155presence of any items that can reflect or absorb RF signals. Such items
156include metal chairs and human bodies. Because of the test's sensitivity
157to environmental factors, the operator needs to decide when the result
158represents a valid measurement and then confirm the result shown.
159<P>
160The image below shows the typical display during the spectrum test:
161the white line is the measured signal strength. The red lines indicate
162the minimum and maximum allowed values. The green circle in the upper
163right corner indicates that the signal strength is within the limits.
164A downward-pointing red triangle would indicate that the signal is too
165weak, an upward-pointing yellow triangle would indicate that the signal
166is too strong.
167<P>
168<A href="atrf-path.png"><IMG src="atrf-path-small.png"</A>
169<P>
170To finish the test, the operator must type either <B>P</B>, <B>F</B>,
171or <B>Q</B> in the window shown. <B>P</B> means "pass" and can only be
172entered if the measurement is within the limits. <B>F</B> means "fail"
173and 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
182In the receive test, the reference device sends a number of frames to the
183DUT. The test program verifies correct reception of all the frames. A
184device that has passed all the preceding tests should not encounter
185problems in the receive test. If it does, there may be a problem with
186the bypassing of the transceiver's 1.8 V supplies.
187
188
189<!-- ---------------------------------------------------------------------- -->
190
191
192<SUBSECTION title="Send">
193
194The send test is like the receive test, but with the DUT acting as the
195sender and the reference acting as the receiver. If a device passes the
196receive test but fails the send test, there is probably an issue with
197the bypass capacitors of the analog 1.8 V supply.
198<P>
199Another possible cause could a problem with the SLP_TR signal. The
200GPIO test should eventually catch this issue, but it may currently
201remain undetected until the send test.
202
203<END author="Werner Almesberger" date="<GEN_DATE>">
204</BODY>
205</HTML>
206

Archive Download this file



interactive