diff --git a/vesper/documentation/SentDevices b/vesper/documentation/SentDevices new file mode 100644 index 0000000..6f2273f --- /dev/null +++ b/vesper/documentation/SentDevices @@ -0,0 +1,43 @@ +# # # # # # # # # # # # # # # # # # # # # # +STAMNA: +# # # # # # # # # # # # # # # # # # # # # # + +PV25L22BP01R01 +Bell Plus +HW: 1.0 + +u6545309759@gmail.com +bellsystems2025 +aCx!97IEfTiA073^#*Jj + + + +# # # # # # # # # # # # # # # # # # # # # # +XRISTIANIKH_ELPIS: +# # # # # # # # # # # # # # # # # # # # # # + +PV26B02BP01R01 +Bell Plus +HW: 1.0 + +mail: christianikielpis@gmail.com +pass: bellsystems2025 + + + +# # # # # # # # # # # # # # # # # # # # # # +GREVENA: +# # # # # # # # # # # # # # # # # # # # # # + +PA26B06AM01R01 +Agnus Mini +HW: 1.0 + + +# # # # # # # # # # # # # # # # # # # # # # +LARISA: +# # # # # # # # # # # # # # # # # # # # # # + +PA26B06AM01R02 +Agnus Mini +HW: 1.0 \ No newline at end of file diff --git a/vesper/documentation/common_commands.txt b/vesper/documentation/common_commands.txt index 9959c3a..ff51ac6 100644 --- a/vesper/documentation/common_commands.txt +++ b/vesper/documentation/common_commands.txt @@ -31,3 +31,12 @@ PV26A28BC01R01 "action":"restart" } } + + +{ + "cmd":"system_info", + "contents": + { + "action":"get_full_settings" + } +} diff --git a/vesper/documentation/features.info b/vesper/documentation/features.info index 1fbc67e..963810b 100644 --- a/vesper/documentation/features.info +++ b/vesper/documentation/features.info @@ -77,24 +77,3 @@ ToDo Fixes: - When a new user is created, set default PINs for both Quick Settings, and Settings. - -// Stamna: - -PV25L22BP01R01 -Bell Plus -HW: 1.0 - -u6545309759@gmail.com -bellsystems2025 -aCx!97IEfTiA073^#*Jj - - -// XRISTIANIKH_ELPIS: - -PV26B02BP01R01 -Bell Plus -HW: 1.0 - - -mail: christianikielpis@gmail.com -pass: bellsystems2025 \ No newline at end of file diff --git a/vesper/src/Communication/CommunicationRouter/CommunicationRouter.cpp b/vesper/src/Communication/CommunicationRouter/CommunicationRouter.cpp index 216eb81..b48ca47 100644 --- a/vesper/src/Communication/CommunicationRouter/CommunicationRouter.cpp +++ b/vesper/src/Communication/CommunicationRouter/CommunicationRouter.cpp @@ -343,9 +343,29 @@ void CommunicationRouter::onWebSocketMessage(uint32_t clientId, const JsonDocume } void CommunicationRouter::onUartMessage(JsonDocument& message) { - // Extract command for logging - String cmd = message["cmd"] | "unknown"; - LOG_INFO("🔌 UART message received: cmd=%s", cmd.c_str()); + // Extract command and action for filtering + String cmd = message["cmd"] | ""; + String action = message["contents"]["action"] | ""; + + // UART COMMAND WHITELIST: Only allow specific commands + // This prevents feedback loops between devices when bad messages occur. + // To re-enable full UART command support, remove this filter. + bool allowed = false; + + if (cmd == "system_info" && action == "sync_time_to_lcd") { + allowed = true; + } else if (cmd == "playback" && (action == "play" || action == "stop")) { + allowed = true; + } + + if (!allowed) { + // Silently ignore - do NOT send error response to avoid feedback loop + LOG_DEBUG("UART: Ignoring non-whitelisted command (cmd=%s, action=%s)", + cmd.c_str(), action.c_str()); + return; + } + + LOG_INFO("🔌 UART command received: cmd=%s, action=%s", cmd.c_str(), action.c_str()); // Create message context for UART CommandHandler::MessageContext context(CommandHandler::MessageSource::UART); diff --git a/vesper/vesper.ino b/vesper/vesper.ino index fca4dd4..49cad7e 100644 --- a/vesper/vesper.ino +++ b/vesper/vesper.ino @@ -64,7 +64,7 @@ * 👨‍💻 AUTHOR: BellSystems bonamin */ -#define FW_VERSION "153" +#define FW_VERSION "154" /*