# Difference between and teach\_mode() and freedrive\_mode()

**URL:** <https://forum.universal-robots.com/t/difference-between-and-teach-mode-and-freedrive-mode/5905>\
**Category:** URScript\
**Created:** [December 19, 2019, 4:25pm UTC](https://forum.universal-robots.com/t/difference-between-and-teach-mode-and-freedrive-mode/5905 "2019-12-19T16:25:15Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![florent.monbrun](https://avatars.discourse-cdn.com/v4/letter/f/b3f665/32.png) [@florent.monbrun](https://forum.universal-robots.com/u/florent.monbrun)\
**Post date:** [December 19, 2019, 4:25pm UTC](https://forum.universal-robots.com/t/difference-between-and-teach-mode-and-freedrive-mode/5905/1 "2019-12-19T16:25:15Z")

</div>

Hello,

What is the difference between the two functions :

- teach\_mode()
- freedrive\_mode()

In the documentation the description is exactly the same :  
“Set robot in freedrive mode. In this mode the robot can be moved around by hand in the same way as by pressing the “freedrive” button. The robot will not be able to follow a trajectory (eg. a movej) in this mode”

Thanks for your help.

Regards

---

<div class="post-metadata">

**Author:** ![bba](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.universal-robots.com/bba/32/555_2.png) [@bba](https://forum.universal-robots.com/u/bba)\
**Post date:** [December 26, 2019, 2:37pm UTC](https://forum.universal-robots.com/t/difference-between-and-teach-mode-and-freedrive-mode/5905/2 "2019-12-26T14:37:53Z")

</div>

They are the same. The teach\_mode() function is an older version that existed in the first CB3 robot and this function was later replaced by freedrive (for consistency in naming). The teach\_mode function was left in the API to support legacy code that might have used it.
