Hola!
Alguna que otra vez expliqué como listar y conectarnos con un dispositivo Bluetooth. Ahora que hay tantos devices que usan BLE, era hora de que vuelva a revisar estas rutinas y vea si es posible mejorar las mismas.
Antes de ponerme a reescribir código hice una búsqueda en Bing y me encontré con una biblioteca genial para trabajar con Bluetooth, IR, etc. 32feet.net.
La verdad es que resuelve asi todos los problemas que estaba teniendo y me permite centrarme únicamente en la transimisión de datos (ojo, WP8.1 ha mejorado pero sigue siendo una castaña para devices bluetooth).
Un ejemplo de esto es las siguiente líneas que listan los bluettoth devices registrados en Windows
1: using System;
2: using InTheHand.Net.Sockets;
3:
4: namespace ConsoleApplication1
5: {
6: class Program
7: {
8: static void Main()
9: {
10: var bluetoothClient = new BluetoothClient();
11: var devices = bluetoothClient.DiscoverDevices();
12: Console.WriteLine("Bluetooth devices");
13: foreach (var device in devices)
14: {
15: var blueToothInfo =
16: string.Format(
17: "- DeviceName: {0}{1} Connected: {2}{1} Address: {3}{1} Last seen: {4}{1} Last used: {5}{1}",
18: device.DeviceName, Environment.NewLine, device.Connected, device.DeviceAddress, device.LastSeen,
19: device.LastUsed);
20:
21: blueToothInfo += string.Format(" Class of device{0} Device: {1}{0} Major Device: {2}{0} Service: {3}",
22: Environment.NewLine, device.ClassOfDevice.Device, device.ClassOfDevice.MajorDevice,
23: device.ClassOfDevice.Service) ;
24: Console.WriteLine(blueToothInfo);
25: Console.WriteLine();
26: }
27: Console.ReadLine();
28: }
29: }
30: }
La app en ejecucion nos da información como la que muestro en la siguiente imagen.
Bluetooth devices
– DeviceName: EV3
Connected: False
Address: 0016534394A7
Last seen: 4/21/2014 3:23:57 PM
Last used: 4/20/2014 8:56:03 PM
Class of device
Device: ToyRobot
Major Device: Toy
Service: None
– DeviceName: Pebble C93D
Connected: False
Address: 0017E963C93D
Last seen: 4/21/2014 3:23:57 PM
Last used: 4/21/2014 2:05:34 PM
Class of device
Device: WearableWristWatch
Major Device: Wearable
Service: ObjectTransfer, Audio, Telephony, Information
Además de ser una excelente coleccion de funcionalidades es posible instalar la misma utilizando NuGet y con soporte para Windows Phone tambien.
Ahora me toca refactorizar un poco de código para que el mismo se adapte a 32feet.net y ver si todo sigue funcionando.
HomePage: http://32feet.codeplex.com/
Por cierto, que la gente de pebble no soporte Windows como plataforma de desarrollo, es un dato que asusta ![]()
Saludos @ Home
El Bruno
Leave a reply to [#VS2013] HowTo: Conectar con un device #BlueTooth utilizando un PIN (thanks #32feet!) | El Bruno Cancel reply