What's New?
R/C Switches
Servo Projects
Tx/Rx Projects
LED Projects
Battery Projects
PCB Projects
Wireless Video
PIC Projects
Other R/C Projects
Favorite Links
Photo & Videos
Contact Us

Earthmen Productions
Earthmen Productions






Home | Up | E-Retracts | LCD Projects | Tachometer Projects | Altimeter Projects | Accelerometers | GPS Projects | R/C Auto-Fueler | Engine Synchronizer
Updated: January 05, 2012

PIC Projects: "E-Retracts"
Electrifying existing Air-operated Wheel Retracts




Programming Pattern

Testing & Operation


Assembly Instructions               User's Manual               BUY ONE NOW!          VIDEO!

A lil' history ...

This project, called "E-Retracts", is a project that includes controlling custom electric actuators (gear motors with 50:1 metal spur gear drive system) using a commercial dual motor H-bridge electronic controller (made by Pololu.com) and a custom programmed microcontroller PIC16F684 & PCB.  This project grew out of an ideas and recommendation posted on RCUniverse.com


The final design and firmware for this project has been sold to a retract manufacturer. Unfortunately, this manufacturer does not plan to manufacture or sell actuators/retrofit kits, even though I tried talking them into it. Another good friend is thinking about possibly manufacturing his own retrofit kits in the near future... I'll be sure to post any info re: them on my webpages.

The following information provided is not that of the final design, but is that of an adequate, working design, as is provided as-is. Unfortunately, I can not provide any information on the PIC firmware as the code/routines have been sold.  Use of this information/design is prohibited in commercial products.

I finally got in some new  bearings to test.

I've come up with an even better design that isolates the push/pull forces of the coupler form the shaft of the gear motor.  Most of the binding I've seen in this setup (stalling of motors) appears to be in the gearbox itself.  The force of the jackscrew coupler is placed onto the output shaft of the motor, driving it hard in to either gear back-plate.  The new clam-shell design captures the coupler and motor using a flange bearing on the front side and a thrust bearing on the motor side.  The aluminum coupler loosely fits onto the output shaft of the gear motor ("D" shaped shaft).  The coupler's set screw is set loosely, allowing the motor's shaft to slide in and out of the coupler.  This allows the two bearings to take the axial forces, rather than placing them on the output shaft of the gear motor (i.e. adding friction/binding).


horizontal rule

My new firmware has a neat "learn" function (enabled by shorting a jumper upon power-up) which drives each motor to both extremes while monitoring stall currents. These are stall values are backed-off a bit and saved in EEPROM which is read upon every power-up. I included this as part of my actuator setup since these could be installed in various models of retracts, which due to mechanics/wear, could have different stall currents. I also added code to drive both gear down in case the RX signal is lost (i.e. fail-safe). I also mod'd my control code extensively such that you can change the gear position even while it is in route (not an easy loop to get working). Another portion of the code that was fun (not!) was the control and monitoring of the two different retract motors simultaneously (big ugly loop with ADC interrupts and some trickery... Ug!). Nevertheless, the code is working better than I ever expected... all 200+ lines of it! I hope to test more this week.

horizontal rule

There are really three distinct pieces to this DIY retract idea, mainly the gear motor-driven actuators, the actuator control circuitry/PCB and the Pololu H-Bridge break-out board. 

+ +


The gear motors I decided on using are also sold by Pololu.com and are miniature all-metal spur gear motors with a 50 to 1 (50:1) gear ratio.

These motors have a heft of a torque for their small size.  Key specs include 625 RPM (at 5-6 volts) a 100 mA free-run current, a torque of 15 oz-in (1.0 kg-cm) and a stall current of 1.6 A.  The other key feature of these motors are they use all metal gears, such to avoid stripped gears during high loads and stalls.  Even though a torque rating of 15 oz-in, these will be used to spin a 4-40 threaded rod, giving a torque gain of x40 or 600 oz-in.  The 4-40 stainless-steel threaded rod is attached to the gear motor's output using a small aluminum adapter/coupler.  This coupler couples the output shaft, a 3mm D-shaped shaft, to the 4-40 threaded rod (a 2mm hole tapped to a 4-40 thread).  The threaded rod is then held in tot he adapter using red Loc-tite while the motor's shaft is held in using a set screw.  The other key element that is required (determined via testing) is a thrust bearing.  This bearing is placed between the adapter and the motor's front face-plate.  During normal operation of the jackscrew, most of the force pushes on the motor's shaft, hence pushing the output gear into the gear box.  This causes a bind situation, sometimes enough to cause the gear to be inoperative.  The bearing stops the shaft from being pushed into the gearbox, instead distributing the load onto the motor's brass face-plate.

As for a mount for the motor and gear-box, I used flat aluminum stock and bent them using a vise and pliers.  I made this simple clam-shell style mount which captures the motor/gearbox and allows you to mount is as a air-cylinder replacement using the same pivot pin the Robart air cylinder had used.  The 4-40 rod was then threaded onto the existing T-nut that drives the retract's trunion/cam.  The actuator is then pinned to the back of the retract arm as shown.

