code: func (cln *Client) Subscribe(c *ble.Characteristic, ind bool, fn ble.NotificationHandler) error {
  	cln.conn.Lock()
  	defer cln.conn.Unlock()
  	cln.conn.subs[c.Handle] = &sub{fn: fn, char: c}
  	rsp := cln.conn.sendReq(68, xpc.Dict{
  		"kCBMsgArgDeviceUUID":                cln.id,
  		"kCBMsgArgCharacteristicHandle":      c.Handle,
  		"kCBMsgArgCharacteristicValueHandle": c.ValueHandle,
  		"kCBMsgArgState":                     1,
  	})
  	if rsp.err() != nil {
  		delete(cln.conn.subs, c.Handle)
  		return rsp.err()
  	}
  	return nil
  }
docs: // Subscribe subscribes to indication (if ind is set true), or notification of a
  // characteristic value. [Vol 3, Part G, 4.10 & 4.11]