Robot Web Services on multi VC

Hi all,

I started working with Robot Web Services a few days ago and, unfortunately, it seems that no one is really experienced in this kind of application.
Moreover, the documentation provided is very hard to understand cause there's no "getting started" section and it's really a pity.

I succeded on getting and modifying data beetwen a virtual controller and a client application (a browser) running on the same host. So far so good.
Troubles come when I try to do something more complicated (and realistic).
Here's the problems found:

  • I create a station with more than one system (for example two robots with 2 separated virtual controllers). When I try getting data form the two controllers i can reach only the first one. Looks like the second controller doesn't exist. Here's what the manual says about it:
Virtual Controller
VC (and RC) default socket port is 80, but can be changed to any number. To change the port number edit the appweb.conf file. see below. When running multiple VC on the same PC must at least one of the VC port numbers be changed.

      I opened the "appweb.conf" file but there are no references to the virtual controllers in my station. Any idea on how this file works and how to reach the second virtual controller?

  • When I work on the same host with VC and client application everything works fine but, when I try to reach the VC from a client running on another host (in the same network) i get the "RAPI Unidentified Error". I' wasn't able to understand why this happens considering that the authentication procedure works fine, exactly in the same way as when I work with VC and client on the same host.

Releasing Robot web services was a really good idea from ABB but the lack of good documentation is representing a big limitation in my opinion.
I hope they will soon release good manuals like they did for RAPID.

Anyone has experienced the same problems yet? Can anyone help me?

Thanks in advance
Best regards


  • I have the same issue. Are there any news how to change the port for the webserver for a specific VC?
    Best regards
  • jf___
    edited February 2018
    Same here, but running into this issue also when running a single VC
  • Same for me, also in a single VC.

    I've used the command CURL suggested from

  • Johannes Weiman
    edited November 2018
    Take a look under "Discovery" at the same page.

    As for RWS itself, the current version leaves a lot to be desired unfortunately. There are several issues that will be addressed in the next major RobotWare release.
    Johannes Weiman
    Software Engineer
    RobotStudio Team, ABB Robotics
  • Ok, thanks.

    So i need to use SDK.

    However it's strange, because by any web browser I can receive the right response (only for GET request of course).
    Is It possible that I need of a different CURL verion? which kind of digest authentication uses the WS?

  • Many time has passed but I'd like to try to give an answer for both the questions i made at the time.


    If you want to access multiple VC running on the same host (same Robot Studio Station on the same PC) you must specify different listening ports for each controller, as mentionend in the RWS manual. I don't remember exactly how to do it since last time I did it was way back in time. I used a sort of work around like this: since the appweb.conf file is located in the robotware folder (that is unique for all the controllers you create) and not in the system folder of the controller and there was no way to link different VC in the same file (or at least I didn't succeed on this), I remembr using a different RobotWare for each controller in the same station. In this way, modifying each appweb.conf file in the different robotware folders, i was able to "dedicate" an indipendent listening port for every controller running on the same station on localhost.

    Probably not the best way, but at least working.
    Anyway, I leave the link to the web server official page with the manuals to configure the file appweb.conf.


    There's no need to asnwer, i just paste the explanation and put the link from Maxim Riabichev post who perfectly explained the solution.
    I assure you it works since I tried myself.

    On the PC which is hosting the remote VC:
    1) If it doesn't already exist, create a file called "vcconf.xml" in "C:\Users\{user}\AppData\Roaming\ABB Industrial IT\Robotics IT\RobVC\"
    2) Put the following content in it:

    <RemoteVCConfiguration PublicationEnabled="true" />
    <host ip=""/>

    3) Change the ip address (bold above) to the ip of the local PC from which you will be accessing the remote VC resources.