Categories
Windows

Back to the Future With C++/WinRT

Recently I was asked to investigate a scenario for a desktop C++ application. It was something I’d done before with C# and used a number of WinRT APIs. This meant I had to refresh myself in C++ which has changed again since the last time I used it! I started with the latest C++/WinRT template […]

Categories
Xamarin

Moving from MvvmLight to Microsoft Mvvm Toolkit – Messaging

I recently needed to rework an existing Xamarin project and replace the MvvmLight implementation with the new Microsoft Mvvm Toolkit. This is generally an easy process and it has been designed as the spiritual successor to Laurent’s library. One area which had more changes was the Messaging namespace where the app had made use of […]

Categories
Bluetooth

32feet.NET on .NET 5.0 and Above

Version 4.0.22 of InTheHand.BluetoothLE (and 4.0.25 of InTheHand.Net.Bluetooth for Rfcomm) marks an important milestone. It adds a .NET 5.0 specific build which is important because the approach used to access WinRT APIs has changed since .NET Core 3.x and so the library was not compatible with later versions. Now it will run on Windows 10 […]

Categories
Bluetooth Windows

Bluetooth and Windows 11

It’s still early days for Windows 11 but pre-release API documentation is available on Microsoft Docs and it gives some hints of new functionality for developers:- BluetoothLEDevice gains functionality to request preferred connection parameters. These include minimum and maximum connection interval, latency and link timeout. If these seem a bit complex to set individually there […]

Categories
Bluetooth Windows

Bluetooth Virtual Sniffer for Windows

I only just found out about this but Microsoft released a packet sniffer for Bluetooth on Windows 10 back in February. This is incredibly useful for debugging and is something I’ve been craving for some time. Previously I’ve been able to analyse packets from Android using Wireshark and now we can view activity between Windows […]

Categories
Windows 10

New Windows Phone App

Okay, now I’ve drawn you in with a click-bait headline I need to clarify a little! For some time now Windows 10 has had a tightly integrated app called Your Phone which allows you to interact with your phone from the desktop. However, it doesn’t cater for the 50-odd percent of users who have fruit […]

Categories
Bluetooth Windows

What’s in a BluetoothLEDevice.Name

I’ve noticed an odd behaviour when creating a BluetoothLEDevice from a found device id. I’m not doing anything special, just retrieving paired devices and then trying to access the relevant BluetoothLEDevice. In common with all Windows device searches (whether by Picker or programmatically with DeviceInformation.FindAllAsync) you receive a DeviceInformation which contains the name and unique […]

Categories
Bluetooth Xamarin

Wrapping up 2020

I haven’t posted as much as I would have liked this year, because “reasons” but I thought I would put together a short post to wrap up some of the things that have been going on behind the scenes. 32feet Back in January I announced a re-write of 32feet.NET. The library for Bluetooth Classic has […]

Categories
Bluetooth Windows

Bluetooth Virtual COM Ports

I was thinking about a comment on a Gist I wrote some time ago and thought I’d written a blog post on the topic, but when I couldn’t find any sign of it I decided to start from scratch as I’d have probably needed to update it anyway.The Bluetooth stack in Windows has supported virtual […]

Categories
Bluetooth Xamarin

Asyncify a method and event response

It’s common to come across a pattern where you call a synchronous method to kick off an activity then await an event which gives you the result (or an error). In the process of building 32feet‘s Bluetooth LE library this became a familiar sight both for Android and iOS APIs. The goal was to create […]