@skyggen It should not be able to get there at all and the head would be maxed up after print.

I am looking for a method to record the manual movement and then replay it from the ubuntu pc.

Last answer I got from Elephantrobotics is this about saving movement of the arm to sd card or pc.
At the moment I am a bit stuck on what is best approach to record the movement and then send this to the arm when printer is finished with a print.

Greetings, hope everything goes well there for you!
This is Jenny, the after-sales technical supporter of Elephant Robotics.
We have received your request to change the address of the drag point data, but we are sorry that this request cannot be realised at the moment.

The M5 version of the drag-teach programme is controlled by the firmware, and since the firmware content cannot be changed, the address where the drag-teach point data is stored is also fixed and cannot be changed.

Regarding the reading of the points after a single drag, we suggest you try to use the following code.

Importing the Official Python API

from pymycobot.mycobot import MyCobot

Importing the Time Module

import time

Setting up Serial Connection, Serial Port, Baud Rate M5 version, specific serial port number needs to be checked in Device Manager

mc = MyCobot('COM0', 1000000)

Set a slight waiting time, 0.5 seconds

time.sleep(0.5)

Release all joints of the robotic arm, please support the robotic arm by hand

mc.release_all_servos()

Set waiting time, can be adjusted as needed; at this point, the robotic arm can be moved to the target position

time.sleep(5)

Power on the robotic arm and fix it in the target position

mc.power_on()

Read the coordinate information and angle information of the current position and output to the console

print('Coordinates:', mc.get_coords())
print('Angles:', mc.get_angles())
If you have any other questions about the use of the case, please feel free to contact us!