@@ -53,6 +53,10 @@ public static class S7DriverFactoryExtensions
|
||||
Timeout = TimeSpan.FromMilliseconds(dto.Probe?.TimeoutMs ?? 2_000),
|
||||
ProbeAddress = dto.Probe?.ProbeAddress ?? "MW0",
|
||||
},
|
||||
TsapMode = ParseEnum<TsapMode>(dto.TsapMode, driverInstanceId, "TsapMode",
|
||||
fallback: TsapMode.Auto),
|
||||
LocalTsap = dto.LocalTsap,
|
||||
RemoteTsap = dto.RemoteTsap,
|
||||
};
|
||||
|
||||
return new S7Driver(options, driverInstanceId);
|
||||
@@ -103,6 +107,21 @@ public static class S7DriverFactoryExtensions
|
||||
public int? TimeoutMs { get; init; }
|
||||
public List<S7TagDto>? Tags { get; init; }
|
||||
public S7ProbeDto? Probe { get; init; }
|
||||
|
||||
/// <summary>
|
||||
/// Optional connection-class selector — one of <c>Auto</c> (default),
|
||||
/// <c>Pg</c>, <c>Op</c>, <c>S7Basic</c>, <c>Other</c>. When omitted the driver
|
||||
/// keeps the existing <c>Auto</c> behaviour (S7netplus picks the TSAP pair
|
||||
/// from <see cref="CpuType"/>). See <c>docs/v2/s7.md</c> "TSAP / Connection
|
||||
/// Type" section.
|
||||
/// </summary>
|
||||
public string? TsapMode { get; init; }
|
||||
|
||||
/// <summary>Optional 16-bit local TSAP override. Required (with <see cref="RemoteTsap"/>) when <c>TsapMode = Other</c>.</summary>
|
||||
public ushort? LocalTsap { get; init; }
|
||||
|
||||
/// <summary>Optional 16-bit remote TSAP override. Required (with <see cref="LocalTsap"/>) when <c>TsapMode = Other</c>.</summary>
|
||||
public ushort? RemoteTsap { get; init; }
|
||||
}
|
||||
|
||||
internal sealed class S7TagDto
|
||||
|
||||
Reference in New Issue
Block a user