| 35 | } |
| 36 | |
| 37 | void handleSerialCommands(SerialCli &serialCli) { |
| 38 | CmdPacket packet; |
| 39 | if (cmdQueue && rspQueue) { |
| 40 | if (xQueueReceive(cmdQueue, &packet, 0) == pdTRUE) { |
| 41 | bool result = serialCli.parse(String(packet.text)); |
| 42 | xQueueSend(rspQueue, &result, 0); |
| 43 | Serial.println("COMMAND: " + String(packet.text)); |
| 44 | Serial.printf("[CLI] Result: %s\n", result ? "TRUE" : "FALSE"); |
| 45 | } |
| 46 | } |
| 47 | if (!serialDevice->available()) return; |
| 48 | |
| 49 | String cmd_str = serialDevice->readStringUntil('\n'); |
| 50 | Serial.println("COMMAND: " + cmd_str); |
| 51 | serialCli.parse(cmd_str); |
| 52 | serialDevice->print("# "); // prompt |
| 53 | backToMenu(); // forced menu redrawn |
| 54 | } |
| 55 | |
| 56 | void _serialCmdsTaskLoop(void *pvParameters) { |
| 57 | Serial.begin(115200); |
no test coverage detected