I actually saw this document out on the help pages. I unfortunately don't have access to it here at work, but I will take a look at it when I get home. I suppose it will show exactly how they take their structure and prepare it for transmission. If anyone else has any tips, please let me know.
http://www.tinyos.net/tinyos-2.x/doc/html/tep123.html <http://www.tinyos.net/tinyos-2.x/doc/html/tep123.html> Paimon Sorornejad Email: [email protected] | Cell: 781-205-9876 On Wed, Feb 9, 2011 at 10:18 PM, Paimon Sorornejad <[email protected]>wrote: > Hello; > > As part of my work with TinyOS and a TelosB board, I am looking to > implement the AFDX protocol (mainly used in aviation communications). I > have defined and structured the packet and was hoping I could get some > possible pointers or tips. I haven't really got down to coding the actual > TinyOS application or implementation yet, but I have started with my > AFDXProtocol.h file which will define the various structures embedded in my > packet. I was wondering if someone could take a look at my "AFDXMessage" > struct and let me know if I am on the right track. Also, my question is > exactly how a packet like this would be transferred. Would the AFDXMessage > struct be cast as a message_t as a whole, or will we only be transmitting > the data payload? Thanks for the help guys. > > /** > * Header file for the AFDX Protocol under TinyOS > * > * @Author Paimon Sorornejad, 2/9/2011 > * @Version 1.0.0 > */ > > typedef nx_struct preamble{ > uint8_t value; // 7 preamble + 1 version > } preamble; > > typedef nx_struct macDest{ > static const uint32_t start = 0x03000000; > uint16_t VLI; > } macDest; > > typedef nx_struct macSource{ > static const uint16_t constField = 0x0200; > static const uint8_t networkStart = 0x00; > uint8_t networkId; > uint8_t equipmentId; > uint8_t interfaceId; > } macSource; > > typedef nx_struct macHeader{ > macDest dest; > macSource source; > } macHeader; > > typedef nx_struct ipSource{ > static const uint8_t = 00001010; > uint8_t networkid; > uint8_t equipmentid; > uint8_t partitionid; > } ipSource; > > typedef nx_struct ipDestination{ > uint16_t start = 0xE0C0; > uint16_t int VLI; > } ipDestination; > > typedef nx_struct ipHeader{ > uint8_t ip_version; > uint8_t ip_tos; > uint16_t ip_len; > uint16_t ip_id; > uint16_t ip_off; > uint8_t ip_ttl; > uint8_t ip_proto; > uint16_t ip_sum; > ipSource ip_src; > ipDestination ip_dst; > } ipheader; > > typedef nx_struct udpHeader{ > uint16_t source; > uint16_t dest; > uint16_t udplen; > uint16_t udpchk; > } udpHeader; > > typedef nx_struct sequence{ > uint8_t value; // 8 bit (1byte) > } sequence; > > typedef nx_struct fcs{ > uint32_t value; // 32 bit (4byte) > } fcs; > > typedef nx_struct AFDXMessage { > preamble pre; > macHeader mac; > ipHeader ip; > udpHeader udp; > uint8_t data[TOSH_DATA_LENGTH] > sequence seq; > fcs fc; > } AFDXMessage; > > > Paimon Sorornejad > Email: [email protected] | Cell: 781-205-9876 >
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
