Hey Can some one knows how to do distributed computing using TINYOS? THanks
An Feng [email protected] -----Original Message----- From: tinyos-help-request <[email protected]> To: tinyos-help <[email protected]> Sent: Fri, Feb 22, 2013 1:28 am Subject: Tinyos-help Digest, Vol 118, Issue 69 Send Tinyos-help mailing list submissions to [email protected] To subscribe or unsubscribe via the World Wide Web, visit https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help or, via email, send a message with subject or body 'help' to [email protected] You can reach the person managing the list at [email protected] When replying, please edit your Subject line so it is more specific than "Re: Contents of Tinyos-help digest..." Today's Topics: 1. Re: Iris using 64 bit address filtering (Miklos Maroti) 2. Re: Iris using 64 bit address filtering (Roadstar Runner) 3. Re: Iris using 64 bit address filtering (Miklos Maroti) ---------------------------------------------------------------------- Message: 1 Date: Thu, 21 Feb 2013 10:57:07 -0600 From: Miklos Maroti <[email protected]> Subject: Re: [Tinyos-help] Iris using 64 bit address filtering To: Roadstar Runner <[email protected]> Cc: [email protected] Message-ID: <CAEUdg=AaP5qCZMs=pv+yhk69rbnfgfqghgby23hbsdbaf9x...@mail.gmail.com> Content-Type: text/plain; charset=UTF-8 Looks good! Let me know if you run into problems. If it works, then I will merge it back to the mainline. Miklos On Thu, Feb 21, 2013 at 10:54 AM, Roadstar Runner <[email protected]> wrote: > Hi Miklos, > Thanks for the quick response. > i made the following changes to support 64 bit addressing > > /*************** File Ieee154PacketLayer.h*****************/ > typedef nx_struct ieee154_header_t > { > nxle_uint16_t fcf; > nxle_uint8_t dsn; > nxle_uint16_t destpan; > #ifdef RF230_EXTENDED_ADDR_MODE > nxle_uint64_t dest; > nxle_uint64_t src; > #else > nxle_uint16_t dest; > nxle_uint16_t src; > #endif > } ieee154_header_t; > > > > > /************************** Ieee154PacketLayerP.nc**********************/ > > > enum > { > IEEE154_DATA_FRAME_MASK = (IEEE154_TYPE_MASK << > IEEE154_FCF_FRAME_TYPE) > | (1 << IEEE154_FCF_INTRAPAN) > | (IEEE154_ADDR_MASK << IEEE154_FCF_DEST_ADDR_MODE) > | (IEEE154_ADDR_MASK << IEEE154_FCF_SRC_ADDR_MODE), > > IEEE154_DATA_FRAME_VALUE = (IEEE154_TYPE_DATA << > IEEE154_FCF_FRAME_TYPE) > | (1 << IEEE154_FCF_INTRAPAN) > #ifdef RF230_EXTENDED_ADDR_MODE > | (IEEE154_ADDR_EXT << IEEE154_FCF_DEST_ADDR_MODE) > | (IEEE154_ADDR_EXT << IEEE154_FCF_SRC_ADDR_MODE), > #else > | (IEEE154_ADDR_SHORT << IEEE154_FCF_DEST_ADDR_MODE) > | (IEEE154_ADDR_SHORT << IEEE154_FCF_SRC_ADDR_MODE), > #endif > IEEE154_ACK_FRAME_LENGTH = 3, // includes the FCF, DSN > IEEE154_ACK_FRAME_MASK = (IEEE154_TYPE_MASK << > IEEE154_FCF_FRAME_TYPE), > IEEE154_ACK_FRAME_VALUE = (IEEE154_TYPE_ACK << > IEEE154_FCF_FRAME_TYPE), > }; > > > > /************************** RF230DriverHwAckP.nc > *******************************************/ > temp = call ActiveMessageAddress.amAddress(); > #ifdef RF230_EXTENDED_ADDR_MODE > writeRegister(RF230_IEEE_ADDR_0, temp); > writeRegister(RF230_IEEE_ADDR_1, temp >> 8); > #else > writeRegister(RF230_SHORT_ADDR_0, temp); > writeRegister(RF230_SHORT_ADDR_1, temp >> 8); > #endif > > Right now i am only using the lower 2 address bytes for testing. > > > Thanks, > Lou > > > > > > > On Thu, Feb 21, 2013 at 11:40 AM, Miklos Maroti <[email protected]> > wrote: >> >> Hi Lou, >> >> On Thu, Feb 21, 2013 at 10:36 AM, Roadstar Runner >> <[email protected]> wrote: >> > Hi Miklos, >> > Thank you very much. I do not even get the interrupt from the radio if i >> > use >> > RX_AACK mode. If use the basic mode , it works fine. >> > I used a TI (CC2430) sniffer and was able to see teh messages being. The >> > data i included is from the sniffer. >> > >> > If i set the filter on the sniffer to 802.15.4 packets, it shows all the >> > fields as i expect I have attached a screenshot of the sniffer capture. >> > >> > Does tinyos support 64bit 802.15.4 addressing at the hardware level ? >> >> The current ActiveMessageC for the RF230 works only with 16-bit >> addresses, so that is the problem. You can try to hack every piece of >> code to make it work, but that is not easy. If you decide to go ahead >> with that, then I can give some pointers. Basically, you want only >> 64-bit addresses, so no mixing should be allowed, otherwise the >> address of other fields in the packet need to be calculated >> dynamically. >> >> Miklos >> >> > >> > Thanks once again, >> > Lou >> > >> > >> > >> > >> > >> > >> > On Thu, Feb 21, 2013 at 11:22 AM, Miklos Maroti >> > <[email protected]> >> > wrote: >> >> >> >> If you have serial working, then you can define RADIO_DEBUG_MESSAGES >> >> which will print out the received messages via the DiagMsg protocol. >> >> You should connect your mote to a PC, and there run the "java >> >> net.tinyos.utils.DiagMsg" application. Take a look at >> >> RF230DriverLayerP.nc line 677, you can also put some LED commands >> >> there the verify that you get messages. The RF230 does not do any >> >> hardware filtering, only the FCS (even snooping works, and CRC check >> >> is done in software). Miklos >> >> >> >> On Thu, Feb 21, 2013 at 12:20 AM, Roadstar Runner >> >> <[email protected]> wrote: >> >> > The data i had posted seems to have lost its formatting, so i am re >> >> > posting >> >> > the raw data captured by the sniffer >> >> > >> >> > >> >> > >> >> > 41 CC 11 22 00 FF FF 00 00 00 00 00 00 F8 00 00 00 00 00 00 00 3F 08 >> >> > 0B >> >> > 03 >> >> > 00 F8 00 0F 10 00 AA 01 F8 00 00 00 00 00 00 00 00 00 >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > _______________________________________________ >> >> > Tinyos-help mailing list >> >> > [email protected] >> >> > >> >> > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >> > >> > > > ------------------------------ Message: 2 Date: Thu, 21 Feb 2013 11:59:49 -0500 From: Roadstar Runner <[email protected]> Subject: Re: [Tinyos-help] Iris using 64 bit address filtering To: Miklos Maroti <[email protected]> Cc: [email protected] Message-ID: <CAN3Ao+wR-SMd0b0AZbecOoom8JC=wtzcu5dw2vgxb3tjbbu...@mail.gmail.com> Content-Type: text/plain; charset="iso-8859-1" So far no luck :-( I was under the impression that this is all i should need. Are there any other quirks in the RF230 that might be causing a problem? On Thu, Feb 21, 2013 at 11:57 AM, Miklos Maroti <[email protected]>wrote: > Looks good! Let me know if you run into problems. If it works, then I > will merge it back to the mainline. Miklos > > On Thu, Feb 21, 2013 at 10:54 AM, Roadstar Runner > <[email protected]> wrote: > > Hi Miklos, > > Thanks for the quick response. > > i made the following changes to support 64 bit addressing > > > > /*************** File Ieee154PacketLayer.h*****************/ > > typedef nx_struct ieee154_header_t > > { > > nxle_uint16_t fcf; > > nxle_uint8_t dsn; > > nxle_uint16_t destpan; > > #ifdef RF230_EXTENDED_ADDR_MODE > > nxle_uint64_t dest; > > nxle_uint64_t src; > > #else > > nxle_uint16_t dest; > > nxle_uint16_t src; > > #endif > > } ieee154_header_t; > > > > > > > > > > /************************** Ieee154PacketLayerP.nc**********************/ > > > > > > enum > > { > > IEEE154_DATA_FRAME_MASK = (IEEE154_TYPE_MASK << > > IEEE154_FCF_FRAME_TYPE) > > | (1 << IEEE154_FCF_INTRAPAN) > > | (IEEE154_ADDR_MASK << IEEE154_FCF_DEST_ADDR_MODE) > > | (IEEE154_ADDR_MASK << IEEE154_FCF_SRC_ADDR_MODE), > > > > IEEE154_DATA_FRAME_VALUE = (IEEE154_TYPE_DATA << > > IEEE154_FCF_FRAME_TYPE) > > | (1 << IEEE154_FCF_INTRAPAN) > > #ifdef RF230_EXTENDED_ADDR_MODE > > | (IEEE154_ADDR_EXT << IEEE154_FCF_DEST_ADDR_MODE) > > | (IEEE154_ADDR_EXT << IEEE154_FCF_SRC_ADDR_MODE), > > #else > > | (IEEE154_ADDR_SHORT << IEEE154_FCF_DEST_ADDR_MODE) > > | (IEEE154_ADDR_SHORT << IEEE154_FCF_SRC_ADDR_MODE), > > #endif > > IEEE154_ACK_FRAME_LENGTH = 3, // includes the FCF, DSN > > IEEE154_ACK_FRAME_MASK = (IEEE154_TYPE_MASK << > > IEEE154_FCF_FRAME_TYPE), > > IEEE154_ACK_FRAME_VALUE = (IEEE154_TYPE_ACK << > > IEEE154_FCF_FRAME_TYPE), > > }; > > > > > > > > /************************** RF230DriverHwAckP.nc > > *******************************************/ > > temp = call ActiveMessageAddress.amAddress(); > > #ifdef RF230_EXTENDED_ADDR_MODE > > writeRegister(RF230_IEEE_ADDR_0, temp); > > writeRegister(RF230_IEEE_ADDR_1, temp >> 8); > > #else > > writeRegister(RF230_SHORT_ADDR_0, temp); > > writeRegister(RF230_SHORT_ADDR_1, temp >> 8); > > #endif > > > > Right now i am only using the lower 2 address bytes for testing. > > > > > > Thanks, > > Lou > > > > > > > > > > > > > > On Thu, Feb 21, 2013 at 11:40 AM, Miklos Maroti < > [email protected]> > > wrote: > >> > >> Hi Lou, > >> > >> On Thu, Feb 21, 2013 at 10:36 AM, Roadstar Runner > >> <[email protected]> wrote: > >> > Hi Miklos, > >> > Thank you very much. I do not even get the interrupt from the radio > if i > >> > use > >> > RX_AACK mode. If use the basic mode , it works fine. > >> > I used a TI (CC2430) sniffer and was able to see teh messages being. > The > >> > data i included is from the sniffer. > >> > > >> > If i set the filter on the sniffer to 802.15.4 packets, it shows all > the > >> > fields as i expect I have attached a screenshot of the sniffer > capture. > >> > > >> > Does tinyos support 64bit 802.15.4 addressing at the hardware level ? > >> > >> The current ActiveMessageC for the RF230 works only with 16-bit > >> addresses, so that is the problem. You can try to hack every piece of > >> code to make it work, but that is not easy. If you decide to go ahead > >> with that, then I can give some pointers. Basically, you want only > >> 64-bit addresses, so no mixing should be allowed, otherwise the > >> address of other fields in the packet need to be calculated > >> dynamically. > >> > >> Miklos > >> > >> > > >> > Thanks once again, > >> > Lou > >> > > >> > > >> > > >> > > >> > > >> > > >> > On Thu, Feb 21, 2013 at 11:22 AM, Miklos Maroti > >> > <[email protected]> > >> > wrote: > >> >> > >> >> If you have serial working, then you can define RADIO_DEBUG_MESSAGES > >> >> which will print out the received messages via the DiagMsg protocol. > >> >> You should connect your mote to a PC, and there run the "java > >> >> net.tinyos.utils.DiagMsg" application. Take a look at > >> >> RF230DriverLayerP.nc line 677, you can also put some LED commands > >> >> there the verify that you get messages. The RF230 does not do any > >> >> hardware filtering, only the FCS (even snooping works, and CRC check > >> >> is done in software). Miklos > >> >> > >> >> On Thu, Feb 21, 2013 at 12:20 AM, Roadstar Runner > >> >> <[email protected]> wrote: > >> >> > The data i had posted seems to have lost its formatting, so i am re > >> >> > posting > >> >> > the raw data captured by the sniffer > >> >> > > >> >> > > >> >> > > >> >> > 41 CC 11 22 00 FF FF 00 00 00 00 00 00 F8 00 00 00 00 00 00 00 3F > 08 > >> >> > 0B > >> >> > 03 > >> >> > 00 F8 00 0F 10 00 AA 01 F8 00 00 00 00 00 00 00 00 00 > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > > >> >> > _______________________________________________ > >> >> > Tinyos-help mailing list > >> >> > [email protected] > >> >> > > >> >> > > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > >> > > >> > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: https://www.millennium.berkeley.edu/pipermail/tinyos-help/attachments/20130221/93ed5c53/attachment-0001.htm ------------------------------ Message: 3 Date: Thu, 21 Feb 2013 11:15:22 -0600 From: Miklos Maroti <[email protected]> Subject: Re: [Tinyos-help] Iris using 64 bit address filtering To: Roadstar Runner <[email protected]> Cc: [email protected] Message-ID: <CAEUdg=BMhE7oQcUo5fcUKPRV1wDrdS0x6J4G_XhjBcfs=nb...@mail.gmail.com> Content-Type: text/plain; charset=UTF-8 Ok, I have started to look into this. Do you want to use the ActiveMessageC framework, right? How do you want to eventually handle the 64-bit address vs the 16-bit address defined in AM.h? Maybe we should change am_addr_t to 64-bit? Miklos On Thu, Feb 21, 2013 at 10:59 AM, Roadstar Runner <[email protected]> wrote: > So far no luck :-( > I was under the impression that this is all i should need. Are there any > other quirks in the RF230 that might be causing a problem? > > > > On Thu, Feb 21, 2013 at 11:57 AM, Miklos Maroti <[email protected]> > wrote: >> >> Looks good! Let me know if you run into problems. If it works, then I >> will merge it back to the mainline. Miklos >> >> On Thu, Feb 21, 2013 at 10:54 AM, Roadstar Runner >> <[email protected]> wrote: >> > Hi Miklos, >> > Thanks for the quick response. >> > i made the following changes to support 64 bit addressing >> > >> > /*************** File Ieee154PacketLayer.h*****************/ >> > typedef nx_struct ieee154_header_t >> > { >> > nxle_uint16_t fcf; >> > nxle_uint8_t dsn; >> > nxle_uint16_t destpan; >> > #ifdef RF230_EXTENDED_ADDR_MODE >> > nxle_uint64_t dest; >> > nxle_uint64_t src; >> > #else >> > nxle_uint16_t dest; >> > nxle_uint16_t src; >> > #endif >> > } ieee154_header_t; >> > >> > >> > >> > >> > /************************** >> > Ieee154PacketLayerP.nc**********************/ >> > >> > >> > enum >> > { >> > IEEE154_DATA_FRAME_MASK = (IEEE154_TYPE_MASK << >> > IEEE154_FCF_FRAME_TYPE) >> > | (1 << IEEE154_FCF_INTRAPAN) >> > | (IEEE154_ADDR_MASK << IEEE154_FCF_DEST_ADDR_MODE) >> > | (IEEE154_ADDR_MASK << IEEE154_FCF_SRC_ADDR_MODE), >> > >> > IEEE154_DATA_FRAME_VALUE = (IEEE154_TYPE_DATA << >> > IEEE154_FCF_FRAME_TYPE) >> > | (1 << IEEE154_FCF_INTRAPAN) >> > #ifdef RF230_EXTENDED_ADDR_MODE >> > | (IEEE154_ADDR_EXT << IEEE154_FCF_DEST_ADDR_MODE) >> > | (IEEE154_ADDR_EXT << IEEE154_FCF_SRC_ADDR_MODE), >> > #else >> > | (IEEE154_ADDR_SHORT << IEEE154_FCF_DEST_ADDR_MODE) >> > | (IEEE154_ADDR_SHORT << IEEE154_FCF_SRC_ADDR_MODE), >> > #endif >> > IEEE154_ACK_FRAME_LENGTH = 3, // includes the FCF, DSN >> > IEEE154_ACK_FRAME_MASK = (IEEE154_TYPE_MASK << >> > IEEE154_FCF_FRAME_TYPE), >> > IEEE154_ACK_FRAME_VALUE = (IEEE154_TYPE_ACK << >> > IEEE154_FCF_FRAME_TYPE), >> > }; >> > >> > >> > >> > /************************** RF230DriverHwAckP.nc >> > *******************************************/ >> > temp = call ActiveMessageAddress.amAddress(); >> > #ifdef RF230_EXTENDED_ADDR_MODE >> > writeRegister(RF230_IEEE_ADDR_0, temp); >> > writeRegister(RF230_IEEE_ADDR_1, temp >> 8); >> > #else >> > writeRegister(RF230_SHORT_ADDR_0, temp); >> > writeRegister(RF230_SHORT_ADDR_1, temp >> 8); >> > #endif >> > >> > Right now i am only using the lower 2 address bytes for testing. >> > >> > >> > Thanks, >> > Lou >> > >> > >> > >> > >> > >> > >> > On Thu, Feb 21, 2013 at 11:40 AM, Miklos Maroti >> > <[email protected]> >> > wrote: >> >> >> >> Hi Lou, >> >> >> >> On Thu, Feb 21, 2013 at 10:36 AM, Roadstar Runner >> >> <[email protected]> wrote: >> >> > Hi Miklos, >> >> > Thank you very much. I do not even get the interrupt from the radio >> >> > if i >> >> > use >> >> > RX_AACK mode. If use the basic mode , it works fine. >> >> > I used a TI (CC2430) sniffer and was able to see teh messages being. >> >> > The >> >> > data i included is from the sniffer. >> >> > >> >> > If i set the filter on the sniffer to 802.15.4 packets, it shows all >> >> > the >> >> > fields as i expect I have attached a screenshot of the sniffer >> >> > capture. >> >> > >> >> > Does tinyos support 64bit 802.15.4 addressing at the hardware level >> >> > ? >> >> >> >> The current ActiveMessageC for the RF230 works only with 16-bit >> >> addresses, so that is the problem. You can try to hack every piece of >> >> code to make it work, but that is not easy. If you decide to go ahead >> >> with that, then I can give some pointers. Basically, you want only >> >> 64-bit addresses, so no mixing should be allowed, otherwise the >> >> address of other fields in the packet need to be calculated >> >> dynamically. >> >> >> >> Miklos >> >> >> >> > >> >> > Thanks once again, >> >> > Lou >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > >> >> > On Thu, Feb 21, 2013 at 11:22 AM, Miklos Maroti >> >> > <[email protected]> >> >> > wrote: >> >> >> >> >> >> If you have serial working, then you can define RADIO_DEBUG_MESSAGES >> >> >> which will print out the received messages via the DiagMsg protocol. >> >> >> You should connect your mote to a PC, and there run the "java >> >> >> net.tinyos.utils.DiagMsg" application. Take a look at >> >> >> RF230DriverLayerP.nc line 677, you can also put some LED commands >> >> >> there the verify that you get messages. The RF230 does not do any >> >> >> hardware filtering, only the FCS (even snooping works, and CRC check >> >> >> is done in software). Miklos >> >> >> >> >> >> On Thu, Feb 21, 2013 at 12:20 AM, Roadstar Runner >> >> >> <[email protected]> wrote: >> >> >> > The data i had posted seems to have lost its formatting, so i am >> >> >> > re >> >> >> > posting >> >> >> > the raw data captured by the sniffer >> >> >> > >> >> >> > >> >> >> > >> >> >> > 41 CC 11 22 00 FF FF 00 00 00 00 00 00 F8 00 00 00 00 00 00 00 3F >> >> >> > 08 >> >> >> > 0B >> >> >> > 03 >> >> >> > 00 F8 00 0F 10 00 AA 01 F8 00 00 00 00 00 00 00 00 00 >> >> >> > >> >> >> > >> >> >> > >> >> >> > >> >> >> > >> >> >> > _______________________________________________ >> >> >> > Tinyos-help mailing list >> >> >> > [email protected] >> >> >> > >> >> >> > >> >> >> > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >> >> > >> >> > >> > >> > > > ------------------------------ _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help End of Tinyos-help Digest, Vol 118, Issue 69 ********************************************
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
