To demonstrate the capabilities of the XDIP API, we have created an application that allows you to control multiple XDIP receivers by creating Presets. A Preset is a list of receivers with the channels that you wish to switch to.
Disclaimer: This software is provided 'as is' without support or warranty of any kind. It has not been designed to control XDIP's in a commercial environment.
Download: XDIP Controller v1.0.0.0.zip
Instructions
Prerequisites
- The XDIP units requires firmware version v1.05 or above.
- By default, access to the API on the receiver is disabled. To enable the API:-
- Open the receivers OSD
- Click on the Advanced page
- Tick Enable Remote Control option in the Network Info tab.
- Click the Apply button.
- To change a Channel on a Receiver, you need to supply an Access password. By default, this is empty/blank. This can be changed by:-
- Open the receivers OSD
- On the General page, there is an Access Password button.
- Click the Access Password button and enter the password that you wish to use.
File Menu
- There are four options under the File menu.
- Load: This allows you to load a configuration. It is not necessary to load a configuration every time you launch the application. All the changes that you make are automatically maintained. This should be used if you want to restore to a different configuration.
- Save As: Save a copy of the current configuration being used in the application.
- Clear All: This clears all the configuration settings, including the Receivers, Presets and Schedule list items.
- Exit: Closes the application.
Receivers
In order to use the application, you must add a Receiver or more to control.
Adding XDIP Receivers
- There are two ways of adding XDIP Receivers to the application, either by manually entering the receiver's IP address, name, description or using the Auto Discovery function.
Auto Discovery
- The Auto Discovery function is activated by pressing the magnifying icon in the toolbar or by right mouse clicking in the Receivers list and choosing Auto Discovery.
- The XDIP Receivers are found on the network using SSDP (Simple Service Discovery Protocol), where a multicast packet is sent requesting for UPNP (Universal Plug and Play) devices who are on the same network subnet to respond. The application automatically filters out non-XDIP Receivers and displays those that it finds.
- Once a Receiver or more is automatically added, you will need to edit each one to add their Access Password.
Manual Setup
- To manually add an XDIP Receiver to the application, simply click on the green plus icon in the toolbar or by right mouse clicking in the Receivers list and choose Add Receiver.
- Enter the following credentials
- The IP Address of the XDIP Receiver.
- The Name you wish to Identify the Receiver by.
- A Description of the receiver, this can be left blank.
- The Access Password that has been set on the Receiver.
- Press OK to commit the settings.
- Note: The S/N, Mac Address and Uuid fields are not editable. They are automatically completed either when you use the Test button or if the Receiver was automatically discovered.
Editing a Receiver
- To edit an XDIP Receiver, select the receiver in the list that you wish to edit, then either double click it, click on the yellow pencil icon in the toolbar or by right mouse clicking in the Receivers list and choose Edit Receiver.
- This will raise a window allowing you to edit the Receivers settings.
- Press OK to commit the settings.
Testing a Receiver
- To ensure that the application is able to control an XDIP Receiver, it is recommended that you Test the connection.
- When Adding or Editing a Receiver, if a valid IP address is entered, the Test button at the bottom will be enabled.
- Clicking the Test button will open another Window where two tests will be carried out.
- The first test is to retrieve the UPNP XML from the XDIP Receiver that contains information such as the units Serial number (S/N), Mac Address and Uuid (Universally unique identifier).
- If the test is successful, using the Access Password that you have entered, it will the retrieve a token from the XDIP Receiver which is used to request channel changes.
- The results of the test will be shown. An Error message with a description will be shown should either of the tests fail.
- Press Close once the test has been completed.
- If either the Receivers Name or Description that you have manually are different to that stored on the Receiver itself, you will be asked if you would like to accept the Receivers details instead. If you agree, both the Name and Description will be replaced.
Channel List
- To view and change the channel on a Receiver, select the receiver in the list that you wish to edit, then click on the list icon in the toolbar or by right mouse clicking on the Receiver and choose Channel List.
- A new window will open and the application will fetch a list of the Channels that the Receiver has configured. The active channel, if established, will be highlighted in green.
- At the top of the window, there are two toolbar options, Refresh and Channel Channel. Refresh will fetch and updated channel list from the Receiver. When a Channel is selected, you can click on the Channel Channel icon to change the channel. Double-clicking on a channel name will also invoke a channel change.
Deleting a Receiver from the List
- To delete an XDIP Receiver, select the receiver in the list that you wish to delete, then either click on the red cross icon in the toolbar or right mouse click in the Receivers list and choose Remove Receiver.
- You will be prompted to confirm the deletion if the Receiver has been used in a Preset.
Presets
The presets allow you to group a number of Receivers together and select a Channel on each so that they can be executed with a single button click.
Adding a Preset
- Click on the Preset tab
- To add a Preset, simply click on the green plus icon in the toolbar or by right mouse clicking in the Preset list and choose Add Preset
- The Add Preset window will open, enter the following information:-
- The Name you wish to Identify the Preset by.
- A Description of the receiver, this can be left blank.
- The Toolbar checkbox is to select whether you wish to include the Preset in the floating toolbar.
- The Receiver List section allows you to manage which Receivers that you want to include in the Preset and to which channel that they switch to.
- The < Select Receiver > dropdown contains a list of Receivers that have been added to the application.
- The < Ch > dropdown list channel numbers, 0 to 16.
- Choose the Receiver from the dropdown list and then the Channel number.
- To add it to the list, simply click on the green plus button.
- The red cross allows you to delete entries in the Receivers list and the blue arrow buttons allow you to change the order that the receivers channels are changed.
- Press OK to commit the settings.
Editing a Preset
- To edit a Preset, select the preset in the list that you wish to edit, then either double click it, click on the yellow pencil icon in the toolbar or by right mouse clicking in the preset list and choose Edit Preset.
- This will raise a window allowing you to edit the Preset.
- Press OK to commit the settings.
Deleting a Preset from the List
- To delete a Preset, select the preset in the list that you wish to delete, then either click on the red cross icon in the toolbar or right mouse click in the Preset list and choose Remove Preset.
- You will be prompted to confirm the deletion if the Preset has been used in a Schedule.
Testing a Preset
- To test the Preset that you have created, there are two ways of achieving this. The first is to run a test from within the Edit Preset window and the second is to Run the Preset.
- When Adding or Editing a Preset, if Receivers have been added to the Receivers List, the Test button at the bottom will be enabled.
- Clicking the Test button will open another Window where the Preset channel changes will be carried out.
- The results of the test will be shown. An Error message with a description will be shown should either of the tests fail.
- Press Close once the test has been completed.
Running a Preset
- To manually run a configured Preset, select the preset in the list that you wish to run, then click on the green play icon in the toolbar or by right mouse clicking in the preset list and choose Run Preset.
- You can see the success or failure running the Preset by looking at the Logs tab.
Move Preset
- The order that the Preset is shown can be changed using the blue up and down arrows. The order is used when displaying the Presets in the Toolbar function.
- You can either move a single Preset or select multiple Presets.
- Highlight the Preset(s) that you wish to move.
- Click on either the blue Up or Down arrows to change the position of the Preset in the list.
Scheduler
Important
The application has a built-in scheduler to demonstrate what you could achieve on your own controller implementation. This application is not designed or supported for a commercial installation. There is no guarantee that events configured in the scheduler will be reliably triggered.
Adding a Schedule Task
- Click on the Scheduler tab
- To add a Task, simply click on the green plus icon in the toolbar or by right mouse clicking in the Schedule list and choose Add Task
- The Add Task Window will open to configure the following:
- Enable or Disable the task.
- Select the Type of task. There are two options, Timed Event and Loop Presets.
- Timed Event: At a specified time and date, automatically run each of the presets that are selected.
- Loop Presets: At a specified time and interval, loop through each of the selected presets. This is useful if you wish the XDIP(s) to cycle through a group of channels. When it reaches the end of the preset list, it will start from the beginning again.
- The Description of the task.
- The Start Date specifies when the task should be executed. If the time and date are set in the past and the task is enabled, the schedule will run.
- The End Date is optional, if ticked, the scheduled task will stop at the specified time and date.
- Depending on whether you chose Timed Event or Loop Presets the next option will change.
- If you chose Timed Event, you can elect to Repeat the task after a period of time.
- If you chose Loop Presets, you must specify the internal between Preset changes, e.g how long it should wait before running the next preset.
- The Preset List section allows you to manage with Presets you wish to include in the Scheduled task.
- The < Select Preset > dropdown contains a list of Presets that you have configured/
- To add the Preset to the list. simply clock on the green plus button.
- The red cross allows you to delete entries in the Presets list and the blue arrow buttons allow you to change the order that the Presets are executed.
- When complete, press OK to save the Scheduled Task. If the button is not enabled, this means that not all of the settings required to complete task have been make.
Editing a Schedule Task
- To edit a Task, select the task in the list that you wish to edit, then either double click it, click on the yellow pencil icon in the toolbar or by right mouse clicking in the task list and choose Edit Task.
- This will raise a window allowing you to edit the Scheduled Task.
- Press OK to commit the settings.
Deleting a Schedule Task
- To delete a Task, select the Task in the list that you wish to delete, then either click on the red cross icon in the toolbar or right mouse click in the Task list and choose Remove Task.
- You will be prompted to confirm the deletion of the Scheduled Task.
Enabling or Disabling a Schedule Task
- To enable or disable a Task, select the Task in the list that you wish to enable/disable, then either click on the red/green circle icon in the toolbar or right mouse click in the Task list and choose Enable or Disable Task. The colour of the icon and the text will change depending on the current state of the selected Task.
- You will also see the Next Trigger column change for selected Task depending on which option you have chosen. You can also choose to Enable or Disable the Scheduled Task by editing it.
Log
- The application logs activity when running presets, either manually or scheduled. XDIP Connection and Presets Test are not included in this log. To view the Log, simply click on the Log tab.
- Information Logged:
- Date and Time: The Date and Time that the activity occurred.
- Preset: The Preset that has been executed
- Receiver: The Receiver whose channel is either being requested to changed, has successfully changed or has failed.
- Id: Some activities are asynchronously (simultaneously) executed. To make following the log easier, each activity is assigned a unique Id to allow you to see when it started and ended.
- Type: This can be either Auto or Manual. An Auto log entry means that it was executed using the Scheduler. A Manual log entry means that the Preset has been manually executed.
- Message: The action or the result of an action is reported.
- The log shows up to 10,000 entries. if this number is exceeded, it will automatically start removing the oldest log entries.
Saving the Log
- A copy of the log can be downloaded in a comma-delimited CSV file format.
- To Save the Log, click on the save icon in the toolbar or right mouse click in the logs list and choose Save Log.
- A Save file dialog will appear allowing to choose the name and location of where you wish to store the log file.
Clearing the Log
- To Clear the Log, click on the clear/brush icon in the toolbar or right mouse click in the logs list and choose Clear Log.
- Click Yes on the Clear Log confirmation dialog to continue.
Toolbar
- The toolbar is a small floating window that contains a list of Presets. It allows you to execute Presets without having the main Controller window open.
- To launch the Toolbar, click on the Toolbar icon.
- The main window will disappear and it will replaced by a smaller window. If the toolbars "Show Window" option is disabled (default), the border of the Toolbar will flash yellow five times to indicate its position.
- In the example toolbar above, there are four buttons, however, the number will vary depending on how many Presets are available,
- The first two buttons in this example, represent two Presets that have been created. Only Presets that have their toolbar Show option ticked will appear. See Editing a Preset.
- The order of the Preset buttons is defined by the order that they appear in the Presets tab on the main interface.
- The other two buttons are:-
- Settings: This is represented as a cog icon. This will return you back to the main interface.
- Exit: The red cross icon. This will close the XDIP controller application.
- The toolbar's position on the screen is recorded when you either return back to the main interface or close the application. When the toolbar is accessed again, the toolbar will appear in its last known position.
- If you right mouse click on the Toolbar there are a number of further options.
- The Options are:
- Always on Top: If enabled, the Toolbar should appear on top of other windows that may be open.
- Show Windows: If enabled, it will show a Window board around the toolbar. Default is disabled.
- Orientation: This allows you to show the buttons either horizontally or vertically.
- Buttons Size: As the names of a Preset may vary you can set the Preset button sizes as either Auto or Fixed. If set to Fixed the size of the button may limit the Presets name that is displayed. If set to Auto the length of the button will increase to show the whole Preset name.
- Prompt on Exit: If enabled, you will be asked before closing the Application.
- Settings: Return to the main interface.
- Exit: Close the Application