Hello,

I am using a modified version of BlinkToRadio for my
experiments and I would like to have the rssi & lqi from
the packet.  I have a receive event like this:

  event message_t* Receive.receive(message_t* msg, void*
payload, uint8_t len) {
    if (len == sizeof(BlinkToRadioMsg)) {
      ...
      MsgArr[rcvCntr].nodeid = btrpkt->nodeid;
//      MsgArr[rcvCntr].counter = -50 * 3 *
(msg->metadata[1]/1024) - 45.5;
      MsgArr[rcvCntr].counter = msg->metadata[1] - 45;
      rcvCntr++;
    }
    return msg;
  }

I notice that message_t is like this:
typedef nx_struct message_t {
  nx_uint8_t header[sizeof(message_header_t)];
  nx_uint8_t data[TOSH_DATA_LENGTH];
  nx_uint8_t footer[sizeof(message_footer_t)];
  nx_uint8_t metadata[sizeof(message_metadata_t)];
} message_t;

and metadata looks like this:

typedef nx_struct cc2420_metadata_t {
  nx_uint8_t tx_power;
  nx_uint8_t rssi;
  nx_uint8_t lqi;
  nx_bool crc;
  nx_bool ack;
  nx_uint16_t time;
} cc2420_metadata_t;

So can I just access these things out of the metadata array
like this:

msg->metadata[1]; // for rssi
msg->metadata[2]; // for lqi

Also what is with all of these formulas?  I read the
datasheet and I understand the formula.  What is not clear
is if I need to use it or not.  Am I reading the raw ADC? 
Am I reading anything at all?

Daniel M. Havey 
Academic Resume:
http://myprofile.cos.com/dhavey


       
____________________________________________________________________________________
Yahoo! oneSearch: Finally, mobile search 
that gives answers, not web links. 
http://mobile.yahoo.com/mobileweb/onesearch?refer=1ONXIC
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to