diff --git a/PamhagenSysCtrl/Helpers/Pipeline/Graph.cs b/PamhagenSysCtrl/Helpers/Pipeline/Graph.cs index 570168d..9df71cc 100644 --- a/PamhagenSysCtrl/Helpers/Pipeline/Graph.cs +++ b/PamhagenSysCtrl/Helpers/Pipeline/Graph.cs @@ -59,7 +59,7 @@ namespace PamhagenSysCtrl.Helpers.Pipeline { var start = points.First(); var path = new Path(start, []); foreach (var end in points.Skip(1)) { - if (valid != null && !valid(start)) { + if (valid != null && start != points.First() && !valid(start)) { return null; } else if (GetPath(start, end, valid, visited: [.. path.Hops.Select(h => h.Node)]) is not Path p) { return null; diff --git a/PamhagenSysCtrl/Helpers/T1.cs b/PamhagenSysCtrl/Helpers/T1.cs index 88aaf3c..e7c5b5d 100644 --- a/PamhagenSysCtrl/Helpers/T1.cs +++ b/PamhagenSysCtrl/Helpers/T1.cs @@ -123,7 +123,7 @@ namespace PamhagenSysCtrl.Helpers { } public async Task DataWrite(params (string Register, ushort[] Values)[] registers) { - await SendCommand("DW", string.Join(',', registers.Select(r => $"{r.Register},{r.Values.Length}," + string.Join(',', r.Values.Select(v => $"{v:X}"))))); + await SendCommand("DW", string.Join(',', registers.Select(r => $"{r.Register},{r.Values.Length}," + string.Join(',', r.Values.Select(v => $"{v:X4}"))))); var (_, res) = await ReceiveResponse("ST"); return new Status((Mode)(res[3] - '0'), ((res[0] - '0') << 4) | (res[1] - '0')); }