Why Can't I Locate Devices on Local Network?

Hello, I’ve been tasked with converting a console application into a Unity application. The application uses a custom sdk (a DLL with limited documentation) to search for devices it supports on the local network. In the console application, the specific method that search for devices looks like this:

static async Task RunProgram()
{
    IReadOnlyList<IDevice> devices = await Connect.FindDevicesAsync();

    if (devices.Count > 0)
    {
        //do stuff
    }
}

In the Unity app, I’ve rewritten this portion as a coroutine:

private IEnumerator Coroutine_DeviceSearch()
{
    Task task_FindDevices = FindDevices();
    yield return new WaitUntil(() => task_FindDevices.IsCompleted);

    if (devices.Count > 0)
    {
        //do stuff
    }
}

async Task FindDevices()
{
    devices = await Connect.FindDevicesAsync();
}

For some reason the console app can find the target device but the Unity version can’t. I’m wondering if for some reason the Unity app may not have the same network permissions as the console app. I’ve tried running as administrator and enabling all network permissions when prompted (first time running after making new build) but no dice. Also I have almost zero prior experience with tasks so I’m also wondering if I may have flubbed something up with my scripting. Anyway, any thoughts/ideas/input is greatly appreciated, thanks in advance!