Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-19 Thread Sam Pierson
I should rephrase my question, after thinking about it more.  While
the micaz packets are being forwarded over the serial port, they're
being rewritten into the old mica2 format.  The mica2 TOS_Msg-strength
member is declared as uint16_t while the same micaz member is
declared as an eight bit value and the signal reading don't make much
sense at this point.

Does anyone know a way to accurately determine the signal strength
of incoming RF packets to a micaz mote, while fixing the problem
above?

Thanks,

On 1/18/06, Sam Pierson [EMAIL PROTECTED] wrote:
 Last question on the subject:  I'm using micaz motes and
 in tos/platform/micaz/AM.h, TOS_Msg-strength is listed
 as type uint8_t and in tos/types/AM.h, TOS_Msg-strength
 is listed as type uint16_t.

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-19 Thread Sam Pierson
I tried an interesting thing today, suggested to me by one of my
professors:  Copy the TOS_Msg-strength to the data section
before TOSBase actually sends it over the UART.

I did this:

pBuf-data[2]=pBuf-strength;
pBuf-data[1]=0x99;

And then from there, examine the raw packet.  The values that
are copied into the data section are nothing like the 16 bits being
called strength under the old AM.h.  Though, the values that I
copy into the data section change as I move the motes away
from each other.  When I leave the motes at a constant distance
apart, the values stay very close together (vary by 1).

I checked the CC2420 Manual and it says that it reports the RSSI
in a range of 0-255, called LQI, link quality indicator.

Any guesses to whether the 8 bits being copied into the data
section are really the signal strength?  Funny thing is, it really
only goes from about 0xFF down to about 0xD2.   I would *assume*
that any signals lower than this cannot actually be picked up and
are therefore dropped anyway.

-Sam Pierson

On 1/19/06, Michael Schippling [EMAIL PROTECTED] wrote:
 again I could be wrong about thisbut my one excursion into reading
 radio strength on the host side indicated that it is not actually being
 sent from TOSBase. I'd like to be proved wrong on that though.

 As long as you are within the TOS system itself, then everyone is
 using the same TOSMsg struct and you are not faced with field
 conversions.

 You might want to look through the CC2420 code in platform/micaz
 and see where the ADC is being pinged for the RSSI value, and what
 part of the 10bits is being truncated into the 8bit field.

 MS
--
Sam Pierson

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-19 Thread Michael Schippling

Sure sure, copy rssi into the message someplace, assuming you
have reserved a place for it in your msg struct. This makes TOSBase
rather project dependent...

I'd have to read through the CC doc, code, and schematic to see
what exactly is being done with the strength value. I do see from
my own trivial experiments that the 'Z strength varies only a little
between pretty-high, a little-lower, and no-reception.

I wonder if anyone who actually worked on this can comment cogently?
MS


Sam Pierson wrote:

I tried an interesting thing today, suggested to me by one of my
professors:  Copy the TOS_Msg-strength to the data section
before TOSBase actually sends it over the UART.

I did this:

pBuf-data[2]=pBuf-strength;
pBuf-data[1]=0x99;

And then from there, examine the raw packet.  The values that
are copied into the data section are nothing like the 16 bits being
called strength under the old AM.h.  Though, the values that I
copy into the data section change as I move the motes away
from each other.  When I leave the motes at a constant distance
apart, the values stay very close together (vary by 1).

I checked the CC2420 Manual and it says that it reports the RSSI
in a range of 0-255, called LQI, link quality indicator.

Any guesses to whether the 8 bits being copied into the data
section are really the signal strength?  Funny thing is, it really
only goes from about 0xFF down to about 0xD2.   I would *assume*
that any signals lower than this cannot actually be picked up and
are therefore dropped anyway.

-Sam Pierson

On 1/19/06, Michael Schippling [EMAIL PROTECTED] wrote:

again I could be wrong about thisbut my one excursion into reading
radio strength on the host side indicated that it is not actually being
sent from TOSBase. I'd like to be proved wrong on that though.

As long as you are within the TOS system itself, then everyone is
using the same TOSMsg struct and you are not faced with field
conversions.

You might want to look through the CC2420 code in platform/micaz
and see where the ADC is being pinged for the RSSI value, and what
part of the 10bits is being truncated into the 8bit field.

MS

--
Sam Pierson

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-18 Thread Sam Pierson
Hi everyone,

I dug through the mailing list archives looking for some info on
the received signal strength of incoming packets.  I have one
mote that transmits messages of type IntMsg over the radio.
The other mote has TOSBase installed on it and is on the programming
board, which is then connected to the serial port.  When I
use the java tool ListenRaw, I get things like the following:

7E 42 FF FF 04 7D 5D 04 22 00 01 00 EA 1E
7E 42 FF FF 04 7D 5D 04 23 00 01 00 5E 68
7E 42 FF FF 04 7D 5D 04 24 00 01 00 73 39

