A Learning Management System Enhanced with Internet of Things Applications

A breakthrough in the development of online learning occurred with the utilization of Learning Management Systems (LMS) as a tool for creating, distributing, tracking, and managing various types of educational and training material. Since the appearance of the first LMS, major technological enhancements transformed this tool into a powerful application for managing curriculum, providing rich-content courseware, assessment and evaluation, and dynamic collaboration. With several current research fields targeting various technologies related to the LMS, the future promises many changes in its structure, operations, and implementation. The most important technology that is expected to transform many future aspects is the Internet of Things (IoT). In this paper, we provide a framework for a future LMS enhanced by IoT capabilities. We outline several elements of the LMS that will be affected by IoT, and the expected enhancements and changes that IoT will bring to the LMS functionalities. The framework presented for the IoT-enhanced LMS constitutes the main component of a three year research project that is being conducted at the Arts, Sciences, and Technology University (AUL). In this paper, we illustrate the main parts of this project and the implementation plan of each part, including the prospected outcomes and benefits.


Introduction
Learning Management Systems (LMS) are an evolving technology in today's society, which provides course creation, delivery, management, tracking, reporting, and assessment of online learning materials.It is a centralized software application used to incorporate pedagogical features with the uprising technology of virtual learning environments.This way, learners can use personal devices such as mobile phones and tablets to access resources, upload assignments, take tests, and share information with peers and instructors thus creating a dynamic learning environment.LMS software automates the learning process by registering users, tracking courses, recording data from learners and managing reports.
Generally, an LMS consists of a server component that performs the core functionality (creating, managing, and delivering courses, authenticating users, serving data and notifications …), and a user interface that runs inside the client's browser as a web service (like Gmail or Facebook), that is used by administrators, instructors and students.By implementing and utilizing an LMS within its education system, a university gains valuable benefits, which include: centralized learning, time reduction, costs Reduction, and tracking and reporting features.
In recent years, the concept of an LMS has greatly evolved from online software that is merely used to share course lectures between teachers and students, into a dynamic environment that supports modern learning methods such as collaborative, personalized, and flexible learning.Current LMSs support the usage of completely encapsulated online courses and assessments, using vehicles like the SCORM standard (SCORM, 2015).More recently, collaborative and social media inclusions enabled learners to share the learning experience irrespective of geographic location.The built-in assessment tools allow instructors to create and administer online tests and quizzes to students.In addition, administrators and academic leaders are increasingly factoring the LMS real-time data into emerging educational models, student success initiatives, and institutional objectives (Lang & Pirani, 2014).The LMS is expected to continue evolving with new features to be incorporated within its functionalities in the next years.Some of these features were stated by Moodle (Moodle News, 2017), which include Virtual Reality (VR), increased personalization, gamification, and more feedback as the most expected future LMS additions.
The Internet has deeply rooted itself into education systems; yet, new technologies such as the Internet of Things (IoT) are expected to bring more significant changes to the education sector.For example, Interactive boards and digital highlighters are among the IoT devices that are utilized in education.Similarly, digital scanners aid the learning experience by digitally transferring text to smartphones.By using these devices, students sitting in their classrooms can interact with educators, experts and peers across the world (Ralhan, 2017).Several research works proposed frameworks in which the university campus is transformed by utilizing IoT services into a smart learning environment.In the "Smart University", IoT acts a catalyst that helps students move from the knowledge-transfer educational model to a collaborative self-directed one.
In this paper, we focus on the utilization of IoT services within the LMS.We propose a framework for a future LMS that is significantly enhanced by IoT facilities.In our framework, we define several services that are currently provided by existing learning management systems, and explain the ways these services will change after merging them with IoT services and connecting them with IoT modules and devices.In addition, we propose some new services that will be realized with the integration of IoT into the LMS.For each proposed LMS service, we explain how it will be implemented within the LMS, how it will be joined with other LMS services, and how it will be used within the university campus to enhance the teaching and learning processes.First, we provide in the next section an overview of the state of the art summarizing the research work on the future "Smart University", and then we detail our proposed framework and discuss its operations in Section 3.

Literature Review: IoT in Education
The Internet of Things is the connection of devices, other than standard ones such as computers and smartphones, to the Internet.The transformational journey of IoT has the power to change the world in such a way that people will get closer to their fully integrated and smart surroundings for better management of energy, health, transportation, and life resources.The IoT has already had a considerable impact in areas such as healthcare and customer service.The education sector is also likely to become more impacted as schools and universities make greater use of connected devices.For example, Quick Response (QR) codes have made their way into educational textbooks.Feedback, assignments and additional knowledge resources become easily available to students when they scan the QR codes with their smartphones.Another example is the radio-frequency identification (RFID) chips that are being used by students to tag and track physical objects to study them.In addition, IoT devices are being used by university administration and instructors to take automatic attendance using student ID cards, track equipment, and monitor lighting and security systems.

Structure and Design of Digital Campus based on IoT
In (Veeramanickam & Mohanapriya, 2016), the authors proposed a new model called "Smart I-Campus" that can be applied in campuses where e-Learning techniques are used.This model provides various smart services such as "Smart Classroom" and "Smart Lab" with features accessible from handheld devices and integrated within the e-Learning system or LMS.Smart Classrooms will collect and upload real-time data for future use.Another feature called "Smart Notes Sharing" allows a smart board equipped with IoT devices to transfer real-time data to the e-Learning application in an automated way thus enabling any person connected to the campus network to share classroom notes.Another important feature of the "Smart I-Campus" is the augmented reality and 3D virtual objects within the "Smart Classroom", which will enable students to discover important and real-time information when they come near to learning objects that will be connected to sensor devices.

CISCO and the Internet of Everything
According to (Selinger et al., 2013), CISCO sees the Internet of Everything (IoE) as the networked connection of people, data, process, and things that brings them together in a more valuable way, turning the information they collect into actions with richer experiences.IoE does not only focus on IoT which is the connection of physical objects, but it adds capabilities such as context-awareness and increased power processing to billions of connected people and objects.The four pillars of IoE in education can be summarized as: 1) People: each individual in IoE becomes a "node" in the network, which connects learners not only to experts but also to peers who have similar passions and interests.
2) Things: are physical objects embedded with sensors that can collect data and upload them to the Internet.
3) Data: when "things" are connected to the Internet, they will frequently provide high-level information back to instructors and learners.4) Process: plays an important role in delivering the right information to the needing person at the right time.

