UI Overview

At the top of reef-pi web UI, there are tabs to represent categories of functionality (also called modules). For example, the temperature controller features are under the "temperature" tab. There are few tabs that are not specific to a module and relevant to the controller as a whole (like "configuration" and "dashboard").  At the bottom is footer data, which provides meta information about reef-pi including version, current time, IP, uptime (how long reef-pi is running) and the number of serious errors (if any). 

Most of the time, the first tab or landing page is a dashboard. This is the default configuration that reef-pi ships with. It is possible to disable the dashboard from the configuration module.


The Configuration UI holds all the meta information about reef-pi controller. reef-pi configuration shows what modules are active as well as features available in them. This is a brief overview of individual sections as relevant in this guide. It is recommended that every new reef-pi build goes through these steps to ensure appropriate setup and avoid hard to diagnose issues later in the build process.


This section of the configuration holds administrative buttons that allows reload, reboot, power down and sign off.

Most of the changes in configuration UI (like telemetry, authentication, settings etc.) requires a reload. A reload only restarts the controller software without restarting the whole Raspberry Pi. The Reboot button restarts the whole Raspberry Pi including Raspbian and reef-pi software. The Power Off button shuts down the Raspberry Pi, making it safe to unplug the power supply. It is recommended to power off the reef-pi controller before unplugging the power cable or adding new sensor, etc. 



This is the section where the individual modules are activated or deactivated (under capabilities). Controller name, network interface (ethernet or wifi) that is used to detect the IP address, and various other global configuration (such as https) are enabled here. Any changes in settings require a reload to come in effect.


By default, reef-pi ships with the username and password set to reef-pi. You should update it to your preferred username and password. I highly recommend using a password manager and set a 32 character random password (generated by a password manager). Note: As a security posture, reef-pi does not show any password thats previously set in the UI. So, if you notice the password field is blank, it's normal and expected. Once updated, username and password changes will require a reload of reef-pi for it to come in effect. 

Connectors & Drivers

All physical equipment and sensor is associated with reef-pi controller using connectors. There are four different types of connectors in reef-pi.

  • Outlets: Are digital output connectors used for equipment control.
  • Inlets: Are digital input connectors used for sensing water level and other on/off signals
  • Jacks: Are PWM output connector used for light and wave maker controls
  • AnalogInputs: Are analog input connector used for pH probes and current monitors.

Connectors are provided by Drivers. Individual drivers can offer multiple types and numbers of connectors. For example, every reef-pi has a built-in Raspberry Pi driver that provides a number of Pins that can be used as either inlet or outlet, and two PWM pins (jack). reef-pi supports pH board, PCA9695 PWM and several other drivers, each of which exposes a variety of inlet, outlet, jacks and analog inputs that we'll explore in this tutorial series


Dashboard and charts are special capabilities of reef-pi that can be enabled and disabled from the settings section under the configuration tab. When enabled, the dashboard module allows reef-pi users to display a customizable set of charts and visualization.

The exact type of charts available in the dashboard depends on what features are enabled and in-use, since charts are generated from usage data. For example, if the temperature module is enabled, and a temperature probe is configured, then a single temperature chart will be available on the dashboard. If there are multiple temperature sensors configured, the dashboard module can showcase multiple charts, each representing one sensor's data. 

reef-pi dashboard can be customized by specifying the grid (rows and columns in the dashboard) and individual chart sizes (height and width in pixels) to fit their specific devices (monitor, tablets etc). The Customize button is located at the bottom right of the dashboard.

Now that we have covered the basic UI components, let's use an LED to test a few modules of reef-pi on the next page.

This guide was first published on Sep 12, 2018. It was last updated on Sep 12, 2018. This page (UI Overview) was last updated on Feb 20, 2020.