On the developer side, communicating the used Interfaces, ports and registers to the user and integrator through the manual or the URCaps itself helps getting an easier insight on potential collisions, which cause problem with other URCaps installed on the robot.
On the Port side, referring to our recommended usage of network interfaces is one way to go. Here not using the default Daemon port 40404 from the example is also an easy step.
The available GP Register cannot only be accessed via the RTDE interface, but are also shared with the PROFINET and Ethernet/IP interface. Here a certain range of registered is especially reserved for URCaps. This does not eliminate a collision with existing solution but makes it more unlikely.
Keeping the used interfaces and communication frequency as low as possible reduces the load an the system and allows more applications running simulations on the robot.
Sticking to the Examples provided by the SDK and forum are generally the way to go and reduces the risk of incompatibility, if followed.
With the open system and great number of different available URCaps we have right now, it is not possible to guarantee all the URCaps are compatible with each other. But Following the steps above would reduce the risk and is speeds up the potential the debugging process.