---------- Forwarded message ---------- From: Erwing Sánchez <[EMAIL PROTECTED]> Date: May 10, 2007 2:41 PM Subject: Re: [Tinyos-help] Tmote CC2420 MAC payload length To: Ole Bischoff <[EMAIL PROTECTED]>
Hi, I actually tryed that too. But it did not work, which I believe is correct because I'm not working with TOS_msg. Instead, I create my own 'struct' which is similiar to the TOS_msg struct but with less control fields. Besides, I do not use any component that implements something like a send() command. Basically, I'm working on top of the "HPLCC2420" component, which means that for sending I send directly the bytes trhough the UART to the CC2420 TX-FIFO. Thanks for your comment, if you have any other idea I'll really appreciate it. Regards! Erwing On 5/10/07, Ole Bischoff <[EMAIL PROTECTED]> wrote:
Hi Erwing, did you also changed (increased) TOSH_DATA_LENGTH in your Makefile? Because in most implementations of the send() command there is something like: command result_t Send.send[uint8_t id](TOS_MsgPtr _msg, uint16_t _length) { TOS_MHopMsg* _mhopmsg = (TOS_MHopMsg*)_msg->data; uint16_t _mhlength = offsetof(TOS_MHopMsg,data) + _length; if (_mhlength > TOSH_DATA_LENGTH){ return FAIL; } If a message is longer than TOSH_DATA_LENGTH it will be dropped. So if you didn't already consider this fact you'll have to adjust TOSH_DATA_LENGTH. Regards, OLE ________________________________ Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Erwing Sánchez Gesendet: Donnerstag, 10. Mai 2007 12:03 An: tinyos-help@Millennium.Berkeley.EDU Betreff: [Tinyos-help] Tmote CC2420 MAC payload length Hi everybody: I'm currently trying to develop a forward error correction algorithm above the IEEE 802.15.4 protocol stack of the CC2420 module in the Tmote Sky platform. Basically, I get rid of all TOS packets and go to the lowest level to work almost directly with the physical frame that is send through the CC2420 module. So, I'm working with the frame that is shown in the CC2420 datasheet (http://www.chipcon.com/files/CC2420_Data_Sheet_1_3.pdf) in page 36. I'm getting a lot of trouble trying to send a full-length message, that is a 127-byte frame. Basically, I'm not able to send MAC payloads higher than 39 bytes... for some strange reason when I try to send 40 or more bytes in the MAC payload, the message does not go away! Does anyone have any idea why this could be happening? I've been working on that for a couple of weeks and cannot find out anything! Allow me to explain a little bit better how I'm implementing this experiment. Basically, I'm working on top of the "HPLCC2420C" component that is part of the TinyOS distribution from Moteiv. As you probably know, within that component most of the CC2420 chip parameters may be defined (including internal control registers and physical frame fields). To tell you the truth, I reutilize most of the controlling parameters that are found in "CC2420ControlM" component, where CC2420 internal registers are configured. I also create an structure for sending the package where I defined the following fields: uint8_t length; uint8_t fcfhi; uint8_t fcflo; uint8_t dsn; uint16_t destpan; uint16_t addr; uint8_t *Data; These fields are, essentially, the same as in the CC2420 datasheet. As you can see, I use 8 bytes for controlling fields (length, fcfhi, fcflo, dsn, destpan, addr). According to CC2420 datasheet, I can use other 119 bytes for MAC payload. However as I said before I'm able to send just 39 bytes because for some reason it stops sending when I try to send a longer payload!!! I'd really appreciate if you have any idea that I can use. Probably something that has to do with CC2420 configuration. Thanks! Erwing Sanchez __________________________________________________ Correo Yahoo! Espacio para todos tus mensajes, antivirus y antispam ¡gratis! Regístrate ya - http://correo.espanol.yahoo.com/
_______________________________________________ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help