A full-stack IoT application : from cross-compiling to user interface

The work presented here illustrates a full-stack engineering practice focused on the development of an IoT application based on the WhizNano Gateway. This powerful Gateway is capable of connecting thousands of sensors under the TVWS intranet but lacks the functionality to transfer data to the intern...

Full description

Bibliographic Details
Main Author: Zhou, Song
Other Authors: Muhammad Faeyz Karim
Format: Thesis-Master by Coursework
Language:English
Published: Nanyang Technological University 2021
Subjects:
Online Access:https://hdl.handle.net/10356/152556
_version_ 1811690273601748992
author Zhou, Song
author2 Muhammad Faeyz Karim
author_facet Muhammad Faeyz Karim
Zhou, Song
author_sort Zhou, Song
collection NTU
description The work presented here illustrates a full-stack engineering practice focused on the development of an IoT application based on the WhizNano Gateway. This powerful Gateway is capable of connecting thousands of sensors under the TVWS intranet but lacks the functionality to transfer data to the internet and display it appropriately. Although Azure offers a range of SDKs, they are not sufficient to cover situations where customers do not wish to upload data to any cloud. Therefore, a full-stack IoT application connected to a local server was developed, consisting of a cross-compiled client that acts as a bridge for transferring data between the Internet and the intranet; a Node-Red-based back-end that processes the data and provides several APIs for front-end access accordingly; and a front-end that provides a live web interface built from Vue.js to monitor real-time sensor readings and an interactive management view with history query functionality where users can add/remove sensors to monitor and check past data. Developed primarily in JavaScript and compiled in a Node.js environment, this application works with Mosquitto, Grafana, MySQL and InfluxDB and does not utilise any external or online services, which allows it to be deployed locally. Implementing the concept of separation and encapsulation, this application was structured in a way that was easy to understand and develop further. In addition, the application was packaged by docker technology, making it both ready to present to customers and to develop for colleagues on any ordinary computer without complex configuration.
first_indexed 2024-10-01T06:01:23Z
format Thesis-Master by Coursework
id ntu-10356/152556
institution Nanyang Technological University
language English
last_indexed 2024-10-01T06:01:23Z
publishDate 2021
publisher Nanyang Technological University
record_format dspace
spelling ntu-10356/1525562023-07-04T17:33:46Z A full-stack IoT application : from cross-compiling to user interface Zhou, Song Muhammad Faeyz Karim School of Electrical and Electronic Engineering Whizpace Pte. Ltd. faeyz@ntu.edu.sg Engineering::Electrical and electronic engineering::Computer hardware, software and systems The work presented here illustrates a full-stack engineering practice focused on the development of an IoT application based on the WhizNano Gateway. This powerful Gateway is capable of connecting thousands of sensors under the TVWS intranet but lacks the functionality to transfer data to the internet and display it appropriately. Although Azure offers a range of SDKs, they are not sufficient to cover situations where customers do not wish to upload data to any cloud. Therefore, a full-stack IoT application connected to a local server was developed, consisting of a cross-compiled client that acts as a bridge for transferring data between the Internet and the intranet; a Node-Red-based back-end that processes the data and provides several APIs for front-end access accordingly; and a front-end that provides a live web interface built from Vue.js to monitor real-time sensor readings and an interactive management view with history query functionality where users can add/remove sensors to monitor and check past data. Developed primarily in JavaScript and compiled in a Node.js environment, this application works with Mosquitto, Grafana, MySQL and InfluxDB and does not utilise any external or online services, which allows it to be deployed locally. Implementing the concept of separation and encapsulation, this application was structured in a way that was easy to understand and develop further. In addition, the application was packaged by docker technology, making it both ready to present to customers and to develop for colleagues on any ordinary computer without complex configuration. Master of Science (Computer Control and Automation) 2021-08-31T04:31:02Z 2021-08-31T04:31:02Z 2021 Thesis-Master by Coursework Zhou, S. (2021). A full-stack IoT application : from cross-compiling to user interface. Master's thesis, Nanyang Technological University, Singapore. https://hdl.handle.net/10356/152556 https://hdl.handle.net/10356/152556 en application/pdf Nanyang Technological University
spellingShingle Engineering::Electrical and electronic engineering::Computer hardware, software and systems
Zhou, Song
A full-stack IoT application : from cross-compiling to user interface
title A full-stack IoT application : from cross-compiling to user interface
title_full A full-stack IoT application : from cross-compiling to user interface
title_fullStr A full-stack IoT application : from cross-compiling to user interface
title_full_unstemmed A full-stack IoT application : from cross-compiling to user interface
title_short A full-stack IoT application : from cross-compiling to user interface
title_sort full stack iot application from cross compiling to user interface
topic Engineering::Electrical and electronic engineering::Computer hardware, software and systems
url https://hdl.handle.net/10356/152556
work_keys_str_mv AT zhousong afullstackiotapplicationfromcrosscompilingtouserinterface
AT zhousong fullstackiotapplicationfromcrosscompilingtouserinterface