             if (result == .NONE) {
                 self.targetDevice.deviceICCID = iccid!
                 self.getPricingImpact()
+            } else if (result == .INVALID_STATE) {
+                self.fail(withReason: .BoronModemError)
             } else {
                 self.handleBluetoothErrorResult(result)
             }

                self.targetDevice.activeInternetInterface != nil &&
                self.targetDevice.activeInternetInterface! == .ppp &&
                self.targetDevice.deviceICCID == nil) {
            self.getTargetDeviceICCID()
            return
        }

        self.getPricingImpact()
    }

    private func getTargetDeviceICCID() {

            return
        }

        self.targetDevice.transceiver!.sendGetIccid () { result, iccid in
            self.log("targetDevice.transceiver!.sendGetIccid: \(result.description()), iccid: \(iccid as Optional)")
            if (self.canceled) {
