diff --git a/examples/bluetooth/lowenergyscanner/assets/Menu.qml b/examples/bluetooth/lowenergyscanner/assets/Menu.qml
index d1eaebb2de48d49d4ee2c41fbedbea777b983a2b..3669223af1e94ff49508ea1092f062fbd363faf1 100644
--- a/examples/bluetooth/lowenergyscanner/assets/Menu.qml
+++ b/examples/bluetooth/lowenergyscanner/assets/Menu.qml
@@ -68,6 +68,7 @@ Rectangle {
             text: menuText
             elide: Text.ElideMiddle
             color: "#E3E3E3"
+            wrapMode: Text.WordWrap
         }
 
         MouseArea {
diff --git a/examples/bluetooth/lowenergyscanner/assets/main.qml b/examples/bluetooth/lowenergyscanner/assets/main.qml
index e135d69967f17d89406b6a20fd094a79f5384a7d..7f03d4fa16cb117713854d0229706a65cd7ef350 100644
--- a/examples/bluetooth/lowenergyscanner/assets/main.qml
+++ b/examples/bluetooth/lowenergyscanner/assets/main.qml
@@ -137,8 +137,12 @@ Rectangle {
         menuText: device.update
         onButtonClick: {
             device.startDeviceDiscovery();
-            info.dialogText = "Searching...";
-            info.visible = true;}
+            // if startDeviceDiscovery() failed device.state is not set
+            if (device.state) {
+                info.dialogText = "Searching...";
+                info.visible = true;
+            }
+        }
     }
 
     Loader {
diff --git a/examples/bluetooth/lowenergyscanner/device.cpp b/examples/bluetooth/lowenergyscanner/device.cpp
index 215a7588a88a95ee1effc4e3f1788d6bec093efd..acab48c26a5d2145501201c920fda74e3a84622f 100644
--- a/examples/bluetooth/lowenergyscanner/device.cpp
+++ b/examples/bluetooth/lowenergyscanner/device.cpp
@@ -86,8 +86,11 @@ void Device::startDeviceDiscovery()
     //! [les-devicediscovery-2]
     discoveryAgent->start();
     //! [les-devicediscovery-2]
-    m_deviceScanState = true;
-    Q_EMIT stateChanged();
+
+    if (discoveryAgent->isActive()) {
+        m_deviceScanState = true;
+        Q_EMIT stateChanged();
+    }
 }
 
 //! [les-devicediscovery-3]
@@ -302,6 +305,10 @@ void Device::deviceScanError(QBluetoothDeviceDiscoveryAgent::Error error)
         setUpdate("Writing or reading from the device resulted in an error.");
     else
         setUpdate("An unknown error has occurred.");
+
+    m_deviceScanState = false;
+    emit devicesUpdated();
+    emit stateChanged();
 }
 
 bool Device::state()