private void GetCncState()
{
List<string> responses = new List<string>();
if (SendCommand("$sys", responses) == E_RESPONSE.E_OK)
foreach (string line in responses)
ParseSystemResponse(line);
if (SendCommand("$m", responses) == E_RESPONSE.E_OK)
foreach (string line in responses)
ParseMotorResponse(line);
if (SendCommand("$q", responses) == E_RESPONSE.E_OK)
foreach (string line in responses)
ParseAxisResponse(line);
InfoFwBuild.Text = cnc.FirmwareBuild.ToString();
InfoFwVersion.Text = cnc.FirmwareVersion.ToString();
InfoHwVersion.Text = cnc.HardwareVersion.ToString();
InfoID.Text = cnc.ID;
JA.Set(cnc.JunctionAcceleration);
CT.Set(cnc.ChordalTolerance);
ST.Set(cnc.SwitchType);
EJ.Set(cnc.JsonMode);
JV.Set(cnc.JsonVerbosity);
TV.Set(cnc.TextVerbosity);
QV.Set(cnc.QueueReportVerbosity);
SV.Set(cnc.StatusReportVerbosity);
IC.Set(cnc.IgnoreCRLF);
EC.Set(cnc.ExpandLF);
EE.Set(cnc.EnableEcho);
EX.Set(cnc.EnableXON);
GPL.Set(cnc.DefaultGcodePlane);
GUN.Set(cnc.DefaultGcodeUnits);
GCO.Set(cnc.DefaultGcodeCoord);
GPA.Set(cnc.DefaultGcodePath);
GDI.Set(cnc.DefaultGcodeDistance);
BAUD.Set(cnc.UsbBaudRate);
SI.Text = cnc.StatusInterval.ToString();
Motor1.Motor = cnc.Motors[0];
Motor2.Motor = cnc.Motors[1];
Motor3.Motor = cnc.Motors[2];
Motor4.Motor = cnc.Motors[3];
AxisX.Axis = cnc.Axises[0];
AxisY.Axis = cnc.Axises[1];
AxisZ.Axis = cnc.Axises[2];
AxisA.Axis = cnc.Axises[3];
m_setting_changed = false;
}