Skip to content

Commit 2ddaa4a

Browse files
committed
"Check door" state fix.
"Return XYZ" button only restores G92 offsets.
1 parent db31274 commit 2ddaa4a

8 files changed

+270
-229
lines changed

src/frmmain.cpp

+26-15
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@
44
//#define INITTIME //QTime time; time.start();
55
//#define PRINTTIME(x) //qDebug() << "time elapse" << QString("%1:").arg(x) << time.elapsed(); time.start();
66

7-
#define IDLE 0
8-
#define ALARM 1
9-
#define RUN 2
10-
#define HOME 3
11-
#define HOLD 4
12-
#define QUEUE 5
13-
#define CHECK 6
7+
#define UNKNOWN 0
8+
#define IDLE 1
9+
#define ALARM 2
10+
#define RUN 3
11+
#define HOME 4
12+
#define HOLD 5
13+
#define QUEUE 6
14+
#define CHECK 7
15+
#define DOOR 8
1416

1517
#include <QFileDialog>
1618
#include <QTextStream>
@@ -32,10 +34,10 @@ frmMain::frmMain(QWidget *parent) :
3234
QMainWindow(parent),
3335
ui(new Ui::frmMain)
3436
{
35-
m_status << "Idle" << "Alarm" << "Run" << "Home" << "Hold" << "Queue" << "Check";
36-
m_statusCaptions << tr("Idle") << tr("Alarm") << tr("Run") << tr("Home") << tr("Hold") << tr("Queue") << tr("Check");
37-
m_statusBackColors << "palette(button)" << "red" << "lime" << "lime" << "yellow" << "yellow" << "palette(button)";
38-
m_statusForeColors << "palette(text)" << "white" << "black" << "black" << "black" << "black" << "palette(text)";
37+
m_status << "Unknown" << "Idle" << "Alarm" << "Run" << "Home" << "Hold" << "Queue" << "Check" << "Door";
38+
m_statusCaptions << tr("Unknown") << tr("Idle") << tr("Alarm") << tr("Run") << tr("Home") << tr("Hold") << tr("Queue") << tr("Check") << tr("Door");
39+
m_statusBackColors << "red" << "palette(button)" << "red" << "lime" << "lime" << "yellow" << "yellow" << "palette(button)" << "red";
40+
m_statusForeColors << "white" << "palette(text)" << "white" << "black" << "black" << "black" << "black" << "palette(text)" << "white";
3941

4042
ui->setupUi(this);
4143

@@ -598,7 +600,7 @@ void frmMain::grblReset()
598600
qDebug() << "grbl reset";
599601

600602
m_serialPort.write(QByteArray(1, (char)24));
601-
m_serialPort.flush();
603+
// m_serialPort.flush();
602604

603605
m_processingFile = false;
604606
m_transferCompleted = true;
@@ -672,6 +674,9 @@ void frmMain::onSerialPortReadyRead()
672674
if (stx.indexIn(data) != -1) {
673675
status = m_status.indexOf(stx.cap(1));
674676

677+
// Undetermined status
678+
if (status == -1) status = 0;
679+
675680
// Update status
676681
if (status != m_lastGrblStatus) {
677682
ui->txtStatus->setText(m_statusCaptions[status]);
@@ -1946,9 +1951,14 @@ void frmMain::on_cmdZeroZ_clicked()
19461951
void frmMain::on_cmdReturnXY_clicked()
19471952
{
19481953
sendCommand(QString("G21"), -1, m_settings.showUICommands());
1949-
sendCommand(QString("G53G90G0X%1Y%2Z%3").arg(m_storedX).arg(m_storedY).arg(toMetric(ui->txtMPosZ->text().toDouble())),
1950-
-1, m_settings.showUICommands());
1951-
sendCommand(QString("G92X0Y0Z%1").arg(toMetric(ui->txtMPosZ->text().toDouble()) - m_storedZ), -1, m_settings.showUICommands());
1954+
// sendCommand(QString("G53G90G0X%1Y%2Z%3").arg(m_storedX).arg(m_storedY).arg(toMetric(ui->txtMPosZ->text().toDouble())),
1955+
// -1, m_settings.showUICommands());
1956+
sendCommand(QString("G53G90G0X%1Y%2Z%3").arg(toMetric(ui->txtMPosX->text().toDouble()))
1957+
.arg(toMetric(ui->txtMPosY->text().toDouble()))
1958+
.arg(toMetric(ui->txtMPosZ->text().toDouble())), -1, m_settings.showUICommands());
1959+
sendCommand(QString("G92X%1Y%2Z%3").arg(toMetric(ui->txtMPosX->text().toDouble()) - m_storedX)
1960+
.arg(toMetric(ui->txtMPosY->text().toDouble()) - m_storedY)
1961+
.arg(toMetric(ui->txtMPosZ->text().toDouble()) - m_storedZ), -1, m_settings.showUICommands());
19521962
}
19531963

19541964
void frmMain::on_cmdReset_clicked()
@@ -2304,6 +2314,7 @@ bool frmMain::dataIsFloating(QString data) {
23042314
ends << "Reset to continue";
23052315
ends << "'$H'|'$X' to unlock";
23062316
ends << "ALARM: Hard limit. MPos?";
2317+
ends << "Check Door";
23072318

23082319
foreach (QString str, ends) {
23092320
if (data.contains(str)) return true;

src/grbl_control.pro

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ DEFINES += sNan=\"65536\"
3232

3333
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
3434

35-
VERSION = 0.8.3
35+
VERSION = 0.8.4
3636

3737
DEFINES += APP_VERSION=\\\"$$VERSION\\\"
3838

src/translations/grblControl_es.qm

117 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)