PWM Signal coming from an RC Car may be to "hot"?

Hi.

I am new to Arduino and not an expert in electronics. I have a question to the professionals:

I run an Arduino (Nano) inside an RC car and read the PWM signal while running the car. Everything is working perfectly. (Tamiya King Cab + Traxxas Slash rear axle - Digital Dashboard for the King Part 2 - YouTube)

BUT:

The internal RC components operate on 6 Volts (I measured it, provided by the RC System) I can run the Nano on that Voltage via Vin and it works fine (even below the recommended 7 Volts for Vin)

I am guessing that the PWM signal of the RC system also peaks at 6 Volts? I am just guessing, I have no way of accurately measuring this. If so, the peak of the PWM Signal would exceed the limits of the “Digital In” Pin.

Everything works fine. I don’t know if:

  • The 6 Volts PWM is inside the tolerance of the Arduino Nano.
  • The RC system provides its PWM signal at 5 Volts peak anyway.
  • Or if I am just frying the In Pin of the Arduino over time and it will eventually fail.

Does anybody have experience on this?

What electronic circuit could make sure that the peak of the PWM signal never exceeds the 5 V max?

Thank you for any insight!

I thought the max voltage of a pwm signal is 5v. You could put a voltmeter on it and run it to full throttle to find out. The pwm signal is different than the power going to the motor. I'm assuming you are running a brushless motor with an esc. Where are you connecting your wire to read the pwm signal. Pictures and schematics make all the difference in the world.

Thank you! Great Idea: I provide a scematic of a basic RC Car setup + Arduino to the best of my abilities. I hope it is understanable. Basically the Arduino is "listening in" on the PWM signals the RC receiver is sending to the ESC Motor control and the stearing servo.

Measuring the Voltage of the PWM signal at full throttle does not help in this case, because of how the the RC servo control is defiend Servo control - Wikipedia
Unfortunately also Wikipedia does not provide a clear definition of the peak voltage of the PWM pulse.

Just attach your voltmeter to the pwm out of the receiver to the speed controller to get the max voltage. It really doesn't matter if you attach to the speed controller or the steering. It's the same signal. Pwm is a high or low signal read as 1s or 0s. So a high reading would be between maybe 2.7v to 5v. And a low would be 2.3 to 0 v.

At full throttle your pulse width will be at max for full speed. The voltmeter may bounce up and down a little but you'll get a good idea of max voltage.

Which receiver do you use? many of them have an internal voltage regulator that brings down the working voltage to 5V or 3.3V. That means the PWM output to the servo's is capped to those voltages. Even if your servo's or Nano runs at 5V internally it can read 3.3V level as a "high" and operate normally.

Ok! I did a quick test with my (very cheap) voltmeter. I got fairly stable 0.2 V at full reverse, 0.3V at neutral, and 0.4V at full throttle.
As I expected my Voltmeter is measuring the average. But at the other hand it seems to be a linear representation of the 1.0 / 1.5 / 2.0 ms puls descibed in Wikipedia.
When I extrapolate this to the (about) 20ms period of the RC pulse i get something arround 4V peak. (I hope my math is right)

That would fit in with:
"many of them have an internal voltage regulator that brings down the working voltage to 5V or 3.3V."

So I accoring to this, I have NOTHING TO WORRY ABOUT!
I hope I am right!

Thank you!!!

Nope sounds good.

Use Arduino ADC via analogRead() to measure the PWM. If you ever get 1023 you risk overvoltage. If you don't get more than about 700 the Arduino may fail to read the signal properly.
When in doubt use about 1k resistor between the PWM and Arduino input. This will protect the pin from a slight overvoltage.

EDIT: with 6 V at VIN you probably supply less than 5 V to the Arduino. It is no problem if the difference is not large. You may measure it. Arduino should run at 16 MHz down to 3.8 V.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.