mirror of
git://projects.qi-hardware.com/ben-wpan.git
synced 2024-12-23 16:53:21 +02:00
181 lines
7.4 KiB
HTML
181 lines
7.4 KiB
HTML
<HTML>
|
|
<TITLE>
|
|
Ben-WPAN Overview
|
|
</TITLE>
|
|
<BODY>
|
|
|
|
<H1>Ben-WPAN Overview</H1>
|
|
|
|
Ben-WPAN is a hardware and software effort within the
|
|
<A href="http://en.qi-hardware.com/wiki/Main_Page">Qi-Hardware</A> project.
|
|
The objective is to enable the
|
|
<A href="http://en.qi-hardware.com/wiki/Ben_NanoNote">Ben NanoNote</A>
|
|
to communicate wirelessly using IEEE 802.15.4-based protocols.
|
|
<BR>
|
|
All elements of the project are licensed
|
|
under open licenses, such as the GPLv2+, LGPLv2.1+, and CC-BY-SA 3.0.
|
|
Furthermore, only Free tools were used for the electronic design,
|
|
such as the
|
|
GPL-licensed <A href="http://www.lis.inpg.fr/realise_au_lis/kicad/">Kicad</A>.
|
|
<BR>
|
|
This page is a brief summary. For background information and further
|
|
details, please visit the
|
|
<A href="http://en.qi-hardware.com/wiki/Ben_WPAN">wiki page</A>.
|
|
<P>
|
|
A first run of <B>atben</B> and <B>atusb</B> boards has been produced
|
|
by <A href="http://www.tuxbrain.com/en">Tuxbrain S.L.</A> and is available
|
|
for sale.
|
|
<P>
|
|
<TABLE>
|
|
<TR>
|
|
<TD><A href="800px-Atben_atusb_prod_03.jpg"><IMG
|
|
src="atben-pcba-small.jpg"></A>
|
|
<TD><A href="800px-Atben_atusb_prod_07.jpg"><IMG
|
|
src="atben-use-small.jpg"></A>
|
|
<TD><A href="800px-Atben_atusb_prod_05.jpg"><IMG
|
|
src="atusb-pcba-small.jpg"></A>
|
|
<TD><A href="zoom.html"><IMG
|
|
src="atusb-use-small.jpg"></A>
|
|
<TR bgcolor="#d0d0d0">
|
|
<TH colspan="2">atben (for the Ben NanoNote)
|
|
<TH colspan="2">atusb (Full-Speed USB)
|
|
</TABLE>
|
|
|
|
|
|
<H2>Hardware</H2>
|
|
|
|
Both boards are based on the Atmel
|
|
<A href="http://www.atmel.com/dyn/products/product_card.asp?part_id=4338">
|
|
AT86RF231</A> transceiver. They operate in the license-free 2.4 GHz band
|
|
using the
|
|
<A href="http://en.wikipedia.org/wiki/IEEE_802.15.4">IEEE 802.15.4</A>
|
|
physical and link layer.
|
|
<BR>
|
|
Note that IEEE 802.15.4 is different from
|
|
<A href="http://en.wikipedia.org/wiki/IEEE_802.11">IEEE 802.11</A> (WLAN)
|
|
and <A href="http://en.wikipedia.org/wiki/Bluetooth">IEEE 802.15.1</A>
|
|
(Bluetooth).
|
|
<P>
|
|
Both boards transmit with a maximum power of 2 mW (+3 dBm) over a
|
|
distance of up to about 10 m in a typical indoors environment.
|
|
<BR>
|
|
The standard data rate of IEEE 802.15.4 is 250 kbps. The transceiver
|
|
supports non-standard rates of up to 2 Mbps, with a reduced range.
|
|
|
|
|
|
<H2>Compatibility</H2>
|
|
|
|
<B>atben</B> and <B>atusb</B> can communicate at the physical and link
|
|
layer with any device that implements the
|
|
<A href="http://standards.ieee.org/getieee802/download/802.15.4-2006.pdf">IEEE
|
|
802.15.4-2006 standard</A> for the 2.4 GHz band.
|
|
<BR>
|
|
This includes <B>atben</B> with <B>atusb</B>, <B>atben</B> with <B>atben</B>,
|
|
etc. There are
|
|
<A href="http://sourceforge.net/apps/trac/linux-zigbee/wiki/HardwareSupport">many
|
|
more</A> IEEE 802.15.4 devices, which should also interoperate with the
|
|
Ben-WPAN boards.
|
|
<P>
|
|
<B>atben</B> plugs into the Ben's
|
|
<A href="http://lists.en.qi-hardware.com/pipermail/discussion/2011-January/006908.html">8:10 card</A> slot.
|
|
Note that it is <U>not</U> an SDIO card.
|
|
<P>
|
|
<B>atusb</B> is designed for USB 2.0 Full-Speed and has an USB A connector.
|
|
The host needs suitable drivers for the board.
|
|
|
|
|
|
<H2>Software</H2>
|
|
|
|
The ultimate goal is to fully support IPv6 with
|
|
<A href="http://en.wikipedia.org/wiki/6LoWPAN">6LoWPAN</A>, in
|
|
cooperation with the
|
|
<A href="http://sourceforge.net/apps/trac/linux-zigbee/">linux-zigbee</A>
|
|
project. This work is still in progress and may take a while.
|
|
<P>
|
|
To make use of the boards while working on IPv6, we have developed a quick
|
|
and dirty tunnelling mechanism for IPv4. A video demonstrating its use
|
|
can be seen
|
|
<A href="http://downloads.qi-hardware.com/people/werner/wpan/tmp/wpan-ipv4.ogg">here</A>.
|
|
<P>
|
|
<B>atben</B> has no local "intelligence" and its SPI interface is
|
|
bit-banged directly by the Ben.
|
|
<BR><B>atusb</B> uses an
|
|
Atmel
|
|
<A href="http://www.atmel.com/dyn/products/product_card.asp?part_id=4602">
|
|
ATmega32U2</A> microcontroller to interface between USB and SPI with
|
|
a homebrewn protocol on top of USB.
|
|
<BR>
|
|
The firmware includes a boot loader allowing easy firmware updates in the
|
|
field with the
|
|
<A href="http://www.usb.org/developers/devclass_docs/DFU_1.1.pdf">DFU</A>
|
|
protocol.
|
|
<BR>
|
|
This boot loader occupies 4 kB of the 32 kB of Flash memory in
|
|
<B>atusb</B>. The "application" uses another 6 kB. Developers
|
|
wishing to extend or replace the firmware thus have between 22 and
|
|
28 kB available for experiments.
|
|
<P>
|
|
While not an immediate project goal, it may be possible to
|
|
write firmware for <B>atusb</B> that turns it into a transparent
|
|
gateway for legacy operating systems and protocols.
|
|
|
|
|
|
<H2>Status and resources</H2>
|
|
|
|
Here is an overview of the status of the various project elements:
|
|
<P>
|
|
<TABLE>
|
|
<TR bgcolor="#d0d0d0"><TH>Element<TH>Status<TH>Links
|
|
<TR><TH align="left">Schematics<TD bgcolor="#80ff80" align="center">Done
|
|
<TD><A href="http://projects.qi-hardware.com/schhist/atben/">atben</A>,
|
|
<A href="http://projects.qi-hardware.com/schhist/atusb/">atusb</A>
|
|
<TR><TH align="left">Layout<TD bgcolor="#80ff80" align="center">Done
|
|
<TD><A href="http://downloads.qi-hardware.com/people/werner/wpan/tmp/atben-110324-overview.png">atben</A>,
|
|
<A href="http://downloads.qi-hardware.com/people/werner/wpan/tmp/atusb-110330-overview.png">atusb</A>
|
|
<TR><TH align="left">Test software<TD bgcolor="#80ff80" align="center">Done
|
|
<TD><A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/prod">scripts</A>,
|
|
<A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/tools">tools</A>,
|
|
<A href="http://downloads.qi-hardware.com/people/werner/wpan/prod/">description</A>
|
|
<TR><TH align="left">Production<TD bgcolor="#80ff80" align="center">Done
|
|
<TD><A href="http://en.qi-hardware.com/wiki/Ben_WPAN#Production_Notes">Production notes</A>
|
|
<TR><TH align="left">Firmware<TD bgcolor="#ffff00" align="center">
|
|
Finishing
|
|
<TD><A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/atusb/fw">source</A>
|
|
<TR><TH align="left">Device driver<TD bgcolor="#ffff00" align="center">
|
|
In progress
|
|
<TD><A href="http://sourceforge.net/apps/trac/linux-zigbee/">linux-zigbee project</A>,
|
|
<A href="http://projects.qi-hardware.com/index.php/p/qi-kernel/source/tree/ben-wpan/drivers/ieee802154">ben-wpan kernel branch</A>
|
|
<TR><TH align="left">MAC layer<TD bgcolor="#ffff00" align="center">
|
|
In progress
|
|
<TD><A href="http://sourceforge.net/apps/trac/linux-zigbee/">linux-zigbee project
|
|
<TR><TH align="left">IPv4 hack<TD bgcolor="#80ff80" align="center">Done
|
|
<TD><A href="http://projects.qi-hardware.com/index.php/p/ben-wpan/source/tree/master/tools/dirtpan">dirtpan</A>
|
|
<TR><TH align="left">6LoWPAN stack<TD bgcolor="#ff8080" align="center">To do
|
|
</TABLE>
|
|
<P>
|
|
|
|
|
|
<H2>Further reading</H2>
|
|
|
|
We have a more detailed
|
|
<A href="http://en.qi-hardware.com/wiki/Ben_WPAN">wiki page</A>.
|
|
<BR>
|
|
Discussions related to the project take place on the Qi-Hardware
|
|
<A href="http://lists.en.qi-hardware.com/mailman/listinfo/discussion">mailing
|
|
list</A> and on the
|
|
<A href="http://webchat.freenode.net/?randomnick=1&channels=qi-hardware">#qi-hardware
|
|
channel</A> on
|
|
<A href="http://freenode.net/">freenode</A>.
|
|
<BR>
|
|
Tuxbrain have a
|
|
<A href="http://www.tuxbrain.com/en/content/free-and-open-replacement-wireless-lan">description</A>
|
|
with additional pictures and a link to their
|
|
<A href="https://www.tuxbrain.net/shop/index.php?cPath=347">shop</A>.
|
|
<P>
|
|
<HR>
|
|
Last update: 2011-06-15
|
|
<A href="mailto:werner@almesberger.net"><I>Werner Almesberger</I></A>
|
|
<HR>
|
|
</BODY>
|
|
</HTML>
|