TL;DR I need something to map 0-5v PWM signal to 4.6v-7v DC (~10mA), kind of like what an RC speed controller does.

I'm trying emulate a 2-axis, hall-effect joystick so that it can be controlled by PWM from a RC receiver. (The only part of the power chair I'm using is the 24v motors, batteries, wheels and controller.)

Now the joystick is a hall effect 2-axis joystick. I want to emulate the signals it is sending out. I already measured its outputs. It has five wires:

Red: 11.88v steady
green: 6v steady
blue: (left/right axis) 4.6v-6.95v, depending on joystick position - slight, static pulse
yellow: (forward/reverse axis) 4.6v-6.95v, depending on joystick position - slight, static pulse
black: ground

What I know so far:

  • Arduino: can't output more than 5v, slightly overkill anyway
  • RC speed controller: overkill in $ and performance, and not typically customizable enough to allow for ~4.5v center, 7v forward, and 4.5v reverse
  • custom circuit: Very time consuming - we would much rather use something off the shelf

Do you know of a path of lower resistance for solving this problem?

  • \$\begingroup\$ Using PWM signals to control motor speed is very straightforward, you just need an amplifier (typically a single transistor) to increase the drive current. To add forward and reverse, try looking up 'H' bridges. \$\endgroup\$ – Icy Oct 16 '15 at 8:40
  • \$\begingroup\$ I'm not trying to get forward and reverse. RC transmitter joystick full down needs to result in 4.5v steady DC. RC transmitter joystick full up needs to result in 7v steady DC. \$\endgroup\$ – John Oct 16 '15 at 12:28

The "path of least resistance" using "something off the shelf" would be to couple a standard R/C servo to a potentiometer (like was done in early R/C speed controllers). Center position and end-points can be adjusted mechanically, or via the R/C transmitter.

Most pots have 270º rotation, while most servos do about 90º. If the pot is powered from 12V then to get 4.6~7V You need about 20% of the pot's range, which is 54º. To get this reduced range you just have to dial the TX end-points down to ~60%. If your TX doesn't have end-point adjustment then you could wire padding resistors in series with the end terminals of the pot, eg. a 5k pot would need about 1.7k in each leg (use 2k trim pots for fine tuning).


simulate this circuit – Schematic created using CircuitLab

  • \$\begingroup\$ 1. Where does the PWM signal coming from one of the channels of the RC receiver tie in to this circuit? \$\endgroup\$ – John Oct 16 '15 at 3:10
  • \$\begingroup\$ 2. Where is the change from PWM to Flat DC happening? (I don't see any of the capacitor(s) typically needed to smooth out a pulsed signal) \$\endgroup\$ – John Oct 16 '15 at 3:11
  • \$\begingroup\$ 3. What is wrong with using just the 12v in, GND, and one POT? In other words, why are three resistors and two pots necessary? \$\endgroup\$ – John Oct 16 '15 at 3:13
  • \$\begingroup\$ 4. Would a better strategy be to use a simple (one resistor, one capacitor) circuit to convert PWM to DC, then use a boost converter to add 2v to the output? \$\endgroup\$ – John Oct 16 '15 at 3:16
  • \$\begingroup\$ 1. The RC PWM pulse operates a standard RC servo, which then links mechanically to the pot shaft. 2. The 5k pot produces flat DC proportional to its wiper position. 3. The extra resistors are only required if you cannot reduce the range of pot movement from the transmitter. 4. No. RC PWM is a pulse varying between 1 and 2ms, repeated approximately every 20ms (may be as short as 11ms or as long as 22ms). A simple resistor/capacitor filter will not be accurate, which is why all modern ESCs use an MCU to convert the RC pulse to a PWM ratio. \$\endgroup\$ – Bruce Abbott Oct 16 '15 at 5:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.