Utilizing IoT devices
In (Cata, 2015), the authors propose a model for smart university, which consists of utilizing sensor devices in five main categories: (1) Environment sensors used to detect noise, temperature and lightening; (2) Security sensors for motion detection, opening/closing doors or windows and fingerprints; (3) Safety sensors to detect smoke, fire, and water; (4) Utilitarian sensors for electrical voltages and NFC tags and (5) Information sensors for RFID cards, QR tags, and barcodes.According to (Cata, 2015), many applications within the smart university will benefit from IoT services, such as: (1) Smart Parking that enables the monitoring of vacant parking thus avoiding jams or accidents; (2) Smart Lighting that automatically reduces the classroom light based on the external natural light data gathered from a sensor thus reducing electricity consumption; (3) Smart Tracking that monitors goods and equipment inside a university by the use of RFID technology to evaluate any emergency case; (4) Smart Inventory that identifies any equipment associated with a barcode by reading its QR tag with a barcode reader.

IoT Intelligent Agents
Agent-based architectures have been introduced to represent knowledge in a collaborative environment.Agents are used as specialized entities that are similar to traditional computer programs but differ by their autonomy and ability to operate on their own with no guidance.These problem-solving entities can run continuously while perceiving environment changes and adjusting their behavior accordingly.They keep track and control of their internal state and actions, and can learn what to do in a particular situation by refining their goals and taking proactive initiatives to fulfill them.By installing smart agents within IoT devices, a Multi-Agent system (MAS) can be created to support students' learning activities adaptively by promoting real-time collaboration among learners/tutors, and allowing tutors to take real-time actions to guide/adjust the learning path of a student or group of students (Moubaiddin et al., 2013).
With everyone agreeing on the important role that IoT will play in future education systems, little effort is done or being done on studying the opportunities that IoT can bring to the LMS.Over a decade, the LMS has opened a new world of possibilities for both education and training sectors, which have experienced a shift towards offering more personalized learning experiences and enabling learners to cooperate and discover new learning methods.In the next few years, many LMS future trends are expected to grow especially with the proliferation of IoT and virtual reality concepts.In the next section, we present a framework that illustrates our vision of a future LMS in which IoT capabilities are exploited to transform current LMS features into more advanced services that provide new learning opportunities to students and new teaching and management solutions to instructors.We propose a general design of each new and enhanced feature, illustrate its expected benefits, and explain its projected implementation details within the IoT-enhanced LMS that we are going to realize as part of an ongoing research project.

IoT-enhanced Learning Management System
We live in a world where learning is a constant engagement that integrates in most of our daily activities.With technology enhancements, the classroom is becoming "carried" in our pockets via software such as the LMS which is constantly developing to provide a continuous stream of information.However, we expect that the technology that will mostly enhance and expand educational opportunities is the use of "smart" IoT devices that will change the way we view and use the LMS, as we will illustrate in this section.
When paired with the LMS, IoT can expand the learning process by enabling data flow between sensor modules that are installed in classrooms, laboratories, libraries, and other campus locations and between students, instructors, and other university staff to provide a continuous and flexible learning environment.In this section, we illustrate the design of the different parts of an IoT-enhanced LMS.We started working on this project by the beginning of summer 2017, and expect to have an initial prototype that contains all features that we will describe in this section by the end of 2019.We will build our proposed IoT-enhanced LMS on top of Moodle, which was chosen for several reasons, mainly: open-source, global community of developers, ability to use and edit available plugins, and easy to develop via PHP.In the remaining of this section, we describe each LMS feature that will be enriched by combining it with IoT services and tools.We provide the planned implementation details of each feature, and explain the changes that it will bring to the LMS usage and the benefits that it will add to the education system.

