livoxProto1: Connecting to bcast-advertised device works :)

We tested it.
It's important to note that between test runs, we need to take
into account the fact that the Avia stops sending bcast adverts
when it's been handshaken.

So the retry-delay-ms may be longer due to the fact that the Avia
may not be sending adverts for a good portion of that retry-delay-ms
time.
This commit is contained in:
2025-09-07 11:42:32 -04:00
parent 1ededb85b9
commit f587b45b38
3 changed files with 10 additions and 2 deletions
+8
View File
@@ -129,6 +129,14 @@ void Device::connect()
return;
}
/** FIXME:
* This won't work unless we return control to the ComponentThread's run()
* loop during the retry-delay time so that the ComponentThread can actually
* run the BroadcastListener's recv() calls and actually receive the
* device's broadcast messages.
* Think about ways to perhaps make all of this asynchronous. The main issue
* is that this whole sequence is synchronous.
*/
// Wait retry delay, then try known device again
std::this_thread::sleep_for(std::chrono::milliseconds(retryDelayMs));
if (connectToKnownDevice()) {