top of page

A pressure gauge to display Internet usage

Design & Build

A simple idea: Use a physical gauge to display Internet usage.


It took much longer than expected and cost three times what it should.


It was worth it.



  • Gauge

  • Computer (Raspberry Pi)

  • Microcontroller (Arduino Micro)

  • Servo

Internet usage (Mb/s) displayed as pressure

Internet usage is typically measured in Mb/s (Megabits per second) and dispalyed as a graph on a monitor or smartphone. In this project I've taken the same data and translated it to a real world gauge. A steam pressure gauge from the early 20th century.


Data is collected by polling an Internet router, in this case the router for the Lee County School District. The data is converted to a 0-200 scale to match the steps on the pressure gauge.  Next the data is sent to a microcontroller which moves a servo to the appropriate postion.  The servo is connected to the needle of the pressure gauge.


While this seems relatively straight forward, it required a lot of trial and error and adjustments to get accurate physical movement that matched the Internet usage data.


The most interesting thing in this entire project was the realization that Interenet usage statistics are usually averaged over a longer period of time.  The Internet Steam Gauge checks utilizaiton every 10 seconds and is therefore more accurate than most monitoring systems.





  • SNMP

  • Python

  • Arduino (based on C/C++)

I want one


The most difficult part is finding a nice gauge at a reasonable price.


If you have questions about building one, email me.

I'm the Network Operations Supervisor for the Lee County School District in Fort Myers, Florida.  Part of my daily job is to ensure a stable and fast Internet connection. Coworkers are often interested in our Internet usage so...


As you walk by my office you can now glance at the Internet Steam Gauge on the wall behind my desk.

As seen in Vancouver Canada at the SIGGRAPH 2014 Art Gallery.
August, 2014
bottom of page