Experimentation
Students will use the IoT-enhanced LMS to supply real-life data for experiments and projects.If a student is doing a project or a lab experiment and he/she needs to acquire certain type of data, he/she might search online to find it, download it, and input it to the experiment.In many cases, the student requires specific characteristics of the data that he/she would not find online.In this case, the student would prefer to acquire the data that contains the needed characteristics from its original source; for example: natural habitat, hospital laboratory, liquid manufacturing plant … In order to achieve his/her objective, the student will deploy the sensors needed to collect the data on a small IoT module (for example, Arduino or Raspberry Pi) that can be connected to his/her LMS account on his/her mobile device.At the data source, the student reads the data via the IoT module, and possibly filters it (if the IoT module is equipped with smart data filtering system), then transfers the results to his/her LMS account.The LMS will save the data in the experiment/project profile to be used later when the student is performing the experiment or working on the project.By exploiting the IoT-enhanced LMS the process of collecting data for scientific usage is transformed from a manual task to an automatic and efficient operation.The student can review the collected data in his/her LMS account before inputting it to the experiment.
In general, IoT devices can be used in laboratories in various ways: simulations and interactive experiments can be remotely performed by connecting IoT devices to different kinds of lab machines (chemical reactor, microscope, Bunsen burner, oscilloscope …) and allowing students to access and control the IoT devices remotely over the LMS.Students can control the operations of the machines by means of a control program that executes on the IoT device.The control program is used to manage robotic machines that will be interacting with the lab devices of the experiment.The students will also be able to record results from the experiment using IoT devices (sensors, audio recorder, Googles glass …), and transmit these results to the LMS and save them for future analysis.Note that IoT devices will host intelligent agents that monitor their usage and calculate various statistics about the experiment, in addition to reacting to user interactions.The intelligent agent will make the IoT device change its operations according to feedback obtained from the user after finishing an experiment.Figure 1 illustrates an example of how a laboratory controller module containing IoT devices is used to dynamically control various types of lab equipment, such as the robot arm shown in the figure.
In our proposed LMS, the implementation of the experimentation section will be divided into three main elements: the Robotic Arm package, the Arduino Lab Controller package, and the Remote Service package.The Robotic Arm package runs on the Arduino microcontroller and is used to define the physical components of the robotic arm such as the number of motors, arms, weight, sensors placement, etc. and to execute the commands that are sent by the Lab Controller package on the Robotic Arm.The Arduino Lab Controller package also runs on the Arduino microcontroller: it defines the connections between the Arduino inputs/outputs and the commands to the robotic arm as well as the specific tasks that will be performed by the arm when the Arduino sends it the commands as shown in Figure 1.Finally, the Remote Service package runs as a custom plugin within Moodle: it contains the server-side code that is used to accept user's inputs and generate commands that will be sent to the Arduino Lab Controller package.
When a student wants to perform a remote experiment, he/she logs in into his/her LMS account and starts the Remote Service which contains the experiments, equipment, and regulations of each remote lab in which he/she is registered.The student selects the required lab, specifies the experiment he wants to perform, and reserves the needed equipment.If the experiment requires external data, the student uses the IoT module to gather the required data and save it to the experiment profile as explained before.Upon receiving the data on the LMS, the student executes the experiment by importing the data from the experiment profile to the experiment program that is executed by the Remote Service package.The latter translates the experiment data to special commands or data that are sent to the Lab Controller package and used to control the lab machines and execute the experiment.
While the experiment is running, the student observes the execution on his mobile device via a web camera that livestreams the execution to the LMS as shown in Figure 1.In our system, the Remote Service package will use different libraries to setup and control various lab machines.For example, the PyVISA library (PyVISA, 2016) is used to control the measurement devices in the experiment.Similarly, other types of devices will require their libraries to be imported before they can be used by the Remote Service package.When the experiment finishes, the experiment results and the reading of various sensors that are monitoring the experiment environment will be saved on the memory of the IoT module and sent by the Lab Controller package to the Remote Service package, which will display the results to the student and saves them in the experiment profile.Experiments profiles for different laboratories are stored in the LMS database at the university server or in the cloud.
The benefits of executing a remote experiment via the IoT-enhanced LMS will be enormous: First, the student will be able to run a lab experiment at any time from any place, without missing any of the experience that is gained by being physically present at the experiment location.The webcam video stream, the feedback from the sensors' readings, and the ability to control the operations and steps of the experiments via the robotic arm will enable the students to gain all experiences provided by the experiment.Second, it will play an important role in enhancing personalized learning by enabling each student to perform the experiment using his own style.After a student finishes the experiment, the lab instructor will review the experiment profile; analyze the student's performance from the experiment execution steps, sensors' readings, and experiment results; and provide feedback to the student in the form of guidance and advice for improvement.Finally, it will encourage cooperative work by allowing group of students, each working on his LMS account, to work together on the same experiment by sharing a distributed Remote Service environment.
Figure 1.Components of remote experimentation system controlled from the IoT-enhanced LMS

Virtual Reality
Virtual Reality (VR) is becoming an important part of modern education.Students can learn many types of concepts by means of a 3D immersive digital environment much better than text, photos, or videos.Virtual reality educational lessons and applications are being developed for various majors and courses.The future IoT-enhanced LMS will enable students to take VR lessons, by integrating the VR software within the LMS, and by connecting IoT modules to the real environment that is simulated by the VR lesson.The data collected by the IoT modules will be used by the VR simulator to enhance the VR lesson and give students more realistic interaction.Hence, virtual reality could be transformed by exploiting IoT capabilities from its current static form into what we call Dynamic Virtual Reality (DVR), in which the 3D environment modeled by the VR software is dynamically changed according to the input data from the IoT sensors.
Recently, mixed reality (MR) has gained popularity with its capability of adding VR features into real environments.Mainly, MR allows the user to perform the VR functionalities while interacting with the real world and executing the virtual simulation.In many educational applications, it is impossible to learn using MR, due to the unavailability of the real world that is to be learned, or due to the inadequacy of students to use the real word.For example, medical students can perform a surgery within a simulated virtual reality program, but will not be allowed to perform that surgery on a real patient using MR.Another example is that history students can perform a tour of a historical location using a VR program that simulates the complete 3D details of the historical location.However, they cannot do the same tour using mixed reality due to the physical distance that separates them from that location.
In order to enhance VR and make the experience that it provides similar to that provided by MR, IoT could be used to transform VR into DVR.This is done by exploiting the readings of sensors that are attached to the real world that is simulated by VR.The readings of these sensors will be fed by the VR program to the software modules that generate the VR environment, which will be continuously modified based on these readings.For example, sensors that are scattered across the historical location that is simulated in the VR program send frequent readings that describe the characteristics of the location environment to the cloud.The VR program will download these readings, and create the simulated VR environment based on them.For example, the weather, temperature, visibility, etc. are modified based on the current situation that is deduced from the sensors readings.Students using the VR program will know that they are exploring and interacting with a simulation that is identical to the current status of the location they are exploring.With respect to the second example, instead of working on a virtual patient that will react based on a static code, students will wait for a real surgery to be happening at a hospital, and will start their simulated VR surgery at the same time.Sensors and IoT equipment used by surgeons that are doing the real surgery will save frequent readings of the patient reactions, blood pressure, heart rate, etc. to the cloud.The VR program will download these readings, and adjust the status of the patient in the VR simulation according to them.The students working with the simulated VR surgery will be performing the surgery on a patient that resembles a real patient with real reactions and medical conditions, not just a simulated one that is restricted to the limits of the VR program.In addition, the students will be comparing their work at the end of the surgery to that of a real medical team.In our proposed LMS, we will build a DVR prototype using the NeuroVR virtual reality platform (Riva et al., 2007).From the LMS, we make software calls to the NeuroVR editor and player that will enable the LMS user to set up a DVR environment and view it within the LMS Interface.A 3D model of a human heart will be used to create a DVR simulation.At the same time, a pulse rate sensor, similar to those provided by SparkFun (Pulse Sensor, 2015), will be attached to an IoT module to save the pulse rate data that is read by the pulse sensor to the IoT module memory.Next, the pulse rate data is translated by the IoT module into a numeric value and sent to the DVR thread that is being executed by the LMS.Based on the pulse rate value, the DVR simulation will be interrupted to setup a new value of the heart beat rate parameter and apply it dynamically while the simulation is running.Figure 2 illustrates the components and execution of a sample DVR scenario.
Without doubt, the DVR technique will enhance virtual reality to a higher level.The integration of VR and smart sensors will enable students to explore a more realistic environment that adapts according to real time changes that are occurring in the environment that is being simulated.Students will benefit from DVR by experiencing various situations that cannot be completely depicted by static VR simulations, will gain confidence by virtually solving real life problems and events that are occurring at the same time in other locations (for example: hospital surgery, bridge construction, nuclear fission reaction …), and undergo advanced practical experience that will make them more acquainted to real life jobs.In addition, the process of observing and analyzing real life data and reactions within the DVR simulation environment will open students' minds to new thinking horizons that are discovered by analyzing new changes that are occurring to the simulated environment.

