Updated Layer screen & RepetierClient
Updated Layer screen to change between font sizes depending on how many layers are printing. Also added the features to RepetierClientpull/136/head
parent
5460696479
commit
46660b9a93
|
|
@ -256,11 +256,8 @@ void OctoPrintClient::getPrinterJobResults() {
|
||||||
// Parse JSON object
|
// Parse JSON object
|
||||||
JsonObject& root3 = jsonBuffer3.parseObject(printClient);
|
JsonObject& root3 = jsonBuffer3.parseObject(printClient);
|
||||||
if (!root3.success()) {
|
if (!root3.success()) {
|
||||||
// printerData.isPrinting = false;
|
|
||||||
printerData.estimatedEndTime = "";
|
printerData.estimatedEndTime = "";
|
||||||
printerData.currentLayer = "";
|
printerData.currentLayer = "";
|
||||||
// printerData.bedTemp = "";
|
|
||||||
// printerData.bedTargetTemp = (const char*)root2["temperature"]["bed"]["target"];
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -220,6 +220,27 @@ void RepetierClient::getPrinterJobResults() {
|
||||||
printerData.bedTemp = (const char*) pr2["heatedBeds"][0]["tempRead"];
|
printerData.bedTemp = (const char*) pr2["heatedBeds"][0]["tempRead"];
|
||||||
printerData.bedTargetTemp = (const char*) pr2["heatedBeds"][0]["tempSet"];
|
printerData.bedTargetTemp = (const char*) pr2["heatedBeds"][0]["tempSet"];
|
||||||
|
|
||||||
|
// Layer & Endtime
|
||||||
|
apiGetData = "GET /plugin/DisplayLayerProgress/values HTTP/1.1";
|
||||||
|
printClient = getSubmitRequest(apiGetData);
|
||||||
|
if (printerData.error != "") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const size_t bufferSize3 = JSON_OBJECT_SIZE(4) + JSON_OBJECT_SIZE(6) + JSON_OBJECT_SIZE(7) + JSON_OBJECT_SIZE(10) + 550;
|
||||||
|
DynamicJsonBuffer jsonBuffer3(bufferSize3);
|
||||||
|
|
||||||
|
// Parse JSON object
|
||||||
|
JsonObject& root3 = jsonBuffer3.parseObject(printClient);
|
||||||
|
if (!root3.success()) {
|
||||||
|
printerData.estimatedEndTime = "";
|
||||||
|
printerData.currentLayer = "";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
printerData.estimatedEndTime = (const char*)root3["print"]["estimatedEndTime"];
|
||||||
|
printerData.currentLayer = (const char*)root3["layer"]["current"];
|
||||||
|
printerData.totalLayers = (const char*)root3["layer"]["total"];
|
||||||
|
|
||||||
if (printerData.isPrinting) {
|
if (printerData.isPrinting) {
|
||||||
Serial.println("Status: " + printerData.state + " " + printerData.fileName + "(" + printerData.progressCompletion + "%)");
|
Serial.println("Status: " + printerData.state + " " + printerData.fileName + "(" + printerData.progressCompletion + "%)");
|
||||||
}
|
}
|
||||||
|
|
@ -249,9 +270,24 @@ void RepetierClient::resetPrintData() {
|
||||||
printerData.bedTargetTemp = "";
|
printerData.bedTargetTemp = "";
|
||||||
printerData.isPrinting = false;
|
printerData.isPrinting = false;
|
||||||
printerData.isPSUoff = false;
|
printerData.isPSUoff = false;
|
||||||
|
printerData.currentLayer = "";
|
||||||
|
printerData.totalLayers = "";
|
||||||
|
printerData.estimatedEndTime = "";
|
||||||
printerData.error = "";
|
printerData.error = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String RepetierClient::getCurrentLayer(){
|
||||||
|
return printerData.currentLayer;
|
||||||
|
}
|
||||||
|
|
||||||
|
String RepetierClient::getTotalLayers(){
|
||||||
|
return printerData.totalLayers;
|
||||||
|
}
|
||||||
|
|
||||||
|
String RepetierClient::getEstimatedEndTime(){
|
||||||
|
return printerData.estimatedEndTime;
|
||||||
|
}
|
||||||
|
|
||||||
String RepetierClient::getAveragePrintTime(){
|
String RepetierClient::getAveragePrintTime(){
|
||||||
return printerData.averagePrintTime;
|
return printerData.averagePrintTime;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -59,6 +59,9 @@ private:
|
||||||
String state;
|
String state;
|
||||||
String toolTemp;
|
String toolTemp;
|
||||||
String toolTargetTemp;
|
String toolTargetTemp;
|
||||||
|
String currentLayer;
|
||||||
|
String totalLayers;
|
||||||
|
String estimatedEndTime;
|
||||||
String filamentLength;
|
String filamentLength;
|
||||||
String bedTemp;
|
String bedTemp;
|
||||||
String bedTargetTemp;
|
String bedTargetTemp;
|
||||||
|
|
@ -92,6 +95,9 @@ public:
|
||||||
boolean isPSUoff();
|
boolean isPSUoff();
|
||||||
String getTempBedActual();
|
String getTempBedActual();
|
||||||
String getTempBedTarget();
|
String getTempBedTarget();
|
||||||
|
String getEstimatedEndTime();
|
||||||
|
String getCurrentLayer();
|
||||||
|
String getTotalLayers();
|
||||||
String getTempToolActual();
|
String getTempToolActual();
|
||||||
String getTempToolTarget();
|
String getTempToolTarget();
|
||||||
String getFilamentLength();
|
String getFilamentLength();
|
||||||
|
|
|
||||||
|
|
@ -979,17 +979,28 @@ void drawScreen4(OLEDDisplay *display, OLEDDisplayUiState* state, int16_t x, int
|
||||||
|
|
||||||
String layer = printerClient.getCurrentLayer();
|
String layer = printerClient.getCurrentLayer();
|
||||||
String totalLayers = printerClient.getTotalLayers();
|
String totalLayers = printerClient.getTotalLayers();
|
||||||
|
if (printerClient.getTotalLayers().toInt() >= 1000) {
|
||||||
|
display->setTextAlignment(TEXT_ALIGN_CENTER);
|
||||||
|
display->setFont(ArialMT_Plain_16);
|
||||||
|
|
||||||
|
display->drawString(64 + x, 0 + y, "Layer");
|
||||||
|
//display->setTextAlignment(TEXT_ALIGN_LEFT);
|
||||||
|
display->setFont(ArialMT_Plain_16);
|
||||||
|
|
||||||
|
display->drawString(64 + x, 14 + y, layer + " / " + totalLayers);
|
||||||
|
} else
|
||||||
display->setTextAlignment(TEXT_ALIGN_CENTER);
|
display->setTextAlignment(TEXT_ALIGN_CENTER);
|
||||||
display->setFont(ArialMT_Plain_16);
|
display->setFont(ArialMT_Plain_16);
|
||||||
|
|
||||||
display->drawString(64 + x, 0 + y, "Layer");
|
display->drawString(64 + x, 0 + y, "Layer");
|
||||||
//display->setTextAlignment(TEXT_ALIGN_LEFT);
|
//display->setTextAlignment(TEXT_ALIGN_LEFT);
|
||||||
display->setFont(ArialMT_Plain_16);
|
display->setFont(ArialMT_Plain_24);
|
||||||
|
|
||||||
display->drawString(64 + x, 14 + y, layer+ " / " + totalLayers);
|
display->drawString(64 + x, 14 + y, layer + " / " + totalLayers);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
void drawScreen5(OLEDDisplay *display, OLEDDisplayUiState* state, int16_t x, int16_t y) {
|
void drawScreen5(OLEDDisplay *display, OLEDDisplayUiState* state, int16_t x, int16_t y) {
|
||||||
|
|
||||||
String EstimatedEnd = printerClient.getEstimatedEndTime();
|
String EstimatedEnd = printerClient.getEstimatedEndTime();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue