function [R_idx] = RudderControllerPacketDefinition()

%Packet Structure
R_idx.DataIDs = 1;
R_idx.time = 2;

R_idx.Xvel = 3;
R_idx.Yvel = 4;
R_idx.Zvel = 5;
R_idx.Pressure = 6;

R_idx.BeamAmp1 = 7;
R_idx.BeamAmp2 = 8;
R_idx.BeamAmp3 = 9;
R_idx.BeamCorr1 = 10;
R_idx.BeamCorr2 = 11;
R_idx.BeamCorr3 = 12;
R_idx.HeadingTarget = 13;

R_idx.MeasuredHeading = 14;
R_idx.FilteredHeading = 15;
R_idx.RudderCmd = 16;
R_idx.RamPosition = 17;

R_idx.Qtn0 = 18;
R_idx.Qtn1 = 19;
R_idx.Qtn2 = 20;
R_idx.Qtn3 = 21;

R_idx.Mag0 = 22;
R_idx.Mag1 = 23;
R_idx.Mag2 = 24;
R_idx.Status = 25;

R_idx.AngRate0 = 26;
R_idx.AngRate1 = 27;
R_idx.AngRate2 = 28
R_idx.VpeStatus = 29;

R_idx.Accel0 = 30;
R_idx.Accel1 = 31;
R_idx.Accel2 = 32;
R_idx.UnusedP6 = 33;

R_idx.Pgain = 34;
R_idx.Igain = 35;
R_idx.UpdateRate = 36;
R_idx.TimeConstant = 37;
R_idx.Dgain = 38;


end

