Authenticated WiFi-Based Wireless Data Transmission from Multiple Sensors Through a Laboratory Stand Based on Collaboration Between ATMEGA2560 and ESP32 Microcontrollers

1

PhD Student at The Doctoral School of Gdynia Maritime University, 81-87 Morska St., 81–225 Gdynia, Poland,
e-mail: m.abotaleb@sd.umg.edu.pl

Abstract: 

The use of wireless technology in the field of instrumentation is rapidly expanding due to many reasons such as lower installation and commissioning cost than those incurred by wired technologies and a higher level of security provided by authenticated encrypted data transaction, in addition to a decreased level of system complicity, manifested in eliminating or limiting the need for cabling or its accessories. This article will discuss a proposed technique to perform authenticated wireless WiFi data transmission from multiple sensors to the control station depending on a laboratory stand  for the purpose of analysing the principle of coexistence between wireless technologies dedicated to industrial automation, such as wireless HART, and general purpose technologies, such as WiFi and Bluetooth Low Energy BLE.

Keywords: 
Data Authentication, WiFi, WebSerial, ESP32, Arduino Mega 2560, Python, Websockets
Issue: 
Pages: 
27
41
Accepted: 
18.04.2023
Published: 
30.09.2023
Download full text in pdf: 

This article is an open access article distributed under a Creative Commoms Attribution (CCBY 4.0) licence

References: 

Al Kala, M.O., Seidman, S., Quang, J., 2018, An Outlook on Wireless Coexistence with Focus on Medical Devices, IEEE Electromagnetic Compatibility Magazine, vol. 7, no. 3, pp. 60–64.

Arduino Forum, 2017, Why Is Using Delay Bad? https://forum.arduino.cc/t/why-is-using-de­lay-bad/465334/1 (11.04.2023).

Arduino References, 2019, Communication Function: Serial, https://www.arduino.cc/reference/en/lan­guage/fun­ctions/communication/serial/ (11.04.2023).

Arduino References, 2021, Datatypes: Stringobject String(), https://www.arduino.cc/reference/en/lan­guage/variables/data-types/stringobject/ (11.04.2023).

Arduino References, 2022, Time Function Millis(), https://reference.arduino.cc/reference/en/lan­guage/functions/time/millis/ (11.04.2023).

Arduino, 2023, Arduino® MEGA 2560 Rev3Product Refrence Manual, SKU: A00067, https://fiona.dmcs.pl/­~cmaj/­SM_2st/­arduino-mega2560_R3-datasheet.pdf (12.04.2023).

Cura, M.G., 2020, Industrial Arduino Millis () vs Delay (), Boot & Work Corp. S.L., https://www.industrialshields.com/blog/arduino-industrial-1/post/industrial-arduino-millis-vs-delay-248 (11.04.2023).

DelCastillo, G., 2021, Python Websocket Server, https://github.com/ParametricCamp/Tu­torial­Files/tree/master/Misc/WebSockets (11.04.2023).

Espressif Systems, 2023, Arduino-ESP32 Release 2.0.6.

Gomaa, R., 2020, Coexistence Study of 2.4 GHZ Wireless Technologies for Nuclear and Radiological Applications, International Journal of Engineering Research & Technology (IJERT), vol. 9, no. 8.

Joseph, J., 2022, ESP32 Timers & Timer Interrupts, https://circuitdigest.com/microcontroller-projects/esp32-timers-and-timer-interrupts (11.04.2023),

LaSorte, N.J., Seidman, S., Quang, J., 2016, Experimental Method for Evaluating Wireless Coexistence of Wi-Fi Medical Devices, Biomedical Instrumentation and Technology, vol. 50(s6), pp. 18–25.

Liang, O., 2013, Arduino Timer and Interrupt Tutorial, https://oscarliang.com/arduino-timer-and-interrupt- tutorial /#:~:text=On%20the%20Arduino% 20Mega%20we,and%2013%3A%20­controlled%20by%20Timer0 (11.04.2023),

Pepperl+Fuchs, 2015, WHA-BLT-F9D0-N-A0 BULLET Wireless HART Adapter Instruction Manual, http://files.pepperl-fuchs.com/webcat/navi/productInfo/doct/tdoct4909__e... ?v=20230403152657 (12.04.2023).

Randomnerdtutorials, January 2020a, ESP32 Client-Server Wi-Fi Communication Between Two Boards, https://randomnerdtutorials.com/esp32-client-server-wi-fi/ (12.04.2023).

Randomnerdtutorials, January 2020b, Getting Started with ESP-NOW (ESP32 with Arduino IDE), https://randomnerdtutorials.com/esp-now-esp32-arduino-ide/ (12.04.2023).

Randomnerdtutorials, November 2020, ESP-MESH with ESP32 and ESP8266: Getting Started (PainlessMesh Library), https://randomnerdtutorials.com/esp-mesh-esp32-esp8266-pain­less­mesh/ (12.04.2023).

Randomnerdtutorials, February 2021, ESP32 Useful Wi-Fi Library Functions (Arduino IDE), https://randomnerdtutorials.com/esp32-useful-wi-fi-functions-arduino/ (11.04.2023).

Randomnerdtutorials, August 2021, ESP32 WebSerial: Web-based Remote Serial Monitor, https://randomnerdtutorials.com/esp32-webserial-library/ (11.04.2023).

Santos, R., 2015, Why You Shouldn’t Always Use the Arduino Delay Function, https://randomnerdtutorials.com/why-you-shouldnt-always-use-the-arduino-delay-function/ (11.04.2023).

Sharma, A., 2021, WebSerial: Remote Serial Monitor for ESP8266 and ESP32, https://github.com/­ayushsharma82/WebSerial (11.04.2023).

Solomon, B., 2019, ESP32: Async IO in Python: A Complete Walkthrough, https://realpython.­com/async-io-python/ (11.04.2023).

Stoffregen, P., 2015, TimerOne Modified Library, https://github.com/PaulStoffregen/TimerOne (11.04.2023).

Techtutorialsx, 2022, ESP32: WebSerial Console Over Soft AP, https://techtutorialsx.com/2021/07/23/­
esp32-web­serial-console-over-soft-ap/
(11.04.2023).

Toptechboy, 2018, Lesson 30: Advanced Software Interrupt Techniques for Reading Serial Data with Arduino, https://toptechboy.com/lesson-30-advanced-software-interrupt-techniques-for-reading-serial-data-with-arduino/ (11.04.2023).

Citation pattern: Abotaleb M., Authenticated WiFi-Based Wireless Data Transmission from Multiple Sensors Through a Laboratory Stand Based on Collaboration Between ATMEGA2560 and ESP32 Microcontrollers, Scientific Journal of Gdynia Maritime University, No. 127, pp. 27-41, 2023

BibTeX     EndNote