Asked — Edited

Hb25- Initialzing Via A Power Cycle

I have had a little issue with using the Parallaz HB25 motor controllers I use with "Cy". Maybe someone could shed some light on this. It would seem every time I go to power up the robot, I seem to have to cycle the power to the HB25's a "second" time before they will work with EZB. Power to the HB25 and Parallaz drive motors is the required 12V via a 7A SLA. I use the continous servo control with these, and generally have no problem with controlling them with scripts and such, but only after I have cycled the power to them the second time. One thing to note, I do have a small delay built in to initalize the HB25's as per Parallax's recommendation, and have tried a longer init and a shorter init times, with no difference in the result. I know others use these here too, so any ideas on whats going on? I have already looked thru here but could not find an answer to this so far. Thanks!

confused


ARC Pro

Upgrade to ARC Pro

Join the ARC Pro community and gain access to a wealth of resources and support, ensuring your robot's success.

PRO
Synthiam
#1  

Sounds as if the pwm detection of that motor controller gets confused. I doubt there is anything you can do on the ezb's side, unfortunately. You can attempt to re-initialize the pwm at a different duty cycle to see if that makes a difference.

There was another controller that has the same experience from spark fun. I forget the model number, but I used it on my omnibot. I would have to cycle the power on it if the ezb was ever disconnected because it would lose the pwm sync.

Lastly, check if there is a firmware upgrade for the Motor controller. Perhaps this has been resolved by the manufacturer?

Tough part is that parallax is getting out of Robotics and focusing on drones in education - so not sure how much time they are investing into fixing bugs - although their support is pretty good and Ken is a really great guy.

#3  

Hi tech, Yes I did know about the initialization, which I already am using. But would seem that it is having no effect, even if I stretch out the time a little bit more. I'm still having to cycle power. Il kinda thinking of adding a relay in the power input that would auto cycle the power from. the initial power up. Course this is just a thought.

#4  

That (relay) would probably work.

Alan

PRO
USA
#5  

@RobotHappy,

I'm familiar with those motor controllers, as per the documentation the I/O pin going to the HB-25 needs to be LOW when power is applied.

This is easy to control when you have an Arduino because the code runs immediately versus EZB waiting for the "brain" to tell what to do next.

you can try, a pull down resistor 1K between the GND and the HB25 pin, that will help the HB25 initialization and avoid the random locks when the pin floats waiting for a ARC command.

please let me know if it works.

#6  

@ptp

I tried the 1K pull-down as recommended. Looks like that did the trick! I tried a couple of programs to verify. So now, upon power up, load the program, give the command and off he goes!

Thanks!

PRO
USA
#7  

I've been there too, still good controllers.

PRO
Synthiam
#8  

Ah - that makes sense. The pin on the HB25 is a floating input and they didn't put a pulldown resistor on it from original design. That's a flaw which they documented as a feature:) Sneaky devils.

Lesson to all of you - this is why a digital port that is selected as an INPUT must include a pull-up or pull-down resistor if connected to a switch or something that is also floating.

This is why if you set a digital port to input on the ez-b and monitor it in ARC, you can watch it flick states based on running your finger near it. Specifically in a very dry environment you can watch it change state all by itself from static.