Developed at the Connected Environments Lab at The Centre for Advanced Spatial AnalysisUniversity College London, the Open Gauges Project was launched in October 2021 as part of the Module on Sensor Data Visualisation (CASA0019) within the MSc in Connected Environments.

The Open Gauges Github Repository provides full access to the original Fusion 360 design files, .STL files to 3D print gauges, code and graphics for the gauge dials. It also allows new gauges/code to be uploaded into new branches via the Gibhub page.

The project aims to allow open-source data gauges to be built, modified, and viewed as both physical (3d printed) and digital gauges. Depending on the user’s preference the models can be made to run from any online data source  – such as an MQTT feed – from Weather Data with Air Pressure, Temperature, Wind Speed etc though to Air Quality Gauges, Noise Meters, Energy etc. The project was created by Professor Andrew Hudson-Smith and Dr Valerio Signorelli.

A total of 5 Dial Graphics are provided in this initial release – sized to fit into the 3D printed cases.

The 5 Dial Graphics are – Temperature (-10 to 40 oC), Wind Speed (0-60 mph), Wind Dir (0 – 360), Air Pressure (950 – 1050 mb) and Co2 (400 – 1400 ppm).

In addition to reading the MQTT data and using the Servo Easing Library for the servo, the code also includes a time function, allowing the gauge to turn the LED lights/Servo on and off at set times. This is used to turn off at night and on again in the morning.

The code can be used to create any gauge with a range from 180 to 360 degrees using a standard SG90 servo. A gear train is used to extend the servo range with the ability to calibrate in the code. On load, the servo performs a sweep function, to aid the calibration process.

The aim was to make displaying data, via both a physical and digital device, as easy as possible – to recreate the simplicity of a gauge but to update it to use current data standards.

Open Gauges - Technical Drawing

Due to its simplicity, the design can be edited to accommodate a range of styles, from dual displays through to retrofitting old devices. Indeed retrofitting (only if a device is beyond repair of course) can give new life to old barometers, barographs, pressure gauges etc, all with the same code and design.

At the present time (October 22nd, 2021) this page is under development with new designs, a full walkthrough of how to make one, an Augmented Reality Version and new examples (such as Air Quality) incoming. To underline the developing nature of the project – see our Neopixel Barometer Open Gauge, included 28th October 2021, the Open Energy Gauge graphic, included 9th November 2021 and the Voltmeter Gauge, added 11th November 2021.

The gauges are made to be as simple as possible to make but allow enough flexibility to allow them to be used to display a wide range of data types, the parts list below provide details for the full gauge, with lighting.

Parts List

The main parts are:

  • Node MCU Arduino Board – we have been using the (MakerHawk boards). However, any Arduino compatiable board will suffice, the ease of using the above boards is the code will work without and changes to the pins.
  • SG90 Servo – any SG90 style servo will work, we would however recommend the MG90S Micro Servo as it provides a smoother travel to the gauage pointer.
  • Lights – Pimorini White LED Backlight Module – 38.7mm x 11.9mm x 2mm, although any low power led will also suffice
  • PLA for 3D Printing – Any PLA for the main parts, the dials graphics are printed on paper and laid flat on a disc (see 3D Printer Files) printed in transparent PLA. This can be left out but it allows the dial to lay flat and provides a nice diffused light. eSun Transparent PLA works well.