Device Monitoring

Broadsign Player’s device monitoring is accomplished using a device’s external control capabilities through its serial port (RS-232). Not all displays have the same set of control features, but many screens can automatically be put in stand-by mode for off hours and turned on during operating hours.

Reporting Display Errors

When the player detects that a display is not in the desired state, it will communicate with the Broadsign Server and report the problem. The problem can be viewed through the incident report of the Broadsign Administrator. These reports will also be repeated via email to the domain contacts, display unit contacts and the player contacts for the system in question.


To configure a system for device control and monitoring, some display specifications are required and can be gathered from the manufacturer’s manual or web site. The information needed is:

    • The pin configuration of the serial connection. The important pins are the Receive Data Pin (RXD), the Transmit Data Pin (TXD) and the Ground (GND). Usually, the TXD pin is pin 3, RXD is pin 2 and GND is pin 5. If this is the case, a null modem cable is needed for connecting the PC to the screen.
    • The command codes for the actions that can be performed on the screen.
Configuring your Player for Device Monitoring

When installing the player, it is configured by default to allow remote commands to be scheduled from the Administrator. These commands are configured using the Remote Configuration Profile Resource. For more information, see Configuration Profiles – Player.

Scheduling Actions through the Administrator

Device monitoring actions are remotely scheduled to each player through the Administrator.

Unfortunately, most consumer-grade displays don’t have very robust RS-232 control chips and, as such, frequently fail to execute a command properly. Therefore, the Broadsign Suite incorporates a very flexible error handling system in order to reduce the amount of incidents and false positives being generated by your players in the field.

When a Broadsign Player fails to perform a device control operation successfully, there are 5 mechanisms that can be used to resolve the issue:

    • Decrement screen count: By enabling this option in the Error Handling tab of the Device Control properties dialog, the Broadsign Player will decrement the screen count associated to the playback statistics it reports. Seeing as the screen is in an indeterminate state, the Player will continue to play content, however the statistics it reports for that screen will not be counted.
    • Stop Playing: By enabling this option in the Error Handling tab of the Device Control properties dialog, the Broadsign Player will stop playing if an error is detected. No playback statistics will be generated and the screen will remain black until the Device Control operation completes successfully. Once the Device Control operation completes successfully, playback will resume automatically.
    • Retries: Here you can specify how many times to repeat the Device Control operation before considering it as failed. On each attempt, the error handler will be executed, bytes will be drained from the command buffer if so configured and the quiet time is observed. Only once all the retries have been exhausted and the Device Control operation has not completed successfully will an incident be recorded.
    • Drain Bytes: Some displays will periodically fill the RS-232 command buffer with unwanted garbage bytes that need to be cleaned out. By specifying a certain amount of bytes to drain, the Broadsign Player will read up to that many bytes from the screen and discard the result, creating a clean command buffer to retry the operation.
    • Error Handlers: When a Device Control operation fails, you can configure another Device Control operation to execute as a corrective measure. A typical example of this would be to execute a “power on” operation after an “assert power” operation failed.

Let’s go through the steps required to schedule several device monitoring actions.

We have a network of players and screens in a grocery store that has the following opening hours:

    • Monday – Wednesday: 8:00 AM – 5:00 PM
    • Thursday – Friday: 8:00 AM – 9:00 PM
    • Saturday: 9:00 AM – 4:00 PM
    • Sunday: Closed

We would like all screens to be on strictly during opening hours. Also, while the store is open, we would like to validate that the screen is on every 10 minutes. If the screen is off during the opening hours, we would like to turn it on. All the screens are the same model and will be controlled by the Player on communication port 1. All Players are associated to the same Display Unit.


The way we schedule device control actions to a player is by editing the associated Display Unit’s properties. From the Device Control tab of the Controls tab group, add a new Time Span. A Time Span describes the actions that will be executed for specific time period. A Time Span is added by pressing the Add button from this tab.

The Device Control tab

Next, enter a descriptive name for the Time Span and select Next. In our case, we will have 3 different time spans; one for Monday to Wednesday, another for Thursday and Friday and lastly one for Saturday. Let us name the first one “Monday – Wednesday Actions”.

The Welcome page of the Add Time Span Wizard

From the date range selector, select a date range that the Time Span will cover. Enable the checkbox labeled “This resource is always valid” since the opening hours of the store have no set end date.

The Date Range page of the Add Time Span Wizard

In the next step we are asked which days of the week the Time Span will cover. For our first Time Span, it should only cover Monday to Wednesday. Therefore, clear the checkbox stating the time span is valid everyday, and select Monday, Tuesday and Wednesday. After selecting the days, we can create the Time Span by clicking Finish.

The Day of Week Mask page of the Add Time Span Wizard

At this point we will have one Time Span specified within the Device Control tab of the display unit. We still need to create the other Time Spans required; Thursday – Friday, and Saturday. Follow the same procedure to create these Time Spans. The only difference is that Time Spans will cover different days of the week as their name specifies. After having created the two other Time Spans, you will now see all three Time Spans within the Device Control tab.

A list of sample time spans

We now have our Time Spans created, but we still need to associate Operations to them. Operations will tell the system which action to execute and at which time. They can also inform the system what actions to take in the case an error occurs.

