I'm trying to interface a rotary encoder (IFM RM8002) with an Arduino Nano. The encoder uses the SSI protocol with RS-422 signaling. It has a 2-meter cable, no big stretch for RS-422.
I have a TTL / RS-422 module (amazon.com/gp/B07BJJ6C88) to provide the necessary level translation. It's powered by +5, same as the encoder. From what I've gathered, this is a plain-Jane SSI interface encoder and a commodity level translator.
I'm sending the specified clock signal, at 500KHz, in the correct polarity, but the encoder does not respond (its data lines never change). I've tried rates from 125KHz to 1MHz with no joy.
The scoped clock signals on the Y/Z pins are ~2.7V p-p. The spec I found for RS-422 levels seems to say that would be OK.
I don't know if this is a clue, but the A/B data lines from the encoder are both idling at 0V. Since this is RS-422, should they be at two different levels when idle? The encoder is definitely powered.
Is there some secret SSI sauce here that I might be missing? I have a call in to IFM tech support but they don't guarantee a quick response.