Added homing functionality
parent
8acfa5b7fd
commit
e55eeb0cdb
|
|
@ -53,20 +53,22 @@ void PreheatMenu::processKey(char c)
|
||||||
Menu::processKey(c);
|
Menu::processKey(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PreheatMenu::TriggerPreheat(TemperatureMenuItem *item) {
|
void PreheatMenu::TriggerPreheat(TemperatureMenuItem *item)
|
||||||
if (item->preheatBed) {
|
{
|
||||||
|
if (item->preheatBed)
|
||||||
|
{
|
||||||
client->preheatBed(item->preset->bed);
|
client->preheatBed(item->preset->bed);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item->preheatChamber) {
|
if (item->preheatChamber)
|
||||||
|
{
|
||||||
client->preheatChamber(item->preset->chamber);
|
client->preheatChamber(item->preset->chamber);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (item->preheatExtruder) {
|
if (item->preheatExtruder)
|
||||||
|
{
|
||||||
client->preheatTool(0, item->preset->extruder);
|
client->preheatTool(0, item->preset->extruder);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void PreheatMenu::CreateTemperatureMenu(TemperatureMenuItem *item)
|
void PreheatMenu::CreateTemperatureMenu(TemperatureMenuItem *item)
|
||||||
|
|
|
||||||
|
|
@ -229,6 +229,45 @@ void OctoPrintClient::preheatBed(int temperature)
|
||||||
WiFiClient printClient = getPostRequest(apiPostData, stringBuffer);
|
WiFiClient printClient = getPostRequest(apiPostData, stringBuffer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void OctoPrintClient::homeAxis(boolean x, boolean y, boolean z)
|
||||||
|
{
|
||||||
|
if (!validate())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
String apiPostData = "POST /api/printer/printhead HTTP/1.1";
|
||||||
|
|
||||||
|
const size_t capacity = JSON_ARRAY_SIZE(3) + JSON_OBJECT_SIZE(2);
|
||||||
|
DynamicJsonBuffer jsonBuffer(capacity);
|
||||||
|
|
||||||
|
JsonObject &root = jsonBuffer.createObject();
|
||||||
|
|
||||||
|
JsonArray &axes = root.createNestedArray("axes");
|
||||||
|
if (x)
|
||||||
|
{
|
||||||
|
axes.add("x");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (y)
|
||||||
|
{
|
||||||
|
axes.add("y");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (z)
|
||||||
|
{
|
||||||
|
axes.add("z");
|
||||||
|
}
|
||||||
|
root["command"] = "home";
|
||||||
|
|
||||||
|
String json;
|
||||||
|
|
||||||
|
root.printTo(json);
|
||||||
|
|
||||||
|
Serial.println(json);
|
||||||
|
WiFiClient printClient = getPostRequest(apiPostData, json);
|
||||||
|
}
|
||||||
|
|
||||||
void OctoPrintClient::preheatChamber(int temperature)
|
void OctoPrintClient::preheatChamber(int temperature)
|
||||||
{
|
{
|
||||||
if (!validate())
|
if (!validate())
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,7 @@ public:
|
||||||
void getPrinterPsuState();
|
void getPrinterPsuState();
|
||||||
void preheatTool(int toolIndex, int temperature);
|
void preheatTool(int toolIndex, int temperature);
|
||||||
void preheatBed(int temperature);
|
void preheatBed(int temperature);
|
||||||
|
void homeAxis(boolean x, boolean y, boolean z);
|
||||||
void preheatChamber (int temperature);
|
void preheatChamber (int temperature);
|
||||||
void updatePrintClient(String ApiKey, String server, int port, String user, String pass, boolean psu);
|
void updatePrintClient(String ApiKey, String server, int port, String user, String pass, boolean psu);
|
||||||
void updateTemperaturePresets();
|
void updateTemperaturePresets();
|
||||||
|
|
|
||||||
|
|
@ -444,6 +444,15 @@ void loop()
|
||||||
case 'B':
|
case 'B':
|
||||||
displayMenu(cooldownMenu);
|
displayMenu(cooldownMenu);
|
||||||
break;
|
break;
|
||||||
|
case '1':
|
||||||
|
printerClient.homeAxis(true, false, false);
|
||||||
|
break;
|
||||||
|
case '2':
|
||||||
|
printerClient.homeAxis(false, true, false);
|
||||||
|
break;
|
||||||
|
case '3':
|
||||||
|
printerClient.homeAxis(false, false, true);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue