1
0
mirror of git://projects.qi-hardware.com/ben-wpan.git synced 2025-02-02 04:31:06 +02:00
Werner Almesberger 42483d67b4 atusb/fw/: added improved support for interrupt synchronization
At an interrupt barrier, the host must be able to ensure that no
interrupt generated before reaching the barrier is still pending and
will be delivered after crossing the barrier.

For this, we introduce the following concept:

- interrupts have a serial number. This number is sent to the host
  on EP 1 (currently bulk) to signal the interrupt, instead of the
  zero byte we used previously.

- the new request ATUSB_SPI_WRITE2_SYNC returns the interrupt
  serial number from after the register write (the register write
  itself is the interrupt barrier).

- the host can now check if the serial indicated from bulk and the
  serial from ATUSB_SPI_WRITE2_SYNC are the same. If yes, interrupts
  are synchronized. If not, it has to wait for the interrupt to be
  signaled on EP 1.

We should also consider the case that the interrupt serial has gotten
ahead of ATUSB_SPI_WRITE2_SYNC. But that seems to happen rarely. In
any case, it's something for the host driver to worry about, not for
the firmware.

- board.h (irq_serial), board_app.c (irq_serial, INT0_vect): count
  the interrupt serial number and return it when signaling the
  interrupt
- include/atusb/ep0.h (ATUSB_SPI_WRITE2_SYNC), ep0.c (my_setup):
  new request ATUSB_SPI_WRITE2_SYNC that does a register write, then
  returns the interrupt serial
2011-07-07 15:51:07 -03:00
2010-10-03 21:56:22 -03:00

IEEE 802.15.4 Low-Rate Wireless Personal Area Network (WPAN)
============================================================


IEEE 802.15.4 defines physical layers and a media access control for
wireless networks. ZigBee and 6loWPAN are based on IEEE 802.15.4.

This project aims to add experimental WPAN functionality to the Ben
NanoNote, in order to permit evaluation of overall network performance
and to examine possible integration into future devices.

This work is licensed under the terms detailed in the file COPYING.


Hardware architecture
---------------------

IEEE 802.15.4 transceiver chips are available from several manufacturers,
including Atmel, Freescale, and Texas Instruments. These chips are similar
in size, functionality, and cost. The first prototype is based on the
Atmel AT86RF230.

The RF module will be physically placed on the left side of the LCD
module, replacing part of the display's PCB.

When installed in the Ben, the transceiver will connect directly via SPI
to the Jz4720. For development, a SiLabs C8051F326 microcontroller
implements a USB to SPI conversion.
Description
IEEE 802.15.4 subsystem, IEEE 802.15.4 Low-Rate Wireless Personal Area Network (WPAN)
http://projects.qi-hardware.com/index.php/p/ben-wpan/
Readme 3 MiB
Languages
C 78.5%
Makefile 8.7%
Shell 5.7%
Perl 3.3%
HTML 2.6%
Other 1.2%