Export file:


  • RIS(for EndNote,Reference Manager,ProCite)
  • BibTex
  • Text


  • Citation Only
  • Citation and Abstract

Design and implementation of a low-cost, open source IoT-based SCADA system using ESP32 with OLED, ThingsBoard and MQTT protocol

Department of Electrical and Computer Engineering, Faculty of Engineering and Applied Science, Memorial University of Newfoundland (MUN), St. John’s, NL A1B 3X5, Canada

Topical Section: Intelligent Systems, Automation & Control

Distributed assets, such as hybrid power system components, require reliable, timely, and secure coordinated data monitoring and control systems. Supervisory Control and Data Acquisition (SCADA) is a technology for the coordinated monitoring and control of such assets. However, SCADA system designs and implementations have largely been proprietary, mostly pricey and therefore economically unjustifiable for smaller applications. With proprietary SCADA systems, there is also the problem of interoperability with the existing components such as power electronic converters, energy storage systems, and communication systems since these components are usually from multiple vendors. Therefore, an open source SCADA system represents the most flexible and most cost-effective SCADA option for such assets. In this paper, we present the design and implementation of a low-cost, open source SCADA system based on the most recent SCADA architecture, the Internet of Things (IoT). The proposed SCADA system consists of current and voltage sensors for data collection, an ESP32 micro-controller with organic light-emitting diode (OLED) display, for receiving and processing the sensor data, and ThingsBoard IoT server for historic data storage and human machine interactions. For the sensor data transfer from the ESP32 to the ThingsBoard IoT server, Message Queuing Telemetry Transport (MQTT) protocol is implemented for data transfer over a local Wi-Fi connection with the MQTT Client configured on the ESP32, and the ThingsBoard server node serving as the MQTT Broker. The ThingsBoard IoT server is locally installed with PostgreSQL database on a Raspberry Pi single-board computer and hosted locally on MUN Network for data integrity and security. To test the performance of the developed open source SCADA system solution, it was setup to acquire and process the current, voltage and power of a standalone solar photovoltaic system for remote monitoring and supervisory control. The overall system design procedures and testing, as well as the created dashboards and alarms on the ThingsBoard IoT server platform are presented in the paper.
  Article Metrics

Keywords open source; SCADA; ThingsBoard; Internet of Things; ESP32 with OLED; Raspberry Pi; MQTT; automation; instrumentation and control

