mirror of
git://projects.qi-hardware.com/ben-wpan.git
synced 2024-11-09 10:50:37 +02:00
378 lines
11 KiB
Plaintext
378 lines
11 KiB
Plaintext
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML>
|
|
<TITLE>Production and testing: Software setup</TITLE>
|
|
<BODY bgcolor="#ffffff" link="#000000" vlink="#404040">
|
|
|
|
<INCLUDE file="style.inc">
|
|
|
|
<PAGE_BAR title="Production and testing">
|
|
<PAGE_CURR href="setup.html">Software setup</PAGE_CURR>
|
|
<PAGE_ITEM href="flash.html">Flashing</PAGE_ITEM>
|
|
<PAGE_ITEM href="test.html">Functional test</PAGE_ITEM>
|
|
<PAGE_ITEM href="analysis.html">Fault analysis</PAGE_ITEM>
|
|
</PAGE_BAR>
|
|
|
|
<SECTION_BAR>
|
|
<SECTION_ITEM href="#intro">Introduction</SECTION_ITEM>
|
|
<SECTION_ITEM href="#pcsw">PC installation</SECTION_ITEM>
|
|
<SECTION_ITEM href="#bensw">Ben installation</SECTION_ITEM>
|
|
<SECTION_ITEM href="#bensys">Ben setup</SECTION_ITEM>
|
|
<SECTION_ITEM href="#profiles">Test profiles</SECTION_ITEM>
|
|
</SECTION_BAR>
|
|
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
|
|
<SECTION ref="intro" title="Introduction">
|
|
|
|
Before performing production tests, various pieces of software
|
|
need to be installed on Ben and PC, and configuration settings may
|
|
have to be adjusted. The following sections describe the installation
|
|
and configuration process.
|
|
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
|
|
<SECTION ref="pcsw" title="PC software installation">
|
|
|
|
For a DUT and reference device role, the <B>ben-wpan</B> utilities
|
|
and the test scripts have to be installed on the PC. For flashing the
|
|
<B>atusb</B> application
|
|
firmware, also <B>dfu-util</B> and the firmware binary are required.
|
|
<P>
|
|
The instructions below assume that a complete development environment
|
|
is already present on the PC, including <B>SDL</B> and <B>SDL_gfx</B>.
|
|
If any prerequisites are not met,
|
|
compilation will fail, and you'll have to install the corresponding
|
|
package and try again.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install ben-wpan tools">
|
|
|
|
To build the ben-wpan tools and install them under
|
|
<SAMP>/usr/local/</SAMP> on the local machine,
|
|
run the following commands:
|
|
<PRE>
|
|
git clone git://projects.qi-hardware.com/ben-wpan.git
|
|
git clone git://projects.qi-hardware.com/f32xbase.git
|
|
cd ben-wpan/tools
|
|
make
|
|
make install
|
|
</PRE>
|
|
<P>
|
|
A different directory prefix can be chosen by overriding the
|
|
<B>INSTALL_PREFIX</B> variable, e.g.,
|
|
<PRE>
|
|
make INSTALL_PREFIX=/usr install
|
|
</PRE>
|
|
<P>
|
|
Note that the test scripts expect <SAMP>${INSTALL_PREFIX}/bin</SAMP>
|
|
to be in <B>PATH</B>.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install test scripts">
|
|
|
|
The test scripts are in the directory <SAMP>prod/</SAMP> of the
|
|
<B>ben-wpan</B> project. They currently are designed to be run from
|
|
this directory. Therefore, all that's necessary is to check out the
|
|
repository, as shown above.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install dfu-util">
|
|
|
|
<B>dfu-util</B> is used to transfer the application firmware to
|
|
<B>atusb</B> boards. To build <B>dfu-util</B> from source, run these
|
|
commands:
|
|
|
|
<PRE>
|
|
git clone git://git.openezx.org/dfu-util.git
|
|
cd dfu-util
|
|
./autogen.sh
|
|
./configure
|
|
make
|
|
make install
|
|
</PRE>
|
|
|
|
Note that some Linux distributions already provide a pre-compiled
|
|
version of <B>dfu-util</B>, which could be used instead of building
|
|
it from source.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install firmware binary">
|
|
|
|
The binary of the application running on <B>atusb</B> is transferred from
|
|
the PC. To download a pre-compiled version, use this command:
|
|
|
|
<PRE>
|
|
wget -O atusb.bin \
|
|
http://downloads.qi-hardware.com/people/werner/wpan/bindist/atusb-de72af351f661b538add81cbc9965278a2f8c40c.bin
|
|
</PRE>
|
|
|
|
Instructions for building the binary from sources are
|
|
<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Register Ben host name">
|
|
|
|
To simplify accessing the Ben via TCP/IP, its IP address should be
|
|
registered in the hosts file on the PC. If the Ben is running OpenWrt,
|
|
use the following command:
|
|
<PRE>
|
|
echo 192.168.254.101 ben >>/etc/hosts
|
|
</PRE>
|
|
<P>
|
|
If the Ben is running Jlime, the address would be as follows:
|
|
<PRE>
|
|
echo 192.168.1.202 ben >>/etc/hosts
|
|
</PRE>
|
|
<P>
|
|
If using the same PC with Bens running OpenWrt and Jlime, one may choose
|
|
different host names depending on the distribution, and adapt the commands
|
|
used in the production and testing process accordingly. For example,
|
|
<PRE>
|
|
echo 192.168.254.101 ben >>/etc/hosts
|
|
echo 192.168.1.202 jlime >>/etc/hosts
|
|
</PRE>
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Customize test scripts">
|
|
|
|
If using <SAMP>prod/Makefile</SAMP> to run the production test process,
|
|
the names of the drivers for DUT and reference device are defined
|
|
through variables at the beginning of the Makefile. In particular,
|
|
if the host name or IP address under which the Ben is reached differs from
|
|
"ben", the value of <B>ATBEN_DUT</B> and <B>ATUSB_REF</B> will have be
|
|
changed accordingly.
|
|
<P>
|
|
The scripts <SAMP>atusb</SAMP> and <SAMP>atusb-flash</SAMP> also contain
|
|
configuration variables. If the names of the files containing the
|
|
<B>atusb</B> firmware binaries are not <SAMP>boot.hex</SAMP> and
|
|
<SAMP>atusb.bin</SAMP>, <SAMP>atusb-flash</SAMP> needs to be adapted.
|
|
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
|
|
<SECTION ref="bensw" title="Ben software installation">
|
|
|
|
For a DUT and reference device role, the <B>ben-wpan</B> utilities
|
|
have to be installed on a Ben. For flashing the <B>atusb</B> boot
|
|
loader, also <B>avrdude</B> and the boot loader binary are needed.
|
|
<P>
|
|
The instructions below apply for OpenWrt and Jlime. For building
|
|
things from source, a cross-compilation toolchain has to be installed
|
|
on the PC.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Password-less remote access">
|
|
|
|
To enable password-less remote access from the PC, set up network
|
|
access to the Ben and run the following command:
|
|
<PRE>
|
|
ssh ben 'cat >>/etc/dropbear/authorized_keys' <~/.ssh/id_rsa.pub
|
|
</PRE>
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install ben-wpan tools">
|
|
|
|
To build and install the <B>ben-wpan</B> tools on the Ben, first set
|
|
up networking between the PC and the Ben. If you have not yet checked
|
|
out the project's repository, run these commands:
|
|
|
|
<PRE>
|
|
git clone git://projects.qi-hardware.com/ben-wpan.git
|
|
git clone git://projects.qi-hardware.com/f32xbase.git
|
|
cd ben-wpan/tools
|
|
</PRE>
|
|
|
|
If you have already checked out the repository, <B>cd</B> to
|
|
<SAMP>ben-wpan/tools/</SAMP> and run
|
|
|
|
<PRE>
|
|
make clean
|
|
</PRE>
|
|
|
|
Next, if on OpenWrt, compile the tools with
|
|
<PRE>
|
|
make TARGET=ben_openwrt
|
|
</PRE>
|
|
|
|
If on Jlime, use
|
|
<PRE>
|
|
make TARGET=ben_jlime
|
|
</PRE>
|
|
|
|
Finally, upload the tools to the Ben and install them under
|
|
<SAMP>/usr/bin/</SAMP> with
|
|
|
|
<PRE>
|
|
make HOST=ben install
|
|
</PRE>
|
|
|
|
Where <B>ben</B> is the host name or IP address assigned to the Ben.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install avrdude">
|
|
|
|
The <B>atusb</B> boot loader is flashed using <B>avrdude</B>. A pre-compiled
|
|
static binary (suitable for OpenWrt and Jlime) can be installed by running
|
|
the following two command on the Ben:
|
|
|
|
<PRE>
|
|
wget http://downloads.qi-hardware.com/people/werner/wpan/bindist/avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
|
|
tar -xz -C / -f avrdude-5.10-de72af351f661b538add81cbc9965278a2f8c40c.tar.gz
|
|
</PRE>
|
|
|
|
Instructions for building <B>avrdude</B> from sources are
|
|
<A href="http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/avrdude/README
|
|
">here</A>.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Install boot-loader binary">
|
|
|
|
The binary of the boot loader running on <B>atusb</B> is transferred from
|
|
the Ben. To download a pre-compiled version, use this command:
|
|
|
|
<PRE>
|
|
wget -O boot.hex \
|
|
http://downloads.qi-hardware.com/people/werner/wpan/bindist/boot-de72af351f661b538add81cbc9965278a2f8c40c.hex
|
|
</PRE>
|
|
|
|
Instructions for building the binary from sources are
|
|
<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw/README">here</A>.
|
|
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
|
|
<SECTION ref="bensys" title="Ben system setup">
|
|
|
|
The configuration setting described in this section are lost on each
|
|
reset or reboot and either need to be entered again. Alternatively,
|
|
a setup script running at boot time can be written.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Enable network access">
|
|
|
|
Once the Ben has booted and started USB networking, the interface
|
|
on the PC side is configured as follows:
|
|
<PRE>
|
|
ifconfig usb0 192.168.254.100 up
|
|
</PRE>
|
|
<P>
|
|
These are the settings for OpenWrt, assuming the network device is
|
|
called "usb0". If using Jlime, the command would be as follows:
|
|
<PRE>
|
|
ifconfig usb0 192.168.1.200 up
|
|
</PRE>
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Silence other 8:10 card users">
|
|
|
|
Before running any of the ben-wpan utilities, other users of the 8:10
|
|
card slot have to be disabled. In a Ben running the regular OpenWrt or
|
|
Jlime distribution, the only such user that is automatically started
|
|
is the MMC kernel driver. The following command disables it:
|
|
<PRE>
|
|
echo jz4740-mmc.0 >/sys/bus/platform/drivers/jz4740-mmc/unbind
|
|
</PRE>
|
|
<P>
|
|
If a WPAN-enabled kernel has been installed, the AT86RF230 driver takes
|
|
the place of the MMC driver. To disable it, run
|
|
<PRE>
|
|
echo spi2.0 >/sys/bus/spi/drivers/at86rf230/unbind
|
|
</PRE>
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Start atrf-proxy">
|
|
|
|
On the Ben, launch the proxy daemon. We pass the option -b to background it:
|
|
<PRE>
|
|
atrf-proxy -b
|
|
</PRE>
|
|
|
|
|
|
<!-- ====================================================================== -->
|
|
|
|
|
|
<SECTION ref="profiles" title="Test profiles">
|
|
|
|
Some of the functional tests measure characteristics that are strongly
|
|
influenced by the test setup. It is therefore not possible to provide
|
|
universally applicable reference values, but they have to be measured
|
|
in the actual test environment.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Clock count (atben only)">
|
|
|
|
Insert a known to be good <B>atben</B> board and run the following
|
|
command directly on the Ben to record the reference value for the
|
|
clock count with an accuracy of about +/−20 ppm:
|
|
<PRE>
|
|
atrf-xtal 1000 >ben.xtal
|
|
</PRE>
|
|
<P>
|
|
This takes about 5 seconds.
|
|
<P>
|
|
Note that the result depends on the tolerance of the crystal in the Ben
|
|
and is also affected by temperature. Good accuracy can therefore
|
|
only be obtained if this measurement is performed individually on each
|
|
Ben, and if a stable temperature is maintained.
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
|
|
<SUBSECTION title="Signal strength">
|
|
|
|
@@@
|
|
|
|
|
|
<END author="Werner Almesberger" date="<GEN_DATE>">
|
|
</BODY>
|
|
</HTML>
|