* @brief Set RTU baud rate */
| 404 | * @brief Set RTU baud rate |
| 405 | */ |
| 406 | API::CommandResponse API::Handlers::ModbusHandler::setBaudRate(const QString& id, |
| 407 | const QJsonObject& params) |
| 408 | { |
| 409 | if (!params.contains(QStringLiteral("baudRate"))) { |
| 410 | return CommandResponse::makeError( |
| 411 | id, ErrorCode::MissingParam, QStringLiteral("Missing required parameter: baudRate")); |
| 412 | } |
| 413 | |
| 414 | const int baudRate = params.value(QStringLiteral("baudRate")).toInt(); |
| 415 | |
| 416 | if (baudRate <= 0) { |
| 417 | return CommandResponse::makeError( |
| 418 | id, ErrorCode::InvalidParam, QStringLiteral("baudRate must be positive")); |
| 419 | } |
| 420 | |
| 421 | IO::ConnectionManager::instance().modbus()->setBaudRate(baudRate); |
| 422 | |
| 423 | QJsonObject result; |
| 424 | result[QStringLiteral("baudRate")] = baudRate; |
| 425 | return CommandResponse::makeSuccess(id, result); |
| 426 | } |
| 427 | |
| 428 | /** |
| 429 | * @brief Set RTU parity |