Hallo Jörg,
anbei wieder was neues zum Testen (nur Module verändert, Firmware ist gleich).
Ich habe ein Reading ergänzt:
timing mc: 37 miss: 0 tQ: 0.545 rQ: 0.600 mSkp: 0 mNck: 5 dtu: 130500 errS: -2 errC: -1
mc: ist der HM Message Counter für die letzte gesendete Nachricht dezimal
miss: ist die anzahl misses seit letztem Ack
tQ: ist ein Qualitätsindikator für die Übertragung als "Summe der bestätigten messages"/"Summe aller gesendeten messages" -> 1 ist Spitze, 0 nix geht
rQ: ist ein Qualitätsindikator für das Resyncen als "Summe der Übertragunsunterbrechungen"/"Summe der nicht bestätigten messages" -> 1 ist Spitze für Recovery, 0 nix geht
mSkp: ist die Anzahl ausgelassener Übertragungen, wenn nicht explizit angefordert, dann gibt es die "Störungen" des Timer-Timings an
mNck: ist die Anzahl nicht bestätigter messages, kann Funkübetragungsprobleme bedeuten oder Systemtimingprobleme oder was auch immer inklusive meiner Bugs

dtu: ist das für diese message genutzte Timerintervall
errS: der dabei mittels Rückmeldung vom CUL ermittelte Systemtimingfehler (Ist-Soll -> positiv=später)
errC: der dabei nach CUL Timestamp ermittelte Sendetimingfehler (Ist-Soll -> positiv=später)
im Log gibt es bei verbose 2 beim virtuellen TC ein oder zwei Einträge
2021.01.02 16:40:51.217 2: CUL_HM V_ValveCtrl_TC 11222001 hI:125ms S:0 A:0 O:2 mc:21->22 dtp: 159500 ms dtF: 159500 ms dtcall: 5 ms nv:n
2021.01.02 16:41:21.363 2: CUL_HM V_ValveCtrl_TC 11222001 mc:22 tQ: 0.625 rQ: 0.667 dtu: 173754 ms errS: 2 ms errC: 2 ms miss: 1
2021.01.02 16:43:30.715 2: CUL_HM V_ValveCtrl_TC 11222001 hI:125ms S:0 A:0 O:2 mc:22->23 dtp: 145000 ms dtF: 145000 ms dtcall: 5 ms nv:n miss: 1
2021.01.02 16:44:00.848 2: CUL_HM V_ValveCtrl_TC 11222001 mc:23 tQ: 0.556 rQ: 0.500 dtu: 159500 ms errS: -3 ms errC: 0 ms miss: 2
hI: ist die halbe (angenommene) Empfangsfenstergröße nach Attribut cyclicMsgRecWinHalf
S: Sendezeitpunktshifting entsprechend Attribut cyclicMsgDoShift
A: Sendeintervallsverlängerung entsprechend Attribut cyclicMsgMissAdd
O: Zeitbasis für Sendezeitpunktshifting und dtcall limit nach Attribut cyclicMsgMissOffs
mc: ist der HM Message Counter für die letzte gesendete Nachricht hexadezimal
dtp: ist das vorherberechnete Sendeintervall zur nächsten message
dtF: ist das vorherberechnete Sendeintervall zur nächsten message im Fall ausbleibender message Bestätigung
dtcall: ist die Verspätung des Timeraufrufs
nv: n -> keine neue Ventilstellung, Y -> neue Ventilstellung zu übertragen
Damit kannst Du jetzt auch selbst recht einfach sehen, wie der Erfolg einer Änderung ist.
Wenn eines der Attribute gändert wird, dann wird die Statistik auch mit zurück gesetzt. Vor dem Spielen also besser erst notieren. Ansonsten bei verbose 2 beim TC auch noch im Log nachvollziehbar.
Aus Deinem vorletzten Log nehme ich an, dass sich die beiden VD Firmwareversionen 1.4 und 2.0 im Timing anders verhalten.
Dem 1.4er hat Shifting und Recovery Sendeintervallvergrößerung eher nicht gefallen. Wenn es mit einem Ackausfall wieder kürzer wird, scheint er sich wieder zu fangen. Mal sehen, wie er mit der jetzigen Defaulteinstellung arbeitet.
Dem 2.0er schien das Shifting eher zu gefallen und auch beim Recovery sah eine Sendeintervallvergrößerung eher besser aus. Da wäre cyclicMsgDoShift=1 und/oder cyclicMsgMissAdd=1 oder 2 hoffnungsvoll.
Insgesammt gibt es aber viele Ack-Ausfälle die allein aus dem Timing nicht wirklich zu erklären sind. Irgendwas anderes scheint mit zu stören. (Netzteil vom Pi? Ein 868.3MHz Slow RF Gerät? Die Wanze in Deiner Tischlampe?

Die Qualität der VD Firmware? Ein Rechner oder Laptop oder...? Mein übersehener Bug?

).
Für aussagekräftige Ergebnisse bringt es wohl nur was, wenn Du nach jeder Änderung den Beobachtungszeitraum deutlich vergrösserst. Dafür sind die Qualitätsindikatoren hoffentlich hilfreich.
Wenn Du mir Log Daten zum virtuellen TC zukommen lassen möchtest, dann bitte erst mal nur die mit verbose 2 von oben. Logging vom nano hilft nicht weiter, da darin schon verarbeitet.
Ich bin gespannt.
Gruß, Ansgar.