There are ESCs for brushed DC and brushless motors. Both are controlled with a PWM signal.
The dual motor controller in the link you posted is just like a special kind of ESC. You would connect it to a servo/ESC output of the Navio.
There are more advanced motor controllers like a sabertooth or roboclaw for robot applications. They can be controlled by a variety of signals, like analogue voltage level, serial communication and PWM too
Your question leaves out a lot of details.
What did you connect to the Navio?
With PWM a 1500us puls is usually center for servos.
An aircraft ESC uses the whole PWM range (ca. 1000 -2000us) to control throttle in one direction.
A car ESC turns a motor in both directions, below 1500us backwards, above 1500us forwards.
You can not vary the output voltage of tbe Navios servo pins. The voltage is 5V and thats it.
The only way to control anything from the servo pins, is the PWM signal on the signal pin.
Sorry, my smartphone did not load the link you posted. If this is an h-bridge based motor controller, you may have to send it some kind of a signal to switch directions. It should be described in the controllers manual.
I looked at the datasheet of the controller and to use it you will have to connect 6 control inputs (3 per motor). AIN1 and 2 (or BIN for the other motor)
must be set high or low to achieve braking and reversing. This will be hard to do with RPi and Navio attached. The way I would do it, is to put a microcontroller (arduino for example) between navio and the motor controller. It would convert the PWM range from the Navio to the inputs required by the motor controller.
Hm, I thought you were going to build a rover. I really doubt that you will be happy with this quadcopter. It weighs only 130g, so if you are lucky, it has a thrust to weight ratio of 2:1.
Even with a RPi A+ and Navio you are going to add about 50g. You will spare some weight by removing the original FC/MC, but this will not be much.
Then you need a power source for the RPi/Navio combo, GPS, telemetry, another motor controller, your RC receiver, cabling and things I forget right now. By the end of your build you may have a brick that moves air, I am afraid.
I would build a copter from standard rc components. You will be a lot happier and it will be repairable.
If you need help selecting the components, feel free to ask.
I have a similar need but for a very different project. I am building a Rover which has a single DC motor. I have an H bridge and I was intending to write some code to read in the RC throttle in values and then using some basic logic output the correct PWM values on 2 of the servo outputs (one of which is the forward PWM, the other is the backward PWM). Plug those into the H-bridge and boom, my rover can go forward and backwards.
I wrote a python script to do just that: Rover PWM output · GitHub
But then I realised that you can only run this when Arducopter is NOT running. Which defeats the point.
What is the correct way to achieve something like this?