Auto-detect upload port faalt bij client door serial log output #16
Labels
No labels
bug
bug
critical
documentation
duplicate
enhancement
enhancement
feature
good first issue
help wanted
invalid
question
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
eddy/Project_SylDa#16
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Probleem
De post-script
tools/pio_upload_port.pystuurtID?naar de ESP en leest het eerste non-empty antwoord om te bepalen of de device server of client is. De client reageert correct metSylDa_Client(client.cpp:704-705), maar tijdens de upload was er actieve log output (ECDH handshake) op de seriele poort, waardoorquery_id()het eerste log-bericht las in plaats van de ID response — met als gevolg dat de auto-detect faalde:Oorzaak
query_id()(tools/pio_upload_port.py:46-61) leest de eerste non-empty regel naID?, ook als die regel log output is:Mogelijke oplossingen
Script-side fix (voorkeur): Laat
query_id()meerdere regels lezen en matchen tegenexpected_idin plaats van blind de eerste regel te pakken:Firmware-side: De client kan serial log output pauzeren/flushen vóór het beantwoorden van
ID?.Fallback op
VERSION?:query_idkan als fallbackVERSION?/BUILD_NR:XXgebruiken — het buildnummer bevat weliswaar nietSylDa_Client, maar de port detectie kan ook via process of elimination (2 poorten, 1 server, dan is de andere de client).Reproductie
pio run -e s3lite-client -t upload— auto-detect faaltWorkaround
Handmatig
--upload-portgebruiken:Fixed by PR #24 — serial mute during ID? response + script-side filtering.