Project Name: Un-named IoT Visualization / Management Project
Role(s): Designer / Programmer
Technology Stack: NodeJS server hosting WebGL application based on BabylonJS. Interfaced with a SCALA backend server application. Previous iteration, Unity3D with Coherent UI Plugins.
Description: This was a research project / proof-of-concept application aimed at creating new ways of managing and visualizing Internet of Things (IoT) systems. The basis of the application front end is a WebGL 3D virtual reproduction of the physical system with HTML UI overlay. This front end was matched with a SCALA backend (developed by colleague) to communicate with hardware devices and maintain system dynamics and monitoring.
Design Challenges: The design goal and research aim of this project to was explore ways of using visual virtual three-dimensional (3D) context as an aid in the creation and management of complex systems. Introducing a 3D environment that provides a cohesive visual for an experience with enterprise level functionality has unique set of challenges. The first challenge was to determine what visuals were relevant to the user. Taking inspiration from the ‘powers-of-ten’ education video, I aimed at creating a layered approach to viewing system, in both a visual (3D) sense and a data visualization standpoint.
Programming Challenges: There were a number of challenges with implementing this application due to its complexity and scope. Initial prototypes were made in Unity3D, but transitioning the 3D aspects of the program to WebGL ( even with the framework of BabylonJS) required extensive framework development. Beyond the visual framework, creating a live communication stack between the web-interface, frontend server, back-end application, and device hardware involved a number of iterations before settling a combination of Socket.io and ZeroMQ solutions.