So from what I've gathered from micaz/AM.h:

uint8_t length =-|
uint8_t fcfhi =|  Not sure about these top four.
uint8_t fcflo = 7E   |
uint8_t dsn = 24   _|
uint16_t destpan = FF FF
uint16_t addr = 04 7D
uint8_t type = 5D
uint8_t group = 04
int8_t data = 22
uint8_t strength = 00-- ??

I know the 22, 23, 24 is the data portion, so ListenRaw or
the serial port must be cutting something off from the beginning.
It appears as though the strength is registered as 0 though.
Does anyone know of a better approach?
--
Sam Pierson

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-18 Thread Philip Levis
On Wed, 2006-01-18 at 15:39 -0600, Sam Pierson wrote:
 Hi everyone,
 
 I dug through the mailing list archives looking for some info on
 the received signal strength of incoming packets.  I have one
 mote that transmits messages of type IntMsg over the radio.
 The other mote has TOSBase installed on it and is on the programming
 board, which is then connected to the serial port.  When I
 use the java tool ListenRaw, I get things like the following:
 
 7E 42 FF FF 04 7D 5D 04 22 00 01 00 EA 1E
 7E 42 FF FF 04 7D 5D 04 23 00 01 00 5E 68
 7E 42 FF FF 04 7D 5D 04 24 00 01 00 73 39
 
 So from what I've gathered from micaz/AM.h:
 
 uint8_t length =-|
 uint8_t fcfhi =|  Not sure about these top four.
 uint8_t fcflo = 7E   |
 uint8_t dsn = 24   _|
 uint16_t destpan = FF FF
 uint16_t addr = 04 7D
 uint8_t type = 5D
 uint8_t group = 04
 int8_t data = 22
 uint8_t strength = 00-- ??
 

IntMsg.h:

typedef struct IntMsg {
  uint16_t val;
  uint16_t src;
} IntMsg;

In the first packet (little endian):
  22 00 is the data value (34).
  01 00 is the source (node 1)
  EA 1E is the signal strength (7914)

Phil

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-18 Thread Philip Levis
On Wed, 2006-01-18 at 15:39 -0600, Sam Pierson wrote:
 Hi everyone,
 
 I dug through the mailing list archives looking for some info on
 the received signal strength of incoming packets.  I have one
 mote that transmits messages of type IntMsg over the radio.
 The other mote has TOSBase installed on it and is on the programming
 board, which is then connected to the serial port.  When I
 use the java tool ListenRaw, I get things like the following:
 
 7E 42 FF FF 04 7D 5D 04 22 00 01 00 EA 1E
 7E 42 FF FF 04 7D 5D 04 23 00 01 00 5E 68
 7E 42 FF FF 04 7D 5D 04 24 00 01 00 73 39
 
 So from what I've gathered from micaz/AM.h:
 
 uint8_t length =-|
 uint8_t fcfhi =|  Not sure about these top four.
 uint8_t fcflo = 7E   |
 uint8_t dsn = 24   _|
 uint16_t destpan = FF FF
 uint16_t addr = 04 7D
 uint8_t type = 5D
 uint8_t group = 04
 int8_t data = 22
 uint8_t strength = 00-- ??
 

IntMsg.h:

typedef struct IntMsg {
  uint16_t val;
  uint16_t src;
} IntMsg;

In the first packet (little endian):
  22 00 is the data value (34).
  01 00 is the source (node 1)
  EA 1E is the signal strength (7914)

Phil

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]

2006-01-18 Thread Philip Levis
On Wed, 2006-01-18 at 15:39 -0600, Sam Pierson wrote:
 Hi everyone,
 
 I dug through the mailing list archives looking for some info on
 the received signal strength of incoming packets.  I have one
 mote that transmits messages of type IntMsg over the radio.
 The other mote has TOSBase installed on it and is on the programming
 board, which is then connected to the serial port.  When I
 use the java tool ListenRaw, I get things like the following:
 
 7E 42 FF FF 04 7D 5D 04 22 00 01 00 EA 1E
 7E 42 FF FF 04 7D 5D 04 23 00 01 00 5E 68
 7E 42 FF FF 04 7D 5D 04 24 00 01 00 73 39
 
 So from what I've gathered from micaz/AM.h:
 
 uint8_t length =-|
 uint8_t fcfhi =|  Not sure about these top four.
 uint8_t fcflo = 7E   |
 uint8_t dsn = 24   _|
 uint16_t destpan = FF FF
 uint16_t addr = 04 7D
 uint8_t type = 5D
 uint8_t group = 04
 int8_t data = 22
 uint8_t strength = 00-- ??
 

IntMsg.h:

typedef struct IntMsg {
  uint16_t val;
  uint16_t src;
} IntMsg;

In the first packet (little endian):
  22 00 is the data value (34).
  01 00 is the source (node 1)
  EA 1E is the signal strength (7914)

Phil

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help