The payload of the will message now requires to be stored in the MqttClientOptions as a String and is afterwards converted to byte[] assuming UTF-8 in the MqttClientImpl when connecting. This is different from the publish methods where a Buffer is required. Additionally, when the will message payload is binary (e.g. in SparkplugB) converting this to a string feels wrong and might lead to unnecessary conversion issues.
Backport of PR #244 by @JeffreyThijs