Inconsistent Movement

Hey Afshin,
Can you try the hardware test from here: https://github.com/DexterInd/GoPiGo/blob/master/Software/Python/hardware_test.py.

This should make the motors move forward for 5 second, then stop for 2 seconds then back for 5 seconds and again stop for 2 seconds and repeat the whole process. The LED light should also turn on and off. Do let us know if this works for you or not.

-Karan

Hi Karan, John,

I ran the hardware test script and I still observe the same problem. I’ve attached a video showing what it looks like.

In case you’re interested, I also included a video with only the right (when facing the robot) motor connected. In that case the script works fine.

If I only connect the left motor, then I observe the same problematic behavior as when both motors are connected.

Hey Aro, thanks for posting this video. It really does look like that motor is somehow resetting the board; maybe something is shorting the GoPiGo board out, I’m not sure. And when you just attach the right motor, that seems to be working just fine.

I think you’ve been in touch with Taryn, no? We will send you a replacement right away. Sorry for the troubles and thanks for working with us for so long. I think the best thing to come out of this thread is the hardware test, which will hopefully help us sort out issues for folks faster in the future. Thank you so much!

OK, thanks John. I haven’t heard from Taryn yet, let me know how to best get in contact.

Hi John, Karan,

First of all, thanks for sending me the new motor. However I have bad news, it looks like the replacement motor gives me the same exact behavior as the bad motor.

As far as I can tell, right now I have 2 bad motors and 1 good one. The good one passes the hardware test both when connected to the right port as well as when connected to the left port.

The two bad motors (one of them is the replacement), look like they short/reset the board, when connect to either the left or the right port (see video IMG_1267.mov from a few posts back).

Any clue as to what’s going on? Just another bad motor or something else?

Aro, doh! I think your assesment of what’s going wrong is correct, and I’m really sorry to hear about this! We will ship another to you right away.

Hi John,

I got the second motor today and I still have the same problem. It makes me suspect there is something deeper going wrong…maybe something with the board?

Maybe at this point the best thing to do is send an entire replacement or a refund (unless you see any other debugging I can do on my side). I can return the gopigo I currently have (and the two replacement motors) with the prepaid postage that Amber sent me.

Let me know the best way to proceed. Thanks.

Hello Aro, We can proceed any way you like. If you’d like a full refund at this point, we’ll try to arrange that. If you’d like a full replacement at this point, we can try to arrange that. Just tell us how you’d like to proceed.

Thanks for the quick response John and for the great customer service. I would appreciate a full replacement.

I’m really stumped as to what is causing the problem. As far as I can tell, the one good motor plugged into either the left or right side works correctly, but if I use any of the other three motors (on either side, alone or with another motor) then the board seems to get reset (i.e. any LEDs that are on turn off and the motor stops). I’m really curious what the difference is between the “good” motor and the other three and/or why the gopigo board behaves differently depending on which motor is plugged in.

I can label the motors and send them back to you (along with the rest of the gopigo I currently have). If you figure out what the problem is, please make sure to let me know :slight_smile:

Hey Aro, we’ll keep working with it if you’ll keep working with it. I would like to get this back and see where the defect is. We’re constantly working with our manufacturers to improve the testing, maybe it’s something we can prevent with some testing in the future.

I’ll alert Amber, we’ll get a full replacement to you. Thanks for your patience with this.

Hey John, I got the new replacement and it works like a charm!

I did a few simple tests as well:
1.) I tried the new board with the old motors – this gave the same problems I was dealing with before.
2.) I tried the new motors with the old board – this works great!

So, indeed, it seems like the trouble is with the motors (one that came with my original purchase, and two replacement motors). I just thought it’s very unlikely that I’d get three problematic motors.

I’m happy with using the board from my original purchase plus the two motors I received in the replacement package. If you’d like, I can send back the other motors (as well as the extra replacement parts); just let me know how.

Cheers

Hey Aro,

So just to confirm, your estimation is that the problem lies in the motors, is that right? Do you think all of them are defective?

Thanks Aro. Thanks for your patience with this, we really appreciate it.

John

I wanted to reply to this thread because I believe I might be having the same issue. Understand that I am very new to this programming environment but I can add a bit of detail.

