## 1 Introduction
### Background and Related Works
#### 1.1.2 Technologies in Smart Classrooms
In this study, we use Flask as the web framework to build web application interfaces in Python on Raspberry Pi computers. * PHP [48]: PHP, which stands for PHP: Hypertext Preprocessor, is one of the most popular general-purpose scripting languages for server-side web application development. PHP is capable of processing heavy-duty web transactions, and according to [49], many important websites, such as Facebook, Wikipedia, Yahoo, and WordPress, are using PHP as the major back-end web technology. In this study, PHP is used in the central web server to build applications on top of the web application interfaces provided by the Raspberry Pi computers, which are located in smart classrooms. * MariaDB [50]: MariaDB is one of the most popular open-source relational database management system (RDBMS) in the world. It's forked from MySQL [51] and guaranteed to stay open source. MariaDB intends to maintain high compatibility with MySQL. Therefore, a large number of PHP web applications can switch the back-end database from MySQL to MariaDB without much code modification. In this study, MariaDB is installed on the central web server and used as the back-end database to support PHP web applications. * RFID: RFID is a wireless communication technology that uses radio frequency (RF) waves to transfer identifying information between tagged objects and readers without line of sight. Passive RFID can track products in supply chains from the supplier to the distribution center, warehouse, and point of sale [52]. Radio-frequency identification (RFID) has become one of the most widely used technologies in the world, and our life is full of RFID application, such as small payments, transportation, car access control, and door access control. In this study, RFID tag is used as the identification card in the door access control application. * RS232 and RS485: RS232 and RS485 are standards defining the electrical characteristics in serial communications systems. The RS-232 standard had been commonly used in computer serial ports for connections to peripheral devices, such as modems, printers, computer mice, uninterruptible power supplies. RS485 can be used effectively over long distances and in electrically noisy environments. Multiple receivers may be connected to such a network in a linear, multidrop bus. Therefore, RS485 is often used in industrial control systems [53, 54]. In smart place applications, most commercial controllable devices are providing control functions through RS485 and RS232. In smart classrooms, devices such as air conditioner, projector, HDMI switch, and scrollable projector screen need to be controlled through RS485, RS232, and other interfaces. A good method is needed for handling the chaos situation when various kinds of devices with various kinds of control interfaces are installed in hundreds of classrooms. However, the studies related to smart classrooms reviewed in this sub-section are mostly focused on addressing or discussing particular education or technology issues. Therefore, the proposed architecture is essential. A general smart classroom requirement is clearly defined in the proposed smart classroom prototype, a layered technology integration model, and support measures are proposed to minimize development and management effort. With the proposed technology integration model, Raspberry Pi computers are used to connect to devices with RS232 or RS485 directly in smart classrooms. Procedures to control those devices are defined as Layer 1 device actions. The Layer 1 actions are implemented on Raspberry Pi computers and are packed as Layer 2 basic operations, using Python and Flask, in forms of web application interfaces. Therefore, with smart classrooms having different brand or model of the devices installed, developers only need to implement Layer 1 device control procedures for different devices and build corresponding Layer 2 basic operations.