37 lpStatus = launchDetector->update(accel);
39 if (launchDetector->isLaunched()) {
44 Serial.println(
"To pa (launch detected)");
45 Serial.print(
"PA timestamp: ");
47 dataSaver->saveDataPoint(
53 dataSaver->launchDetected(launchDetector->getLaunchedTime());
56 verticalVelocityEstimator->update(accel, alt);
66 verticalVelocityEstimator->update(accel, alt);
67 apogeeDetector->update(verticalVelocityEstimator);
68 Serial.println(verticalVelocityEstimator->getInertialVerticalAcceleration());
69 if (verticalVelocityEstimator->getInertialVerticalAcceleration() <= 0) {
74 Serial.print(
"CA timestamp: ");
76 dataSaver->saveDataPoint(
84 verticalVelocityEstimator->update(accel, alt);
85 apogeeDetector->update(verticalVelocityEstimator);
86 if (apogeeDetector->isApogeeDetected()) {
90 Serial.println(
"To descent");
91 Serial.print(
"Descent timestamp: ");
93 dataSaver->saveDataPoint(
BurnoutStateMachine(IDataSaver *dataSaver, LaunchDetector *launchDetector, ApogeeDetector *apogeeDetector, VerticalVelocityEstimator *verticalVelocityEstimator)
Construct with logging and detector dependencies.