At random and for unknown reasons the right servo motor rotates at an inconsistent speed relative to the left motor. Things investigated:
1.) The wheel, fly wheel, and servo are clear of any obstruction.
2.) Using the basic_robot.py example script, I can manipulate the servos. The issue occurs in both forward and reverse, but not when activating right.
3.) When I adjust the speed either up or down, both the servos adjust and begin moving at the same speed even if from a dead stop.

Any thoughts on if this could be the same issue?

Hey hermiesterbergerbergermiester,
Have you done the software and firmware update on your GoPiGo. We used to see this problem a while back with the older firmware but it should be solved with the new firmware and software.

-Karan

I just received a GoPiGo last week. I upgraded the s/w and f/w. F/w version is 1.3. Battery level is good at 10.7 Volts.
I’m running a very simple 3 line script and I’m seeing inconsistent behaviour. Here is the code:

from gopigo import *
enc_tgt(1,1,72)
fwd()

Sometimes when I run the script the robot goes 4 revolutions and then stops (good).
Other times I run the script the robot does nothing.
And yet other times I run the script the motors start running and never stop. In this case, I have to run another script to issue the stop() command.

Hey,
We are trying out the code and will try to replicate the problem and get back you in a some time.

-Karan

Hey capple, just a quick update: we’re still working on this. We think the problem is at the firmware level and we’re taking a deep dive into it. Just wanted to give you an update on this.

Hey cappie,
We have just updated the software and the firmware. Can you update your local git repo and update the firmware to v1.5 by running this script: https://github.com/DexterInd/GoPiGo/blob/master/Firmware/fw_ver_15/firmware_update_15.sh . Also run the setup.py here: https://github.com/DexterInd/GoPiGo/tree/master/Software/Python so that you have the latest software too. Once the updates are done, try using this example: https://github.com/DexterInd/GoPiGo/blob/master/Software/Python/other_scripts/encoder_tgt_complete_test.py. This should solve the problem or help you figure out what the problem is. Do post the output you get when you run the code. The output should be something like this:

Ver: 1.5
10.35 V

CHECKING ENCODER TARGETING
Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 78 74
Initial encoder read vals: 0 2
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 78 75
Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74
Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74
Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74
root@raspberrypi:/home/pi/Desktop/GoPiGo/Software/Python# python test.py
Ver: 1.5
10.34 V

CHECKING ENCODER TARGETING

Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74

Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74

Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 80 74

Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 80 74

Initial encoder read vals: 0 1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  1
Enc tgt Status:  0
Final encoder read vals: 79 74

Do let us know how it goes.

-Karan

Seems to have gotten worse with the f/w update. Each time I power up the GoPiGo with version 1.5, the left motor spins the wheel for a few seconds and then stops (right motor is fine).

I tried running Software/Python/other_scripts/encoder_tgt_complete_test.py with version 1.5 f/w. Here is the output:
Ver: 1.5
2.37 V

CHECKING ENCODER READINGS
258 0
Both motors moving Forward with LED On
after 5 sec 258 179
Both motors stopped with LED Off
None after stop cmd 258 186
None after 2 more sec 331 189
Both motors moving back with LED On
after 5 sec 516 364
Both motors stopped with LED Off
None after stop cmd 524 371
None after 2 more sec 605 374

CHECKING ENCODER TARGETING

Initial encoder read vals: 0 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
Enc tgt Status: 1
^CTraceback (most recent call last):
File “encoder_tgt_complete_test.py”, line 70, in <module>
time.sleep(.5)
KeyboardInterrupt

The left motor never stopped spinning so I had to interrupt the program and power the GoPiGo off.

The voltage reported 2.37V from this script. I knew this reading couldn’t be right, so I ran this simple script:
from gopigo import *
print “Voltage=%s”%volt()
print “F/W=%s”%fw_ver()

With version 1.3 f/w the output is:
Voltage=10.02
F/W=1.3

With version 1.5 f/w the output is:
Voltage=2.31
F/W=1.5

Where do I go from here?

Hey,
Looks like firmware v15 is not working for you. Can you send what the python program shows when you run it with firmware v13.

-Karan