Re: [Tinyos-help] Yet Another Signal Strength Question [over micaz]
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]
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]
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]
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]
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]
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]
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