 extension ViewController: InfoCharacteristicDelegate {
     
     func infoCharacteristicName(name: String, value: String) {
-        _appendLog("\(name): \(value)")
-    }
-}
+        dispatch_async(dispatch_get_main_queue(), {
+            self._appendLog("\(name): \(value)")
+        })
+    }
+}

                ])
            ])

        _manager = BLECManager(config: config, queue: nil)
        _manager.delegate = self;
    }


    }

    func centralDidUpdateState(manager: BLECManager) {
        dispatch_async(dispatch_get_main_queue(), {
            self._appendLog(self._stateName(self._manager.state))
        })
    }

    func central(manager: BLECManager, didDiscoverPeripheral peripheral: CBPeripheral, RSSI: Int) {
        dispatch_async(dispatch_get_main_queue(), {
            self._appendLog("Discovered: \(peripheral.identifier.UUIDString)")
            self._showRSSI(RSSI)
        })
    }

    func central(central: BLECManager, didConnectPeripheral peripheral: CBPeripheral) {
        dispatch_async(dispatch_get_main_queue(), {
            self._appendLog("Connected \(peripheral.identifier.UUIDString)")
            self._timer = NSTimer.scheduledTimerWithTimeInterval(
                1.0,
                target: self,
                selector: #selector(self._update),
                userInfo: nil,
                repeats: true)
        })
    }

    func central(central: BLECManager, didCheckCharacteristicsDevice device: BLECDevice) {
