diff --git a/README.md b/README.md index 5078220..d11d9be 100644 --- a/README.md +++ b/README.md @@ -344,8 +344,8 @@ This version (`LinkWirelessMultiboot::Async`) allows more advanced use cases lik | `getResult([clear])` | **LinkWirelessMultiboot::Async::Result** | Returns the result of the last operation.

After this call, the result is cleared if `clear` is `true` (default behavior). | | `playerCount()` | **u8** _(1~5)_ | Returns the number of connected players. | | `getPercentage()` | **u32** _(0~100)_ | Returns the completion percentage. | -| `isReady()` | **bool** | Returns whether the ready mark is active or not.

This is only useful when using the `waitForReadySignal` parameter. | -| `markReady()` | **bool** | Marks the transfer as ready.

This is only useful when using the `waitForReadySignal` parameter. | +| `isReady()` | **bool** | Returns whether the ready mark is active or not. | +| `markReady()` | **bool** | Marks the transfer as ready. | ⚠️ never call `reset()` inside an interrupt handler! diff --git a/lib/LinkWirelessMultiboot.hpp b/lib/LinkWirelessMultiboot.hpp index 567078a..f45a445 100644 --- a/lib/LinkWirelessMultiboot.hpp +++ b/lib/LinkWirelessMultiboot.hpp @@ -848,15 +848,11 @@ class LinkWirelessMultiboot { /** * @brief Returns whether the ready mark is active or not. - * \warning This is only useful when using the `waitForReadySignal` - * parameter. */ [[nodiscard]] bool isReady() { return dynamicData.ready; } /** * @brief Marks the transfer as ready. - * \warning This is only useful when using the `waitForReadySignal` - * parameter. */ void markReady() { if (state == STOPPED) @@ -1241,9 +1237,10 @@ class LinkWirelessMultiboot { }; void startOrKeepListening() { - if ((linkRawWireless.playerCount() < fixedData.players && - !dynamicData.ready) || - linkRawWireless.playerCount() <= 1) { + if (linkRawWireless.playerCount() <= 1 || + (fixedData.waitForReadySignal && !dynamicData.ready) || + (linkRawWireless.playerCount() < fixedData.players && + !dynamicData.ready)) { state = LISTENING; return (void)pollConnections(); }