Data can get lost - especially with transports like UDP. But even with a UART you could loose packets due to data corruptions. I noticed this while doing updates over UDP, where smpmgr(which uses smpclient) just fails on a a timeout every few packets.
I think, that we can handle this in a lower layer without modifying e.g. smpmgr, because the SMP protocol has sequence counters and thus can prevent repetitive execution of request handlers - which could have unintended side-effects.
What do you think?
Data can get lost - especially with transports like UDP. But even with a UART you could loose packets due to data corruptions. I noticed this while doing updates over UDP, where smpmgr(which uses smpclient) just fails on a a timeout every few packets.
I think, that we can handle this in a lower layer without modifying e.g. smpmgr, because the SMP protocol has sequence counters and thus can prevent repetitive execution of request handlers - which could have unintended side-effects.
What do you think?