Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Have You added the Ability to Disconnect() ? #22

Open
Ugobyte opened this issue Jan 16, 2022 · 7 comments
Open

Have You added the Ability to Disconnect() ? #22

Ugobyte opened this issue Jan 16, 2022 · 7 comments

Comments

@Ugobyte
Copy link

Ugobyte commented Jan 16, 2022

This API is really great and I actually won't mind financially supporting you. Where can I donate?

I would like to know if you have or plan to add a Disconnect() feature.

@thangdhz
Copy link

thangdhz commented Feb 7, 2022

Add this function to BleWinrtDll.cpp

void Disconnect(wchar_t* deviceId) {
	for (auto device : cache) {
		if (hsh(deviceId) == device.first) {
			device.second.device.Close();
			for (auto service : device.second.services) {
				service.second.service.Close();
			}
			cache.erase(hsh(deviceId));
			return;
		}
	}
}

Add this function to BleWinrtDll.h

__declspec(dllexport) void Disconnect(wchar_t* deviceId);

Add this function to BLE.cs

        [DllImport("BleWinrtDll.dll", EntryPoint = "Disconnect", CharSet = CharSet.Unicode)]
        public static extern void Disconnect(string deviceId);

@Ugobyte
Copy link
Author

Ugobyte commented Feb 8, 2022

@thangdhz Thank you, this is great!
Do I have to recompile a new .dll if i add void Disconnect(wchar_t* deviceId) to the .dll file?

@thangdhz
Copy link

thangdhz commented Feb 9, 2022

yes, need recompile .dll file

@Ugobyte
Copy link
Author

Ugobyte commented Feb 17, 2022

yes, need recompile .dll file

Excellent, Thanks

@adabru
Copy link
Owner

adabru commented Apr 25, 2022

Hi @Ugobyte , thanks for the offer! I probably can't work on this project for like the next ten months. You can feel free to hire freelancers to fix some of the most popular open bugs 😉 or maybe sponsor one of the forks. I would gladly redirect to it if it gets more features.

Edit: I went through the forks and there are two candidates at time of writing , https://github.com/port6io/BleWinrtDll/commits/main and https://github.com/jadware/BleWinrtDll/commits/main .

@playg8
Copy link

playg8 commented Dec 16, 2022

@thangdhz This code works, but do not work well. After disconnect from device, you can not find the same device by scan function.Is there something wrong with the scan codes?

@ahSOLO
Copy link

ahSOLO commented May 5, 2023

Thanks, this code worked for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants