Dmitry Eremin-Solenikov wrote: > Basically CSMA-CA and ACK without hw assistance won't meet necessary > time constraints. We did have implementation (kinda of) of those features > in mac802154 for some time, but then I had to kill them, as they were useless > and wrong.
Hmm, if I get all the equations right, that maximum turn-around time at the receiver should be 500 us for the 2.4 GHz PHY. That doesn't sound impossible, but one would certainly have to optimize the stack a little, change it towards a more asynchronous model, and pushing the choice whether to sleep or not into the drivers. > Who knows whether they had define new security standard in the -2011 > version of standard or will define it soon. Heh ;-) Here's a fitting oxymoron: long-lived wireless link-layer security :-) > I have one thought on atusb stick you are working on. IIUC, you are > trying to make an MCU a simple passthrough which will just forward > register access commands to AT86 radio. Yup. > I think that it may be better > to implement more smart firmware at MCU (ATmega?) Yes, it's an ATmega32U2. By the way, I made an overview page of the Ben-WPAN project: http://downloads.qi-hardware.com/people/werner/wpan/web/ > 1) you won't have to implement strange split of AT86RF230 driver > 2) one may implement more interesting features in firmware (like > timed beacons, etc). The register access side of the split is very easy and clean. I'm having more trouble finding a clean division at the entry (SPI driver) side. I'm considering to just make it look like an SPI host, then special-case only SLP_TR, nRST, and maybe the interrupt. The "smart" firmware idea is something I was thinking of for the longer term. There are certain heavily used sequences that could be optimized that way, e.g., RX mode -> interrupt -> read IRQ_STATUS -> ah, it's TRX_END -> copy the frame -> send TRX_END content plus frame over USB. At the moment, the driver does very little but TX/RX, so doing all the work in the MCU would look good. However, in the long run, it would have to take care of more complex setup tasks (address match, ARQ, CSMA, etc.), and also one or two periodic management tasks that interfere with the simple RX/TX state machine, i.e., the calibrations. I don't like the idea of duplicating the configuration code or of creating a "wide" device interface that tracks the interface between IEEE 802.15.4 stack and driver. But if the setup code could be shared among AT86RF23x drivers, a combination of "dumb" register access and a "smart" main loop may not look too bad. What do you think ? > Basically I was looking for expansible protocol, without special cases > on protocol level (vs. serial proto) and with possibility for both sides > to send data that the other side will be able to drop/ignore correctly. Hmm, sounds a bit heavy. I'd rather have the kernel do as much as possible, with a lean firmware. Debugging kernel code is easier than debugging firmware code :-) - Werner ------------------------------------------------------------------------------ EditLive Enterprise is the world's most technically advanced content authoring tool. Experience the power of Track Changes, Inline Image Editing and ensure content is compliant with Accessibility Checking. http://p.sf.net/sfu/ephox-dev2dev _______________________________________________ Linux-zigbee-devel mailing list Linux-zigbee-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel