diff --git a/README.md b/README.md index 76f95d2..5a4690f 100644 --- a/README.md +++ b/README.md @@ -281,7 +281,7 @@ hardcoded default**. | `--parity` | `MYTHY_PARITY` | `N` | RTU parity: `N`, `E`, or `O` | | `--stopbits` | `MYTHY_STOPBITS` | `1` | RTU stop bits | | `--unit-id` | `MYTHY_UNIT_ID` | `1` | Modbus unit ID | -| `--request-timeout` | `MYTHY_REQUEST_TIMEOUT` | `2s` | per-request timeout | +| `--request-timeout` | `MYTHY_REQUEST_TIMEOUT` | `10s` | per-request timeout | | `--connect-timeout` | `MYTHY_CONNECT_TIMEOUT` | `5s` | TCP connect timeout | | `--retries` | `MYTHY_RETRIES` | `2` | transient-error retries on reads (writes never retry) | | `--transport` | `MYTHY_TRANSPORT` | – | force `tcp` or `rtu`; auto-detected from `--host`/`--serial` | diff --git a/cmd/mythy/connection.go b/cmd/mythy/connection.go index a260cff..764d7e9 100644 --- a/cmd/mythy/connection.go +++ b/cmd/mythy/connection.go @@ -49,7 +49,7 @@ func (c *connFlags) bind(cmd *cobra.Command) { "RTU stop bits: 1 or 2 (or set MYTHY_STOPBITS)") f.Uint8Var(&c.unitID, "unit-id", envOrUint8("MYTHY_UNIT_ID", 1), "Modbus unit ID (default 1; or set MYTHY_UNIT_ID)") - f.DurationVar(&c.timeout, "request-timeout", envOrDuration("MYTHY_REQUEST_TIMEOUT", 2*time.Second), + f.DurationVar(&c.timeout, "request-timeout", envOrDuration("MYTHY_REQUEST_TIMEOUT", 10*time.Second), "per-request timeout (or set MYTHY_REQUEST_TIMEOUT)") f.DurationVar(&c.connTimeout, "connect-timeout", envOrDuration("MYTHY_CONNECT_TIMEOUT", 5*time.Second), "TCP connect timeout (or set MYTHY_CONNECT_TIMEOUT)") diff --git a/pkg/transport/rtu.go b/pkg/transport/rtu.go index bfc4dd9..b1747ee 100644 --- a/pkg/transport/rtu.go +++ b/pkg/transport/rtu.go @@ -34,7 +34,7 @@ func NewRTUClient(opts Options) *RTUClient { opts.StopBits = 1 } if opts.RequestTimeout == 0 { - opts.RequestTimeout = 2 * time.Second + opts.RequestTimeout = 10 * time.Second } return &RTUClient{opts: opts} } diff --git a/pkg/transport/tcp.go b/pkg/transport/tcp.go index 80fe7bc..190a1d7 100644 --- a/pkg/transport/tcp.go +++ b/pkg/transport/tcp.go @@ -25,7 +25,7 @@ func NewTCPClient(opts Options) *TCPClient { opts.Port = 502 } if opts.RequestTimeout == 0 { - opts.RequestTimeout = 2 * time.Second + opts.RequestTimeout = 10 * time.Second } if opts.ConnectTimeout == 0 { opts.ConnectTimeout = 5 * time.Second