Skip to main content

Mango v5 Highlights

With the release of version 5 comes many exciting changes to the Mango platform. For a full list of the commercial features please visit radixiot.com/mango5. On a more technical level, the following offers a detailed view of the features, both large and small.

Pi-Portfolio Manager (EMS Module)

The new Pi-Portfolio Manager (also referred to as the EMS module) is a significant leap forward to help System Integrators bring online many locations and create customized dashboards without any coding. All the setup is done via the configuration UI pages.

This feature helps users to standardize the data hierarchy to simplify the way the data is filtered and organized. The data will be classified by Site, Device Type, and Device IDs which are the main tags that need to be configured in the data points to allow this module to show accurate data.

The Portfolio Manager UI pages are intended to organize the data in three levels. The first level is the Global Overview, which is intended to show high-level information about an entire portfolio of sites that you might monitor in a system like Mango 5. The next level is the Site Overview which is used to show information filtered by site or location, and the third level is the Device Details, which will show data related to a specific device depending on the device type.

Configuring a Mango 5 instance to use EMS can be divided into two main tasks: configuring data points and configuring the UI. Both activities can be done in parallel, but both need to be planned to work together.

PostgreSQL Support

PostgreSQL version 14.x and 15.x are now supported by Mango. You can enable it via your mango.properties configuration file (db.type=postgres).

See Database Conversions for instructions on migrating your MySQL or H2 database to Postgres. In particular, please note that you should upgrade to Mango 5.0 first, then convert your database to Postgres.

Additionally the methodology of how data is stored has been completely rethought, allowing for 100x faster processing of queries in traditional BMS and SCADA solutions while making long-term storage significantly smaller.

Workflow-based Configuration (Pi-Flow)

Mango 5.0 features a new look and feel with a redesigned menu, a new color scheme, and updated fonts. The new menu is compact, leaving more space for your pages. Menu items contain submenus that appear when clicking the menu items.

The Administration menu has been broken up into separate categories to make finding the various screens and functions more intuitive. The new categories are as follows:

  • Administration -- Admin Home, System Settings, Cloud Connect, Modules
  • Data Integration -- Data Sources, Bulk Data Point Edit, Global Scripts, Publishers, Configuration Import / Export, Client List
  • Access Management -- Users, System Permissions, Password Settings
  • Analytics -- Watch List Builder, Watch Lists, Data Point Details, Excel Reports
  • Platform Management -- Edit Menu, Dashboard Designer, Edit Pages, JSON Store, UI Settings, File Stores
  • Event Management -- Event Handlers, Mailing Lists, Maintenance Events, Advanced Scheduler

In addition, the Help documentation has been moved under a new heading:

  • Help -- Online Help Docs, Context Help, API Docs, Mango Examples, Help Forum

Finally, the Account Options links have been moved from their old position beneath the logo to a user icon on the top menu bar. Options are available upon clicking the user icon.

HTTPS Enabled by Default

Mango 5.0 now ships with HTTPS enabled by default (ssl.on=true) on TCP port 8443. HTTP is still available on TCP port 8080 but will redirect users to your HTTPS URL.

If no TLS/SSL certificate is configured, Mango will automatically generate a key pair and certificate. This automatically generated certificate will not be recognized by your browser as being a valid certificate, so you should configure ssl.keystore.location to use a certificate signed by a recognized CA (Certificate Authority), for example LetsEncrypt or DigiCert.

The very first time you run Mango you may see an error screen in your browser. Pressing reload will allow you to continue. If you are using the automatically generated certificate from Mango you will have to bypass your browser's security warning to continue to Mango.

New Versioning System

Mango 5 introduced a new unified versioning approach. Going forward, everything is released in blocks. For example, version 5.0.0 was the initial release. When any change is made to any module, the entire platform (core and all modules) is released together as the next version number, such as 5.0.1. This ensures that all components in a given installation are always at the same version, simplifying compatibility and support.

Mango PKI Services

Mango now has built-in support for generating SSL/TLS certificates. These certificates can be used for gRPC servers and clients, as well as the Jetty web server.

Please see the Mango built-in help for more details.

note

These certificates are not trusted by your browser, operating system, or Java by default. See the section above about HTTPS for details on configuring trusted certificates.

Step CA Integration

Mango 5.0 has built-in support for integrating with Step CA. Step CA is a Certificate Authority and PKI (Public Key Infrastructure) tool used for managing SSL/TLS certificates within your organization.

See the Mango built-in help and the certificate management documentation for more details on configuring gRPC and HTTPS using Step CA.

There is a new gRPC publisher and data source for Mango which are intended to replace the Persistent TCP (PTCP) publisher and data source. You can reconfigure your existing PTCP publisher and data source with minimal changes.

See the Mango built-in help pages for more details on configuring the gRPC publisher and data source.

Features and Improvements

  • Open gRPC protocol with messages and services defined via Protocol Buffers
  • Only one TCP port needs to be opened/exposed for all your gRPC data sources
  • Data point events can now be transmitted from the publisher to the data source
  • Publisher stores all point values and events in a persistent on-disk queue, minimizing the need for history synchronization due to increased guarantees that your data has been transmitted to the data source
  • gRPC data source writes to the time-series database are synchronous by default and will not be held in memory in the batch-write-behind queue
  • Uses industry standard Transport Layer Security (TLS) for privacy and encryption of data
  • Uses TLS client certificates (mutual TLS / mTLS) to authenticate publishers
  • Additional permission synchronization modes for data points
  • Easily see a list of gRPC publishers which are connected to your data source, including the Mango GUID, instance description, publisher name and XID for each connected publisher

REST API Changes

CSV Toolbox

Mango now has the ability to import and export different types of data using the CSV import/export tool in the Data Sources and Bulk Data Import screens. You now have dropdown options to retrieve or modify Data Points, Event Detectors, and both (Data Points and Related Data).

If you are not using the UI, you can use the following new endpoints:

  • /data-points/query/extended -- GET and POST to get extended data points CSV
  • /data-points/bulk/extended -- Bulk edit extended data points CSV and JSON
  • /data-points/bulk/extended/{id} -- Methods to delete, update, or get bulk operation
  • /event-detectors/query-data-point-rql -- Get event detectors CSV using RQL against data points including tags and data source fields
  • /watch-lists/{xid}/data-points/extended -- Get extended data points CSV for a watchlist
  • /published-points/query-data-point-rql -- Get published points CSV using RQL against data points including tags and data source fields
  • /published-points/bulk -- Bulk editing published points CSV

Limitations

For the watchlist endpoints, you can only retrieve Data Points and Related Data from static watchlists.

Health Checks

There is a health-check.jar file available in the boot directory of your Mango 5.0 installation. This application can be used to check if Mango is up and running (healthy). The supplied Docker image uses this application to provide a health status to Docker.

  • The application returns an exit code of 0 when healthy or 1 when unhealthy
  • Available arguments:
    • --ignore-server-certificate=false
    • --url=https://localhost:8443/simple-status
    • --connect-timeout=PT30S
    • --follow-redirects=NORMAL

Unified Versioning for Future Upgrades

Beginning with version 5, Radix IoT introduced unified versioning. Everything is released in blocks, meaning any update (whether in the core or a module) is released as a new version across the entire platform. For example, if the Watchlist module receives a minor update, a new bundle would be released containing the updated module and core as 5.0.1.