Dear UR Community,
Since we launched UR+ back in 2016, you, our partners and our customers, have created amazing new products and features using the URCaps SDK. You’ve introduced URCaps that go above and beyond solving automation challenges, helping us create a world where people work with robots, not like robots!
As we observe the many exciting UR+ products and in-house URCaps being developed, we are thrilled to see the ingenuity and creativity being demonstrated. This is truly a collaborative effort that goes beyond the factory floor. The cobot is not just a piece of machinery, but a platform where you create new automation opportunities.
We are investing in taking the URCap platform to the next level.
In 2023 we will be introducing PolyScope 6 - a substantial upgrade of the PolyScope product. PolyScope 6 will form the foundation for new PolyScope versions to come and offer you opportunities we cannot deliver with the existing PolyScope 5 software.
The graphical user interface will remain as you know it today, and UR Robot Programs (URPs) will work just like before.
PolyScope 6 will introduce a new software backend that strengthens URCap options, and increases robustness, scalability, and cybersecurity.
PolyScope 6 will also pack a lot of exciting new user-facing features related to motion programming, advanced control, and motion performance upgrades for both the UR20 and the full e-Series line. More information about this will come later.
The new backend software in PolyScope 6 will reduce URCaps dependencies towards the host operating system, ensuring stable and predictable system resources, as well as making the backend services provided by URCaps (daemons, etc.) more robust. This will further improve predictability when multiple independent URCaps are installed on the same robot.
UR+ Partners will have a larger freedom of choice when developing their backend services, as the services will no longer be dependent on the robot OS. This will reduce development complexity and open new opportunities.
On the PolyScope 6 platform, we will continue to expand the possibilities for UR+ Partners to develop more comprehensive systems, including unified ways of inter-process communication that speed up development, and reduce the risks of multiple URCaps conflicting over the same communication interface. A new URCap format will be introduced, that scales better with complex URCap solutions, supporting our future developments.
Some of the changes occurring in PolyScope 6 will likely affect existing URCaps. We recommend that our partners plan for validation testing and a possible refactoring of their existing URCap products. This will ensure successful operation on the new platform. Please reach out to your local Ecosystem Manager for further details.
We expect to start beta testing PolyScope 6 in Q1 2023, focusing on UR+ Partners to assess and migrate URCaps to the new version. This will enable you to make sure all relevant products are taking advantage of the new backend software, before PolyScope 6 is released later in 2023.
If you are interested in the beta campaign, you can sign up here: BETA PROGRAM
We will periodically update the forum with more news.
Jacob Bom Madsen
Hi, curious why it was necessary to break backwards compatibility for the URCaps?
While it might be a lot of work for you guys, it will be 10x the work for the community and lots of annoyed end-users.
Allow me to elaborate. First of all, we recognise the trouble this will cause and the decision to proceed like this has not been taken lightly. The are certain barriers we must pass to take our platform to a place where it can serve the entire ecosystem with a higher level of scalability, stability, cybersecurity, and so on. We’ve be able to find no ways to do this without some breaking changes. However, we are confident that this will be worthwhile.
Just form the top of my mind, here are some of the issues causing breaking changes:
Our SW platform has always been very open allowing URCaps basically any freedom to do what they want. Including doing things potentially disturbing the system itself or other URCaps. Those more ‘creative’ URCaps which have been living on the edge will have to move closer to the center of the road for UR to maintain a high level of system integrity. Those URCaps will unavoidably see this as a breaking change.
The current SW platform is old, and we know some of you are having trouble finding modern software to resolve your dependencies which is compatible with our platfom. Also, the ever increasing cyberthreat speaks for keeping up-to-date. We’ve been trying to find gentle ways to upgrade the platform’s software but among several things the evolution of the C++ standard has introduced a new ABI since we engineered our platform. It is likely that most URCaps wouldn’t work if we simply updated the platform libraries. Python is another example where time has been working against us. The platform upgrade is very necessary but it will cause breaking changes. Actually, with this update we want to offer a way to break the dependencies between the URCaps and the platform. We want to take the platform to a level where URCaps can say: “Who cares what software is running on the UR platform, I’m managing my own environment”. This will be a huge step ahead as this will make future platform updates much less difficult. More on this to come.
These are just some of the reasons behind the chosen path ahead. I hope this makes better sense now. Further questions and comments are welcome.
BR / Kasper
JBM’s triumphant return to the UR Forums. Thanks for sharing!
Fair enough, these things are a necessity sometimes. Please consider releasing some documentation for the new URCap format ahead of the beta launch so we can plan our Q2 development efforts. -Fredrik
thank you for your information regarding the upcoming PolyScope
I am an e-series end-user (we do research and development) and I would
like to know if there will be also changes in the RTDE interface? E.G.
will it be possible to directly send positions from a computer to the
robot’s control box which the robot finally moves to? Up to now we have
to write a PolyScope program which copies the desired TCP positions from
registers to the move commands.
Kind regards from Fulda, Germany
We are juuuust about to give the technology AND the documentation it’s first test run. The BETA will include good documentation too.
Will we be seeing any upgrades to the underlying Debian 8.9 OS?
Yes, Polyscope 6 will be running on a newer Debian. But we are hoping that with the new backend software, URCaps won’t need to be so dependant on the exact version
Will the new polyscope be able to handle running python code as script code?
Python contains a while world of options that we sometimes miss when working with lists and texts and would be a lovley addidtion to Polyscope.
Thank you for your valuable information.
I’d like to know how are backward compatibily for the urcaps.
So can you please check if the sample on my github sample works?
For example, Ethernet/IP Monitor and so on.
We are trying our best not to break urcaps, but as Kasper as mentioned, we are upgrading the debian, python, and java versions.
So at the least you will probably need to recompile your urcap and fix the issues that come up.
We are trying to get all these versions as up to date as possible by the time the beta starts.
Hi, thank you for your replying.
I will recompile and fix my urcaps after beta releasing.
Are you able to share the Debian version? We have some automated build stuff that is environment-dependent. If you know the version I can start preparing for any breaking changes. The team would definitely appreciate it.
Thank you for the update. I am excited to work with your new product.
All of the programs that we run on our UR10e require us to upload g-code programs into the controller to run very controlled and accurate toolpath movements. Currently I am unaware of any option on the teach pendant to edit, or even look at g-code toolpaths. Is there a possibility that this functionality will become available with the new software?
I would be happy to work with anyone who might be interested in developing such functionality.
Hello, I have been working on a relatively simple URCap the last few weeks. It is just a simple two zone vacuum gripper that will be controlled using the RS485 connection on the wrist of the robot. Would you suggest holding off on the development for now? If there will be potential backwards compatibility issues?
I apologize in advance for any stupid questions or answers, I am painfully new to this side of robotics!
I would recommend moving forward with your current implementation.
Having a working URCap on PolyScope 5 will be a great basis for migrating the implementation to PolyScope 6 too.
Be sure to sign up for the beta program linked in the original posting, as you will be notified as soon as the beta release will be available.
Check out the updated topic with more news about PolyScope 6 here:
URScript supports socket communication, which can be used to stream the data to Robot control box instead of RTDE registers. Ethernet socket communication via URScript - 15678