dotnet-bluetooth-le / dotnet-bluetooth-le

Bluetooth LE plugin for Xamarin/MAUI, supporting Android, iOS, Mac, Windows
Apache License 2.0
833 stars 310 forks source link

limit of bluetooth device can be connected simultaneous #838

Closed Sujiyama closed 4 months ago

Sujiyama commented 5 months ago

Hello Team, i tried to connect heart rate monitor with your library that display the bpm in android tablet or UWP

When Device Discovered is up to seven devices in android then the eighth can't connect. In UWP i had the same problem but the problem is up to eight device and can't connect to nineth

I made a reasearch in internet how can connect up to 15 devices ,but everyone said that reasons make that problem.

1) The library of bluetooth has limit. 2) The Bluetooth adapter has limit.

First of all i want to know if we have some limit in your library that is my first question. My second question is how can i search for a bluetooth adapter that can connect up to 15 devices. Which is the search condition that i must search for it. Can you suggest me some adapters that can connect up to 15 devices simultaneous and is compatible with your library

Thank you

smsissuechecker commented 5 months ago

Hi @Sujiyama,

I'm the friendly issue checker. It seems like (100.00 %) you haven't used our issue template :cry: I think it is very frustrating for the repository owners, if you ignore them.

If you think it's fine to make an exception, just ignore this message. But if you think it was a mistake to delete the template, please close the issue and create a new one.

Thanks!

AskBojesen commented 5 months ago

In Windows, 7 is the absolute max of BLE connected at a time https://learn.microsoft.com/en-us/answers/questions/452987/how-many-ble-bonding-connection-are-supported-by-w

Sujiyama commented 5 months ago

Hello AskBojesen,

Thanks for your response.

AskBojesen commented 5 months ago

Great then! I suggest to close this issue!?

axa88 commented 5 months ago

Android connection limit is even more confusing and even depends on Manufacturer

Sujiyama commented 5 months ago

Thank you all for your responses, i try to understand how other developers can connect more than 7 devices. Some of them present that can connect up to 10 and more with bluetooth.

I think the limit is not coming from OS but from adapter If you research for Chileaf BLE Data Receiving Portable Long Range Wireless USB Stick Dongle they said that you can connect up to 60 members’movement data can be collected via Bluetooth.

I don't want to send you link because i don't want to to promote this bluetooth adapter. Only i try to find a solution of my problem. If you allow me i will send you some links.

Also many companies develop softwares that work with bluetooth heart rate monitors and receive data with more than 7 devices. I try to find a solution because your library is so great and i don't want to work with ANT+ solution. Our project is for customer that have GYM and we develop a software that show the heart rate of BLE devices while training in class. The maximum people in class will be 10-14 people, with that limit we discovered, we stucked and we don't know how to find a solution.

That is the reason that i open ticket to you. Do you know some trick with your library that can we connect 4 more and avoid the limit? Something like Time Multiplexing or with Multiple Piconets?

Thank you

axa88 commented 4 months ago

I think the limit is not coming from OS but from adapter

Certainly there is more than any one limiting factor. From my experience implementing peripheral firmware, there will have a connection limit that the fw bt stack dictates, to which is a variable from the amount of memory that the platform provides.

In the case of Android, there is a default limit set on total subscriptions to notification/indications where the OS as well as all applications must share. In addition to that, the device manufacture employs a limit to the total number that each application can employ. So its hard to determine a hard number as proper function depends on all these factors. Hardware OS, manufacturer, which and how many applications are running, and how many subscriptions they assign. As far as connections go I believe there is a limit as well but im unsure of the details.

So for Android if a connection is required, it would be wise to connect and subsequently disconnect when possible (but that currently proves a problem on Windows #850) And then only subscribe to indications/notifications as necessary, unsubscribing when possible.

And surely these limiting factors are different on each other OS. But as far as i know there are no limitation in and of this library.

Furthermore often a device like a heart rate monitors doesn't even require a connection as it is possible to transfer data through advertisements (and advertisement responses) without a it. In that situation a device could conceivably advertise to a indefinite number of clients. So wouldn't use connectionless devices as a baseline for connection limits. Just my 2cents

janusw commented 4 months ago

I think this is more a question regarding OS or adapter limits, rather than a bug report. I'm transferring it from an 'issue' into a 'discussion'.