#Xamarin – #Bluetooth LE plugin version 1.0 (Monkey Robotics finally gets older)


It has been some time since I wrote something about BlueTooth Low Energy. I think that the last post that I wrote was the ones about development for Garmin sports smart watchs.

While working with BlueTooth Low Energy devices is common and easy with iOS and Android, with Windows it was somewhat hard. If you work with Xamarin, in the old days we have Monkey Robotics as a common platform to use some BLE features in different projects. But at the end, the best way to work was implement some native code in each platform.

A few days ago I find out that Adrian Secelenau (xabre), has released a package of Xamarin BLE based on Monkey Robotics, which could be considered version 1.0: Xamarin BlueTooth LE.

The truth is that it is quite simple to use and supports the 4 fundamental things to work with BlueTooth

  • Verify the status de BLÉ
  • Discover, connect and disconnect with BLE devices
  • Discover services and characteristics of each BLE device
  • Interact (read and write) with these features

For example, if we create a project for example Xamarin, we see that we can add this package in 2 steps.




We also as we see in the image above also have support for MvvmCross, I know that it is something that will make happy more geeks MVVM as Javier Suarez (@jsuarezruiz) and Josue Yeray (@josueYeray).

As well, surely more forward can migrate / write some example more full for test the package in depth, by now I can tell that the implementation is quite clean and that them examples of code are very useful. For example, here we can see how simple that is accessing the local BLE, check the status of it and subscribe to the DeviceDiscovered() event.



Greetings @ Toronto

El Bruno



  1. Hola Bruno he leidos tus post de bluetooth ble y me parece muy interesantes, no obstante he tenido muchos problemas para poder hacer que funcionen, no he logrado ni lo mas basico que es escanear por dispositivos nuevo y que los muestre en un listview…. de verdad ocupo ayudar con esto no tendras un tutorial mas detallado que pueda leer?
    espero me puedas ayudar


    1. Hola Rafa
      estos posts ya tienen mucho tiempo, y las interfaces de xamarin y otros componentes han cambiado mucho. No te prometo actualizarlos porque no estoy trabajando con Xamarin ultimamente, sin embargo el trabajo con BLE ha madurado y se ha hecho mas simple en este ultimo semestre. Seguramente en la doc oficial de Xamarin podras encontrar algo mas actualizado


  2. hola encontre este ejemplo en internet
    IList Characteristics;
    ICharacteristic Characteristic;
    /// Get Characteristics
    private async void btnGetcharacters_Clicked(object sender, EventArgs e)
    var characteristics = await Service.GetCharacteristicsAsync();
    Guid idGuid = Guid.Parse(“guid”);
    Characteristic = await Service.GetCharacteristicAsync(idGuid);
    // Characteristic.CanRead
    pero me marca error en la apliacacion, la informacion de la plugin ble no trae mucha informacion. se supone que hay debe de obtener las caracteristicas del dispositivo conectado..


Leave a comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: