I have a linear actuator with a brushed DC motor with 2 hall sensors. I intent to use the sensors to monitor the position of the actuator.

The specifications of the hall sensors are as follows:

  • Hall Vcc recommended value 10-20 VDC, max 24 VDC
  • Hall output sink max 24VDC/100mA (open collector type)
  • 188 pulses/resolution

Now I intent to read the signal using an arduino uno board, which has a maximum input voltage of 5.5V

My question is how to hook this up, such that I do not exceed the voltage of the arduino board. I have read about using a voltage divider, but not sure if this is the right way.

Could somebody point me in the right direction?

To clarify a bit further, this link shows a schematic of the situation.


The arduino internal pull-up resistor is 20kOhm.

  • \$\begingroup\$ A voltage divider should work, I tried it a while ago. \$\endgroup\$
    – pantarhei
    Dec 11, 2018 at 11:12
  • \$\begingroup\$ If the hall sensors are already associated with the motor circuitry and have voltages > 5V that are ground referenced then an N:1 resistor divider will divide the voltage by a factor of N+1. So eg say 24V max with a 4:1 divider will given an output of 24V/5 = 4.8V max with 24V in. High resistor values result in "2nd order effects" due to capacitance etc. Too low dissipate excess power. Using say 39k:10k gives a 4.9:1 divide ration and probably OK results. \$\endgroup\$
    – Russell McMahon
    Dec 11, 2018 at 11:35

1 Answer 1


Open collector Hall sensors generally don't have any pull-up built in or on board, so although the supply to the sensors is a higher voltage, the output will be only as high as the pull-up resistors you add - which should be going to the 3.3 or 5V rail on the Arduino. Depending on Arduino model, the internal pull-up resistors alone may be sufficient, so long as the speed/response time requirements aren't that high.

  • \$\begingroup\$ Thanks. I added added a link to the device in my question. So am I correct that it would be possible to connect: +hall vcc to a 24V power source, hall sensor to an arduino pin (with pull up resistor), hall gnd to the arduino ground or ground of the power source (struggling a bit with this one) Not sure what you mean with speed/response time requirements. Do you mean how fast the actuator should start/stop based on measured pulses from the sensor. In that case what would be considered a high response time? \$\endgroup\$ Dec 12, 2018 at 11:22
  • \$\begingroup\$ The Arduino ground and the Hall supply ground should be commoned together. The value of the pullup resistor affects the rate of the rising edge of the signal,although the output can switch off very quickly (microseconds), the resistor is the only source of the charge that brings up the stray capacitance and any capacitor on the sensor board for noise suppression, so a lower value make the edge sharper, but I see now that there's no cap present, so shouldn't be that important. \$\endgroup\$
    – Phil G
    Dec 12, 2018 at 14:14
  • \$\begingroup\$ Thanks. I just got it working using 5V from the arduino to power the hall sensor. Next step is a higher voltage. Last question. What do you mean with cap? \$\endgroup\$ Dec 12, 2018 at 16:05
  • \$\begingroup\$ It's common to have a small capacitor present on the signal lines to suppress any noise, but there doesn't appear to be one in this case. \$\endgroup\$
    – Phil G
    Dec 12, 2018 at 16:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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