Remote Lectures
The IoT-enhanced LMS will make use of a future IoT network that will be installed in the campus to transmit lecture material and live video streams of lectures to students anywhere in the campus in a very fast and efficient method.By using communication towers that are able to transmit data and multimedia to distant locations, the IoT modules in the classroom will record and transmit the lecture, along with any attached lecture notes and material (data created during the lecture, interactive exercises, etc.) to the LMSs of the registered students.In addition, the university could build lecture spots, which are small sitting places scattered throughout the university, and containing a radio transceiver that connects via a high speed wireless connection to the communication tower.A Student can connect from his mobile device to one of these lecture spots (using Wi-Fi, 5G, or possible future communication protocols) to watch the lecture, save it, and interact with the instructor and class via his/her LMS.
In the near future, classrooms will be equipped with IoT devices connected to webcams, microphones, speakers, smart boards, smart printers and scanners, and other lecture capture facilities to record the audio, video, and related data created or shared during lectures.Each student registered to a course will be able to access all resources of a lecture, watch in real time its recorded videos, and interact with its data resources that are being created or shared during the lecture by his classmates and the instructor via a link on his LMS account.
With respect to the campus IoT network, many wireless carriers around the world are constructing new cellular networks that are designed to support Internet of Things.These new networks are targeted for Human-to-Machine (H2M) and Machine-to-Machine (M2M) communications with future IoT devices.These networks will be using wireless spectrum, mostly unlicensed, to support IoT communications.According to (Conrad, 2016), these new networks will handle small size messages, and can carry these messages to farther places by trading range for bandwidth.
From another point of view, many universities have installed a distributed antenna system (DAS) in order to improve cellular service and provide students and staff with reliable coverage to conduct research and study without facing weak connectivity problems.The DAS is a standalone network that distributes a wireless signal to a set of small antennas that are located in areas where more coverage and capacity are needed.In the future, it is expected that IoT communications will become a major force in fueling various applications and operations within the university campus.In order to enable H2M and M2M communications between different facilities in the university, it is expected to have future systems similar to a DAS that will contain multiple communication towers distributed across the campus.The future DAS will support both cellular and IoT communications, in order to enable both types of important applications within the university campus.In fact, 5G technologies are being designed from the ground to support M2M and H2M communications and devices.In order to enhance such communications, a mesh network of high-speed radios can be deployed throughout the campus to capture various supported types of data from IoT and mobile devices and relay it to the IoT-DAS towers and vice versa (Figure 3).The mesh network helps the wireless signal in reaching areas that are difficult to cover by the IoT-DAS network such as underground floors or isolated laboratories.
The "Remote Lectures" application will work as follows: one or more cameras within the lecture room will record the lecture and send it to the IoT-DAS system via the radio mesh network.At the same time, any lecture related data are gathered by the smart devices, grouped by the main IoT module in the classroom and transmitted to the IoT-DAS system also via the radio network.The IoT-DAS system will send the data to the university central server that will add the data to the LMS account of all students registered in the course.A student can access the lecture remotely by logging into his LMS account, downloading the lecture resources, and livestreaming the lecture.On the other hand, a student who is within the campus area will be able to access the lecture more efficiently via the IoT-DAS system.The student will connect to the IoT-DAS system via the nearest radio.The IoT-DAS system will authenticate the student and transmit the lecture multimedia, data, and resources via the high speed wireless radio to the student's device.An IoT-DAS service will be integrated within the LMS to execute an IoT-DAS communication program which will efficiently exchange data with the wireless radio using the applied communication protocol.Using the IoT-DAS service, the student can livestream high quality multimedia from the tower and communicate and interact with the instructor and students (inside and outside the classroom) via their LMS accounts.An overview of these operations is depicted in Figure 3.With network infrastructure that supports both multimedia and IoT data yet to be installed, it is expected that this feature will take some time to be fully realized.However, we will implement its foundations in our IoT-enhanced LMS project.The plan for this application is as follows: we will implement a client/server plugin within the source code of Moodle that will connect and exchange data with two radios: a high-speed multimedia radio (HSMM) such as those produced by Linksys (Linksys Wireless Routers, 2017), and an IoT radio that uses LORA technology (Vangelista et al., 2015), such as those produced by Adafruit (Wireless Category, 2017) (by means of an IoT module that is connected to the mobile device running the LMS).A web camera will be wirelessly connected to the HSMM radio to transmit multimedia data to the LMS, while a laser scanner will be synched to the IoT module to transmit lecture-related documents via the IoT radio.
In our prototype, when a lecture starts, the instructor will prepare the remote lecture as follows: she logs in to her LMS course homepage and chooses the "Lecture Recording" mode, which runs the client/server plugin that will connect to the two mentioned radios.We will test our proposed LMS in a scenario in which the web camera will send multimedia stream to the HSMM radio, and the latter will forward the data packets to a dedicated thread in the client/server plugin that will forward the data to the LMS central server, which will update the LMSs of registered students with a link to the lecture's material.At the same time, we will scan documents related to the lectures using the laser scanner, which will automatically send the scanned documents to the IoT module.The latter will transmit the scanned documents via the IoT radio to another IoT radio that is connected to another IoT module at a distant location.A student who is present at this distant location will run the client/server plugin on his LMS, connect to the IoT radio near him, and receive the scanned document in his LMS via the client/server plugin that will retrieve the data from the IoT radio.At the same time, he can watch the lecture from the lecture link that was created by the LMS server on his account.
The "Remote Lectures" option in the IoT-enhanced LMS will give students more flexibility in managing their schedules, similar to the currently implemented virtual classroom method.However, the proposed feature will allow the student also to capture all important resources related to the lecture.For example, when the instructor is performing an experiment or interactive exercise during the lecture, students who are watching the lecture remotely via video conferencing will not be able to know what data is being produced circulated, or exchanged.Using sensors and smart devices that can transmit their data to the classroom IoT module, remote student will be able to obtain all kinds of data related to the lecture from their LMSs.

