Converting and Scaling R/C PPM Signal to AnalogOut PWM Signal, a diy esc?

Ok so im working on a robotics project right now, I plan to buy a parallax sting ray, but want to use it like a BOE-Bot because there is so much learning material out there as far as the BOE Bot goes. Now Ive successfully made some robots and used an Arduino to generate the PWM signal to a custom H-Bridge circuit, and write some open loop motor control.

What im looking to do now is to use the Ardunio for motor control only, and a parallax propeller for the brain. The point of the Ardunio would be to listen for R/C Servo style signals on two pins, which would be generated on the propeller or even a bs2. The Ardunio would then scale the R/C signal to its a valid PWM value 1-255 in either forward or reverse. So basically in my head im thinking some micro would pulse the Arduino with the R/C signal then the Ardunio would analyze the pulse and drive an h brigde IC at the correct speed/direction. The point of this is to drive a bigger more expandable robotic platform using bigger dc motors, as if it were a BOE-Bot, or any bot that used two continuous rotation servos for the drive train.

Now this is a project in an of itself that I really dont want to sit down and do from scratch. This thing basically equates to an RC Electronic Speed Control. The reason I dont want to just use a cheap ESC is because most of them arent friendly for robotics, and the ones specifically geared twords robots I.E a saber-tooth or parallax HB 25, are quite pricey. I have plenty of AVR chips and beefy h bridges around, so this would basically be free.

What I'm wondering is if anyone out there has written some code for a DIY ESC using the Arduino? I've done a lot of Googling and haven't found any projects like this, but it seems like there would be an Ardunio based motor controller out there for RC cars, maybe Im just searching the wrong terms or something? The closest thing I could find was using a PIC, and I know nothing about PICs, nor do I have the tools to work them.

I'm not entirely following the arguments against using a standard ESC. In what way are the 'cheap' ones unsuitable? Do you have unusual voltage/current requirements, or something? Nothing stopping you from implementing the solution you outlined (servo PWM input -> Arduino map to PWM output -> DIY H-bridge controller) but how is this an improvement over a common or garden ESC?

First we should back up ask what kind of specific motor you wish to drive using the arduino PWM analogWrite()
Command and with what suitable motor driver module or shield? If you are contemplating using a three wire brushless DC motor then what you are attempting would be very difficult as most arduino compatible motor drivers only work with brushed type DC motors.

The R/C hobby type ESC come in two flavors, one type for driving brushless 3 wire motors and one type for driving brushed 2 wire DC motors. Both type come in two variations of operations, single direction control (as for propeller control) and bidirectional control (as for vehicle forward/reverse control).

A hobby ESC also can include a BEC circuit that converts the battery voltage down to a regulated +5 or +6vdc designed to power a R/C receiver module and provide for servo power.

So you can see that a typical hobby ESC performs a lot of tasks and are very cost effective due to the high volume sold to the R/C hobby. You might or might not be able to perform what you want with a arduino and not use a ESC depending on the answers to the above questions, but it could range from nearly impossible to not so hard but costing more then just using an appropriate ESC.

I would think you could just use your analogRead() value to adjust the value you send out using the arduino servo library wired to a compatible ESC properly selected to work with your specific DC motor, but again we need much more information to give you a specific recommendation.

Lefty