21 #include "rnr/rnrconfig.h" 23 #include "rnr/netmsgs.h" 29 #define EOFDEF {NULL, 0, NMFTypeNone, 0, } 59 .m_sFName =
"servo_id",
61 .m_eFType = NMFTypeU8,
63 .m_this.m_u8.m_bits = (byte_t)(0),
64 .m_this.m_u8.m_valMin = (byte_t)(0),
65 .m_this.m_u8.m_valMax = (byte_t)(0),
66 .m_this.m_u8.m_valConst = (byte_t)(0),
71 .m_eFType = NMFTypeU16,
73 .m_this.m_u16.m_bits = (byte_t)(0),
74 .m_this.m_u16.m_valMin = (ushort_t)(0),
75 .m_this.m_u16.m_valMax = (ushort_t)(0),
76 .m_this.m_u16.m_valConst = (ushort_t)(0),
86 .m_sMsgName =
"BsDynaWriteTuple",
88 .m_uCount = (size_t)(2),
113 .m_sFName =
"baudrate",
115 .m_eFType = NMFTypeU32,
117 .m_this.m_u32.m_bits = (byte_t)(0),
118 .m_this.m_u32.m_valMin = (uint_t)(0),
119 .m_this.m_u32.m_valMax = (uint_t)(0),
120 .m_this.m_u32.m_valConst = (uint_t)(0),
130 .m_sMsgName =
"BsDynaReqOpenArgs",
132 .m_uCount = (size_t)(1),
157 .m_sFName =
"baudrate",
159 .m_eFType = NMFTypeU32,
161 .m_this.m_u32.m_bits = (byte_t)(0),
162 .m_this.m_u32.m_valMin = (uint_t)(0),
163 .m_this.m_u32.m_valMax = (uint_t)(0),
164 .m_this.m_u32.m_valConst = (uint_t)(0),
174 .m_sMsgName =
"BsDynaReqSetBaudRate",
176 .m_uCount = (size_t)(1),
202 .m_sFName =
"servo_id",
204 .m_eFType = NMFTypeU8,
206 .m_this.m_u8.m_bits = (byte_t)(0),
207 .m_this.m_u8.m_valMin = (byte_t)(0),
208 .m_this.m_u8.m_valMax = (byte_t)(0),
209 .m_this.m_u8.m_valConst = (byte_t)(0),
214 .m_eFType = NMFTypeU8,
216 .m_this.m_u8.m_bits = (byte_t)(0),
217 .m_this.m_u8.m_valMin = (byte_t)(0),
218 .m_this.m_u8.m_valMax = (byte_t)(0),
219 .m_this.m_u8.m_valConst = (byte_t)(0),
229 .m_sMsgName =
"BsDynaReqRead8",
231 .m_uCount = (size_t)(2),
257 .m_sFName =
"alarms",
259 .m_eFType = NMFTypeU8,
261 .m_this.m_u8.m_bits = (byte_t)(0),
262 .m_this.m_u8.m_valMin = (byte_t)(0),
263 .m_this.m_u8.m_valMax = (byte_t)(0),
264 .m_this.m_u8.m_valConst = (byte_t)(0),
269 .m_eFType = NMFTypeU8,
271 .m_this.m_u8.m_bits = (byte_t)(0),
272 .m_this.m_u8.m_valMin = (byte_t)(0),
273 .m_this.m_u8.m_valMax = (byte_t)(0),
274 .m_this.m_u8.m_valConst = (byte_t)(0),
284 .m_sMsgName =
"BsDynaRspRead8",
286 .m_uCount = (size_t)(2),
312 .m_sFName =
"servo_id",
314 .m_eFType = NMFTypeU8,
316 .m_this.m_u8.m_bits = (byte_t)(0),
317 .m_this.m_u8.m_valMin = (byte_t)(0),
318 .m_this.m_u8.m_valMax = (byte_t)(0),
319 .m_this.m_u8.m_valConst = (byte_t)(0),
324 .m_eFType = NMFTypeU8,
326 .m_this.m_u8.m_bits = (byte_t)(0),
327 .m_this.m_u8.m_valMin = (byte_t)(0),
328 .m_this.m_u8.m_valMax = (byte_t)(0),
329 .m_this.m_u8.m_valConst = (byte_t)(0),
339 .m_sMsgName =
"BsDynaReqRead16",
341 .m_uCount = (size_t)(2),
367 .m_sFName =
"alarms",
369 .m_eFType = NMFTypeU8,
371 .m_this.m_u8.m_bits = (byte_t)(0),
372 .m_this.m_u8.m_valMin = (byte_t)(0),
373 .m_this.m_u8.m_valMax = (byte_t)(0),
374 .m_this.m_u8.m_valConst = (byte_t)(0),
379 .m_eFType = NMFTypeU16,
381 .m_this.m_u16.m_bits = (byte_t)(0),
382 .m_this.m_u16.m_valMin = (ushort_t)(0),
383 .m_this.m_u16.m_valMax = (ushort_t)(0),
384 .m_this.m_u16.m_valConst = (ushort_t)(0),
394 .m_sMsgName =
"BsDynaRspRead16",
396 .m_uCount = (size_t)(2),
423 .m_sFName =
"servo_id",
425 .m_eFType = NMFTypeU8,
427 .m_this.m_u8.m_bits = (byte_t)(0),
428 .m_this.m_u8.m_valMin = (byte_t)(0),
429 .m_this.m_u8.m_valMax = (byte_t)(0),
430 .m_this.m_u8.m_valConst = (byte_t)(0),
435 .m_eFType = NMFTypeU8,
437 .m_this.m_u8.m_bits = (byte_t)(0),
438 .m_this.m_u8.m_valMin = (byte_t)(0),
439 .m_this.m_u8.m_valMax = (byte_t)(0),
440 .m_this.m_u8.m_valConst = (byte_t)(0),
445 .m_eFType = NMFTypeU8,
447 .m_this.m_u8.m_bits = (byte_t)(0),
448 .m_this.m_u8.m_valMin = (byte_t)(0),
449 .m_this.m_u8.m_valMax = (byte_t)(0),
450 .m_this.m_u8.m_valConst = (byte_t)(0),
460 .m_sMsgName =
"BsDynaReqWrite8",
462 .m_uCount = (size_t)(3),
487 .m_sFName =
"alarms",
489 .m_eFType = NMFTypeU8,
491 .m_this.m_u8.m_bits = (byte_t)(0),
492 .m_this.m_u8.m_valMin = (byte_t)(0),
493 .m_this.m_u8.m_valMax = (byte_t)(0),
494 .m_this.m_u8.m_valConst = (byte_t)(0),
504 .m_sMsgName =
"BsDynaRspWrite8",
506 .m_uCount = (size_t)(1),
533 .m_sFName =
"servo_id",
535 .m_eFType = NMFTypeU8,
537 .m_this.m_u8.m_bits = (byte_t)(0),
538 .m_this.m_u8.m_valMin = (byte_t)(0),
539 .m_this.m_u8.m_valMax = (byte_t)(0),
540 .m_this.m_u8.m_valConst = (byte_t)(0),
545 .m_eFType = NMFTypeU8,
547 .m_this.m_u8.m_bits = (byte_t)(0),
548 .m_this.m_u8.m_valMin = (byte_t)(0),
549 .m_this.m_u8.m_valMax = (byte_t)(0),
550 .m_this.m_u8.m_valConst = (byte_t)(0),
555 .m_eFType = NMFTypeU16,
557 .m_this.m_u16.m_bits = (byte_t)(0),
558 .m_this.m_u16.m_valMin = (ushort_t)(0),
559 .m_this.m_u16.m_valMax = (ushort_t)(0),
560 .m_this.m_u16.m_valConst = (ushort_t)(0),
570 .m_sMsgName =
"BsDynaReqWrite16",
572 .m_uCount = (size_t)(3),
597 .m_sFName =
"alarms",
599 .m_eFType = NMFTypeU8,
601 .m_this.m_u8.m_bits = (byte_t)(0),
602 .m_this.m_u8.m_valMin = (byte_t)(0),
603 .m_this.m_u8.m_valMax = (byte_t)(0),
604 .m_this.m_u8.m_valConst = (byte_t)(0),
614 .m_sMsgName =
"BsDynaRspWrite16",
616 .m_uCount = (size_t)(1),
631 .m_sFName =
"tuples",
633 .m_eFType = NMFTypeStruct,
634 .m_uOffset = (size_t)0,
660 .m_eFType = NMFTypeU8,
662 .m_this.m_u8.m_bits = (byte_t)(0),
663 .m_this.m_u8.m_valMin = (byte_t)(0),
664 .m_this.m_u8.m_valMax = (byte_t)(0),
665 .m_this.m_u8.m_valConst = (byte_t)(0),
668 .m_sFName =
"data_size",
670 .m_eFType = NMFTypeU8,
672 .m_this.m_u8.m_bits = (byte_t)(0),
673 .m_this.m_u8.m_valMin = (byte_t)(0),
674 .m_this.m_u8.m_valMax = (byte_t)(0),
675 .m_this.m_u8.m_valConst = (byte_t)(0),
678 .m_sFName =
"tuples",
680 .m_eFType = NMFTypeVector,
682 .m_this.m_vector.m_uMaxCount
684 .m_this.m_vector.m_uElemSize
686 .m_this.m_vector.m_pThisElem
697 .m_sMsgName =
"BsDynaReqSyncWrite",
699 .m_uCount = (size_t)(3),
724 .m_sFName =
"servo_id",
726 .m_eFType = NMFTypeU8,
728 .m_this.m_u8.m_bits = (byte_t)(0),
729 .m_this.m_u8.m_valMin = (byte_t)(0),
730 .m_this.m_u8.m_valMax = (byte_t)(0),
731 .m_this.m_u8.m_valConst = (byte_t)(0),
741 .m_sMsgName =
"BsDynaReqPing",
743 .m_uCount = (size_t)(1),
770 .m_eFType = NMFTypeBool,
781 .m_sMsgName =
"BsDynaRspPing",
783 .m_uCount = (size_t)(1),
808 .m_sFName =
"servo_id",
810 .m_eFType = NMFTypeU8,
812 .m_this.m_u8.m_bits = (byte_t)(0),
813 .m_this.m_u8.m_valMin = (byte_t)(0),
814 .m_this.m_u8.m_valMax = (byte_t)(0),
815 .m_this.m_u8.m_valConst = (byte_t)(0),
825 .m_sMsgName =
"BsDynaReqReset",
827 .m_uCount = (size_t)(1),
852 .m_sFName =
"signal",
854 .m_eFType = NMFTypeU32,
856 .m_this.m_u32.m_bits = (byte_t)(0),
857 .m_this.m_u32.m_valMin = (uint_t)(0),
858 .m_this.m_u32.m_valMax = (uint_t)(0),
859 .m_this.m_u32.m_valConst = (uint_t)(0),
869 .m_sMsgName =
"BsDynaReqSetHalfDuplexCtl",
871 .m_uCount = (size_t)(1),
999 const NMMsgDef_T *pMsgDef;
1003 LOGERROR(
"%s(ecode=%d): msgid=%u.",
1004 nmStrError(NM_ECODE_MSGID), NM_ECODE_MSGID, eMsgId);
1005 return -NM_ECODE_MSGID;
1010 return nmPackITVMsgDebug(pMsgDef, pStruct, buf, bufSize, NMEndianBig);
1014 return nmPackITVMsg(pMsgDef, pStruct, buf, bufSize, NMEndianBig);
1037 const NMMsgDef_T *pMsgDef;
1041 LOGERROR(
"%s(ecode=%d): msgid=%u.",
1042 nmStrError(NM_ECODE_MSGID), NM_ECODE_MSGID, eMsgId);
1043 return -NM_ECODE_MSGID;
1048 return nmUnpackITVMsgDebug(pMsgDef, buf, uMsgLen, pStruct, NMEndianBig);
1052 return nmUnpackITVMsg(pMsgDef, buf, uMsgLen, pStruct, NMEndianBig);
static const NMFieldDef_T BsDynaReqRead16FieldDefs[]
static const NMMsgDef_T BsDynaReqRead8MsgDef
int BsDynaUnpackMsg(BsDynaMsgId_T eMsgId, byte_t buf[], size_t uMsgLen, void *pStruct, bool_t bTrace)
Unpack a ITV message in big-endian byte order.
static const NMMsgDef_T BsDynaReqSetHalfDuplexCtlMsgDef
static const NMMsgDef_T BsDynaReqSetBaudRateMsgDef
static const NMFieldDef_T BsDynaReqSetBaudRateFieldDefs[]
int BsDynaPackMsg(BsDynaMsgId_T eMsgId, void *pStruct, byte_t buf[], size_t bufSize, bool_t bTrace)
Pack a ITV message in big-endian byte order.
static const NMFieldDef_T BsDynaRspRead8FieldDefs[]
#define DYNA_ID_NUMOF
number of unique servo id's
BsDynaReqSetBaudRateFId_T
static const NMFieldDef_T BsDynaReqWrite8FieldDefs[]
const NMMsgDef_T * BsDynaMsgDefLookupTbl[]
size_t BsDynaMsgMaxLenLookupTbl[]
static const NMFieldDef_T BsDynaReqSyncWritetuplesFieldDef[]
size_t BsDynaLookupMsgMaxLen(BsDynaMsgId_T eMsgId)
Look up the message maximum length associated with the message id.
static const NMMsgDef_T BsDynaRspPingMsgDef
static const NMFieldDef_T BsDynaRspPingFieldDefs[]
static const NMFieldDef_T BsDynaReqRead8FieldDefs[]
static const NMFieldDef_T BsDynaRspWrite16FieldDefs[]
static const NMFieldDef_T BsDynaRspWrite8FieldDefs[]
static const NMMsgDef_T BsDynaReqOpenArgsMsgDef
static const NMMsgDef_T BsDynaRspRead16MsgDef
Server/Client Dynamixel NetMsgs XML Definitions.
static const NMFieldDef_T BsDynaReqWrite16FieldDefs[]
static const NMMsgDef_T BsDynaRspWrite8MsgDef
static const NMMsgDef_T BsDynaReqWrite8MsgDef
static const NMMsgDef_T BsDynaReqPingMsgDef
static const NMFieldDef_T BsDynaReqOpenArgsFieldDefs[]
static const NMFieldDef_T BsDynaReqResetFieldDefs[]
static const NMFieldDef_T BsDynaRspRead16FieldDefs[]
static const NMMsgDef_T BsDynaWriteTupleMsgDef
static const NMMsgDef_T BsDynaReqRead16MsgDef
static const NMMsgDef_T BsDynaRspRead8MsgDef
static const NMMsgDef_T BsDynaReqResetMsgDef
static const NMMsgDef_T BsDynaRspWrite16MsgDef
BsDynaReqSetHalfDuplexCtlFId_T
static const NMFieldDef_T BsDynaReqPingFieldDefs[]
static const NMMsgDef_T BsDynaReqSyncWriteMsgDef
static const NMFieldDef_T BsDynaReqSetHalfDuplexCtlFieldDefs[]
static const NMMsgDef_T BsDynaReqWrite16MsgDef
static const NMFieldDef_T BsDynaWriteTupleFieldDefs[]
const NMMsgDef_T * BsDynaLookupMsgDef(BsDynaMsgId_T eMsgId)
Look up the message definition associated with the message id.
static const NMFieldDef_T BsDynaReqSyncWriteFieldDefs[]