Date:2011-05-27 12:02:41 (8 years 29 days ago)
Author:Werner Almesberger
Commit:8a70d4b2f3407fdf35e7e9603fb52281d8aaf535
Message:prod/doc/: converted setup.html, flash.html, and test.html to hmac

Files: prod/doc/flash.hmac (1 diff)
prod/doc/flash.html (1 diff)
prod/doc/setup.hmac (1 diff)
prod/doc/setup.html (1 diff)
prod/doc/test.hmac (1 diff)
prod/doc/test.html (1 diff)

Change Details

prod/doc/flash.hmac
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<HTML>
3<TITLE>Production and testing: Flashing</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_CURR href="flash.html">Flashing</PAGE_CURR>
11  <PAGE_ITEM href="test.html">Functional test</PAGE_ITEM>
12  <PAGE_ITEM href="analysis.html">Fault analysis</PAGE_ITEM>
13</PAGE_BAR>
14
15<SECTION_BAR>
16  <SECTION_ITEM href="#boot">Boot loader</SECTION_ITEM>
17  <SECTION_ITEM href="#app">Application</SECTION_ITEM>
18</SECTION_BAR>
19<P>
20
21The microcontroller of <B>atusb</B> contains firmware that must be
22loaded before the testing process can commence. The firmware consists
23of the following two parts:
24<OL>
25  <LI>The boot loader (via serial programming, using <B>avrdude</B>)
26  <LI>The application (via DFU, using <B>dfu-util</B>)
27</OL>
28<P>
29Note that <B>atben</B> has no microcontroller and therefore does not need
30any flashing.
31
32
33<!-- ====================================================================== -->
34
35
36<SECTION ref="boot" title="Flashing the boot loader">
37
38The following image shows the setup for flashing the boot loader:
39<P>
40<IMG src="setup-C.png">
41<P>
42To flash the boot loader,
43<UL>
44  <LI>insert the <B>atusb-pgm</B> board into the Ben
45  <LI>place the <B>atusb</B> board (DUT) on the table near the Ben,
46    without connecting it to USB
47  <LI>place <B>atusb-pgm</B> on <B>atusb</B> as shown in the image below
48    and gently push it on the contacts
49    <P>
50    <A href="atusb-programming.jpg"><IMG
51      src="atusb-programming.jpg" width="250"></A>
52    <P>
53  <LI>finally, run
54    <PRE>
55    make flash
56    </PRE>
57</UL>
58<P>
59The flashing takes about 20-30 seconds. If it should fail, make sure you
60properly placed <B>atusb-pgm</B> and try again. If it keeps on failing,
61remove <B>atusb-pgm</B> from the Ben and insert it again.
62If flashing fails despite numerous attempts, proceed to the
63<A href="analysis.html">fault analysis</A>.
64
65
66<!-- ====================================================================== -->
67
68
69<SECTION ref="app" title="Flashing the application">
70
71The flashing script proceeds automatically to the flashing of the
72application. All you need to do is insert the <B>atusb</B> board
73into the PC:
74<P>
75<IMG src="setup-D.png">
76<P>
77The flashing script will wait up to 30 seconds for enumeration.
78Once the <B>atusb</B> board has been detected, the script transfers
79the application with DFU. After this, you can proceed with the
80<A href="test.html">functional test</A>.
81<P>
82If the board fails to enumerate, proceed with the
83<A href="analysis.html">fault analysis</A>.
84
85<P>
86<HR>
87Last update: 2011-05-27&nbsp;&nbsp;<I>Werner Almesberger</I>
88<HR>
89</BODY>
90</HTML>
prod/doc/flash.html
1<TITLE>Production and testing: Flashing</TITLE>
2<BODY>
3<HTML>
4<H1>Production and testing: Flashing</H1>
5
6The microcontroller of <B>atusb</B> contains firmware that must be
7loaded before the testing process can commence. The firmware consists
8of the following two parts:
9<OL>
10  <LI>The boot loader (via serial programming, using <B>avrdude</B>)
11  <LI>The application (via DFU, using <B>dfu-util</B>)
12</OL>
13<P>
14Note that <B>atben</B> has no microcontroller and therefore does not need
15any flashing.
16
17
18<!-- ====================================================================== -->
19
20
21<H2>Flashing the boot loader</H2>
22
23The following image shows the setup for flashing the boot loader:
24<P>
25<IMG src="setup-C.png">
26<P>
27To flash the boot loader,
28<UL>
29  <LI>insert the <B>atusb-pgm</B> board into the Ben
30  <LI>place the <B>atusb</B> board (DUT) on the table near the Ben,
31    without connecting it to USB
32  <LI>place <B>atusb-pgm</B> on <B>atusb</B> as shown in the image below
33    and gently push it on the contacts
34    <P>
35    <A href="atusb-programming.jpg"><IMG
36      src="atusb-programming.jpg" width="250"></A>
37    <P>
38  <LI>finally, run
39    <PRE>
40    make flash
41    </PRE>
42</UL>
43<P>
44The flashing takes about 20-30 seconds. If it should fail, make sure you
45properly placed <B>atusb-pgm</B> and try again. If it keeps on failing,
46remove <B>atusb-pgm</B> from the Ben and insert it again.
47If flashing fails despite numerous attempts, proceed to the
48<A href="analysis.html">fault analysis</A>.
49
50
51<!-- ====================================================================== -->
52
53
54<H2>Flashing the application</H2>
55
56The flashing script proceeds automatically to the flashing of the
57application. All you need to do is insert the <B>atusb</B> board
58into the PC:
59<P>
60<IMG src="setup-D.png">
61<P>
62The flashing script will wait up to 30 seconds for enumeration.
63Once the <B>atusb</B> board has been detected, the script transfers
64the application with DFU. After this, you can proceed with the
65<A href="test.html">functional test</A>.
66<P>
67If the board fails to enumerate, proceed with the
68<A href="analysis.html">fault analysis</A>.
69
70<P>
71<HR>
72Up: <A href="index.html">Production and testing</A>&nbsp;
73Prev: <A href="setup.html">Software setup</A>
74Next: <A href="test.html">Functional test</A>&nbsp;
75<HR>
76Last update: 2011-05-26&nbsp;&nbsp;<I>Werner Almesberger</I>
77<HR>
78</BODY>
79</HTML>
prod/doc/setup.hmac
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<HTML>
3<TITLE>Production and testing: Software setup</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_CURR href="setup.html">Software setup</PAGE_CURR>
10  <PAGE_ITEM href="flash.html">Flashing</PAGE_ITEM>
11  <PAGE_ITEM href="test.html">Functional test</PAGE_ITEM>
12  <PAGE_ITEM href="analysis.html">Fault analysis</PAGE_ITEM>
13</PAGE_BAR>
14
15<SECTION_BAR>
16  <SECTION_ITEM href="#pcsw">PC software</SECTION_ITEM>
17  <SECTION_ITEM href="#bensw">Ben software</SECTION_ITEM>
18  <SECTION_ITEM href="#bensys">Ben system</SECTION_ITEM>
19  <SECTION_ITEM href="#profiles">Test profiles</SECTION_ITEM>
20</SECTION_BAR>
21
22<P>
23
24Before performing any production tests, various pieces of software
25need to be installed on Ben and PC, and configuration settings
26@@@
27
28
29<!-- ====================================================================== -->
30
31
32<SECTION ref="pcsw" title="PC software installation">
33
34@@@
35
36
37<!-- ---------------------------------------------------------------------- -->
38
39
40<SUBSECTION title="Install ben-wpan tools">
41
42@@@
43
44
45<!-- ---------------------------------------------------------------------- -->
46
47
48<SUBSECTION title="Install test scripts">
49
50@@@
51
52
53<!-- ---------------------------------------------------------------------- -->
54
55
56<SUBSECTION title="Install firmware binary">
57
58The binary of the application running on <B>atusb</B> is transferred from
59the PC. To download a pre-compiled version, use this command:
60
61<PRE>
62wget -O atusb.bin \
63     http://downloads.qi-hardware.com/people/werner/wpan/bindist/atusb-de72af351f661b538add81cbc9965278a2f8c40c.bin
64</PRE>
65
66Instructions for building the binary from sources are
67<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
68
69
70<!-- ---------------------------------------------------------------------- -->
71
72
73<SUBSECTION title="Register Ben host name">
74
75To simplify accessing the Ben via TCP/IP, its IP address should be
76registered in the hosts file on the PC. If the Ben is running OpenWrt,
77use the following command:
78<PRE>
79echo 192.168.254.101 ben >>/etc/hosts
80</PRE>
81<P>
82If the Ben is running Jlime, the address would be as follows:
83<PRE>
84echo 192.168.1.202 ben >>/etc/hosts
85</PRE>
86<P>
87If using the same PC with Bens running OpenWrt and Jlime, one may choose
88different host names depending on the distribution, and adapt the commands
89used in the production and testing process accordingly. For example,
90<PRE>
91echo 192.168.254.101 ben >>/etc/hosts
92echo 192.168.1.202 jlime >>/etc/hosts
93</PRE>
94
95
96<!-- ---------------------------------------------------------------------- -->
97
98
99<SUBSECTION title="Customize test scripts">
100
101@@@
102
103
104<!-- ====================================================================== -->
105
106
107<SECTION ref="bensw" title="Ben software installation">
108
109@@@
110
111
112<!-- ---------------------------------------------------------------------- -->
113
114
115<SUBSECTION title="Password-less remote access">
116
117To enable password-less remote access from the PC, set up network
118access to the Ben and run the following command:
119<PRE>
120ssh ben 'cat >>/etc/dropbear/authorized_keys' <~/.ssh/id_rsa.pub
121</PRE>
122
123
124<!-- ---------------------------------------------------------------------- -->
125
126
127<SUBSECTION title="Install ben-wpan tools">
128
129@@@
130
131
132<!-- ---------------------------------------------------------------------- -->
133
134
135<SUBSECTION title="Install avrdude">
136
137The <B>atusb</B> boot loader is flashed using <B>avrdude</B>. A pre-compiled
138static binary (suitable for OpenWrt and Jlime) can be installed by running
139the following two command on the Ben:
140
141<PRE>
142wget http://downloads.qi-hardware.com/people/werner/wpan/bindist/avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
143tar -xz -C / -f avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
144</PRE>
145
146Instructions for building <B>avrdude</B> from sources are
147<A href="http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/avrdude/README
148">here</A>.
149
150
151
152<!-- ---------------------------------------------------------------------- -->
153
154
155<SUBSECTION title="Install boot-loader binary">
156
157The binary of the boot loader running on <B>atusb</B> is transferred from
158the Ben. To download a pre-compiled version, use this command:
159
160<PRE>
161wget -O boot.hex \
162   http://downloads.qi-hardware.com/people/werner/wpan/bindist/boot-de72af351f661b538add81cbc9965278a2f8c40c.hex
163</PRE>
164
165Instructions for building the binary from sources are
166<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
167
168
169<!-- ====================================================================== -->
170
171
172<SECTION ref="bensys" title="Ben system setup">
173
174The configuration setting described in this section are lost on each
175reset or reboot and either need to be entered again. Alternatively,
176a setup script running at boot time can be written.
177
178
179<!-- ---------------------------------------------------------------------- -->
180
181
182<SUBSECTION title="Enable network access">
183
184Once the Ben has booted and started USB networking, the interface
185on the PC side is configured as follows:
186<PRE>
187ifconfig usb0 192.168.254.100 up
188</PRE>
189<P>
190These are the settings for OpenWrt, assuming the network device is
191called "usb0". If using Jlime, the command would be as follows:
192<PRE>
193ifconfig usb0 192.168.1.200 up
194</PRE>
195
196
197<!-- ---------------------------------------------------------------------- -->
198
199
200<SUBSECTION title="Silence other 8:10 card users">
201
202Before running any of the ben-wpan utilities, other users of the 8:10
203card slot have to be disabled. In a Ben running the regular OpenWrt or
204Jlime distribution, the only such user that is automatically started
205is the MMC kernel driver. The following command disables it:
206<PRE>
207echo jz4740-mmc.0 >/sys/bus/platform/drivers/jz4740-mmc/unbind
208</PRE>
209<P>
210If a WPAN-enabled kernel has been installed, the AT86RF230 driver takes
211the place of the MMC driver. To disable it, run
212<PRE>
213echo spi2.0 >/sys/bus/spi/drivers/at86rf230/unbind
214</PRE>
215
216
217<!-- ---------------------------------------------------------------------- -->
218
219
220<SUBSECTION title="Start atrf-proxy">
221
222On the Ben, launch the proxy daemon. We pass the option -b to background it:
223<PRE>
224atrf-proxy -b
225</PRE>
226
227
228<!-- ====================================================================== -->
229
230
231<SECTION ref="profiles" title="Test profiles">
232
233Some of the functional tests measure characteristics that are strongly
234influenced by the test setup. It is therefore not possible to provide
235universally applicable reference values, but they have to be measured
236in the actual test environment.
237
238
239<!-- ---------------------------------------------------------------------- -->
240
241
242<SUBSECTION title="Clock count (atben only)">
243
244Insert a known to be good <B>atben</B> board and run the following
245command directly on the Ben to record the reference value for the
246clock count with an accuracy of about +/&minus;20 ppm:
247<PRE>
248atrf-xtal 1000 >ben.xtal
249</PRE>
250<P>
251This takes about 5 seconds.
252<P>
253Note that the result depends on the tolerance of the crystal in the Ben
254and is also affected by temperature. Good accuracy can therefore
255only be obtained if this measurement is performed individually on each
256Ben, and if a stable temperature is maintained.
257
258
259<!-- ---------------------------------------------------------------------- -->
260
261
262<SUBSECTION title="Signal strength">
263
264@@@
265
266
267<P>
268<HR>
269Last update: 2011-05-27&nbsp;&nbsp;<I>Werner Almesberger</I>
270<HR>
271</BODY>
272</HTML>
prod/doc/setup.html
1<TITLE>Production and testing: Software setup</TITLE>
2<BODY>
3<HTML>
4<H1>Production and testing: Software setup</H1>
5
6Before performing any production tests, various pieces of software
7need to be installed on Ben and PC, and configuration settings
8@@@
9
10
11<!-- ====================================================================== -->
12
13
14<H2>PC software installation</H2>
15
16@@@
17
18
19<!-- ---------------------------------------------------------------------- -->
20
21
22<H3>Install ben-wpan tools</H3>
23
24@@@
25
26
27<!-- ---------------------------------------------------------------------- -->
28
29
30<H3>Install test scripts</H3>
31
32@@@
33
34
35<!-- ---------------------------------------------------------------------- -->
36
37
38<H3>Install firmware binary</H3>
39
40The binary of the application running on <B>atusb</B> is transferred from
41the PC. To download a pre-compiled version, use this command:
42
43<PRE>
44wget -O atusb.bin \
45     http://downloads.qi-hardware.com/people/werner/wpan/bindist/atusb-de72af351f661b538add81cbc9965278a2f8c40c.bin
46</PRE>
47
48Instructions for building the binary from sources are
49<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
50
51
52<!-- ---------------------------------------------------------------------- -->
53
54
55<H3>Register Ben host name</H3>
56
57To simplify accessing the Ben via TCP/IP, its IP address should be
58registered in the hosts file on the PC. If the Ben is running OpenWrt,
59use the following command:
60<PRE>
61echo 192.168.254.101 ben >>/etc/hosts
62</PRE>
63<P>
64If the Ben is running Jlime, the address would be as follows:
65<PRE>
66echo 192.168.1.202 ben >>/etc/hosts
67</PRE>
68<P>
69If using the same PC with Bens running OpenWrt and Jlime, one may choose
70different host names depending on the distribution, and adapt the commands
71used in the production and testing process accordingly. For example,
72<PRE>
73echo 192.168.254.101 ben >>/etc/hosts
74echo 192.168.1.202 jlime >>/etc/hosts
75</PRE>
76
77
78<!-- ---------------------------------------------------------------------- -->
79
80
81<H3>Customize test scripts</H3>
82
83@@@
84
85
86<!-- ====================================================================== -->
87
88
89<H2>Ben software installation</H2>
90
91@@@
92
93
94<!-- ---------------------------------------------------------------------- -->
95
96
97<H3>Password-less remote access</H3>
98
99To enable password-less remote access from the PC, set up network
100access to the Ben and run the following command:
101<PRE>
102ssh ben 'cat >>/etc/dropbear/authorized_keys' <~/.ssh/id_rsa.pub
103</PRE>
104
105
106<!-- ---------------------------------------------------------------------- -->
107
108
109<H3>Install ben-wpan tools</H3>
110
111@@@
112
113
114<!-- ---------------------------------------------------------------------- -->
115
116
117<H3>Install avrdude</H3>
118
119The <B>atusb</B> boot loader is flashed using <B>avrdude</B>. A pre-compiled
120static binary (suitable for OpenWrt and Jlime) can be installed by running
121the following two command on the Ben:
122
123<PRE>
124wget http://downloads.qi-hardware.com/people/werner/wpan/bindist/avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
125tar -xz -C / -f avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
126</PRE>
127
128Instructions for building <B>avrdude</B> from sources are
129<A href="http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/avrdude/README
130">here</A>.
131
132
133
134<!-- ---------------------------------------------------------------------- -->
135
136
137<H3>Install boot-loader binary</H3>
138
139The binary of the boot loader running on <B>atusb</B> is transferred from
140the Ben. To download a pre-compiled version, use this command:
141
142<PRE>
143wget -O boot.hex \
144   http://downloads.qi-hardware.com/people/werner/wpan/bindist/boot-de72af351f661b538add81cbc9965278a2f8c40c.hex
145</PRE>
146
147Instructions for building the binary from sources are
148<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
149
150
151<!-- ====================================================================== -->
152
153
154<H2>Ben system setup</H2>
155
156The configuration setting described in this section are lost on each
157reset or reboot and either need to be entered again. Alternatively,
158a setup script running at boot time can be written.
159
160
161<!-- ---------------------------------------------------------------------- -->
162
163
164<H3>Enable network access</H3>
165
166Once the Ben has booted and started USB networking, the interface
167on the PC side is configured as follows:
168<PRE>
169ifconfig usb0 192.168.254.100 up
170</PRE>
171<P>
172These are the settings for OpenWrt, assuming the network device is
173called "usb0". If using Jlime, the command would be as follows:
174<PRE>
175ifconfig usb0 192.168.1.200 up
176</PRE>
177
178
179<!-- ---------------------------------------------------------------------- -->
180
181
182<H3>Silence other 8:10 card users</H3>
183
184Before running any of the ben-wpan utilities, other users of the 8:10
185card slot have to be disabled. In a Ben running the regular OpenWrt or
186Jlime distribution, the only such user that is automatically started
187is the MMC kernel driver. The following command disables it:
188<PRE>
189echo jz4740-mmc.0 >/sys/bus/platform/drivers/jz4740-mmc/unbind
190</PRE>
191<P>
192If a WPAN-enabled kernel has been installed, the AT86RF230 driver takes
193the place of the MMC driver. To disable it, run
194<PRE>
195echo spi2.0 >/sys/bus/spi/drivers/at86rf230/unbind
196</PRE>
197
198
199<!-- ---------------------------------------------------------------------- -->
200
201
202<H3>Start atrf-proxy</H3>
203
204On the Ben, launch the proxy daemon. We pass the option -b to background it:
205<PRE>
206atrf-proxy -b
207</PRE>
208
209
210<!-- ====================================================================== -->
211
212
213<H2>Test profiles</H2>
214
215Some of the functional tests measure characteristics that are strongly
216influenced by the test setup. It is therefore not possible to provide
217universally applicable reference values, but they have to be measured
218in the actual test environment.
219
220
221<!-- ---------------------------------------------------------------------- -->
222
223
224<H3>Clock count (atben only)</H3>
225
226Insert a known to be good <B>atben</B> board and run the following
227command directly on the Ben to record the reference value for the
228clock count with an accuracy of about +/&minus;20 ppm:
229<PRE>
230atrf-xtal 1000 >ben.xtal
231</PRE>
232<P>
233This takes about 5 seconds.
234<P>
235Note that the result depends on the tolerance of the crystal in the Ben
236and is also affected by temperature. Good accuracy can therefore
237only be obtained if this measurement is performed individually on each
238Ben, and if a stable temperature is maintained.
239
240
241<!-- ---------------------------------------------------------------------- -->
242
243
244<H3>Signal strength</H3>
245
246@@@
247
248
249<P>
250<HR>
251Up: <A href="index.html">Production and testing</A>&nbsp;
252Next: <A href="flash.html">Flashing (<B>atusb</B> only)</A>&nbsp;
253<HR>
254Last update: 2011-05-19&nbsp;&nbsp;<I>Werner Almesberger</I>
255<HR>
256</BODY>
257</HTML>
prod/doc/test.hmac
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<P>
204<HR>
205Last update: 2011-05-27&nbsp;&nbsp;<I>Werner Almesberger</I>
206<HR>
207</BODY>
208</HTML>
prod/doc/test.html
1<TITLE>Production and testing: Functional test</TITLE>
2<BODY>
3<HTML>
4<H1>Production and testing: Functional test</H1>
5
6
7<!-- ====================================================================== -->
8
9
10<H2>Test setup for atben</H2>
11
12To test an <B>atben</B> board, place a reference <B>atusb</B> board into
13the PC, insert the
14<P>
15<IMG src="setup-A.png">
16<P>
17
18
19<!-- ====================================================================== -->
20
21
22<H2>Test setup for atusb</H2>
23
24<P>
25<IMG src="setup-B.png">
26<P>
27
28
29<!-- ====================================================================== -->
30
31
32<H2>Test procedure</H2>
33
34The test process is started with
35<PRE>
36make ben
37</PRE>
38for an <B>atben</B> DUT and with
39<PRE>
40make usb
41</PRE>
42for an <B>atusb</B> DUT. It performs the following steps:
43<UL>
44  <LI>Enumeration (<B>atusb</B> only)
45  <LI>LED (<B>atusb</B> only; not yet implemented)
46  <LI>GPIO scan (not yet implemented)
47  <LI>Identification
48  <LI>Crystal frequency (only implemented on <B>atben</B>)
49  <LI>Spectrum
50  <LI>Receive
51  <LI>Send
52</UL>
53
54Of these tests, only "LED" and "Spectrum" require operator input. The
55other tests run without interaction.
56<P>
57The test scripts log the commands they execute and their output in the
58file <B>_log</B>.
59
60
61<!-- ---------------------------------------------------------------------- -->
62
63
64<H3>Enumeration (atusb only)</H3>
65
66The enumeration test verifies that the <B>atusb</B> board has been
67identified by the PC's USB stack. If this test fails, the board may
68not be plugged in correctly or it may be missing the firmware. A
69board that has passed both stages of the firmware flashing process
70should always pass the enumeration test.
71
72
73<!-- ---------------------------------------------------------------------- -->
74
75
76<H3>LED (atusb only)</H3>
77
78@@@
79
80
81<!-- ---------------------------------------------------------------------- -->
82
83
84<H3>GPIO scan</H3>
85
86@@@
87
88
89<!-- ---------------------------------------------------------------------- -->
90
91
92<H3>Identification</H3>
93
94This test reads the transceiver's registers that contain values identifying
95the manufacturer, the chip's part number, and the chip revision. If an
96<B>atusb</B> board fails this test, this probably means that the MISO signal
97between transceiver and the microcontroller has a problem.
98<P>
99On <B>atben</B>, failure may simply indicate an improperly
100inserted board. Eject the board, re-insert, and try again. If the test
101keeps on failing, this may indicate a problem with MOSI, MISO, nSEL,
102SCLK, the power supply, the crystal oscillator, or possibly the position
103of the transceiver chip.
104<P>
105Note: this test is meant as a higher level test. The GPIO test should
106eventually provide more detailed results for problems with the SPI interface.
107
108
109<!-- ---------------------------------------------------------------------- -->
110
111
112<H3>Crystal frequency (atben only)</H3>
113
114This test measures the frequency of the crystal oscillator in the DUT.
115On <B>atben</B>, it does this by transmitting packets, and measuring
116the time between the SLP_TR pulse that starts the transmission and the
117interrupt signaling the end of the transmission.
118<P>
119If this test fails, this may indicate that the load capacitors of the
120crystal are missing, badly soldered, or have the wrong value. It could
121also mean that the crystal itself is defective. Another possible cause
122of oscillator malfunction could be flux residues bridging traces.
123<P>
124The <A href="fault.html">fault analysis page</A> has more details on
125testing the crystal oscillator.
126
127
128<!-- ---------------------------------------------------------------------- -->
129
130
131<H3>Spectrum</H3>
132
133The spectrum test measures the reception of a signal sent from the
134reference device to the DUT. It does this across the entire frequency
135range in which the WPAN boards operate, allowing the detection of
136frequency-dependent anomalies.
137<P>
138This test depends on numerous external factors, like the exact position
139and orientation of the two devices with respect to each other, and the
140presence of any items that can reflect or absorb RF signals. Such items
141include metal chairs and human bodies. Because of the test's sensitivity
142to environmental factors, the operator needs to decide when the result
143represents a valid measurement and then confirm the result shown.
144<P>
145The image below shows the typical display during the spectrum test:
146the white line is the measured signal strength. The red lines indicate
147the minimum and maximum allowed values. The green circle in the upper
148right corner indicates that the signal strength is within the limits.
149A downward-pointing red triangle would indicate that the signal is too
150weak, an upward-pointing yellow triangle would indicate that the signal
151is too strong.
152<P>
153<A href="atrf-path.png"><IMG src="atrf-path-small.png"</A>
154<P>
155To finish the test, the operator must type either <B>P</B>, <B>F</B>,
156or <B>Q</B> in the window shown. <B>P</B> means "pass" and can only be
157entered if the measurement is within the limits. <B>F</B> means "fail"
158and can only be entered if the measurements is outside the limits.
159<B>Q</B>, quit, can be entered at any time and also fails the test.
160
161
162<!-- ---------------------------------------------------------------------- -->
163
164
165<H3>Receive</H3>
166
167In the receive test, the reference device sends a number of frames to the
168DUT. The test program verifies correct reception of all the frames. A
169device that has passed all the preceding tests should not encounter
170problems in the receive test. If it does, there may be a problem with
171the bypassing of the transceiver's 1.8 V supplies.
172
173
174<!-- ---------------------------------------------------------------------- -->
175
176
177<H3>Send</H3>
178
179The send test is like the receive test, but with the DUT acting as the
180sender and the reference acting as the receiver. If a device passes the
181receive test but fails the send test, there is probably an issue with
182the bypass capacitors of the analog 1.8 V supply.
183<P>
184Another possible cause could a problem with the SLP_TR signal. The
185GPIO test should eventually catch this issue, but it may currently
186remain undetected until the send test.
187
188<P>
189<HR>
190Up: <A href="index.html">Production and testing</A>&nbsp;
191Prev: <A href="flash.html">Flashing (<B>atusb</B> only)</A>&nbsp;
192Next: <A href="analysis.html">Fault analysis</A>&nbsp;
193<HR>
194Last update: 2011-05-26&nbsp;&nbsp;<I>Werner Almesberger</I>
195<HR>
196</BODY>
197</HTML>

Archive Download the corresponding diff file



interactive