Final test of the Circuit.
I tested the circuit with varying Voltage Levels input via DIN.
This was tested with the Multimeter in series between the: 9V Bat+ and the circuit Source+.
This was the results from the test :
DIN: Motor: Circuit Source Current (from 9V BAT+):
0V - 0.60V ON turning CCW 150mA
0.70V - 2.00V OFF 1.0mA - 1.9mA
2.30V - 9V ON turning CW 160mA
With DIN between 0.6V - 0.7V , the Motor would Turn OnCCW / Off ,
while the Current would jump from 150mA (ON when DIN < 0.6V) , to 1.9mA (OFF when DIN > 0.6V and DIN < 2.0V).
With DIN between 2.0V - 2.3V , the Motor would Turn Off / On CW ,
while the Current would again jump from 1.9mA (OFF) , to 160mA (ON).
This seems to fall perfectly within the Arduino Output voltage ranges.
And, the Motor seems to react/drive from my Arduino / Program reasonably.
Also, with using a 150mA+/- Motor , I don’t think 1mA or 2mA is much of a drain for the Battery , nor harmful for the 2n7000 Mosfets at the Floating Midrange Voltage.
If the 1-2mA is a longterm problem , then I can always just add a main Mosfet for powering All of the Motor/Driver Circuits to remove the 1-2mA drain - I would think.
Thinking this through, at 1.5mA Idle compared to the 150mA Motor , with a normal 300mAH-450mAH 9V Battery. This means that the Battery could drive the Motor continuously for 2-3 hours. While the circuit could sit Idle on the Battery for 8-12 days. I also consider that the Arduino: with VReg uses about 60mA , or about 8mA without VReg with just LED. So the Motor and Circuit should not be a problem.
Note: The new circuit adds a 470K Pullup Resistor to allow Lower Voltage levels for the Upper Mosfet that is without a Transistor/Inverter driver. And, modifies the default VREF of 1/2 Vcc (100K+100K) = 4.5V , to 1/6 Vcc (100 + 20K) = 1.5V , the OFF state.