I had hoped to do matched filtering and compensate ISI with a Viterbi equalizer, but I'm unsure how to do clock recovery.
I hoped to use the polyphase clock recovery block, but it seems this won't work since the derivative of the signal may not be zero at the ideal sampling points. Is that an accurate assessment?
Perhaps the clock recovery MM block? The zero crossings aren't exactly in the middle of the ideal sampling points, but the error is probably negligible. I can't get it to work: I think it outputs the correct bits, but exactly 1 or -1, even though I should be getting +/- 0.5, 0.75, or 1 depending on the adjacent bits. I'm using the default settings. Is that the intended behavior?
Finally, any other algorithms I should be considering?