I made a circuit to test this, and my OFF output was about 2.4V, and my ON was 4.7V. I thought maybe you meant I would need to use a pulldown resistor instead of a pullup, so I tried that, and got 0V for both ON and OFF. Then I tried it w/o a pullup or pulldown, and 0.28V for OFF and 0.58V for ON - not high enough for a logical HIGH. In short, I couldn't make it work any way I tried it.I see no reason for a more complex circuit or the need for a Zener.
Just use the same diode circuit that you used for the first pump.
In this case the low motor impedance when off will pull the input to ground, so the input low is motor OFF and high is ON.
Then I tried what Bob suggested, and I got exactly what I thought I'd get - the output of the Zener, which as I noted above, is in the 3.3 - 3.7V range for the 3.3 Zeners that I have (and more than the safe GPIO input max of 3.6).
Then I tried what I had asked about, with R3, and I got exactly what I was hoping for - 1/2 of the voltage of the output of the Zener.
Thanks to everyone who contributed. I have learned a lot.