${proto.name} ICD


Description:

${proto.desc}



Index







Packets


Ping


Ping to request an Ack. Used for testing and ICD verification



Fields:
Field Type Description
icd uint32_t 32bit Hash of protocol description. This is used to verify endpoints are using the same protocol


Ack


Fields:
Field Type Description
icd uint32_t 32bit Hash of protocol description.Only present when responding to Ping


%for packet in proto.packets: %if not packet.standard:

${packet.name}


${packet.desc}


%if len(packet.fields) > 0:
Fields: %for field in packet.fields: %if field.isRequired: %else: %endif %endfor
Field Type Description
${field.name}${field.name} ${field.cType}\ %if field.isArray: [${field.arrayLen}]\ %endif ${field.desc}\ %if field.isEnum:
    %for idx,val in enumerate(field.vals):
  • ${field.valsFormat % idx} : ${val.name} - ${val.desc}
  • %endfor
%endif %if field.isMask:
    %for idx,val in enumerate(field.vals):
  • ${field.valsFormat % (1 << idx)} : ${val.name} - ${val.desc}
  • %endfor
%endif
%else: ## zero data fields This Packet type does not contain any data fields
%endif

%endif %endfor %if len(proto.structs) > 0:

Structs


%for packet in proto.structs: %if not packet.standard:

${packet.name}


${packet.desc}


%if len(packet.fields) > 0:
Fields: %for field in packet.fields: %if field.isRequired: %else: %endif %endfor
Field Type Description
${field.name}${field.name} ${field.cType}\ %if field.isArray: [${field.arrayLen}]\ %endif ${field.desc}\ %if field.isEnum:
    %for idx,val in enumerate(field.vals):
  • ${field.valsFormat % idx} : ${val.name} - ${val.desc}
  • %endfor
%endif %if field.isMask:
    %for idx,val in enumerate(field.vals):
  • ${field.valsFormat % (1 << idx)} : ${val.name} - ${val.desc}
  • %endfor
%endif
%else: ## zero data fields This Packet type does not contain any data fields
%endif

%endif %endfor %endif