Monitoring Installation – Part 3

In this part we describe the final installation. The whole process to install everything took about a year, with the final installation being very consistent with the original prototype and the design goals discussed in Part 1. Most importantly none of the sensors are visible, and the system is silent unless conditions conspire to alert us to an undesired condition. While not initially conceived, we added an audible alarm which turned out to be most useful. We also added node-red dashboards to be able to control the monitoring system.

Alarm

The idea of the alarm was born when we selected which Tire Pressure Monitoring System (TPMS) to buy. The selected system was only a gateway intended for remote vehicle monitoring and did not have its own dedicated display. So it had no way to alert on an issue with the tires. So, we added our own. A very loud buzzer.

Later while cold weather camping, we adding an alert should the outside temperatures drop below freezing during the night and to avoid damage to the truck. Since cold weather happens in the middle of the night, the buzzer is loud enough to wake us up. More details on the alert system can be found here.

Dashboards

Node-red dashboards allows real-time data to be displayed using simple text or fancy graphical widgets. It also allows the user to click buttons and control the monitoring system. Neither of these two functions are available from Grafana.

We have tailored our dashboards to fit on the Garmin navigation device, so we can access the monitoring system while driving. What information is on each screen, the size of the fonts, and even the colours are all deliberate decisions to make it easy to read to prevent the driver from getting distracted while driving. The dashboards are browser compatible, so can also be viewed on our iPhones, iPad or computer while not driving.

The dashboards are not intended to provide all the available metrics or states of the monitoring system. Rather those that make the most sense. The dashboards are constructed around the following screens

  • Tire Pressures and Temperatures and control the alerts during airing up and down.
  • House Battery State of Charge, overall battery charge or discharge watts, solar generation from the roof and portable panels in watts, battery voltage and charging mode.
  • Location Record Keeping (beta). Still working on this display, which allows plqaces of interest to be recorded to the log.
  • Fresh and Gray water tanks levels and state of the heaters.
  • Weather station with temperature, humidity and pressure for the outside, house, fridge and freezer sensors.
  • Truck coolant temperature, run hours, miles and fuel used since last fuel tank fill, miles driven and fuel used during the day and fuel rate.
  • Status summary, mainly used to alert us of any problems prior to starting the drive for the day or any other time once the buzzer starts making a noise.
  • There are few other less important screens for the inverter, the Cradlepoint cellular status and the GPS sensor.
Colour Scheme

Black text on a Red background is used consistently throughout the screens to indicate an urgent alert, and a condition that needs to be taken care of immediately. White text on a Green or Blue background indicates that everything is normal. Black text on an orange background is used to indicates a condition somewhere between normal and urgent and is a warning. If not addressed, a warning can turn into an urgent alert.

This colour coding scheme might seem overly complicated, but it does allow fault conditions to be very quickly determined. For example, on the Tire Pressure panel, normal temperatures are displayed with black text on a green background, as this is very easy to read and nothing pops out of the display. If the pressure drops in one of the tires, background turns Orange, and is a colour that is impossible to miss. If conditions worsen, then the Orange background turns Red. If communication is lost to the gateway, then a banner is display showing a warning, with the banner having an Orange background and useful information in the banner text.

Alert Acknowledgement and Silence

And things aren’t already complex enough, there is a way to acknowledge and silence alerts. This feature was initially introduced to silence the buzzer on an alert condition. The buzzer would go off, usually while driving or sleeping, and there had to be a way to shut off the noice quickly. And the silence button was born. Then we added an alert acknowledgement button, a little like the silence button but different.

Raspberry Pi

All of the sensors are connected to the Raspberry Pi. The Raspberry pi is a Model 4 with 4 GB of RAM with all of the software stored on a removable SD card. The code we wrote to monitor Molly is stored on the SD card, but it is also backed-up in the cloud. And the Raspberry Pi does not store any of the monitoring data, so a failure of the raspberry Pi (or SD Card) will not result in the loss of any monitoring data. The Raspberry Pi runs node-red with extra nodes used by us.

The Raspberry Pi has four USB ports. The following sensros are connected to these USB ports

  • Tire Pressure Monitoring System
  • Battery Monitor
  • GPS

The Raspberry Pi is connect to the Local Area Network, and thus has access to the following devices on the network which also acts as sensors.

  • Solar Charge Controller
  • Truck ECU via the Cradlepoint

The Raspberry Pi has a digital and analog input board from Widget Lords with the following inputs

Digital Inputs

  • Gray Water Tank Heater
  • Freshwater Tank #2 Heater
  • Freshwater Pump Running
  • Freshwater Recirculating
  • Stove Powered On
  • Heater Powered On
  • Stairs Powered On
  • Spare

Analog Inputs

  • Fresh Water Tank #1 Level
  • Fresh Water Tank #2 Level
  • Grey Water Tank Level
Main Computer

The main computer has all of the 3rd party monitoring software like Influxdb, Grafana and the various Grafana plugins. As Influxdb is running on the main computer, all the data logged by the monitoring system is stored on it. Backups are automatic and made daily to the NAS.

Failure Points

We can survive if the Raspberry Pi or the Main computer fails. We have a second Raspberry Pi with a backup copy of the SD card. And while we do not have a second or spare main computer, Grafana and Influxdb is also installed on the Raspberry. So in the event the main computer fails, then the Raspberry Pi (with a small amount of reconfiguration) can take-over and the monitoring system will continue to function.

But the monitoring system will not survive the failure of the Cradlepoint modem, as it runs our local area network. We also will lose monitoring of the ECU and the GPS. So if this happens, then we will order a replacement. We also have very little redundancy in the various sensors, and should any of them fail, then the associated signals will no longer be monitored.

The main computer and Cradlpoint modem are fan-less and use heatsinks or radiators to expel heat. The Raspberry has a fan, and as this is a moving part is most likely to fail. So, we have a spare fan on the spare Raspberry Pi.

The main computer and Cradlepoint modem operate from a 12 volts dc source, and no external power supply is needed, and therefore can’t fail. The Raspberry Pi runs off USB-C, and we have numerous spare USB-C charges available.

The main computer, Raspberry Pi or the Cradlepoint modem has a display, and therefore these can’t fail. The device we typically use for displaying information is the Garmin Overlander, but we also use our laptops, iPads or iPhones.