Add setting to enable/disable remote control in default mode
This commit is contained in:
@@ -132,6 +132,7 @@ struct UdpUseStdStringAccessor : public NewSettingsAccessor<bool> { ConfigWrappe
|
|||||||
|
|
||||||
// DefaultMode
|
// DefaultMode
|
||||||
struct DefaultModeModelModeAccessor : public RefAccessorSaveSettings<UnifiedModelMode> { UnifiedModelMode &getRef() const override { return profileSettings.defaultMode.modelMode; } };
|
struct DefaultModeModelModeAccessor : public RefAccessorSaveSettings<UnifiedModelMode> { UnifiedModelMode &getRef() const override { return profileSettings.defaultMode.modelMode; } };
|
||||||
|
struct DefaultModeAllowRemoteControlAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return profileSettings.defaultMode.allowRemoteControl; } };
|
||||||
struct DefaultModeSquareGasAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return profileSettings.defaultMode.squareGas; } };
|
struct DefaultModeSquareGasAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return profileSettings.defaultMode.squareGas; } };
|
||||||
struct DefaultModeSquareBremsAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return profileSettings.defaultMode.squareBrems; } };
|
struct DefaultModeSquareBremsAccessor : public RefAccessorSaveSettings<bool> { bool &getRef() const override { return profileSettings.defaultMode.squareBrems; } };
|
||||||
|
|
||||||
|
@@ -20,6 +20,7 @@
|
|||||||
namespace {
|
namespace {
|
||||||
constexpr char TEXT_DEFAULTMODESETTIGNS[] = "Default mode settings";
|
constexpr char TEXT_DEFAULTMODESETTIGNS[] = "Default mode settings";
|
||||||
constexpr char TEXT_MODELMODE[] = "Model mode";
|
constexpr char TEXT_MODELMODE[] = "Model mode";
|
||||||
|
constexpr char TEXT_ALLOWREMOTECONTROL[] = "Allow remote control";
|
||||||
constexpr char TEXT_SQUAREGAS[] = "Square gas";
|
constexpr char TEXT_SQUAREGAS[] = "Square gas";
|
||||||
constexpr char TEXT_SQUAREBREMS[] = "Square brems";
|
constexpr char TEXT_SQUAREBREMS[] = "Square brems";
|
||||||
constexpr char TEXT_ENABLESMOOTHINGUP[] = "Enable up smoothing";
|
constexpr char TEXT_ENABLESMOOTHINGUP[] = "Enable up smoothing";
|
||||||
@@ -120,6 +121,7 @@ using namespace espgui;
|
|||||||
DefaultModeSettingsMenu::DefaultModeSettingsMenu()
|
DefaultModeSettingsMenu::DefaultModeSettingsMenu()
|
||||||
{
|
{
|
||||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MODELMODE>, PushScreenAction<DefaultModeModelModeChangeDisplay>>>();
|
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MODELMODE>, PushScreenAction<DefaultModeModelModeChangeDisplay>>>();
|
||||||
|
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ALLOWREMOTECONTROL>, BobbyCheckbox, DefaultModeAllowRemoteControlAccessor>>();
|
||||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SQUAREGAS>, BobbyCheckbox, DefaultModeSquareGasAccessor>>();
|
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SQUAREGAS>, BobbyCheckbox, DefaultModeSquareGasAccessor>>();
|
||||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SQUAREBREMS>, BobbyCheckbox, DefaultModeSquareBremsAccessor>>();
|
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SQUAREBREMS>, BobbyCheckbox, DefaultModeSquareBremsAccessor>>();
|
||||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ENABLESMOOTHINGUP>, BobbyCheckbox, DefaultModeEnableSmoothingUpAccessor>>();
|
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ENABLESMOOTHINGUP>, BobbyCheckbox, DefaultModeEnableSmoothingUpAccessor>>();
|
||||||
|
@@ -261,7 +261,7 @@ void DefaultMode::update()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_remoteCommand && espchrono::ago(m_timestamp) < 500ms)
|
if (profileSettings.defaultMode.allowRemoteControl && m_remoteCommand && espchrono::ago(m_timestamp) < 500ms)
|
||||||
{
|
{
|
||||||
controllers.front.command.left.pwm += m_remoteCommand->frontLeft;
|
controllers.front.command.left.pwm += m_remoteCommand->frontLeft;
|
||||||
controllers.front.command.right.pwm += m_remoteCommand->frontRight;
|
controllers.front.command.right.pwm += m_remoteCommand->frontRight;
|
||||||
|
@@ -58,6 +58,7 @@ constexpr ProfileSettings::ControllerHardware spinnerControllerHardware {
|
|||||||
|
|
||||||
constexpr ProfileSettings::DefaultMode defaultDefaultMode {
|
constexpr ProfileSettings::DefaultMode defaultDefaultMode {
|
||||||
.modelMode = UnifiedModelMode::FocTorque, // profileSetting
|
.modelMode = UnifiedModelMode::FocTorque, // profileSetting
|
||||||
|
.allowRemoteControl = true,
|
||||||
.squareGas = true,
|
.squareGas = true,
|
||||||
.squareBrems = true,
|
.squareBrems = true,
|
||||||
.enableSmoothingUp = true, // profileSetting
|
.enableSmoothingUp = true, // profileSetting
|
||||||
|
@@ -24,6 +24,7 @@ struct ProfileSettings
|
|||||||
|
|
||||||
struct DefaultMode {
|
struct DefaultMode {
|
||||||
UnifiedModelMode modelMode;
|
UnifiedModelMode modelMode;
|
||||||
|
bool allowRemoteControl;
|
||||||
bool squareGas;
|
bool squareGas;
|
||||||
bool squareBrems;
|
bool squareBrems;
|
||||||
bool enableSmoothingUp;
|
bool enableSmoothingUp;
|
||||||
@@ -110,6 +111,7 @@ void ProfileSettings::executeForEveryProfileSetting(T &&callable)
|
|||||||
callable("default.brems1_", defaultMode.brems1_wert);
|
callable("default.brems1_", defaultMode.brems1_wert);
|
||||||
callable("default.brems2_", defaultMode.brems2_wert);
|
callable("default.brems2_", defaultMode.brems2_wert);
|
||||||
callable("default.squareG", defaultMode.squareGas);
|
callable("default.squareG", defaultMode.squareGas);
|
||||||
|
callable("default.alwRemo", defaultMode.allowRemoteControl);
|
||||||
callable("default.squareB", defaultMode.squareBrems);
|
callable("default.squareB", defaultMode.squareBrems);
|
||||||
|
|
||||||
callable("tempoma.modelMo", tempomatMode.modelMode);
|
callable("tempoma.modelMo", tempomatMode.modelMode);
|
||||||
|
Reference in New Issue
Block a user