Go1 Dance Moves

I’ve been thinking about the super bowl video @Fritz posted where 8 Unitree Go1s are on stage with Jason Derulo and his dancers. I want to do some experimentation with Go1 in high level “joints” mode where the joints can be manipulated to create dance movements. The go1-js package already supports several as you can see here:

With the right timing and easing between -1 and 1 this may lead to some cool robot dog dance maneuvers. Will experiment with this but wanted to put it out there.

I’m also thinking of a way to record the movements provided from the remote to Go1. It would be cool to record motions from the wireless remove and play them back programmatically. Lots of fun possibilities here!

Can’t try this dance code, cause I’m away for the week, but sounds like fun. But even better would be to see and understand the pre-programmed movements from the remote. I would especially be interested in getting the dog to stand up, but without the “praying/begging” motion.

I’m with you. Unfortunately, we are going to address that (standing up) with some low level code. Definitely doable but will require some more research. I’m curious to see how far we can go with the JS library as we get up to speed with low level. Glad to have you on this journey with us!

Back from Florida, which was really fun. Anyway, I’ve been looking over your go1.ts file, and I don’t know what to do with it. Also in your latest package.json 0.1.1 you should add “type”: “module”, so people (like me) don’t keep bugging you about the same problem. Thanks!

We managed to get the push ups and battery color change to work most of the time, but not 100% of the time. Not having errors, just strange runtime behavior. LEDs not changing when the battery level says it should (but then runs correctly next time with no change) ¯_(ツ)_/¯

We’re going to start on the dance moves Tuesday.
Also, we finally got ROS installed on an Ubuntu machine so we can start looking at the low level programming. Should we start with the Python and C++ video you made?

Yes give that a go and let us know if you run into any problems. I was able to mess around with rviz over the weekend and just published this video:

I’m very interested in knowing just how portable this example is to run on the real Go1. I hope to test it soon.

Really like this video and the simulator program. Everything worked perfectly until I tried to run the Python part. Says unitree_controller not found. Low Level Sim - YouTube

Try this from your ~/catkin_ws

source devel/setup.bash

Then see if it finds the controller. If not, would you mind opening a new thread in the forum and we can pick up there?

Wow! That worked, thanks. Can’t wait to see how to send that info the the Go!

@dbaldwin Question. I have changed the script to make the joint move 3 times faster and at less of an arc. To stop I use Control C. But if I want to use the “joint state publisher sliders” again, what do I have to do? Thanks.

So, I got the dog to do a "paw shake’ in the simulator. I really want to be able to send this code to my Go1. Waiting patiently for the next step. Thank you Dennis!