Deutsch
Beta, Runde 4: zwei Retry-Fehler behoben, neuer Versuch mit längerem Supervision-Timeout (Issue #79)
Reine Firmware-Änderung an der experimentellen Zwei-Bike-Bridge (bosch_ebike_ldi_dual, factory-dual.yaml). Die einfache Bridge (bosch_ebike_ldi) ist nicht betroffen.
Der saubere Nachtest von PEPITO82 gibt eine klare, negative Antwort auf die bisherige Theorie: Ein bereits zwei Sekunden eingeschwungenes und stabil sendendes erstes Rad hat das zweite trotzdem nicht geschützt — exakt dasselbe Fehlerbild wie in jedem vorherigen Lauf, diesmal sogar beim jeweils zweiten statt immer demselben Rad. Das automatische Wiederherstellen funktioniert dagegen nachweislich (beide Räder nach gut einer Minute wieder verbunden statt für den Rest der Ladung getrennt) und bleibt erhalten.
Zwei kleine, klar belegte Fehler im periodischen Wiederholungsversuch aus Runde 3 behoben: er ignorierte bislang die bewusste Advertising-Sperre aus Runde 2 komplett, und er prüfte nicht, ob bereits beworben wurde (daher unnötige Fehlermeldungen alle fünf Sekunden im Leerlauf). Außerdem die NOTIFY-Log-Zeile auf DEBUG verschoben, wie von PEPITO82 erbeten.
Da „die Kollision verhindern" jetzt widerlegt ist, probiert diese Beta einen anderen Ansatz: direkt nach dem Verbinden einen längeren Supervision-Timeout (zehn statt der Standardaushandlung) beim Rad anfragen, damit die Verbindung mehr Spielraum hat, das kritische Fenster zu überstehen, statt es zu vermeiden. Ob das Rad das überhaupt akzeptiert, ist offen — das Ergebnis wird jetzt explizit geloggt.
Wieder Compile-geprüft, noch nicht an echter Hardware bestätigt.
English
Beta, round 4: fixed two retry bugs, trying a longer supervision timeout instead (issue #79)
Firmware only change to the experimental two bike bridge (bosch_ebike_ldi_dual, factory-dual.yaml). The single bike bridge (bosch_ebike_ldi) is unaffected.
PEPITO82's clean retest gives a clear negative answer to the theory so far: a first bike that had already been settled and streaming for two seconds still did not protect the second, the exact same failure signature as every prior run, this time on whichever bike connected second rather than always the same one. The automatic recovery, on the other hand, is confirmed working (both bikes back up within a bit over a minute instead of one staying disconnected for the rest of the charge) and stays in place.
Fixed two small, clearly identified bugs in round 3's periodic retry: it was ignoring round 2's deliberate advertising hold entirely, and it never checked whether advertising was already running, producing unnecessary failure log lines every five seconds while idle. Also moved the notify log line to DEBUG as PEPITO82 requested.
Since preventing the collision is now ruled out, this beta tries a different angle: right after connecting, ask the bike for a longer supervision timeout (ten seconds instead of whatever it negotiates by default), giving the connection more room to survive the critical window rather than avoiding it. Whether the bike accepts that at all is genuinely open, the outcome is now logged explicitly either way.
Compile checked again, not yet confirmed on real hardware.
Nederlands
Beta, ronde 4: twee retry-fouten opgelost, nieuwe poging met langere supervision timeout (issue #79)
Alleen een firmwarewijziging voor de experimentele bridge voor twee fietsen (bosch_ebike_ldi_dual, factory-dual.yaml). De bridge voor één fiets (bosch_ebike_ldi) is niet geraakt.
De schone hertest van PEPITO82 geeft een duidelijk negatief antwoord op de tot nu toe gehanteerde theorie: een eerste fiets die al twee seconden ingeburgerd was en stabiel zond, beschermde de tweede toch niet, exact hetzelfde foutbeeld als in elke eerdere run, deze keer bij welke fiets dan ook die als tweede verbond in plaats van steeds dezelfde. Het automatisch herstel werkt daarentegen aantoonbaar (beide fietsen na iets meer dan een minuut weer verbonden in plaats van de rest van de laadbeurt losgekoppeld) en blijft behouden.
Twee kleine, duidelijk vastgestelde fouten in de periodieke herhaalpoging uit ronde 3 opgelost: die negeerde tot nu toe de bewuste adverteerblokkade uit ronde 2 volledig, en controleerde niet of er al werd geadverteerd, wat onnodige foutmeldingen gaf elke vijf seconden in rust. Ook de NOTIFY-logregel naar DEBUG verplaatst, zoals door PEPITO82 gevraagd.
Omdat "de botsing voorkomen" nu is weerlegd, probeert deze beta een andere invalshoek: direct na het verbinden een langere supervision timeout aanvragen bij de fiets (tien seconden in plaats van wat er standaard wordt onderhandeld), zodat de verbinding meer ruimte krijgt om het kritieke venster te overleven in plaats van het te vermijden. Of de fiets dat accepteert is nog volledig open, het resultaat wordt nu expliciet gelogd.
Opnieuw compilatie gecontroleerd, nog niet bevestigd op echte hardware.