Data Sharing
An important role that will be played by IoT in education is enabling students to perform real life projects and experiments, without having to be physically present at the location of the experiment.This can be done by a process of collaboration between universities and industrial companies, factories, and institutions that contain the equipment of the experiments.For example, medical students can perform medical tests, laboratory experiments, medical operations and surgeries without having to go to the hospital.If an experiment requires medical equipment that are not present at the university, the university can arrange with a hospital that contains these equipment for the students to perform the experiment remotely via the IoT-enhanced LMS, possibly with the help of doctors or staff at the hospital.In general, the university will create accounts on its LMS for experts and professionals from these companies, factories, and institutions and will install required IoT modules at various experiment locations that will be connected to machines, equipment, and tools of the experiment to read data and/or control the operations on these machines whenever needed.
In our example, when a group of medical students want to perform a medical experiment using equipment at a remote hospital, they will access the LMS, and start the remote laboratory service, which will enable them to use the IoT modules that are connected to the equipment.The students will specify the input parameters and the environment of the experiment, then they will use the sensors that are connected to the IoT module to gather the experiment output and data.While the experiment is executing, the students could change the environment by issuing control commands via the LMS whenever needed.This operation could be guided by one or more experts either physically at the experiment location or remotely via special LMS accounts that are created for them.Currently, similar features are available in remote laboratory software.However, it is still missing IoT capabilities and services.Integrating IoT sensors and modules within remote laboratories will give student more control over the experiment and will allow them to monitor certain aspects of the experiment that they want to obtain information about.The installation of required sensors as part of remote laboratory experiments and the ability to command and control them from the LMS will enable students to participate in realistic projects and activities, without violating the security and privacy of the company or institution.
From another point of view, The IoT-enhanced LMS could act as a data hub for saving data required for lessons or projects.The student can search for data about a certain topic from various resources: the Internet, books, CDs, nature, sensor readings, etc. and store all these data in the LMS for filtering and processing.When the student wants to obtain certain real-life data that he wishes to gather from original sources where it is generated, he uses the IoT module to record, filter, and produce patterns of the data before saving it into the LMS.The data gathered by the IoT module could vary from images captured by a digital camera, to sensor readings of temperature, pressure, humidity, distances between objects, to sound waves captured by ultrasound sensors, etc.
Here, we are assuming that the student will connect to the IoT module the required sensors that are supplied by the university, and that the university will allow the student to use the IoT module to collect needed data under defined regulations.The data recorded and processed by students will help them in their learning, and can also be valuable to research and industrial communities.Using the IoT-enhanced LMS, the student can share his data and experience that he obtained about a certain topic with the whole class to enhance collaborative learning.
In our proposed LMS, we will add to the main menu a link with title "Collect and Share Data".Under this link, the student will have several options: 1) Import data from his device or from the cloud (Google Drive, Dropbox …), 2) Insert data using one of the LMS plugins (for example, Download instructor files plugin, Microsoft Word plugin, NeuroVR virtual reality plugin …), 3) Insert data using IoT module, etc.When the student selects the third option, the LMS will scan all connected devices and ask the user to choose a device to pair with.The user selects the IoT module which will make the LMS connect to it by utilizing the required libraries.After a connection is established, the LMS will receive the data from the IoT module and save it to a new folder in the "Collect and Share Data" section.When data is present in this section, the user has the options to apply a mining algorithm on the data, or move the data to a certain project, lab experiment, or course section in the LMS.In order to implement the first option, we will utilize external mining algorithms, such as those provided by Weka (Hall et al., 2009) or Mahout (Owen et al., 2011) within Moodle source code.For example, a Weka algorithm can be called from a Moodle script by PHP-JAVA bridge library.Using this feature the student will be able to cluster the data and produce required patterns on it directly from within the LMS without the need to manually exporting the data to an external application.

