Yes, I now, If you check this test applications: apps/tests/cc2420/RssiToSerial/ apps/tutorials/RssiDemo/
The raw value is a 8 bit in fact. But when you try to convert it, you get an value with 8 bits with signal. Then you need one more bit, so we use 16bit. That why I and everybody use a cast to 16bit, this way never lose data. You still can translate the rssi outside the node's code. It's up to you. Miguel Silva 2009/8/17 Matteo Dany <[email protected]>: > Ok, you translate the rssi inside the program installed on mote. > > But, why you cast a 16 bit the rssi? The function getRssi return a 8 > bit with platform tmote. > > Thanks > > 2009/8/17 Miguel Torres <[email protected]>: >> Hi Matteo Dany, >> >> You only need to make this. For CC2420 and RF230. >> >> #if defined(PLATFORM_TELOSB) || defined(PLATFORM_TMOTE) >> int16_t getRssi(message_t *msg){ >> int16_t rssi_raw = (int16_t) call CC2420Packet.getRssi(msg); >> if (rssi_raw > 0x80) >> rssi_raw = rssi_raw - 256 - 45; >> else >> rssi_raw = rssi_raw - 45; >> return (int16_t) rssi_raw; >> } >> #elif defined(PLATFORM_IRIS) >> int16_t getRssi(message_t *msg){ >> if(call PacketField.isSet(msg)) >> return (int16_t) call PacketField.get(msg); >> else >> return 0xFFFF; >> } >> #else >> #error Radio chip not supported! Currently only works for motes with >> CC2420 or RF230 radios. >> #endif >> >> Best regards, >> Miguel Silva >> >> ---------- Mensagem reencaminhada ---------- >> From: Mehmet Akif Antepli <[email protected]> >> To: Matteo Dany <[email protected]> >> Date: Sun, 16 Aug 2009 02:50:11 -0700 >> Subject: Re: [Tinyos-help] Help- Rssi and field group id >> Yes, that's correct. >> >> On Sun, Aug 16, 2009 at 2:43 AM, Matteo Dany <[email protected]> wrote: >> >> Thanks, >> >> I should understand, I read the rssi from a serial packet with an >> program write in C. >> I put the rssi in a char and subtract -45. >> It's right? >> >> Thanks >> >> 2009/8/16 Mehmet Akif Antepli <[email protected]>: >> > Hi Matteo, >> > You should interpret rssi reading as signed 8 bit value in 2's >> complement >> > form. >> > (From Page 64 of 87: CC2420 datasheet) >> > "RSSI (0x13) - RSSI and CCA Status and Control Register" part >> > On Sun, Aug 16, 2009 at 1:09 AM, Matteo Dany >> <[email protected]> wrote: >> >> >> >> Hi guys, >> >> >> >> I have a tmote sky and I search to read a Rssi, but I have little >> >> problem with convert Rssi . >> >> I read correctly the Rssi from radio message and the value appears in >> >> a range 0, 255. But how convert the value in dbm? >> >> I search in google and I read the CC2420 datasheet, they suggest to >> >> subtract -45 to the value found. >> >> When I found 255 - 45 = 210 dbm? I read in the datasheet that the >> >> range is from 0 to -100 dbm. >> >> Where I wrong? >> >> >> >> >> >> Thank you very much >> >> >> >> Matt >> >> _______________________________________________ >> >> Tinyos-help mailing list >> >> [email protected] >> >> >> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >> > >> > >> > >> > -- >> > Mehmet Akif Antepli >> > Grad. Student >> > Dept. of EEE >> > Middle East Technical University >> > >> >> -- >> Miguel Torres Silva >> > -- Miguel Torres Silva _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
