                                     reliableWrites: Bool = true,
                                     completion: ((GATTClientResponse<()>) -> ())?) {
         
-        writeAttribute(characteristic.value,
+        writeAttribute(characteristic.handle.value,
                        data: data,
                        reliableWrites: reliableWrites,
                        completion: completion)

        var foundDescriptors = [Descriptor]()
        
        let completion: (GATTClientResponse<[Descriptor]>) -> ()
        
        init(start: UInt16,
             end: UInt16,

        // The Attribute Protocol Read Multiple Request is used with the Set Of Handles parameter set to the Characteristic Value Handles.
        // The Read Multiple Response returns the Characteristic Values in the Set Of Values parameter.
        
        let handles = characteristics.map { $0.handle.value }
        
        guard let pdu = ATTReadMultipleRequest(handles: handles)
            else { fatalError("Must provide at least 2 characteristics") }
