Teach Pendant HMI


UR teach pendant programmable HMI that can function in operational mode as a touch screen interface for the robot.


What is it?

Separate Run Tab HMI interface screen for operators. This would be for simple input/output control both within in a program and/or for devices connected to the tool or control box I/O.

Why is it needed?

This may be a specific need we are requesting but this might open the door to new and unique capability for small integrators to use the teach pendant as a clean and user-friendly interface. Some of our smaller automation projects require operator interaction to enter data, push buttons, toggle cases, or mark positions within a program. Currently we use POPUPS, VARIABLES w/ OPERATOR INPUT, and PHYSICAL DIGITAL I/O Buttons to act as HMI features for the operator. It would be nice to have an HMI Environment to toggle ON/OFF in the teach pendant, this way everything the operator needs is right on the screen.

Example, currently we’ve used 8 buttons w/ 8 LEDs + the pendant screen with popups to let an operator know what part of the program is running (3 buttons are for START, PAUSE, and STOP of programs, 1 initializes arm, the rest perform operations within the program) these take up all the I/O ports, require wiring, and a custom fabricated button panel/pendant holder so the operator has everything in one place. Furthermore, this also involved quite a bit of threads/events/popups and other client interfaces to get the desired functionality within the program.

Would it be possible to create a drag-and-drop HMI screen for simple HMI tools and assign tags to them like “label_1, btn_1… etc.” that way you could name the objects whatever you want (14 character limit) and reference them within expressions in your program similar to the dropdowns with I/O and variables? I’m thinking the configuring environment would look something similar to image below:

Then you could switch the pendant screen into “Operator Friendly Mode” and use a PW to exit it into the programming environment again.

Hopefully this makes sense, I’m not sure if someone has already created a URcap or SW to achieve this but I think this is would be a great tool. I’m also not sure how feasible this is as I’m not much of a software person, however I’ve been surprised at how much you can do without much background in programming. Something like this might make the robot 10x more powerful for small standalone automation projects where someone doesn’t need/want to add a PLC or HMI to the system and remove the pendant (sometimes it’s super useful for quickly flipping into manual mode to troubleshoot then back into Remote Mode.

Anyways sorry for the long post, if anyone has any ideas or helpful tips or tricks that would be great! I would like to add something like this to my future projects to make the pendant a useful tool for daily operation. I just dont have the time, capacity, or coding experience/skillset that some people have to build, test, and implement something like this.



This is a great idea. Would work great for smaller applications where a operator might pick between different types of job / models.

Similar to MOTOMAN I/F panel, which is a simplified I/O control screen

looking forward to see a solution for this

Very nice idea Indeed!!

Hi Michael

This is indeed a very nice additional feature, which could simplify a project.
For this reason, we already started developing this software since last year.

At the moment, it is operational and consist of 2 software programs.
The first is the URCap where you can load interfaces (specified by a file) and interact using an additional screen, similar to the one in your picture.
The second program is for building these interfaces, and is a program for on the laptop. This makes it easier and more efficient to build the custom screen you want.

What is our software capable of:

  • It will display the custom interface build in the Builder software.
  • The custom interface is capable to set / get IO signals of the controller and also variables.
  • The interaction, and what actions need to be done when a button is pressed, is not being programmed/specified in the interface. This needs to be programmed in the UR program itself. In this way, you will have the full possibilities of the UR Script to define the result of an operator action.

Here is an example of a custom build screen

This is our example screen that is also shown on exhibitions. The operator can enter a value for variables, and press buttons to control which process (gripper A, B or C) needs to be done.
Also, you can create a “Menu” function such that you can have several pages like “Production”, “Settings”, “Manual”, “Statistics”, … anything you want.

In the Builder software, it looks like this

Other examples:


Material handling


Would you be interested in more information or a demonstration?

Kind regards
Dieter Verhofstadt



See a need, fill a need! Looks like a great solution, could you message me your email so I can reach out? I have some questions for you.


I would enjoy this as a built-in feature as well.

I remember 3 years ago we took one look at developing the visual side of URCaps in Swing/HTML and immediately decided against it in favour of creating our own internal framework for engineers to create modern-looking custom HMIs running in parallel on the pendant.

1 Like

My name is Rafael Uceda from GMV Innovating Solutions [https://gmv.com/]
I work as a robotics developer and I’d like to tell you that we have experience developing HMI interfaces on the teach pendant like the one you described in your post.
Don’t hesitate to contact me if you want more information about what we have done.

Contact info:
Rafael Uceda Gallegos


Hi Michael

I have sent you a private message. Did you receive it?

Kind regards


I’m currently doing a project, where i want to use the UR HMI, as a interface for the robot. Is it possible for me to do, with only a little coding experience? I can’t find much information about it online.



If there are any question regarding our software, you can also send us an email to info@industrialcobotics.be or to support@industrialcobotics.be. Other contact info can be found on our website.

Then we can answer all your question or directly arrange a meeting with a live demo.

@vfkr: Yes, the software is created in such a way that it is easy to use, such as the UR itself. In our Builder software, the “look” is created. The “interaction” however has to be programmed in the UR program itself, which allows using the full capabilities of the UR together with the HMI.
Basically, the HMI is capable to interact with the controller signals and variables. The robot program can then detect a change in the signal or variable, and then you can program the behaviour that you want. You can even program the UR to change properties of any item on the HMI, making them visible, change location, … .

Kind regards
Dieter Verhofstadt