@@ -219,7 +219,7 @@ bool PegasusPPB::ISNewSwitch(const char * dev, const char * name, ISState * stat
219219 PowerOnBootSP.update (states, names, n);
220220 PowerOnBootSP.setState (setPowerOnBoot () ? IPS_OK : IPS_ALERT);
221221 PowerOnBootSP.apply ();
222- saveConfig (true , PowerOnBootSP. getName () );
222+ saveConfig (PowerOnBootSP);
223223 return true ;
224224 }
225225
@@ -351,6 +351,9 @@ bool PegasusPPB::setDewPWM(uint8_t id, uint8_t value)
351351bool PegasusPPB::saveConfigItems (FILE * fp)
352352{
353353 INDI::DefaultDevice::saveConfigItems (fp);
354+
355+ PowerOnBootSP.save (fp);
356+
354357 WI::saveConfigItems (fp);
355358 PI::saveConfigItems (fp);
356359
@@ -405,7 +408,7 @@ bool PegasusPPB::getSensorData()
405408 PI::PowerSensorsNP[PI::SENSOR_CURRENT].setValue (std::stod (result[PA_CURRENT]) / 65.0 );
406409 PI::PowerSensorsNP.setState (IPS_OK);
407410 if (lastSensorData.size () > PA_CURRENT &&
408- (lastSensorData[PA_VOLTAGE] != result[PA_VOLTAGE] || lastSensorData[PA_CURRENT] != result[PA_CURRENT]))
411+ (lastSensorData[PA_VOLTAGE] != result[PA_VOLTAGE] || lastSensorData[PA_CURRENT] != result[PA_CURRENT]))
409412 PI::PowerSensorsNP.apply ();
410413 }
411414
@@ -416,9 +419,9 @@ bool PegasusPPB::getSensorData()
416419 setParameterValue (" WEATHER_HUMIDITY" , std::stod (result[PA_HUMIDITY]));
417420 setParameterValue (" WEATHER_DEWPOINT" , std::stod (result[PA_DEW_POINT]));
418421 if (lastSensorData.size () > PA_DEW_POINT &&
419- (lastSensorData[PA_TEMPERATURE] != result[PA_TEMPERATURE] ||
420- lastSensorData[PA_HUMIDITY] != result[PA_HUMIDITY] ||
421- lastSensorData[PA_DEW_POINT] != result[PA_DEW_POINT]))
422+ (lastSensorData[PA_TEMPERATURE] != result[PA_TEMPERATURE] ||
423+ lastSensorData[PA_HUMIDITY] != result[PA_HUMIDITY] ||
424+ lastSensorData[PA_DEW_POINT] != result[PA_DEW_POINT]))
422425 {
423426 if (WI::syncCriticalParameters ())
424427 critialParametersLP.apply ();
@@ -458,7 +461,7 @@ bool PegasusPPB::getSensorData()
458461 if (PI::DewChannelDutyCycleNP.size () >= 2 )
459462 PI::DewChannelDutyCycleNP[1 ].setValue (std::stod (result[PA_DEW_2]) / 255.0 * 100.0 );
460463 if (lastSensorData.size () > PA_DEW_2 &&
461- (lastSensorData[PA_DEW_1] != result[PA_DEW_1] || lastSensorData[PA_DEW_2] != result[PA_DEW_2]))
464+ (lastSensorData[PA_DEW_1] != result[PA_DEW_1] || lastSensorData[PA_DEW_2] != result[PA_DEW_2]))
462465 PI::DewChannelDutyCycleNP.apply ();
463466 }
464467
0 commit comments