Students' Assessment
Current learning management systems offer a wide variety of features to support assessment of students, such as online assignments, essays, surveys, etc.However, the IoT-enhanced LMS will be used for real-time assessment and for self-assessment.The IoT-enhanced LMS will enable instructors to store assessment rules and grades distribution for each experiment or activity.The LMS will monitor students' performance via the IoT modules and will give them automatic grading when they finish the experiment or activity.In other cases, the instructor will ask the students to grade themselves or their peers using the assessment rules and grades distribution that he defined.Not only will the results of the experiment or activity be used to assess the student, but also the IoT sensors' readings will be analyzed to assess his/her performance.For example, the time that was needed by the student to successfully complete each task, the number of attempts, the number of errors that occurred during each task, the quality of generated results, etc.In order to calculate these parameters, sensors will be integrated within an IoT module that will be connected to the experiment or placed near the activity to monitor the student, record necessary readings and save them to his/her assessment profile on the LMS.The latter will use the assessment profile of each student to grade him according to the assessment rules that were defined by the instructor, who will review the assessment profiles to confirm or adjust the grades that were calculated by the LMS.
In traditional lab experiments, many details related to how each student performed the experiment will not be available to the instructor, since knowing these details requires that he/she should be present with the students all the time watching and recording every step each student is doing.In many types of experiments, the instructor will make use of the readings that are collected by the IoT sensors to know the steps that were followed by each student during the experiment and the contribution of each student in the group.This information will be extracted from the sensors' readings that will be transmitted by the sensors to the IoT module.Before the experiment, the instructor will create an assessment profile for each student or group, and will program each IoT module to save the sensors' readings to the corresponding assessment profile.At the end of the experiment, the instructor will review each assessment profile to realize the complete details regarding the execution of the experiment by each student or group of students.
Consider, for example, a "Digital Circuits" laboratory in which students are required to perform an experiment on a digital breadboard (Figure 4).While the students are doing the experiment, a camera module will frequently take a photo of the group of students, and send it to the IoT module that will execute a face recognition algorithm to identify each student and check his/her presence (automatic attendance and adherence).The frequency of taking photos by each camera during the lab session will be decided by the instructor.At the same time, a group of sensors attached to the IoT module will obtain readings that will be used to determine the steps that the students are taking.For example, a photoelectric sensor can be used to detect whether a certain object is present on the breadboard at a certain instance or not.A proximity sensor can be used to measure the distance to objects on the breadboard to know the location of each object and the type of connections between objects.An electro-optical sensor can be used to detect whether a LED is ON or OFF at a certain instance.A temperature sensor could be used to measure the temperature of certain objects to detect errors or issue an alert, etc.Finally, one or more LCD displays could be connected to the experiment to display experiment results.Other LCD displays would be connected to the IoT module to display sensor readings and alerts, and certain timings related to the experiment.The IoT module will periodically aggregate the data received from the camera and sensors, and will send this information to the LMS server.The latter will extract the assessment profile ID from the message, and will save the message information in the corresponding assessment profile, as shown in Figure 4.
At AUL University, the "Logic Design" laboratory provides students with a hands-on experience in assembling and testing electronic circuits.The lab includes a set of experiments that are performed by students on a breadboard using items such as wires, wire strippers and cutters.While assembling each experiment, students make use of various items such as basic discrete components (transistors, resistors and capacitors …), logic chips, and timers.The lab instructor explains the instructions of the experiment that are stated in the lab manual at the beginning of the session, answers the students' questions, and constantly checks their progress.We will use our proposed IoT-enhanced LMS to help the lab instructor of the "Logic Design" lab as follows: we will attach an IoT module that is connected to an IoT camera (such as ArduCAM), a photoelectric sensor, and an electro-optical sensor to each breadboard.The IoT modules will connect to AUL LMS server via the lab Wi-Fi gateway.The IoT module is initialized at the start of the lab session.Each two minutes, the IoT camera takes a photo of the experiment space (equipment and students), and saves the photo in the IoT module memory, which executes a face recognition algorithm to identify the students, and save the time at which the photo was taken and the IDs of the students in the experiment profile at the LMS server.
The photoelectric sensor and the electro-optical will be placed near the breadboard to sense events that occur.
When a new object is inserted into the breadboard, the photoelectric sensor detects the change and sends a signal to the IoT module.Also, when a LED on the breadboard turns ON or OFF, the electro-optical sensor detects the change in light and sends a signal to the IoT module.When the latter receives a signal from one of the two sensors, it triggers the IoT camera to take a picture of the breadboard and send it to the IoT module, which will save the picture in the experiment profile at the LMS server.At the end of the experiment, the instructor will review the experiments' profiles to check the overall presence of each student, and will examine the set of pictures of each breadboard to know the steps followed by the students to execute the experiment.The implementation of this plan will be the first step to integrate student' assessment during laboratory experiments within the LMS.The results of this implementation will give us insight to apply it to other laboratories, or to make improvements; for example, by adding/modifying the IoT module sensors, or changing certain parameters such as the triggering conditions and periods.

