Start a new topic

Cannot control 2 cameras form the Dockable OBS Controllers

I have 2 PTZ optics 30x NDI cameras.

I can control one of them from the Dockable controllers in OBS, but when I change the IP for the second camera in the settings, it changes for both docked controllers.

I am using /obs-windows/4. LARGE CONTROLLER.html for CAM1

and /obs-windows/CAMERA 2/4. LARGE CONTROLLER.html for CAM2

Any help will be appreciated, thanks!

Hi Everyone,

Thank you all for your excellent feedback.

The following files will be going live for download from the PTZOptics site today that resolve the issues discussed above with the Open Source Control solution.

Direct Download:

Eventual Download Link for Site: 

(Note, files not yet updated on PTZOptics site as of 05.17.2021)

In addition for anyone interested the PTZOptics Control App will be released today as v1.41 that includes a bounty of bug fixes as well.

If you continue to have any issues please do not hesitate to return to the forums.

I have managed to do a workround with the new beta version. I simply edit each of the index.js file in each camera folder and change the default IP addresses and the cameras are working well. There are other default settings but I havnt tried to change those just yet.

From my point of view there is still the same problem as in the old version: The options of the cameras will be saved in the same instance of the local storage (in this case OBS). So last input will be overwrite an older entry.

This is my approach:

1. Open the file in "index.js" in /CAMERA 1/js/ in a text editor.

2. Go to line 23 and change 'configStorage' in 'configStorage1' (for example).

3.  Now go to line 32 and change 'configStorage' in 'configStorage1' ( must be the same name as set  in line 23).
That is what worked for me.
4. Save the JS file.

Do this in a similar way  with all other "CAMERA X" folders you need and  increment the number in 'configStorage' (e. g. CAMERA 2 => 'configStorage2'; CAMERA 3 => 'configStorage3') .

Hi. Thanks for the new update. I am very glad you are looking into this problem as I need it right away for a multi camera system. I am still having the same issues. Controllers overwriting each others IP addresses. I am sometimes able to get the controllers to not overwrite each controller and get it working but then when I clos OBS the IP Addresses revert to default (
I have Teamviewer on the system if you want to take a look.
Also which file does the JAVA write the data to as I would like to monitor its saving.


Update: I did get it to work. However, every time I load OBS. I have to change one of the camera IPs, close the dock, and reopen. Then each dock is independent. Not elegant, but its effective, which is good enough for me.

So here is the work flow: Open OBS with all docks needed.

Choose the dock that needs to be corrected (all IPs will be the same), edit IP to correct address.

Click Done and close the dock.
Reopen the dock and it should be controlling the correct camera and the original dock should be untouched.

I just tried the newest beta. I was unable to get it to work properly. Even when loaded in a browser, changing 1 IP would change IP for all other cameras as well. 

Hi Everyone,

Please find a beta release for an updated version of the Dockable Panels solution below...

OBS Dockable Panels - Beta Release 05.11.2021

I would recommend reading the included, currently unedited, User Guide available in a PDF format before starting.

If you have any other questions after using the new solution please do not hesitate to return to the forums for additional help.

We hope this message finds you all in the midst of a wonderful day.

Sorry, nothing at the moment, but this on our radar and should be fixed in the future. 

Wow, Am I struggling with this one... I have no idea how to do what you have suggested Stephan.
I have raised a ticket...

Is there any timeline of the new patch to fix the duplicating IP bug? I'd love to be able to simplify things for my operators. 

In addition to the IP addresses, the saving of all other settings are also a problem. The reason is that the settings of each camera are saved in the same variable  (localStorage => "configStorage").

This could be a way to solve the problem:
First define a JS variable in the header of each HTML-Remote-Control-File. For example in the HTML of cam 1 define "var cam_no = 1;", for cam 2 define "var cam_no = 2;" etc.

Next step open the index.js in a text editor. Go to line 23 and change it to


var result = localStorage.getItem('configStorage' + cam_no.toString());

Do nearly the same in line 32:
localStorage.setItem('configStorage' + cam_no.toString(), JSON.stringify(config));

Tha's it.

@ Joel and William - 

was in the same boat as you until I fixed it myself - kudos to @William Brillinger for the clues.  

Our church purchased two 30X NDI PTZ cameras for our sanctuary because PTZOptics appeared to have a robust support structure in place for OBS.  Getting it all to work through OBS was critical for us, as I needed a system that a user-level volunteer could understand and be taught to operate. 

This should an easy fix for the pros, and I share your dissatisfaction since this is critical to using more than one camera in OBS.  However...

The fix is relatively easy for an end user if you know or can get mildly comfortable with editing html and java files.  The problem is that each controller page points to/uses same java file, which in turn references the same data object where the settigns are stored.  The fix is to make a copy of the java file for each controller you have (renaming the copies of course), point each controller's html file to the new one, and then in each java file, rename the data object that holds the settings to a unique name for that controller.

I'll have the church's PC home over the weekend and can post more specifics here if you need them.  If I have time, I may just also fix the entire distribution and share it; I only did it for controllers 1 and 2 since that's all our setup needed.

I am also struggling with the same issue.  I've installed different docks for each of our cameras (using the the correct folders) but still getting the ip address changing every time I load OBS.  Considering we are a house of worship and have a volunteer A/V crew, I need this to work.  I don't have time to reassign ip addesses for every service!  I chose PTZoptics cameras because they advertised their dockable controls and this was the best solution for us, however, if the docks don't work, it reflects poorly on their product...

Where are we with a solution to this issue?

For the second camera you need to make a second duplicate html file and bring in a 2nd dock.

Struggling with the same problem... know its staring me in the face but cant seem to see it!

Login or Signup to post a comment