A local-first control and scheduling system for the OSU Daylighting Innovation and Analysis Lab (DIAL) trailer.
A sleek interface for visualizing and controlling electrochromic panels and skylights.
The DIAL Control Center is the custom software backbone for the Daylighting Innovation and Analysis Lab (DIAL) at Oregon State University. DIAL is an off-the-grid mobile university research facility designed to study the impact of daylighting on human health and productivity.
This app provides researchers and facility managers with a local-first system to intuitively manage, schedule, and monitor the facility's Halio electrochromic glazing.
The Problem: Architectural researchers in DIAL need a reliable, study-friendly way to control two symmetrical test rooms (each with 9 windows and 1 skylight) without relying on external internet connections, especially when the mobile lab is deployed in remote or off-grid locations.
The Solution: By combining live status monitoring with an automated scheduling engine, the local software system provides precise environmental control.
- Local-First Reliability: Operates entirely on the local trailer network, provides responsiveness without depending on external internet access.
- Smart Scheduling Engine: Create study-friendly, automated routines that adjust pane tinting based on time of day, minimizing manual intervention during research experiments.
- Live System Status: Get real-time monitoring and visualization of all 18 Halio facade panels and 2 skylights from a single, unified dashboard.
- Sensor Visualization: Track live and historical sensor metrics, toggle sensor visibility, select specific metrics to graph, and view real-time spectral irradiance graphs.
- Sensor Integration Ready: Built to analyze and manage DIAL's advanced setup of indoor and rooftop environmental sensors (including JETI spectroradiometers and EKO pyranometers).
- Safe Manual Override: The safety-first manual override protocols allow the researchers to take direct control of individual panels.
For a clean machine setup, use DEV-SETUP.md. The backend expects Python >=3.11,<3.14; the frontend uses Node.js/NPM. EKO site deployments now use the C-BOX Ethernet Modbus TCP interface (host plus TCP port 502) and no longer use USB-to-RS485 or a COM port for EKO.
Run the watcher from root, svc, or web:
To run the local control service and researcher UI on your machine:
Prerequisites:
- Node.js (v18+)
- Docker or Podman Desktop (for running the full stack container environment)
Getting Started:
-
Clone the repository:
git clone https://github.com/OSU-Radiant-Lab/GlazingControlApp.git cd GlazingControlApp -
Start the development servers: Run the watcher from the root directory to spin up both the frontend UI and the backend control service:
npm run watch -- both
(To run separately, use
npm run watch -- frontendornpm run watch -- backendon each). -
Access the Application: Open your browser and navigate to
http://localhost:3000(or the port specified in your console output) to view the researcher UI.
Note: For real sensor deployment and site-specific facility notes, please refer to our Setup Documentation.
This project was built by Team 76 for the OSU Radiant Lab.
- Aidan Lusk - luskai@oregonstate.edu
- Carlos Vasquez - vasqueca@oregonstate.edu
- Ian McKee - mckeei@oregonstate.edu
- Tyler Vincent - vincenty@oregonstate.edu
Feedback & Contributions: Please open an issue on GitHub or reach out to the team directly via email. For internal team communication, refer to Discord channel Team 76.
Licensed under the GPL 3.0 License.