Classroom Applications
An important feature of modern learning is the self-directed learning pedagogy approach, in which the instructor allows each student to discover and learn the course material in the best way that suits him/her.This learning method is sometimes combined with interactive learning, in which the student interacts, using modern technology tools, with the material that he is learning in a way designed to teach him the concepts and objectives by engaging activities.The IoT-enhanced LMS will help the instructor track and monitor the student's activities during self-interactive learning.Two classroom applications related to this topic will be explained in this paper.
Adaptive learning digital textbooks are an important tool that can track how well each student understands the course content and can provide supplemental material or practice activities in various forms including video, text, experiments, or even virtual online 3D tours.These adaptive learning digital textbooks can be provided within the LMS and the feedback they obtain from the user can be enhanced by analyzing data collected by IoT devices.For example, the digital textbook could contain an interactive experiment that the student should execute.The steps taken by the student during execution of the experiment are recorded by the digital textbook.On the other hand, the time taken by the student to perform each part of the experiment and the reactions of the student that illustrate the amount of difficulty he faced can be recorded by the sensors of the IoT module as described in Section 3.5.The feedback data that was supplied by the user to the digital textbook and the data collected by the sensors of the IoT module are analyzed by a machine learning algorithm.The results of the machine learning algorithm are used by the adaptive digital textbook to suggest the next step for the student (previous topic, additional material, next topic …).Moreover, a link to these results will be added to the instructor's LMS, which will enable the instructor to have clear idea about the student's level in the material he/she is studying, and provide him/her with additional help or switch him/her to an intensive course or training whenever needed.
Another application that benefits from IoT tools in the classroom is using NFC tags to provide students with important information at the beginning of a lecture.In many cases, the instructor has some information that he/she needs the students to know before the lecture.In this case, an NFC tag can be placed inside the classroom.
The teacher can program the NFC with the required information from his mobile LMS, and the students can use the NFC tag to obtain the information to their mobile LMSs when they enter the classroom.This can be done by adding a utility service to the LMS that writes and reads data from an NFC tag.Whenever an instructor needs to give to the students some last minute data or files related to the lecture (up to 8KB which is the maximum storage capacity of current NFC tags), he/she can access the NFC service from his mobile LMS after he/she enters the lecture room, and transfer the data to the NFC tag.Then he/she puts a sign near the NFC tag that new information related to the lecture should be downloaded by students.Each student will notice the sign when he enters the lecture room, will log in to his LMS account, and use the NFC service in the LMS to read the data from the tag.After that, the student can attach the data to the corresponding lecture in the course he is attending.Figure 5 illustrates the flow of events when sharing data between instructor and students using NFC tags.Note that some previous works have discussed other possible applications of NFC in the classroom.However, the LMS is not used as part of these applications.For example, the authors in (Shen et al. 2014) present a smart classroom system that integrates NFC, LED displays, and multi-touch display to manage students' attendance and locations in large classrooms.
Figure 5. Sequence of events that occur when an instructor transfers information to students using NFC tag We will implement the applications discussed in this section in our project as follows: first, with respect to the first application, we will create a section within the main menu of a Moodle course called "Adaptive Learning", which will contain a set of dynamic and interactive educational resources that allow the student to interact with the educational content, explore additional educational resources, and switch from one learning subject to another when he wishes to.While the student is exploring the contents of this section, the LMS will occasionally ask the student questions about the level of the material he is studying, how much he feels interested and enjoying the material, and the difficulties he is facing.The student's answer to each question and the time at which he answered will be saved in his/her LMS session profile.At the same time, an IoT module will be monitoring the student while he is studying.Several sensors can be connected to the IoT module that will monitor the student activities and reactions.In our prototype, we will use Empatica E4 sensor that is embedded in a wristband to measure the student's stress and excitement levels.While studying, the student will wear the wristband that will frequently transmit his/her stress levels to the IoT module, which will save them in the student's LMS profile.At constant intervals, the proposed IoT-enhanced LMS will execute a machine learning algorithm, such as deep neural network Q-learning or DQN (which has been used in similar applications, such as Tkachenko, 2015); to identify the student's general satisfaction and understanding of the material he is studying.
The results produced by DQN will be saved at the LMS central database, and a summary will be sent to the instructor's LMS.
With respect to the second application, we will integrate the nfc-pcsc library (Nfc-pcsc, 2017) within the source code of Moodle Mobile 2 (Moodle Mobile, 2017).The latter operates on top of Node.js, which is a server-side runtime environment for developing networking applications (Tilkov & Vinoski, 2010).The nfc-pcsc library is written in JavaScript, operates within Node.js, and can be easily imported to a client-side script.In our prototype, we will create a new main section in Moodle Mobile called "NFC".When a Moodle user enters this section, the system will execute a script that scans for a near NFC tag.If found, the system displays three options to the user: 1) Set-up the NFC tag, 2) Write to NFC tag, or 3) Read from NFC tag.If the user chooses to set-up the tag, the system checks that the user has instructor privileges.If yes, the system asks the instructor to enter a write password, and saves it on the tag and in the LMS database.If the user chooses to write to the tag, the system asks him/her to enter the write password, authenticates him/her, and then asks him/her to write or upload data that should be saved on the tag.If the user chooses to read from the tag, the data stored on the tag will be transferred to his LMS and displayed as plaintext or as a file within the "NFC" Section.

Security
IoT modules can be used to grant admission to university personnel at various campus locations that require secure access.The IoT-enhanced LMS will be used to automate this process.Consider for example, a closed event for the Mechanical Engineering department that allows only the students and instructors of the department to enter the event.Another example is a closed meeting of a university committee.The IoT-enhanced LMS will be used to provide access in such cases as follows: the event administrators will send email invitations to all users who could attend the event.The email invitation will include a secret pin that is unique to the user.At the event location, the user will log in to his/her LMS account, generate his/her event access code based on the secret pin that he/she received by email, and use the access code to enter to the event or meeting.A similar approach is used to access restricted areas: each person who needs to access the restricted area needs to have a pin that is sent to him by email or obtained at the university administration office.The pin is used by the user's LMS to generate the access code that is scanned by the IoT module to authorize the user and grant him access.
In our proposed IoT-enhanced LMS, we will integrate a QR code generator algorithm within the source code of Moodle Mobile.The QR code generator script will generate a QR code based on an input token.Whenever there is an event or a meeting that is restricted to certain participants, the event or meeting administrators will create a list of participants, and will send an email that contains a secret token to each participant.When a participant arrives to the event location, he/she logs in to his LMS account on his mobile device, and uses the secret token to generate a QR code.The proposed IoT-enhanced LMS will contain an option that allows the user to generate the QR code on the fly.This can be done as follows: the user accesses the email message that contains the invitation from his LMS, and presses on the secret token.The LMS will display a menu that contains several options.One of the options is "Generate QR code" (this feature will be added to the source code of the LMS).When the user clicks on this option, the LMS executes the QR generation script which will generate a QR image based on the secret token.Once the QR code image is generated, it is saved inside a "QR codes" folder in the LMS and displayed on the screen of the user's mobile device.
At the event location, the user can either generate the QR code on the fly, or open it from the "QR codes" folder if he has previously generated and saved it.When the QR image is displayed on the mobile device screen, the user passes the latter under the QR scanner that is responsible for authenticating users.The authentication process is done as follows: at the entrance to the event or meeting, a QR code scanner is monitored and managed by a security personal.Each user who wants to enter will generate the QR image as described, and will pass his mobile device under the QR scanner.The latter will scan the image, and pass the output data to an IoT module that will execute a QR code reader algorithm to generate the secret token from the data.When the IoT module is initialized, it downloads the list of users and their tokens from the university main database.When the IoT module receives data from the QR code scanner, it generates a token and searches for it in the participants-tokens list.If the token is found in the list, its corresponding participant is marked as "Present", and a green LED is illuminated in the IoT module to indicate that the QR code is correct.If the generated token is not present in the participants-tokens list, or if it is present but its user is marked as "Present", a red LED is illuminated in the IoT module indicating a security error.The user should contact the event administrators in order to resolve the security error.Figure 6 illustrates an overview of the described operations.
Figure 6.Securing access to restricted locations and events by using QR code security in the IoT-enhanced LMS

