     public final func peripheral(_ peripheral: CBPeripheral, didDiscoverCharacteristicsFor service: CBService, error: Error?) {
         if error != nil { self.publish(notification: .error(.unknownError)) }
         
-        guard let characteristics = service.characteristics, service.uuid == serviceId else { return }
+        guard let characteristics = service.characteristics, service.uuid == self.service.uuid else { return }
         
         for characteristic in characteristics {
             switch characteristic.uuid {

    fileprivate lazy var peripheralManager: CBPeripheralManager = {
        return CBPeripheralManager(delegate: self, queue: Clink.Configuration.dispatchQueue)
    }()
    
    fileprivate let serviceId = CBUUID(string: "B57E0B59-76E6-4EBD-811D-EA8CAAEBFEF8")
    
    fileprivate let peerDataCharacteristic = CBMutableCharacteristic(
        type: CBUUID(string: "E664042E-8B10-478F-86CD-BDE0F66EAE2E"),


extension Clink: CBPeripheralDelegate {
    public final func peripheral(_ peripheral: CBPeripheral, didModifyServices invalidatedServices: [CBService]) {
        peripheral.discoverServices([self.service.uuid])
    }
    
    public final func peripheral(_ peripheral: CBPeripheral, didDiscoverServices error: Error?) {
