質問

I am researching on Bluetooth development in Xamarin.

At connection state, all the c# code connects via a well known ID that defines a Bluetooth profile.

Well, in the demo examples I see code

UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");    // ("fa87c0d0-afac-11de-8a39-0800200c9a66");

What is "00001101-0000-1000-8000-00805F9B34FB"? Is it being somehow obtained from fa87c0d0-afac-11de-8a39-0800200c9a66?

Even more, in the Bluetooth documentation, we see the well known UUID's for different profiles in a form:

HandsfreeAudioGateway   0x111F  Hands-free Profile (HFP)

How would 0x111F be converted into a 00001101-0000-1000-8000-00805F9B34FB form correctly?

I suppose people with Bluetooth development experience would be able to comment and clarify these points.

役に立ちましたか?

解決

It's just that the 16 bit versions are always added to the 128 bit Bluetooth Base UUID of:

00000000-0000-1000-8000-00805F9B34FB

The 1101 then inserted makes the uuid refer to the Serial Port Profile making it:

00001101-0000-1000-8000-00805F9B34FB

111F just refers to the Hands Free Profile. The full 128 bit version would be:

0000111F-0000-1000-8000-00805F9B34FB

I don't see how that other UUID you listed would be referring to the Hands Free Profile without passing through some masking layer though.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top