Niagara Round Gauge

  • Drag n' Drop
  • Binds to numeric point, numeric writable, or history
  • Renders in all major browsers
  • Clean pristine animation
  • Spectrum Color Binding
Add to Cart
n4 charting


Drag and drop the Round Gauge widget from the palette onto your px view. It automatically updates when the point or history value changes. Its completely configurable and easy to use.

Are you looking for a cost effective way to manage and visualize data for all your customers? Why not have a look at View Builder?


Before you start. Download the modules from our portal (see your order confirmation, which also explains licensing). Copy the modules file to your modules directory. Restart BOTH station and Workbench.

1. Copy the roundGauge-ux.jar file to your modules directory.
2. Open the module from your palette file.
3. Drag and drop the widget from the palette onto your px view.

Tridium charting library


bms totals chart properties

The gauge has a number of configurable properties that can be used to modify look, feel, and functionality. Change the properties as required.

Main Chart Binding
Set this to an absolute ord, e.g.
station:|slot:/Drivers/NiagaraNetwork/AHU5 or relativized ORD e.g.
The ord should point to a numeric point/writable that has a numeric interval extension.

Background Property:

The background (the area within the circular part of the widget) can be changed to a solid color, gradient, image, or null(transparent).

Canvas Background Property:

The canvas background (the area behind the widget) does not go transparent, but can be changed to a color of your choice.

Spectrum Colors:

The gauge allows you to set 4 spectrums. First set the min/max of the widget. For example, if you set the min to 0, and max to 100, you can set the spectrum values to something like:
Spectrum 0 Start = 0
Strectrum 0 End = 0
Spectrum 1 Start = 0
Strectrum 1 End = 40
Spectrum 2 Start = 40
Strectrum 2 End = 60
Spectrum 3 Start = 60
Strectrum 3 End = 100

Of course you can set all values to the same color to keep it one color as well.

OR instead of a numeric value, set the start/end to an ord value. e.g.


You can also mix/match with ords or numeric values.

History Binding:

You can bind the gauge to a history reference. Change the properties as required:

1. Set the value binding as normal.

The value binding must be set in order to gather history records for the point.

2. Set the history BQL property.


|bql:history:HistoryRollup.rollup(history:RollupInterval 'monthly')|bql:select max

|bql:history:HistoryRollup.rollup(history:RollupInterval 'monthly')|bql:select min

|bql:history:HistoryRollup.rollup(history:RollupInterval 'monthly')|bql:select avg

|bql:history:HistoryRollup.rollup(history:RollupInterval 'monthly')|bql:select sum

Using in your HTML Page

You can now use the widget in your custom html page as long as the html file is in a appropriate station directory. E.g.:

1. Create an html page and place in your station files directory.
2. Create a div element and give it an id so you can inject the widget into this area. E.g.: widget1.
3. Add the following scripts before the closing head tag or the closing body tag. E.g.:


        <script type="text/javascript">

            var require = {
                paths: {
                    "nmodule": "/module",
                    "baja": "/module/bajaScript/rc/plugin/baja",
                    "bajaScript": "/module/bajaScript/rc",
                    "bajaux": "/module/bajaux/rc",
                    "lex": "/module/js/rc/lex/lexplugin",
                    "css": "/module/js/com/tridium/js/ext/require/css",

                    "jquery": "/module/js/rc/jquery/jquery-2.1.1",  // For N4.4 or higher use /module/js/rc/jquery/jquery-3.2.0.min
                    "Promise": "/module/js/rc/bluebird/bluebird",

                    // these are runtime dependencies
                    "hbs": "/module/js/rc/require-handlebars-plugin/hbs", // For N4.4 or higher use /module/js/rc/handlebars/handlebars.min-v4.0.6
                    "i18nprecompile": "/module/js/rc/require-handlebars-plugin/hbs/i18nprecompile",
                    "json2": "/module/js/rc/require-handlebars-plugin/hbs/json2",
                    "underscore": "/module/js/rc/underscore/underscore",

                hbs: {
                    disableI18n: true
        <script type="text/javascript" src="/module/js/com/tridium/js/ext/require/require.min.js"></script>
            require(['/module/roundGauge/rc/'], function (app) {

                    backgroundColor: 'transparent',
                    canvasBackgroundColor: '#202020',
                    divId: '#widget1',
                    fontWeight: 'normal',
                    fontFamily: 'Helvetica, Arial, sans-serif',
                    historyBql: '',
                    historyRefreshInterval: 60000,
                    innerRadius: 2,
                    mainNeedleColor: '#fff',
                    min: 0,
                    max: 100,
                    ord: 'station:|slot:/Drivers/NiagaraNetwork/AHU5', // use absolute ord
                    precision: '2',
                    spectrum0Start: 0, // or point to a set point ord e.g. station:|slot:/Drivers/NiagaraNetwork/SetPointStart0
                    spectrum0End: 0, // or point to a set point ord e.g. station:|slot:/Drivers/NiagaraNetwork/SetPointEnd0
                    spectrum0Color: '#cccccc',
                    spectrum1Start: 0,
                    spectrum1End: 10,
                    spectrum1Color: '#e83c26',
                    spectrum2Start: 10,
                    spectrum2End: 90,
                    spectrum2Color: '#33a549',
                    spectrum3Start: 90,
                    spectrum3End: 100,
                    spectrum3Color: '#e83c26',
                    titleFontColor: '#fff',
                    titleFontSize: '22px',
                    titleFormat: '%displayName%',
                    titleYOffset: 80,
                    textXOffset: -1,
                    unFilledCircleColor: '#e0e0e0',
                    valueFontSize: '24px',
                    valueFontColor: '#fff',
                    valueFormat: '%out.value%',
                    valueTextYOffset: 50,
                    valueXOffset: -1,
        <!--html to go here-->
        <div id="widget1" style="width:300px;height:300px;"></div>
        <!--Rest of your html below...-->

You May Also Like

Sensor Status Bar

N4 View Builder™©

tridium bms system

Spectrum Gauge

back to more widgets...