Drive 4 motors from Explorer pHat?

I would guess that it’s a torque issue? With a metal chassis and that heavy LiIon battery, the whole thing will be trying to pull an awful lot of torque, hence the stalling. Perhaps a higher gear ratio of motors would give you more torque, less stalling, albeit pulling more current?

If I pick it up off of the floor, with the motors free wheeling: I can easily stall the motors with light finger pressure. The chassis is very light, aluminum. If I run just two motors, it gets around just fine, it was originally this, https://www.adafruit.com/product/2939

So, your saying I should buy yet another set of 4 motors? These are the ones in this kit, https://shop.pimoroni.com/products/coretec-tiny-4wd-robot-rover as far as I know.

I’m thinking it might be an issue with the Explorer PHat? Is the H Bridge overload protected, current wise? Did I maybe damage it somehow? I’ll likely order another one some time down the road, just don’t want to damage another one. I now have enough motors for a couple more rovers, just need to order another chassis or two. And maybe a motor board for my Micro Bit? Just mulling over my options to get something usable?

This is weird, like you point out the Rover kit uses the same wheels, motors, the same pHAT, and isn’t really all that different from your setup- yet, and I’ve tried them myself, it goes like a bat out of hell!

I suspect the Explorer pHAT could be the issue, since it does have a current limit, but it works so well in the Coretec kit!

Maybe @CannonFodder can chime in with some idea of what may be going wrong?

Sheesh your robot is well built! What sort of torque do you get out of the motors if they’re powered from a 1.5A or 2.5A mains supply?

From what I can tell,the PowerBoost 1000 is only good for 1A, although the documentation says: “2A internal switch (~2.5A peak limiting) means you can get 1000mA+ from a 3.7V LiPoly/LiIon battery. Just make sure your battery can handle it!”

We designed LiPo shim to deliver up to 1.5A, and most USB battery packs will do 1.5 to 2.1A these days. I hate to point the finger at something without being sure, but perhaps the power supply is the weak link?

I plugged a 2.5 A power supply directly into my Pi, leaving the power boost off. Same results, just a buzz when I try to have it spin/turn. Might be a little more torque, hard to tell. It did seem to be a little harder to stall a motor. Wasn’t hard to make one stop moving though. The motors I’m using are the 50:1. The wires going to them are the same gauge as the jumper wires you sell. I kept the length as short as possible too.

I had originally planed to use this, https://shop.pimoroni.com/products/mp2636-power-booster-charger-module instead of the powerboost. My budget at the time was tight so it slipped to maybe next order.

Build pictures are here, https://1drv.ms/f/s!AjOYwiwlwDtpgrNitzE9mWKSbll5jg
All my Pi project builds are here, https://1drv.ms/f/s!AjOYwiwlwDtpgUMsp2qnevKpGEHb

Explorer pHat is 200 ma per channel (H Bridge) so the power boost 1 A limit shouldn’t be an issue right?

Hi,

The Tiny 4WD kit uses the 50:1 motors and the explorer pHat. Here’s a link to code for controlling a robot using the explorer pHat

1 Like

Things I would check, is what voltage are you get at the motors, should be 5V. Also to turn on the spot, the motors must run in opposite directions. Also check what directions you motors are turn, one could be running in the opposite direction, this will effect how well your robot turns. Also is the Adafruit show the overload light when you trying to turn?

I have two motors wired in parallel per channel (H bridge) I wired the two on the right side (looking from behind) with their polarity reversed. That way if I command explorerhat.motor.forwards() it goes forward instead of spinning in a circle.

My code works, with two motors wired up it goes in the correct direction and turns just fine. Problems start any time I add two more motors. If I hold it in my hand upside down, the 4 motors move the correct way. To turn on the spot I run two motors on one side forward and the opposite two in reverse. If it’s in motion I just slow down one side so it turns as its moving. That also doesn’t seem to work so well, not reliably anyway.

I’ll check the voltage when I get a chance. What overload lite are you referring too?

With all 4 motors running full speed forward I get 3.8V on motor 1 and 3.9V on motor 2 of the explorer pHat. I get 5V out of the powerboost with all 4 motors running. .

I would expect to see close to 5V when the motors are on full power. Have you tried a simple program like below

Import explorerhat
Import time

explorerhat.motor.one(100)
explorerhat.motor.two(-100)
time.sleep(3)
explorerhat.motor.one(0)
explorerhat.motor.two(0)

This code should make robot spin for 3 seconds. I would also measure the voltage at the motors

Brian

I’ll give that a try in a bit, and post the results thanks for the help with this.

Same readings, 3.8 3.9 volts on the motor terminals of the Explorer phat. I can’t easily get at the motor terminals without taking it all apart. My motors are enclosed in cases/covers. I’d have to pop the back cover off of one of them to get at the terminals. I can’t see them being much different though. I’m a retired electronic technician, if that helps.

Fed 5V directly to the motors, turning noticeably faster and a lot harder to make one stall. I had to use two fingers and pinch it.

I’m looks like something happened to the Explorer pHat during all my trials and tribulations so I’m going to order another one at some point. Have to convince my better half to let spend some more money on “toys” as she calls them, lol. I’ll try and post back here with how that works out when that happens.

I think I just figured out why my rover is messed up. It looks like I wired the +5V from the powerboost to the 3.3V buss on the Proto pHat. So it looks like I may have fried my Pi Zero and explorer pHat. I’m just firing up my soldering iron to remove the Power boost and fix my screw up. At least I now know what’s going on. I’ll be ordering some more stuff next month. I’ll rewire it and put it all back together to see how it works though. I was getting 5 V out of the power boost but only 4.2 at the GPIO 5V pin? On power pack I got my correct +5V on the GPIO 5V pin. Looks like I soldered my jumper wire one pad over from where it should have went. Weird thing is, the Pi worked fine, the rover even moved as it should?