From b1658ec6eed20e08f0c7485bcb48b102434ae804 Mon Sep 17 00:00:00 2001 From: Neil Hanlon Date: Wed, 22 Feb 2023 01:25:49 -0500 Subject: [PATCH] Handle updating certain settings updates over BLE - Fixes #1560 --- source/Core/BSP/Pinecilv2/ble_handlers.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/source/Core/BSP/Pinecilv2/ble_handlers.cpp b/source/Core/BSP/Pinecilv2/ble_handlers.cpp index bc89da98..ad2c3fe8 100644 --- a/source/Core/BSP/Pinecilv2/ble_handlers.cpp +++ b/source/Core/BSP/Pinecilv2/ble_handlers.cpp @@ -21,6 +21,7 @@ #include "uuid.h" #include "OperatingModes.h" +#include "OLED.hpp" #include "USBPD.h" #include "ble_characteristics.h" #include "ble_handlers.h" @@ -242,6 +243,16 @@ int ble_char_write_setting_value_callback(struct bt_conn *conn, const struct bt_ } } else if (uuid_value < SettingsOptions::SettingsOptionsLength) { setSettingValue((SettingsOptions)(uuid_value), new_value); + // @TODO refactor to make this more usable + if (uuid_value == SettingsOptions::OLEDInversion) { + OLED::setInverseDisplay(getSettingValue(SettingsOptions::OLEDInversion)); + } + if (uuid_value == SettingsOptions::OLEDBrightness){ + OLED::setBrightness(getSettingValue(SettingsOptions::OLEDBrightness)); + } + if (uuid_value == SettingsOptions::OrientationMode){ + OLED::setRotation(getSettingValue(SettingsOptions::OrientationMode) & 1); + } return len; } }