This being a DIY project, I opted to use the Pololu Dual Motor Driver board... as it can control two independent brushed motors, while also providing a cool current sensing feedback mechanism which I use for detecting retract end-points (motor stalls).

To the left is a stock picture of the Pololu H-bridge break-out board (header comes unsoldered, and needs to be soldered onto opposite side of PCB as shown here)


This nicely made Pololu breakout board uses 2 Freescale Semiconductor MC33887 motor driver integrated circuits, making it easy easy to connect two brushed DC motors running from 5 to 28 V and drawing up to 5 A (peak) each to your project.

The board incorporates motor-direction LEDs and a FET for reverse battery protection, including required pull up/down resistors (makes my PIC control circuit easier!).




Below are a few pictures of the PCB I made which allows the Pololu board to simply be plugged in.  This control board controls both H-Bridge motor controls (3 wires each, two for motor direction control and one for the current feedback signal).  Included on the control board is an LED, a pushbutton switch (for stall learning function), two servo PWM outputs signals (for controlling retract wheel doors/hatches), a jumper (for getting into program mode: retract delays/stagger, retract door servo sequence enabling, and other functions I come up with...)

I doubt I'll ever sell assembled kit but if there are tinkerers out there that want to experiment, drop and email... I can probably sell you at least a programmed PIC and maybe a PCB if I make some extras.

  These are new!... I need to etch.

Older PCBs are shown below....



Design Criteria Summary:

1) Design small but powerful gear system for driving existing Robart gear (i.e. replacement to air cylinders)
2) Design small DIY control system to operate two retract motors (PIC based)
3) Use existing technology (i.e. H-bridge) if possible (don't re-invent the wheel)|
4) Design PIC code so you can use a spare Rx channel to operate gear
5) Design PIC code so retracts automatically lower gear upon signal loss (fail-safe)
6) Design PCB/PIC code so you can also sequence gear door servos
7) Design PIC code to allow enabling/disabling (jumper) of retracts staggering effect...
8) Listen to customers and their needs!   :)

H-Bridge Control Board - Parts List ...

1) One (1) PIC 16F688 microcontroller (preprogrammed with "E-Retract" code)
(NOTE: I am converting to a PIC16F684 which has 4 PWM channels... for also controlling/sequencing Retract doors!... and of course, a darn new PCB needs to be designed!)
2) Three (3) 10K ohm resistors
3) One (1) 2.2K resistors
4) One (1) Servo Lead/Pigtail wire
5) One 2-pin header (for programming jumpers)
6) Two (2) 3-pin header (2x3 header for retract servo outputs)
7) One (1) 15 Pin Connector (for mating with Pololu Board)
8) One (1) .1uf Capacitor
9) One (1) 68 ohm resistor
10) One (1) 5mm LED (any color)
11) One (1) E-retract PCB...

Notes: ...

Building Instructions...

Below is the latest schematic that matches the new/latest PCB...



(Sorry, Under Construction!)


horizontal rule


Testing and Operation Instructions...

Download the E-Retract User's Manual below (in PDF format... Adobe reader is required)


The web version of the manual is shown below:

(Sorry, Under Construction!)


Programming & Operating the "E-Retract"...

The E-retracts system consists of two motorized actuators and the control electronics (Pololu H-Bridge breakout board and the PIC mating board I designed).  The control system allows the system to control two separate actuators while also incorporating dual feedback controls for sensing stall currents of both both.  The controller must first "learn" the stall currents of both motors such that the controller's current sensor does not prematurely shut down the motor during normal operation.  This "learning" is enables by powering up the controller while having the "learn" button pressed in.  Upon being powered up, you will see the controller actuate both actuators, driving them in both directions, while stalling the motor (this is where the learn function measures the highest current draw and stores it in memory). 


One option on the controller is a jumper that either enables (on) or disables (off) the retract wheel door/hatch servo functions (2 servo outputs). 

To activate the wheel stagger function, you can simply tap the "learn" button once while powered up to toggle this stagger function either on or off.

... more coming soon....



E-Retract Controller Kit/Parts (requires Pololu H-Bridge board)
(Assembled & Tested)

(Sorry, Under Construction!)





E-Retract Controller - Pre-Programmed PIC Only
(This is for one pre-programmed 16F684 PIC only... no other parts)

(Sorry, Under Construction!)




Q1. ...

Additional Notes & Pics...






Click Here to visit the

Earthmen Productions
Earthmen Productions

horizontal rule

Go to Top of Page
Go to PIC Projects
Go to Main Menu

horizontal rule


Home | E-Retracts | LCD Projects | Tachometer Projects | Altimeter Projects | Accelerometers | GPS Projects | R/C Auto-Fueler | Engine Synchronizer



Home | DIYRC STORE | About DIYRC.COM | What's New? | R/C Switches | Servo Projects | Tx/Rx Projects | LED Projects | Battery Projects | PCB Projects | Wireless Video | PIC Projects | Other R/C Projects | SOFTWARE | Favorite Links | Forums/Chat... | Photo & Videos | Customers | LIVE WEBCAM | Contact Us