Classroom Monitoring
Future classrooms are expected to be equipped with various types of sensors that will be controlled and managed by the university administration.These sensors will read and transmit information about events occurring in the classroom to the university main server.This information will be classified as restricted, and will be secured to be accessed only by the university administration via the university LMS services.The university administration will make use of this information for better management of each classroom.The data gathered by the IoT sensors in the classrooms will be used to determine many parameters such as the level of class organization, students' interaction, amount of teamwork, etc.In general, it is not common to have cameras in the classroom that monitor the instructor and students during the lecture.Instructors will feel offended, and students will complain for lack of privacy.At the same time, it is not feasible to ask teaching experts to watch the lectures given by all instructors in order to discover problems related to the instructor's teaching methods, communication skills, etc. and students' problems such as low understanding abilities, motivation problems, carelessness, etc.
The data obtained by IoT sensors in the classroom will be analyzed by machine learning algorithms to detect many of the problems stated above.Various types of sensors will be used to reach this objective.For example, position sensors can be used to detect students' placement and determine the percentage of time students are learning in groups or performing a collaborative activity.Sound level meters can be used to detect occurrence of clutter or disorder.Voice sensors (also called voice activity detection or VAD, similar to the system proposed in Wang, 2013) can be used to identify students who are engaging in discussions during the lecture, and hence, to determine students who are inactive for long periods during lectures.CO 2 gas sensors could be placed in the tubes of the air conditioning system to measure the CO 2 concentration in the classroom at different time intervals.By using the algorithm proposed in (Pop et al., 2017), the level of concentration and excitement in the classroom can be measured from the differences in the CO 2 concentration readings.When students are using classroom laptops or tablets, smart headphones such as Mindset (Mindset, 2017) can be used to measure the focus level of the student by means of electroencephalography (EEG) sensors that are built-in within the headphones.
Each sensor in the classroom will transmit its data via the IoT network that was presented in Section 3.3 to the university main server, where it will be stored in the university cluster.Periodically (for example, at the end of each day), the LMS server will execute a machine learning algorithm that will mine the data collected by sensors in each lecture to determine patterns, statistics, and problems.The results are saved to the LMS accounts the university administrators with alerts for problems.The administrators will use the results of the various executions of the machine learning algorithm to identify problems with students, instructors, or regulations.Hence, suggestions for providing suitable help for students and instructors, promoting a new teaching method for certain material, or changing a certain rule can be made by the administrator to deans and chairs.
An initial implementation plan for classroom monitoring at AUL will include the utilization of three types of sensors.We will select a course that requires students' high concentration, interaction, and group work to monitor using these sensors.For example, the "Computer Graphics" course in the Graphic Design department includes group exercises, demonstrations, presentations, and discussions during lectures.In the course classroom, we will install a set of Pyroelectric infrared (PIR) sensor modules.Each PIR sensor module will contain two pairs of PIR sensors orthogonally aligned in addition to modified Fresnel lenses (similar to the setup used by Yun & Lee (2014)).We will use four PIR sensor modules (two modules attached to the ceiling and two on opposite walls facing each other).The four modules will be used to detect changes in students' positions, in addition to the directions and distances of their movements.The data collected by the RIP sensor modules will be sent to the classroom IoT module that will aggregate the data and send it to AUL LMS server via the classroom gateway.
In addition to the PIR sensor modules, we will install two sound sensors (such as SparkFun Sound Detector (SparkFun Sound Detector, 2014)) at opposite ends of the classroom, and connect them to an IoT module that will execute a sketch that frequently calculates the sound level measured by the sensor.When the latter is found to be greater than 70db, the IoT module saves the sound level and the time at which it was read.At the end of the lecture, the IoT module will send the recorded sound levels to the LMS server.Finally, four microphones will be set in the classroom ceiling and connected to an IoT module that will select the best audio signal from the four signals, and saves samples of the signal at constant intervals (for example, 10 seconds).The saved samples are periodically aggregated and sent to the LMS server, which runs a voice activity detection (VAD) algorithm (similar to (Wang, 2013)) to identify (over time) the different voiceprints in the signal and detect students who are engaging in class discussions and activities.The overall results of the VAD algorithm, along with data from the RIP sensor modules, will be analyzed to identify patterns in students' behaviors, and point out students whose behavior deviate from normal patterns.The results are accessed by the corresponding university administrator via a new LMS service that will be added to Moodle source code.This new service will enable the administrator to view various analyzed data, results, patterns, and behavior graphs obtained from the machine learning algorithms.The administrator's objective is to deduce the reasons and problems causing deviations in behavior, if any.The successful implementation of this setup in one classroom and the results obtained from monitoring the "Computer Graphics" course will form a starting point for implementing it in other classrooms and monitoring other courses for better management of classroom and teaching environments.

Discussion
We presented our vision of a future learning management system that utilizes IoT applications and tools to enhance the learning and teaching processes, to transform education into a more dynamic and flexible process, and to provide students with the ability to direct and manage their own learning experiences.We presented eight applications within the LMS that will benefit from IoT integrated capabilities.Some of these applications, such as experimentation and remote lectures, already exist as part of several current LMSs, but do not utilize IoT functionalities as part of their operations.Other applications, such as virtual reality and classroom monitoring, are new applications that will add important value to future LMSs and will open the field for new LMS domains and practices.For each application, we provided a general description of the application details and illustrated how the application will use and benefit from IoT tools and devices to attain its educational objectives.
The proposed applications will be implemented as part of a research project that started at AUL University during the 2017 summer semester.In this paper, we described an initial implementation plan for each proposed application.In our plan, we modify the source code of Moodle and Moodle Mobile to add new plugins and services that are needed by the applications to perform their operations and to communicate with various IoT devices.The implementation plan of these applications will depend on the available IoT tools.For example, the IoT network proposed in Section 3.3 cannot be currently used as its infrastructure is still under research.Hence, we will substitute it with a custom-built IoT network that will be assembled from existing IoT devices.Our implementation strategy might change based on new IoT protocols, systems, and devices that are expected to appear in the near future.Table 1 illustrates the expected starting and ending dates for the implementation of each application and the total duration.

Figure 2 .
Figure 2. Dynamic Virtual Reality: changing the VR simulation based on real time readings provided by IoT sensors

Figure 3 .
Figure 3. Components and operations of an IoT campus network that will enable students to remotely participate in lectures

Figure 4 .
Figure 4. Assessing students' performance during lab experiments using data collected by IoT sensors and sent to the Instructor's LMS