mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
Add detailed soldering screen
This adds a detailed soldering screen to take a step towards #181
This commit is contained in:
@@ -35,6 +35,7 @@ extern const char* SleepingTipAdvancedString;
|
||||
extern const char* IdleTipString;
|
||||
extern const char* IdleSetString;
|
||||
extern const char* TipDisconnectedString;
|
||||
extern const char* SolderingAdvancedPowerPrompt;
|
||||
|
||||
extern const char SettingTrueChar;
|
||||
extern const char SettingFalseChar;
|
||||
|
||||
@@ -86,6 +86,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -149,6 +150,7 @@ cconst char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
/*
|
||||
* #TODO change support for multibyte constants here
|
||||
@@ -218,6 +220,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -281,6 +284,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -344,6 +348,7 @@ const char* SleepingTipAdvancedString = "Punta:"; // <=6 chars
|
||||
const char* IdleTipString = "Pun:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Prev:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "PUNTA ASSENTE"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'D';
|
||||
const char SettingLeftChar = 'S';
|
||||
@@ -407,6 +412,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'D';
|
||||
const char SettingLeftChar = 'G';
|
||||
@@ -470,6 +476,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -533,6 +540,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -596,6 +604,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -659,6 +668,7 @@ const char* SleepingTipAdvancedString = "Vrh: "; // <=6 chars
|
||||
const char* IdleTipString = "Vrh: "; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " / "; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "VRH NIJE SPOJEN!"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'D';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -722,6 +732,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'P';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -785,6 +796,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'R';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -848,6 +860,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'H';
|
||||
const char SettingLeftChar = 'V';
|
||||
@@ -911,6 +924,7 @@ const char* SleepingTipAdvancedString = "Tip:"; // <=6 chars
|
||||
const char* IdleTipString = "Tip:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Set:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "TIP DISCONNECTED"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'P';
|
||||
const char SettingLeftChar = 'L';
|
||||
@@ -975,6 +989,7 @@ const char* SleepingTipAdvancedString = "Ponta:"; // <=6 chars
|
||||
const char* IdleTipString = "Ponta:"; // IdleTipString+IdleSetString <= 10
|
||||
const char* IdleSetString = " Aj:"; // preferably start with a space; IdleTipString+IdleSetString <= 10
|
||||
const char* TipDisconnectedString = "SEM PONTA"; // <=16 chars
|
||||
const char* SolderingAdvancedPowerPrompt = "Power: ";
|
||||
|
||||
const char SettingRightChar = 'D';
|
||||
const char SettingLeftChar = 'C';
|
||||
|
||||
@@ -312,7 +312,7 @@ static void gui_solderingTempAdjust() {
|
||||
|
||||
if (xTaskGetTickCount() - lastChange > 200)
|
||||
return; // exit if user just doesn't press anything for a bit
|
||||
lcd.drawChar('<');
|
||||
lcd.drawChar('-');
|
||||
lcd.drawChar(' ');
|
||||
lcd.printNumber(systemSettings.SolderingTemp, 3);
|
||||
if (systemSettings.temperatureInF)
|
||||
@@ -320,7 +320,7 @@ static void gui_solderingTempAdjust() {
|
||||
else
|
||||
lcd.drawSymbol(1);
|
||||
lcd.drawChar(' ');
|
||||
lcd.drawChar('>');
|
||||
lcd.drawChar('+');
|
||||
lcd.refresh();
|
||||
GUIDelay();
|
||||
}
|
||||
@@ -592,59 +592,87 @@ static void gui_solderingMode() {
|
||||
waitForButtonPress();
|
||||
return;
|
||||
} else {
|
||||
// We switch the layout direction depending on the orientation of the lcd.
|
||||
if (lcd.getRotation()) {
|
||||
// battery
|
||||
gui_drawBatteryIcon();
|
||||
if (systemSettings.detailedSoldering) {
|
||||
lcd.setFont(1);
|
||||
lcd.print(SolderingAdvancedPowerPrompt); //Power:
|
||||
lcd.printNumber(getTipPWM(), 3);
|
||||
lcd.print("%");
|
||||
|
||||
lcd.drawChar(' '); // Space out gap between battery <-> temp
|
||||
if (systemSettings.temperatureInF) {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(0); // deg F
|
||||
} else {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(1); // deg C
|
||||
}
|
||||
lcd.setCursor(0, 8);
|
||||
lcd.print(SleepingTipAdvancedString);
|
||||
uint16_t Temp = getTipRawTemp(0);
|
||||
|
||||
// We draw boost arrow if boosting, or else gap temp <-> heat indicator
|
||||
if (boostModeOn)
|
||||
lcd.drawSymbol(2);
|
||||
if (systemSettings.temperatureInF)
|
||||
Temp = tipMeasurementToF(Temp);
|
||||
else
|
||||
lcd.drawChar(' ');
|
||||
|
||||
// Draw heating/cooling symbols
|
||||
// If tip PWM > 10% then we are 'heating'
|
||||
if (getTipPWM() > 10)
|
||||
lcd.drawSymbol(14);
|
||||
Temp = tipMeasurementToC(Temp);
|
||||
lcd.printNumber(Temp, 3);
|
||||
if (systemSettings.temperatureInF)
|
||||
lcd.print("F");
|
||||
else
|
||||
lcd.drawSymbol(15);
|
||||
lcd.print("C");
|
||||
|
||||
lcd.print(" ");
|
||||
lcd.printNumber(
|
||||
getInputVoltageX10(systemSettings.voltageDiv) / 10, 2);
|
||||
lcd.drawChar('.');
|
||||
lcd.printNumber(
|
||||
getInputVoltageX10(systemSettings.voltageDiv) % 10, 1);
|
||||
lcd.drawChar('V');
|
||||
} else {
|
||||
// Draw heating/cooling symbols
|
||||
// If tip PWM > 10% then we are 'heating'
|
||||
if (getTipPWM() > 10)
|
||||
lcd.drawSymbol(14);
|
||||
else
|
||||
lcd.drawSymbol(15);
|
||||
// We draw boost arrow if boosting, or else gap temp <-> heat indicator
|
||||
if (boostModeOn)
|
||||
lcd.drawSymbol(2);
|
||||
else
|
||||
lcd.drawChar(' ');
|
||||
// We switch the layout direction depending on the orientation of the lcd.
|
||||
if (lcd.getRotation()) {
|
||||
// battery
|
||||
gui_drawBatteryIcon();
|
||||
|
||||
if (systemSettings.temperatureInF) {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(0); // deg F
|
||||
lcd.drawChar(' '); // Space out gap between battery <-> temp
|
||||
if (systemSettings.temperatureInF) {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(0); // deg F
|
||||
} else {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(1); // deg C
|
||||
}
|
||||
|
||||
// We draw boost arrow if boosting, or else gap temp <-> heat indicator
|
||||
if (boostModeOn)
|
||||
lcd.drawSymbol(2);
|
||||
else
|
||||
lcd.drawChar(' ');
|
||||
|
||||
// Draw heating/cooling symbols
|
||||
// If tip PWM > 10% then we are 'heating'
|
||||
if (getTipPWM() > 10)
|
||||
lcd.drawSymbol(14);
|
||||
else
|
||||
lcd.drawSymbol(15);
|
||||
} else {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(1); // deg C
|
||||
// Draw heating/cooling symbols
|
||||
// If tip PWM > 10% then we are 'heating'
|
||||
if (getTipPWM() > 10)
|
||||
lcd.drawSymbol(14);
|
||||
else
|
||||
lcd.drawSymbol(15);
|
||||
// We draw boost arrow if boosting, or else gap temp <-> heat indicator
|
||||
if (boostModeOn)
|
||||
lcd.drawSymbol(2);
|
||||
else
|
||||
lcd.drawChar(' ');
|
||||
|
||||
if (systemSettings.temperatureInF) {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(0); // deg F
|
||||
} else {
|
||||
gui_drawTipTemp(); // Draw current tip temp
|
||||
lcd.drawSymbol(1); // deg C
|
||||
}
|
||||
|
||||
lcd.drawChar(' '); // Space out gap between battery <-> temp
|
||||
|
||||
gui_drawBatteryIcon();
|
||||
}
|
||||
|
||||
lcd.drawChar(' '); // Space out gap between battery <-> temp
|
||||
|
||||
gui_drawBatteryIcon();
|
||||
}
|
||||
}
|
||||
|
||||
// Update the setpoints for the temperature
|
||||
if (boostModeOn) {
|
||||
if (systemSettings.temperatureInF)
|
||||
@@ -990,7 +1018,7 @@ void startMOVTask(void const *argument) {
|
||||
lcd.print(" ");
|
||||
lcd.printNumber(abs(avgy - (int32_t) ty), 5);
|
||||
if ((abs(avgx - tx) + abs(avgy - ty) + abs(avgz - tz)) > max)
|
||||
max = (abs(avgx - tx) + abs(avgy - ty) + abs(avgz - tz));
|
||||
max = (abs(avgx - tx) + abs(avgy - ty) + abs(avgz - tz));
|
||||
lcd.setCursor(0, 8);
|
||||
lcd.printNumber(max, 5);
|
||||
lcd.print(" ");
|
||||
@@ -998,7 +1026,7 @@ void startMOVTask(void const *argument) {
|
||||
lcd.printNumber((abs(avgx - tx) + abs(avgy - ty) + abs(avgz - tz)), 5);
|
||||
lcd.refresh();
|
||||
if (HAL_GPIO_ReadPin(KEY_A_GPIO_Port, KEY_A_Pin) == GPIO_PIN_RESET)
|
||||
max = 0;
|
||||
max = 0;
|
||||
#endif
|
||||
// Only run the actual processing if the sensitivity is set (aka we are
|
||||
// enabled)
|
||||
|
||||
Reference in New Issue
Block a user