1
0
forked from me/IronOS

USB PD timeout added

This commit is contained in:
Varga Zsolt
2021-06-06 18:45:00 +02:00
parent 9ed1c1fc04
commit 81de60e1e4
36 changed files with 252 additions and 0 deletions

View File

@@ -57,6 +57,7 @@ void resetSettings() {
systemSettings.minDCVoltageCells = CUT_OUT_SETTING; // default to no cut-off voltage
systemSettings.minVoltageCells = RECOM_VOL_CELL; // Minimum voltage per cell (Recommended 3.3V (33))
systemSettings.QCIdealVoltage = 0; // Default to 9V for QC3.0 Voltage
systemSettings.PDNegTimeout = 0; // Default for PD timout to 0
systemSettings.version = SETTINGSVERSION; // Store the version number to allow for easier upgrades
systemSettings.detailedSoldering = DETAILED_SOLDERING; // Detailed soldering screen
systemSettings.detailedIDLE = DETAILED_IDLE; // Detailed idle screen (off for first time users)

View File

@@ -27,6 +27,9 @@ static bool settings_setQCInputV(void);
static bool settings_displayQCInputV(void);
#endif
static bool settings_setPDNegTimeout(void);
static bool settings_displayPDNegTimeout(void);
#ifndef NO_SLEEP_MODE
static bool settings_setSleepTemp(void);
static bool settings_displaySleepTemp(void);
@@ -174,6 +177,7 @@ const menuitem powerMenu[] = {
#ifdef POW_QC
{SETTINGS_DESC(SettingsItemIndex::QCMaxVoltage), settings_setQCInputV, settings_displayQCInputV}, /*Voltage input*/
#endif
{SETTINGS_DESC(SettingsItemIndex::PDNegTimeout), settings_setPDNegTimeout, settings_displayPDNegTimeout}, /*PD timeout setup*/
{0, nullptr, nullptr} // end of menu marker. DO NOT REMOVE
};
#endif
@@ -350,6 +354,7 @@ static bool settings_displayInputMinVRange(void) {
static bool settings_setQCInputV(void) {
#ifdef POW_QC_20V
systemSettings.QCIdealVoltage = (systemSettings.QCIdealVoltage + 1) % 3;
return systemSettings.QCIdealVoltage == 2;
#else
systemSettings.QCIdealVoltage = (systemSettings.QCIdealVoltage + 1) % 2;
@@ -382,6 +387,19 @@ static bool settings_displayQCInputV(void) {
#endif
static bool settings_setPDNegTimeout(void) {
systemSettings.PDNegTimeout = (systemSettings.PDNegTimeout + 1) % 50;
return systemSettings.QCIdealVoltage == 49;
}
static bool settings_displayPDNegTimeout(void){
printShortDescription(SettingsItemIndex::PDNegTimeout, 5);
OLED::printNumber(systemSettings.PDNegTimeout, 2, FontStyle::LARGE);
return systemSettings.QCIdealVoltage == 49;
}
#ifndef NO_SLEEP_MODE
static bool settings_setSleepTemp(void) {
// If in C, 10 deg, if in F 20 deg