There are two types of Operations, Daily and Repeating. Daily Operations are executed once during the day at the time specified. Repeating Operations will execute at every interval specified. In our example, for Monday to Wednesday, we will need two Daily Operations (turn on at 8:00 AM and turn off at 5:00PM) and one repeating operation (validate that the screen is on every 10 minutes). We add Operations to a Time Span from the Operations tab of the Time Span Properties. Select the Monday to Wednesday Time Span from the list of Time Spans and press Edit. Visit the Operations tab of the Time Span property dialog.

The Operations tab of Time Span Properties

We are going to start by adding the first Daily Operation to turn on the screen at 8:00 am. To add a Daily Operation, press the “Add” button that is found within the Daily Operations grouping of the Time Span property dialog. The first step of the “Add Device Control Operation Wizard” will ask you to select the type of Operation to execute. From the list of selection, select “Set Power” and press “Next”.

The Device Control Operation Type page of the Add Device Control Operation Wizard

In the next step, you are asked to select the communication port that will be used. In our scenario, Communication Port 1 was specified in models.xml. Therefore select Communication Port 1 from the choice of communication ports and click Next.

Select a communication port

The following step, asks for the execution time of the Operation. In our example, all screens should go on at 8:00 AM, therefore enter 8:00 AM and click Next.

Set the time of day for your device control

In the final step, we specify the value that will be set during the execution of the Operation. In our case we will be setting the power to on. Therefore select “On” and click Finish.

Set the value for your device control

We have now created one Daily Operation. We still need to enter the other Daily Operation to turn the screen off at 5:00 PM. Simply repeat the steps above to add a new Daily Operation for turning the screen off. The only differences are that you’ll need to set the time to 5:00 PM when choosing Time of Day, and in the last step of the “Add Device Control Operation Wizard” you will need to select Off instead of On.

We have now completed entering the Daily Operations. We still need to enter a Repeating Operation. The Repeating Operation will validate that the screen is on every 10 minutes during the site’s opening hours. To add a Repeating Operation, from the Operations tab of the Time Span property dialog, click the “Add” button found within the Repeating Operations section. The first step of the “Add Device Control Operation Wizard” will be to select a type of Operation. In our example, the type will be assert power. Select Assert Power and click “Next”.

The next step of the wizard will ask you for the communication port. As previously performed, select Communication Port 1 and click “Next”.

We are now asked to enter the time interval during which the operation will execute as well the frequency at which it will execute. In our example the opening hours for Monday to Wednesday are from 8:00 AM until 5:00 PM. Therefore, clear the option stating that the resource runs all day and enter the required hours. Also, modify the frequency to 10 minutes instead of 5 minutes. Once the changes have been performed, click “Next”.

Set the time range

As previously seen, the following step is to specify the value for the operation executed. In our example, we would like to confirm that the screen is turned on during the hours specified. Therefore, select “On” and click “Finish”.

We have now completed entering the Operations required for the Monday to Wednesday Time Span. From the Operations tab of the Time Span properties, you will now see two Daily Operations entered and one Repeating Operation entered.

Sample daily and frequent operations

However, one of the requirements in our example was to turn on any screen detected as being off during opening hours. This is done by adding an Error Handling property to the Repeating Operation that validates if the screen is on. Please note that Error Handling can also be specified for Daily Operations.

Error Handling is specified for an Operation within the Device Control Operation Properties. To retrieve the property dialog, select the Repeating Operation and click “Edit”. Once the Operations property dialog appears, select the Error Handling tab.

Error handling

There are three actions that can take place when an error is detected:

  1. Stop playback. By selecting the property of stop playback, the Broadsign Player will pause when an error is encountered by the operation. The error will create an incident that can be viewed from the Incident Report and when the incident is resolved, the Player will resume playback.
  2. Drain bytes from device. There are certain devices that send extra data on errors that will need to be drained after an error occurs. Selecting this property and entering a number of bytes, will drain the unwanted bytes.
  3. Follow up Operation. If the error occurs, a follow up operation can be specified.

Please refer to the “Error Handling” section of the Broadsign Adminisrator User Manual for greater details on error handlers.

In our case we would like the screen to turn on in case an error occurs while executing the assert power Operation. To add a follow up Operation, click Add from the Error Handling tab of the Operation properties. The wizard will then take you through the process of adding the follow up Operation. The steps involved are the same steps performed when creating a Daily Operation without specifying the time of the execution. That is:

    • In the first step select the type of Operation. In this example it would be “Set Power”.
    • The following step requires that you select the communication port. Select “Communication Port 1” and click “Next”.
    • Finally, select the value for the Operation specified. For this example, it would be “On”.

If the screen is detected as being off and stop playback is specified as an error handler, the manner in which playback will resume when the screen is turned on is dependent on the type of media currently being played. Playback of a still image will restart from the beginning. Therefore, if you have an image scheduled to be shown for 15 seconds, the image will be played for a full 15 seconds once the screen is turned on. Flash and Video files, however, will be skipped and the next scheduled ad copy will begin playing as soon as the screen is turned on.

We have now completed setting up all device controls required for the Monday to Wednesday Time Span.

The final step is to specify the same type of actions for the Thursday-Friday and Saturday Time Spans. Once this is done, the desired device controls have been completely set. All of our screens located in our grocery store will now be turned on during the opening hours of the site turned off during the closing hours of the site. If one of the screens is turned off during the opening hours of the store, the system is configured to turn it back on.

To validate that device control is functioning properly, the Broadsign Suite has reporting capabilities implemented where email notifications will be sent in case of an incident. Incident reports are also available to view all the open incidents or even a list of the history of resolved incidents.

For more information, see the Incident Report.