[Unitree Go1] Quadruped, power the robot and access the topics

Hello,

I am trying to control the gait of my Go1. To start my journey I hung the robot in the air and connected an ethernet cable from the robot to my external computer. I have 2 problems:
1 - The robot runs on battery and this limits my work to 2 hours maximum, and then I need to charge the battery again before trying again. Is there a possibility to power the robot with the power supply port (24V, 30A), and not use the battery at all?
2 - I cannot see any topic published. When I use my external computer, I tried 2 strategies:
- Connect with ssh to each of the 3 nanos, but there rostopic list outputs “cannot communicate with master”
- Install unitree_legged_sdk on my external computer and run the examples (e.g., sudo ./example_position), but this just outputs a list of zeroes on the terminal, and nothing happens, even when I manually move the joints of the robot.

Is it possible to help me with this?

Thank you in advance!

Dear Rob,

thanks for your topic.

  1. Sure, that’s possible with very less work :wink: On the right side of your robot is a small cap and underneath you will find a XT30 Connector which can be used for external power

  1. One of our software engineers can help you for sure.
    @Sohail @Tahir Could you please check it and assist Rob?

Have a nice day and a lot of fun with the robot :slight_smile:

Hi @Rob Can you please confirm if you have purchased the robot from MYBOTSHOP and can also confirm if you have access to docs.quadruped.de?

Thank you @MYBOTSHOP_Support !

Hi @Tahir, Yes I can confirm that I bought the robot from you, but I don’t seem to have access to the documentation you linked. I tried using the same credentials as those for this forum.

@Rob,

thanks for your confirmation. Could you please send us a short email with your Order ID, Invoice no. etc. to info@mybotshop.de so we can send you new access datas to our docs?

Sure, I just sent it

2 - I cannot see any topic published. When I use my external computer, I tried 2 strategies:

  • Connect with ssh to each of the 3 nanos, but there rostopic list outputs “cannot communicate with master”
  • Install unitree_legged_sdk on my external computer and run the examples (e.g., sudo ./example_position), but this just outputs a list of zeroes on the terminal, and nothing happens, even when I manually move the joints of the robot.


Hi @Rob ,

The GO1 which has not been pre-configured by us and is from the manufacturers does not have ROS running on startup (i.e. none of our ros packages) nor the topic lists.

If the unitree_legged_sdk is not working it might be due to the firmware mismatch or the wrong unitree_legged_sdk version. I would advise following this GO1 Unitree_legged_sdk Tutorial for connecting and controlling the robot via SSH.

Hope this solves your issues.

Kind Regards,
S. O. Sohail

Did anyone try out external power with battery installed and powered on? Need this for seamlessly running the robot. The manaual says it will damage the battery.

Other solution will be to add an external connector directly to the battery pack (so between battery and BMS) and “support” the battery. (Either using a CC/CV or fixed 25.2V but only on a fully charged battery)
Is there any information about the battery BMS? Will it be confused with additional external power? (SOC estimator, coulomb counter…)
I’m afraid of the BMS “locking” when disconnected from power/battery pack.

Dear Zenox,

The manaual says it will damage the battery.

As mentioned, the battery will probably get damaged.

Is there any information about the battery BMS? Will it be confused with additional external power?

To check battery information, you can follow this manual.

Dear Zenox,

unfortunately we don’t have any information on the BMS - We have done the same tests to develop a Docking Station for the Go1 but it will be a “hacky” solution because it is not supported by the BMS.

PLEASE NOTE, THE FOLLOWING IS NOT SUPPORT BY EITHER THE ROBOT OR MANUFACTURER AND IT MAY DAMAGE THE ROBOT, BATTERY OR ANY THIRD PARTY DEVICE. WE WON’T BE LIABLE FOR ANY KIND OF DAMAGE!

  • We have kept the battery inside the robot and added the external power supply - The battery won’t be charged the robot is just taking power from the power supply.

Thanks for the battery toolbox manual. The google drive files are offline, is there a valid link for downloading “BMS-TOOL1”?

I accidently left the battery (turned off) in the robot once when powering it externally, nothing bad happend. Did you apply external power with the battery turned on (robot = running on battery)?

As long as the external voltage is lower than the battery voltage, nothing will happen (no current flowing). So it will be safe to start with a full battery (25.2V), apply lets say external 24V, and as soon the battery voltage drops below 24V, the power supply delivers the current to keep the 24V. No current will flow towards the battery, as it will never get lower than the the external voltage. (Requires power supply without sink mode + backfeed proof)

The same sould work with a higher voltage to keep a higher battery level (start with “external support”, then disconnect external power and run on battery, not connecting external power again)

The question now: What happens if the external voltage applied is greater than the battery voltage AND the battery is currently powering the robot (so turned on). Physically now current will flow towards the battery and charge it. This could either just work or the battery could shout down when detecting reverse current flow or something will start smoking. Did you try this?

To bypass this risk of damaging the BMS, it would be (electrically) safe to externally charge the battery behind the BMS (directly on the packs screw terminals) if you keep track of the max. charge current , 25.2V cutoff voltage and cell temperatures yourself.
This could confuse the BMS, but as shown in the battery tool pdf there is no Ah counter, so probably SOC is just voltage based. Sould be working.

The google drive files are offline, is there a valid link for downloading “BMS-TOOL1”?

The executable for checking battery status can be found in the hyperlink executable in the (serial port check heading) docs.

Would like to point out one more time, everythig further is not covered from warranty etc. but in general regarding your thoughts on:

As long as the external voltage is lower than the battery voltage, nothing will happen (no current flowing). So it will be safe to start with a full battery (25.2V), apply lets say external 24V, and as soon the battery voltage drops below 24V, the power supply delivers the current to keep the 24V. No current will flow towards the battery, as it will never get lower than the the external voltage. (Requires power supply without sink mode + backfeed proof)

I would say the same

The question now: What happens if the external voltage applied is greater than the battery voltage AND the battery is currently powering the robot (so turned on). Physically now current will flow towards the battery and charge it. This could either just work or the battery could shout down when detecting reverse current flow or something will start smoking. Did you try this?

As I know it is not charging the battery somehow and if you put a voltage to the screw terminals of the battery the BMS get’s broken right away. Don’t know if something has been changed but that was our initial idea 1year ago, as well.

Moreover in any case you have to build your own or modify the BMS if you are thinking in some way of building a docking station because if you find a way of charging the battery you have the problem of powering on the robot again.

E.g. if you apply an external voltage which is higher than the battery voltage, which most probably could charge the battery, and cut off the external voltage again, the robot is powering off immediately and you have to manually restart it again.

Uh, this is surprising. Did you further investigate what happened?

E.g. if you apply an external voltage which is higher than the battery voltage, which most probably could charge the battery, and cut off the external voltage again, the robot is powering off immediately and you have to manually restart it again.

For me this sounds like the battery is shutting down when reverse current is detected (but no clue why it is not charging)

We already thougt of building our own battery to avoid all this issue. (Thank you unitree for this crappy engineering)