diff --git a/syringe.h b/syringe.h index 9d8b3588b57e8ee241fcfe3d69324012ebf5becd..f158d4a09732c7cb0e5a924b79f5ac3da7e4b3ff 100644 --- a/syringe.h +++ b/syringe.h @@ -99,3 +99,5 @@ private: float piston_surface = 0; }; + +extern Syringe syringe; diff --git a/web.cpp b/web.cpp index 32a793aff532ee46516b69ec6a5d18d84abe09a5..7ebf386a7cf5934c112753e94f394ce63016a652 100644 --- a/web.cpp +++ b/web.cpp @@ -108,7 +108,15 @@ void webSetup () ESPUI.addControl(ControlType::Min, "", "0", ControlColor::None, constantFlow); ESPUI.addControl(ControlType::Max, "", "30", ControlColor::None, constantFlow); - uint16_t displacementDistance = ESPUI.addControl(ControlType::Slider, "Select a seringe displacement distance (mm)", "100", ControlColor::Alizarin, Control::noParent, &slider); + //uint16_t displacementDistance = ESPUI.addControl(ControlType::Slider, "Select a seringe displacement distance (mm)", "100", ControlColor::Alizarin, Control::noParent, &slider); + uint16_t displacementDistance = ESPUI.addControl(ControlType::Slider, "Select a seringe displacement distance (mm)", "100", ControlColor::Alizarin, Control::noParent, + [](Control *sender, int type) + { + Serial.printf("val=%s\n", sender->value.c_str()); + Syringe::Syringe_configuration_t conf = syringe.configuration(); + conf.volume_value = syringe.mmToMm3(atof(sender->value.c_str())); + syringe.configureSyringe(conf); + }); ESPUI.addControl(ControlType::Min, "", "0", ControlColor::None, displacementDistance); ESPUI.addControl(ControlType::Max, "", "100", ControlColor::None, displacementDistance); @@ -116,7 +124,13 @@ void webSetup () ESPUI.addControl(ControlType::Min, "", "0", ControlColor::None, displacementTime); ESPUI.addControl(ControlType::Max, "", "100", ControlColor::None, displacementTime); - button1 = ESPUI.addControl(ControlType::Button, "Actuate", "Press", ControlColor::Peterriver, Control::noParent, &buttonCallback); + //button1 = ESPUI.addControl(ControlType::Button, "Actuate", "Press", ControlColor::Peterriver, Control::noParent, &buttonCallback); + button1 = ESPUI.addControl(ControlType::Button, "Actuate", "Press", ControlColor::Peterriver, Control::noParent, + [](Control *sender, int type) + { + if (type == B_UP) + syringe.fill(); + }); /* * .begin loads and serves all files from PROGMEM directly.