For both `-retrievePeripheralsWithIdentifiers:` and `-retrieveConnectedPeripheralsWithServices:`, you could simplify with `+defer:`:

```objc
[[[RACSignal
    defer:^{
        RACSignal *signal = [self peripheralsSignalForSelector:@selector(centralManager:didRetrievePeripherals:)];
        [self.manager retrievePeripheralsWithIdentifiers:identifiers];
        return signal;
    }]
    subscribeOn:self.CBScheduler]
    setNameWithFormat:…];
```