Citation: Lawrence O. Aghenta, M. Tariq Iqbal. Design and implementation of a low-cost, open source IoT-based SCADA system using ESP32 with OLED, ThingsBoard and MQTT protocol. AIMS Electronics and Electrical Engineering, 2020, 4(1): 57-86. doi: 10.3934/ElectrEng.2020.1.57


  • 1. Aghenta LO and Iqbal MT (2019) Design and Dynamic Modelling of a Hybrid Power System for a House in Nigeria. Int J Photoenergy 2019: 1-13.
  • 2. IEC White Paper (2019) Electrical Energy Storage. Available from: https://www.iec.ch/whitepaper/pdf/iecWP-energystorage-LR-en.pdf.
  • 3. Lee J, Lee S, Cho H, et al. (2018) Supervisory Control and Data Acquisition for Standalone Hybrid Power Generation Systems. Sustainable Computing: Informatics and Systems 20: 141-154.    
  • 4. Stouffer K, Falco J and Kent K (2011) Guide to Supervisory Control and Data Acquisition (SCADA) and Industrial Control Systems Security-Recommendations of the National Institute of Standards and Technology. Special Publication 800-82.
  • 5. Jiao D and Sun J (2018) Real-Time Visualization of Geo-Sensor Data Based on the ProtocolCoupling Symbol Construction Method. ISPRS Int J Geo-Inf 7: 460.    
  • 6. Lu X (2014) Supervisory Control and Data Acquisition System Design for CO2 Enhanced Oil Recovery. Master of Engineering Thesis, Technical Report No. UCB/EECS-2014-123. EECS Department, University of California at Berkeley.
  • 7. Sajid A, Abbas H and Saleem K (2016) Cloud-Assisted IoT-Based SCADA Systems Security: A Review of the State of the Art and Future Challenges. IEEE Access 4: 1375-1384.    
  • 8. Al-Fuqaha A, Guizani M, Mohammadi M, et al. (2015) Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications. IEEE Commun Surv Tut 17: 2347-2376.    
  • 9. Sethi P and Sarangi SR (2017) Internet of Things: Architectures, Protocols, and Applications. Journal of Electrical and Computer Engineering 2017: 1-25.
  • 10. Nicola M, Nicola C, Duta M, et al. (2018) SCADA Systems Architecture Based on OPC and Web Servers and Integration of Applications for Industrial Process Control. International Journal of Control Science and Engineering 8: 13-21.
  • 11. Alavi SA, Rahimian A, Mehran K, et al. (2018) An IoT-Based Data Collection Platform for Situational Awareness-Centric Microgrids. 2018 IEEE Canadian Conference on Electrical and Computer Engineering (CCECE) 1-4.
  • 12. Kao K, Chieng W and Jeng S (2018) Design and development of an IoT-based web application for an intelligent remote SCADA system. 2018 IOP Conference Series: Materials Science and Engineering 323.
  • 13. Li W, Wang J, Yen C, et al. (2018) Cloud supervisory control system based on JustIoT. 2018 IEEE International Conference on Smart Manufacturing, Industrial and Logistics Engineering (SMILE) 17-20.
  • 14. Sarierao BS and Prakasarao A (2018) Smart Healthcare Monitoring System Using MQTT Protocol. 2018 3rd International Conference for Convergence in Technology (I2CT) 1-5.
  • 15. Wu F, Wu T and Yuce M (2018) An Internet-of-Things (IoT) Network System for Connected Safety and Health Monitoring Applications. Sensors 19: 21.    
  • 16. Yi D, Binwen F, Xiaoming K, et al. (2016) Design and implementation of mobile health monitoring system based on MQTT protocol. 2016 IEEE Advanced Information Management, Communicates, Electronic and Automation Control Conference (IMCEC) 1679-1682.
  • 17. Kodali RK and Soratkal S (2016) MQTT based home automation system using ESP8266. 2016 IEEE Region 10 Humanitarian Technology Conference (R10-HTC) 1-5.
  • 18. Bassoli M, Bianchi V and Munari I (2018) A Plug and Play IoT Wi-Fi Smart Home System for Human Monitoring. Electronics 7: 200.    
  • 19. Chang CY, Kuo CH, Chen JC, et al. (2015) Design and Implementation of an IoT Access Point for Smart Home. Applied Sciences 5: 1882-1903.    
  • 20. Lee Y, Hsiao W, Huang C, et al. (2016) An integrated cloud-based smart home management system with community hierarchy. IEEE T Consum Electr 62: 1-9.    
  • 21. Pirbhulal S, Zhang H, Alahi ME, et al. (2017) Erratum: Sandeep P., et al. A Novel Secure IoTBased Smart Home Automation System Using a Wireless Sensor Network. Sensors 17: 69.
  • 22. Sahadevan A, Mathew D, Mookathana J, et al. (2017) An Offline Online Strategy for IoT Using MQTT. 2017 IEEE 4th International Conference on Cyber Security and Cloud Computing (CSCloud) 369-373.
  • 23. Mishra B (2018) TMCAS: An MQTT based Collision Avoidance System for Railway networks. 2018 18th International Conference on Computational Science and Applications (ICCSA) 1-6.
  • 24. Kodali RK (2016) An implementation of MQTT using CC3200. 2016 International Conference on Control, Instrumentation, Communication and Computational Technologies (ICCICCT) 582-587.
  • 25. Dow C, Cheng S and Hwang S (2016) A MQTT-based guide and notification service system. 2016 IEEE 7th Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON) 1-4.
  • 26. Bryce R, Shaw T and Srivastava G (2018) MQTT-G: A Publish/Subscribe Protocol with Geolocation. 2018 41st International Conference on Telecommunications and Signal Processing (TSP) 1-4.
  • 27. Dhar P and Gupta P (2016) Intelligent parking Cloud services based on IoT using MQTT protocol. 2016 International Conference on Automatic Control and Dynamic Optimization Techniques (ICACDOT) 30-34.
  • 28. Muladi M, Sendari S and Widiyaningtyas T (2018) Outdoor Air Quality Monitor Using MQTT Protocol on Smart Campus Network. 2018 International Conference on Sustainable Information Engineering and Technology (SIET) 216-219.
  • 29. Atmoko RA and Yang D (2018) Online Monitoring and Controlling Industrial Arm Robot Using MQTT Protocol. 2018 IEEE International Conference on Robotics, Biomimetics, and Intelligent Computational Systems (Robionetics) 12-16.
  • 30. De Paolis LT, De Luca V and Paiano R (2018) Sensor data collection and analytics with thingsboard and spark streaming. 2018 IEEE Workshop on Environmental, Energy, and Structural Monitoring Systems (EESMS) 1-6.
  • 31. Pesch A and Scavelli P (2019) Condition Monitoring of Active Magnetic Bearings on the Internet of Things. Actuators 8: 17.    
  • 32. Reaves B and Morris T (2012) An open virtual testbed for industrial control system security research. Int J Inf Secur 11: 215-229.    
  • 33. Hadžiosmanović D, Bolzoni D and Hartel PH (2012) A log mining approach for process monitoring in SCADA. Int J Inf Secur 11: 231-251.    
  • 34. Unique Automation Portfolio. Available from: https://new.siemens.com/ca/en/products/automation.
  • 35. Sultana T and Wahid KA (2019) Choice of Application Layer Protocols for Next Generation Video Surveillance Using Internet of Video Things. IEEE Access 7: 41607-41624.    
  • 36. Moustafa N, Turnbull B and Choo KR (2019) An Ensemble Intrusion Detection Technique Based on Proposed Statistical Flow Features for Protecting Network Traffic of Internet of Things. IEEE Internet of Things Journal 6: 4815-4830.    
  • 37. Babovic ZB, Protic J and Milutinovic V (2016) Web Performance Evaluation for Internet of Things Applications. IEEE Access 4: 6974-6992.    
  • 38. Ismail AA, Hamza HS and Kotb AM (2018) Performance Evaluation of Open Source IoT Platforms. 2018 IEEE Global Conference on Internet of Things (GCIoT) 1-5.
  • 39. ThingsBoard API Reference. Available from: https://thingsboard.io/docs/reference/mqtt-api/.
  • 40. Nuratch S (2018) Applying the MQTT Protocol on Embedded System for Smart Sensors/Actuators and IoT Applications. 2018 15th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology (ECTI-CON) 628-631.
  • 41. Aghenta LO and Iqbal MT (2019) Low-Cost, Open Source IoT-Based SCADA System Design Using Thinger.IO and ESP32 Thing. Electronics 8: 822.
  • 42. ESP32 TTGO. Available from: http://esp32-ttgo.blogspot.com.
  • 43. Zhong X and Liang Y (2016) Raspberry Pi: An Effective Vehicle in Teaching the Internet of Things in Computer Science and Engineering. Electronics 5: 56.    
  • 44. ThingsBoard Documentation. Available from: https://thingsboard.io/docs/.
  • 45. Nasr PM and Yazdian-Varjani A (2018) Toward Operator Access Management in SCADA System: Deontological Threat Mitigation. IEEE T Ind Inform 14: 3314-3324.


Reader Comments

your name: *   your email: *  

© 2020 the Author(s), licensee AIMS Press. This is an open access article distributed under the terms of the Creative Commons Attribution Licese (http://creativecommons.org/licenses/by/4.0)

Download full text in PDF

Export Citation

Copyright © AIMS Press All Rights Reserved