diff --git a/dserial-cli/src/dbus-serial-client.vala b/dserial-cli/src/dbus-serial-client.vala
index fef765d6983af7be6afef6198db8e150cc83fc8e..8be8bb934d862a2f75b67514767e7e5b21141846 100644
--- a/dserial-cli/src/dbus-serial-client.vala
+++ b/dserial-cli/src/dbus-serial-client.vala
@@ -24,6 +24,8 @@ namespace Serial {
 
 [DBus (name = "info.skorepa.DSerial1.port")]
 private interface Methods : GLib.Object {
+    [DBus (name = "Write")]
+    public abstract void write_sync(uint8[] msg) throws IOError;
 	public abstract async void write(uint8[] msg) throws IOError;
 	public abstract void open() throws IOError;
 	public abstract void close() throws IOError;
@@ -304,8 +306,11 @@ public class SerialClient : GLib.Object {
 	/*=====================================
 	 * Message sender
 	 *=====================================*/
-	public void write(uint8[] msg) {
-        methods.write.begin(msg,()=>{});
+	public void write(uint8[] msg, bool asynchronous = false) {
+        if(asynchronous) methods.write.begin(msg,()=>{});
+        else try {
+            methods.write_sync(msg);
+        } catch (Error e) {}
 	}
 
 	/*=====================================