BrightSign offers an extensive array of developer tools. These are listed here in alphabetical order.
BrightSign Console / Shell
The BrightSign Shell, also referred to as the BrightSign Console, is the command line interface that enables interaction with the BrightSign OS through a serial cable or telnet/SSH, both of which have their own sections on this page.
From the BrightSign Shell, the script
command can be used to access the BrightScript Debug Console, and the node
command can be used to access Node related functions.
From the BrightScript Debug Console, typing the exit
command will access the BrightSign Shell.
Commands for the BrightSign Shell can be found here.
BrightScript Debug Console
The BrightScript Debugger is a tool that facilitates debugging of BrightScript code. It is available through the BrightSign Shell (see below). To turn the BrightScript Debugger on, type script debug on
at the console. More info can be found here.
Crash Dumps
If a player encounters a non-deliberate shutdown (aka a crash), “crash dumps” are generated upon reboot. These files contain useful information that BrightSign Support can analyze and use for troubleshooting. These files can be found in the brightsign-dumps folder located in the root folder of the player’s storage device.
Diagnostic Web Server
The Diagnostic Web Server (DWS) is a powerful tool that enables inspection of various player settings and diagnostic details. Both a Local Diagnostic Web Server (LDWS, accessible over the local network via the player’s IP address or by typing http://BrightSign-NNNNNNNNNN.local
into a browser where NNNNNNNNNN
is the serial number) and Remote Diagnostic Web Server (RDWS, accessible via either the Control Cloud or Content Cloud at bsn.cloud) are available. General info about the DWS can be found here and more specific info about the RDWS can be found here.
Media Analyzer
The DWS includes a useful tool that can analyze media files for playability. More info can be found here.
HTML
HTML is a common format for displaying presentations on BrightSign players. The HTML Best Practices document will likely be very useful to developers. Specific sub-sections from that document worth noting individually are listed below.
Web Inspector
Web pages can be debugged over the local network using the Web Inspector.
Chromium Version
The Chromium version that BrightSign players use is likely several versions behind that version that most users are using in their web browsers. Find the Chromium version for the specific firmware version of your player here.
During development and testing, it is useful to have the correct version of Chromium on your Mac or PC. More information about this can be found /wiki/spaces/IKB/pages/5893564 and here.
Logs / Diagnostics
Logs contain important diagnostic information about players. System logs (sometimes referred to as player logs) from the player are available and can be gathered via a syslog server, telnet or SSH, or an RS-232 serial cable. More info can be found here.
Refer to this article on obtaining player logs and this one for interpreting player logs. Logs can easily be accessed via the RDWS as described here.
Node
The node prompt is a command-line interface (CLI) that allows you to interact with Node.js. It is used to run JavaScript code and execute Node.js commands. Information about the Node prompt as well as the Node Inspector/Debugger can be found here.
Registry
The registry object allows you to read from and write to the player registry (the player’s persistent memory). More info about the registry can be found here.
Serial Ports
Brightsign players have serial ports for diagnostic purposes as well as to provide interactive capabilities. More info about serial ports can be found here.
Telnet and SSH
Telnet and SSH can be used to communicate with BrightSign players. More info can be found here.
VSCode Extension for BrightScript
The popular BrightScript Language Extension for VSCode facilitates writing BrightScript and is used by thousands of developers around the world. Note that Brightsign’s BrightScript is a fork of Roku’s BrightScript. The forks have diverged and while they are similar, they are technically not the same. The value add is mainly the BrightScript syntax highlighting.
Next, we provide a recommended developer setup to help maximize efficiency in developing for the BrightSign platform.