River Conditions is a dashboard display showing James River water conditions. Before swimming in the river, knowing the current river conditions, such as bacterial levels, is critical to prevent water born illness.
River Conditions checks 23 water testing stations along the James River and several tributaries. Although there are more than 23 stations, many have not been selected for the dashboard due limit space on the panel.
Data is sourced from USGS and WaterReportor. USGS provides stream flow and gauge height from testing equipment installed along rivers and creeks. WaterReporter provides water temperature and E. Coli data from volunteers collecting and testing water samples. Only three USGS and WaterReporter stations overlap the physical testing location.
The controls allows the user to view a specific station and the select button displays the date of data collection.
Each of the twenty stations is represented by a LED.
The legend explains the color conventions; except flashing blue, which indicates that station is selected on the LCD display.
The map cover the entire James River basin from West Virginia, through Virginia, and into the Chesapeake Bay. Only waterways indicated by the USGS as ‘rivers’ are included in the map.
River Conditions uses 2020 aluminum extrusions creating a sturdy frame with multiple points of attachment for various brackets. The wood panel to the left gently presses the daisy chained WS2812b 5mm LEDs into the top panel acrylic.
The electronics are fairly straight forward and are manually wired together.
The ESP32 microcontroller provides Wi-Fi access and enough pins to support the LCD, SD card, buttons, and LEDs. The library support from the community is invaluable for making a complex project in a short amount of time.
The DC-DC converter takes the 12vDC input and provides the system with 5vDC with plenty of current.
The micro SD card is held into place with a 3D printed bracket.
The 2020 frame is held together with 3D printed corner brackets. The map bezel is held in place with several clips as shown in the above image.
The wall mounting bracket allows River Conditions to be hung by a simple nail.
Source code and design files: https://github.com/reubenstr/RiverConditions