Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Updated with information from DOCS-1259

Expand
titleVersion 9 and Older Versions

If, while a script is running, a runtime error occurs or a STOP statement is encountered, the BrightSign application will enter the BrightScript debug console. The debug console can be accessed via the BrightSign application console, which communicates over the primary serial port by default and can be accessed from a terminal program using a null-modem cable. The BrightSign application console can alternatively The BrightScript language, which is interpreted and not compiled, has two available CLIs:

  • The BrightSign shell which allows you to start scripts and some other device management tasks (see BrightSign Shell Commands)

  • The BrightScript debugger which is used to examine and manipulate a running BrightScript process

This page describes how to access these CLIs and the BrightScript debugger tool set.

Connecting to the BrightScript Interpreter

To access both of these interfaces, you need to associate a terminal session from your local machine with the input and output of the BrightScript interpreter process. In a standard operating environment, the only interaction possible with the BrightScript interpreter is monitoring it’s output, since it will not accept input including interrupts.

To interact with either CLI, you must first setscript debug on, which can be done in multiple ways. For example, in the DWS Registry tab, enterregistry write brightscript debug 1(which is equivalent to the BrightSign shell commandscript debug on). When a physical connection to the player is available, these interfaces can be accessed via the primary serial port by using a terminal program and a null-modem cable (see this page).

The BrightSign shell and debugger interfaces can also be routed over Telnet or SSH.

...

If, while a script is running, a runtime error occurs or a STOP statement is encountered, the BrightSign application will enter the BrightScript debuggerdebug console.

Access at Bootup

You can also access the debug console at bootup:

  1. Power off the device. 

  2. Power on the device and wait between 5 and 15 seconds.

  3. Press and hold the SVC button on the side of the player.

  4. If you are using Telnet, you will need to restart Telnet by running telnet {{your player IP address}} 23 on the command line.

  5. Wait until the BrightSign> prompt appears in the serial/Telnet/SSH terminal (which indicates that you are in the BrightSign Shell). You can now release the SVC button.

  6. Enter script at the prompt while in the BrightSign Shell. This will take you to the BrightScript debug console.

Access if the Player doesn’t have an Autorun.brs

The BrightSign OS does not register the SVC button event if there is no autorun.brs on the storage device. If this is the case, one of the following methods can be used to access the BrightSign prompt or BrightScript Debugger:

  • If the serial console has been enabled (either temporarily or persistently), a Starting BrightSign Application... message will appear after the player reboots (which can take up to 30 seconds). Press and hold the SVC button until the BrightSign prompt displays.

  • Put an autorun.brs that only contains end on the storage device. A single line of end is sufficient. The script will execute and when it ends as instructed you’ll be left at the BrightSign shell prompt.

  • If you have removable storage such as a microSD card, eject it. Reboot the player and press the SVC button. If you are accessing the player through Telnet, you will have to restart the Telnet connection after the player reboots using thetelnet {{your player IP address}} 23command.

BrightScript Console

Console Scope

The console scope is set to the function that was running when the BrightScript debugger is invoked, either by choice or automatically. While in the console, you can type in any BrightScript statement; it will then be compiled and executed in the current context. If the interpreter has exited the running script, you can instead use the BrightSign shell command set.

...