1
0
Fork 0
forked from suyu/suyu

input_common: Allow timeouts to happen while scanning for a ring

This commit is contained in:
german77 2023-06-28 08:38:45 -06:00
parent df9685a21c
commit ac755476cd
2 changed files with 4 additions and 3 deletions

View file

@ -75,7 +75,7 @@ Common::Input::DriverResult JoyconCommonProtocol::SendRawData(std::span<const u8
Common::Input::DriverResult JoyconCommonProtocol::GetSubCommandResponse( Common::Input::DriverResult JoyconCommonProtocol::GetSubCommandResponse(
SubCommand sc, SubCommandResponse& output) { SubCommand sc, SubCommandResponse& output) {
constexpr int timeout_mili = 66; constexpr int timeout_mili = 66;
constexpr int MaxTries = 3; constexpr int MaxTries = 10;
int tries = 0; int tries = 0;
do { do {

View file

@ -70,7 +70,7 @@ Common::Input::DriverResult RingConProtocol::StartRingconPolling() {
Common::Input::DriverResult RingConProtocol::IsRingConnected(bool& is_connected) { Common::Input::DriverResult RingConProtocol::IsRingConnected(bool& is_connected) {
LOG_DEBUG(Input, "IsRingConnected"); LOG_DEBUG(Input, "IsRingConnected");
constexpr std::size_t max_tries = 28; constexpr std::size_t max_tries = 42;
SubCommandResponse output{}; SubCommandResponse output{};
std::size_t tries = 0; std::size_t tries = 0;
is_connected = false; is_connected = false;
@ -78,7 +78,8 @@ Common::Input::DriverResult RingConProtocol::IsRingConnected(bool& is_connected)
do { do {
const auto result = SendSubCommand(SubCommand::GET_EXTERNAL_DEVICE_INFO, {}, output); const auto result = SendSubCommand(SubCommand::GET_EXTERNAL_DEVICE_INFO, {}, output);
if (result != Common::Input::DriverResult::Success) { if (result != Common::Input::DriverResult::Success &&
result != Common::Input::DriverResult::Timeout) {
return result; return result;
} }