Jump to content
jcwhit

OnMTUChanged Event in 12.3

Recommended Posts

In the 12.3 release announcement, there is a comment about a new BLE event, OnMTUChanged. I am looking for this, but cannot find it in any of the documentation or in the System.Bluetooth files. Also tried to use the IDE to find this, but code completion did not show anything. Are there any samples of this or info on where this can be found? My main interest will be Android, but it says the new event is for all platforms.

Share this post


Link to post

this is from the DocWiki, what is new in 12.3

 

BLE and Bluetooth

The 12.3 release focuses on improving the quality of our Bluetooth support across all supported platforms.

A new OnMTUChanged event has been implemented for all platforms. The event is called asynchronously:

  • The event is a reaction to an attempt to set the desired MTU (Maximum Transmission Unit): TBluetoothLEDevice.DoRequestMTU(MTU)
  • The OS can call the event (for example, on Windows).

 

I also could not find the method TBluetoothLEDevice.DoRequestMTU(MTU).  There is an entry in the DocWiki for it (from 2023), but it does not show up as a Method under TBluetoothLEDevice.

 

I am wondering if what this meant is that it was made available through the Android.JNI units.

Share this post


Link to post

It looks like a mistake when writing these release notes.

 

A new event would be an interface breaking change and thus cannot (should not) be implemented in a point release. Most probably this will make it into Delphi 13.

Share this post


Link to post
On 4/20/2025 at 10:20 AM, Uwe Raabe said:

It looks like a mistake when writing these release notes.

How can that happen, also I have seen this note about MTU in many "whats new" references from Embarcadero and looking forward to this.

I'm not yet on 12.3, is this really missing in the source codes, or is it just defined for some platforms?

 

Edited by Rollo62

Share this post


Link to post
2 hours ago, Rollo62 said:

How can that happen

 

One possible scenario:

  • Product Management schedules RSP-38842 for 12.3
  • Product Owner assigns the task to implement that to some developer
  • Developer implements it in an interface breaking way
  • Developer team realizes that the change cannot be done in 12.3 and postpone merging the change
  • Unfortunately they forgot to notify the Product Owner to adjust the fix version

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×