> For the complete documentation index, see [llms.txt](https://docs.tricloudnexus.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tricloudnexus.io/edge/nexus-modules/data-connector-modules/scenecontrollermodule/twin-config.md).

# Twin Config

The SceneControllerModule requires a basic configuration, that identifies the camera, lighting controller and image properties.

Properties in the twin are:

* **CameraApiUrl**: Full path to the REST API image/acquire endpoint. Can be on a different machine. Required.
* **ImageHeight**: Setpoint for image height. Image format must be supported by the camera type.
* **ImageWidth**: Setpoint for image width. Image format must be supported by the camera type.
* **ImageFormat**: Image file type. Supported formats are bmp, png, tiff, jpeg, tga, gif, pbm and webp. Defaults to bmp.
* **PixelFormat**: Image pixel format. Supported modes are Mono8, Mono10p, Mono12p, Mono10, Mono12, BayerRG8, Mono16, Rgb24 and Rbg48. Defaults to Mono8.
* **LightingControllerIp**: IP address for the lighting controller. If no lighting controller exists, set to empty.
* **LightingControllerPort**: TCP port for communicating with lighting controller. Default is 40001.
* **LightingControllerChannels**: Number of channels supported by the lighting controller. Possible values are 4 and 8. Defaults to 8.

Here is an example of a twin configuration:

```
"settings": {
    "cameraApiUrl": "http://192.168.1.79:34568/image/acquire",
    "imageHeight": "2048",
    "imageWidth": "2592",
    "imageFormat": "bmp",
    "pixelFormat": "Mono8",
    "lightingControllerIp": "192.168.1.124",
    "lightingControllerPort": 40001,
    "lightingControllerChannels": 4
}
```
