A web interface is the primary user interface for the Mortar.io system. This provides access to most of the Mortar.io functionality and is written on top of the libMIO API. Because of the decoupling between data and interface allowed by libMIO, a local copy of the website can be used to manipulate any existing Mortar.io servers.
The landing page for the web interface is a log in screen that asks the user to enter a user and password combination. The username (which is an XMPP JID) determines which server the website will be pointing to. Once logged in, the user is directed to the main interface as shown in the image above. The top bar provides access to user information as well as the four utilities the website provides. From right to left, the first utility is a device browser (Devices). This provides an interface to explore accessible devices and view various information and control inputs for a specific device. Following this, the Schedule utility makes it possible to compose and assign schedules to one or multiple devices using a simple interface. The Control utility allows batch control (i.e. actuation) of devices. Finally, the Graphs utility provides access to time series views over multiple devices.
The following sections describe each of these utilities in more detail.
The device browser shows a hierarchical view of the devices present in the Mortar.io server. By default, two parent folders (i.e. two hierarchies) are available to every user: root and favorites. The root folder contains a pre-defined hierarchy created by the server administrator, while favorites contains sub-folders and devices that are populated by the user. Notably, devices can belong to one or more branches in this folder structure, thus providing different views into the system. For example, as shown in the image above, many different views can be generated for any deployment such as a "Systems" view, which would provide easy access to devices that relate to different building subsystems (e.g., thermostats will show up under the HVAC sub-folder, Lighting devices under the lighting sub-folder, etc.). Further, it is often useful to generate views based on device location. Thus, the Location view provides a hierarchical tree to arrange devices spatially.
Moreover, each one of these folders can be associated with an image that will act as a map on which the devices and sub-folders can be layed out. This is especially relevant if one wishes to organize devices under a Location hierarchy like the one shown in the previous example.
Modifying the folder structure through the web-interface is very intuitive. For example, the image above shows how one adds a folder to any point in the two existing hierarchies (root or favorites). As noted above, only administrators can edit the root hierarchy.
The above view is seen when a device is selected from the Device Browser. From this page it is possible to view device information and control. It is further possible to add the device to the users favorite devices, from this screen. It is possible also to give read and write permissions from the Manage Permissions button.
The Transducers tab provides information about the transducers of the device. Such information as acceptable values, the units, and last received value from the device can be viewed here.
The Schedules provides a view into the schedules currently set for a device. This also provides the ability to add new schedules.
The Device Control view allows to set values for actuable transducers.
Through the Graphs bar, it is possible to create graph views by selecting devices and their transducers to display. These views can then be saved for later.