DX-117読み取り

#define PING        1
#define READ        2
#define WRITE       3
#define REGWRITE    4
#define ACTION      5
#define RESET       6
#define SYNCWRITE   0x83

typedef struct{
    //EEPROM領域
    short model_nuber;      //モデル番号、リードのみ
    char firm_ver;          //ファームウェアバージョン
    char ID;                //ID
    
    char baud_rate;         //ボー・レート
    char r_deray;           //応答遅延時間
    short CW_limit;         //CW方向の限界角度
    
    short CCW_limit;        //CCW方向の限界角度
    char temp;              //温度
    char low_limit_volt;    //最低限界電圧
    
    char high_limit_volt;   //最高限界電圧
    short max_torque;       //最高トルク
    char status;            //応答レベル
    
    char alerm_LED;         //アラームLED機能ON、OFF
    char alerm_shutdown;    //アラームシャットダウン機能
    //ここからRAM領域
    char torque_EN;         //トルクON、OFF
    char LED;               //LEDのON、OFF
    
    char CW_comp_margin;  
    char CCW_comp_margin;
    char CW_comp_slope;
    char CCW_comp_slope;
    
    short Goal_pos;         //目標位置
    short speed;            //目標速度
    
    short torque_limit;     //トルク限界値
    short pos;              //現在位置
    
    short Load;             //現在荷重値
    char volt;              //現在電圧
    char reg_inst;          //インストラクションの登録、未登録
    
    char moving;            //動きの有無
    char Lock;              //EEPROMのロック
    short Punch;            //パ
}dx117ctrl_table

とりあえずヘッダファイルにまるまるコントロールテーブルの構造体を作ってみた。
エディアンは考えてないので、間違ってるかもしれん。
dynamixelって一斉同時操作コマンド(SYNCWRITE)があったんだ。
形式は

ID 0XFE
Length (L+1) X N + 4 (L:RX-28別Data Length、N:RX-28の数)
Instruction 0X83
Parameter1 Dataを書き込もうとする位置の開始Address
Parameter2 書き込もうとするDataの長さ(L) 1番目RX-28に関するData
Parameter3 1番目RX-28のID
Parameter4 1番目RX-28の1番目Data
Parameter5 1番目RX-28の2番目Data
…
Parameter L+3 1番目RX-28のL番目Data
Parameter L+4 2番目RX-28のID
Parameter L+5 2番目RX-28の1番目Data
2番目RX-28に関するData
Parameter L+6 2番目RX-28の2番目Data
…
Parameter 2L+4 2番目RX-28のL番目Data

って感じで
実際だと

IDが0のRX-28 : 0x010の位置に速度0x150で移動
IDが1のRX-28 : 0x220の位置に速度0x360で移動
IDが2のRX-28 : 0x030の位置に速度0x170で移動
IDが3のRX-28 : 0x220の位置に速度0x380で移動
パケット
0XFF 0XFF 0XFE 0X18 0X83 0X1E 0X04 0X00 0X10 0X00 0X50 0X01 0X01 0X20 0X02 0X60 0X03 0X02 0X30 0X00 0X70 0X01 0X03 0X20 0X02 0X80 0X03 0X12`

ってかんじになるらしい。