Paper— A Mobile Application for School Children Controlled by External Bluetooth Devices A Mobile Application for School Children Controlled by External Bluetooth Devices

— The didactic method of digital, game-based learning includes integrating educational content or learning standards into video games with the objective to engage pupils. The method combines instructional content with computer or video games and can be used with all subjects and at all ability levels. Exponents of digital game-based learning argue that it provides learning opportunities which involve learners in interactive teaching and encourages them to take part in the technological society of the 21st century. The necessity of digital, game-based learning arose in the last decades of the 20th century as world-wide improvements in innovation took place. Today's learners live their lives with easy access to technology. This paper discusses the need for, motivation for and adjustment of digital, game-based learning to meet the needs of contemporary and the future generations of learners. Specifically, a game prototype for pupils of 9 to 10 years of age was implemented and evaluated. A simple mathematical game was created to help children practice mathematical skills in a fun, logical, thoughtful, enjoyable, amusing and light-hearted way. The results of the evaluation showed that children were interested in using mobile devices to learn mathematics, and especially the multiplication table. During the study, children tried both to achieve positive results and enjoyed the game. Our findings indicate that using mobile-based games encourages a positive mental outlook in pupils toward mathematics, ensures their dynamic, noteworthy participation and supports the acquisition of mathematical knowledge.


Introduction
Video games have existed for more than forty years. They have influenced an extraordinary number of individuals as their sales have surpassed those of movies. They incorporate film, graphics, text and sound to convey stories and objectives to the player. As a new form of media, video games can communicate information to a wide audience in unique ways [1]. Technology and computer games can be used to expand students' knowledge, lead them to draw more associations between subjects and enable them to form individual relationships with the subjects they study [2]. Computer and video games [3] are extremely powerful learning tools, which can create effective new learning opportunities for children at an early age. As a popular approach, video games demonstrate that a large number of children are able to share social experiences that were not possible for the older generation in this form [4]. Learning from video games or technology has caused many dilemmas in the sense that this learning creates new, positive potentials for learning or simply creating dependencies. In general, video games are considered a good opportunity to improve memory and develop thinking skills [5]. Since many studies have examined the positive and negative effects of video games, this issue was also raised by Neil Postman [5], who listed several questions about what we really get from technology and asked whether it is beneficial to learning or the opposite. These days, children charry carry examples of mobile technology in their pockets. With contemporary technology, they can use digital cameras, smartphones, or iPods; they can take pictures or record sounds; they can tag these artistic creations with comments and other personal details and then share them to Facebook or another social website [6]. The main intention of the paper is to support and motivate children to learn the multiplication table to new ways. The following two research questions were addressed in this study: • How can seamless learning be effective when using innovative devices to learn mathematics? • What can be concluded from the evaluation of a learning activity performed in a third-grade, elementary school class?
To answer these questions, a simple prototype of a math game was implemented, which combines several motivating elements, such as enjoyment, pleasure, engagement, challenge, intense and passionate involvement and emotion.

Related Work
Several authors have conducted research on digital, game-based learning. M. Prensky [7] explained that computer and video games are extremely powerful learning tools, which can create effective, new learning opportunities for children at early ages. Combining games and learning has the potential to strongly motivate the pupils to learn and increase their engagement in the learning process. During their interactions with digital technologies, most children begin the learning process, which makes them feel comfortable using this technology and allows them to gladly invest effort. Crawford [8] stated, "Children are expected to play because we recognize the fundamental utility of games as an educational tool". The benefits of game-based learning have never been systematically demonstrated, although many studies [9] have investigated the effects of this learning on learning process and motivation. Green and Bavelier [10] conducted some experiments in which they compared the visual abilities of subjects who had played few or no games for a period of six months. Four of the experiments yielded results that indicated improvements in different indices of visual attention for the players compared to control individuals, while the fifth study results showed improvements in visual abilities among neophyte players, compared to their pre-playing abilities. Another important aspect that has been studied by different authors is that of mobile-based learning. Mobile devices such as laptops, tablets, ebook readers, mobile phones and personal digital assistants have been turned into learning tools that have enormous amounts of potential in both classrooms and outdoor learning spaces [11]. Some authors have suggested that school programs that incorporate laptops into school positively promote the students' learning abilities [12]. Mobile technology has been shown to help children by providing them with new ways to relate their physical experiences to abstract knowledge. Experts have progressively become convinced that handheld computers are the ideal technology for classrooms, since they enable students to move from the periodic, supplemental use of computer labs to the continuous, necessary use of portable computational technology [13]. In general, games help people bring together and help them to practice and enhance their skills, challenge their intellect and enhance their capacity to solve problems [14].

Methodology
The 1x1 Trainer Flic application was implemented in Java as part of the integrated development Android Studio, Version 3.0.1. The minimum API Level that can be used is Android 4.4 'KitKat' (API level 19). Additionally, basic libraries created during the project are described below: • Flic Library -can be used to create custom functionality for flic buttons. The player can use flic buttons to control his or her apps without having to fumble with the mobile each time he or she wants to do something. Basically, Flic operates as a remote tool that provides the player the control to execute actions through the smartphone, without actually using his or her smartphone. • KSOAP2-Android Library -provides a lightweight and efficient SOAP client library for the Android platform.

Algorithm
The algorithm that was used in the application was developed by [15], and the motive of the algorithm chosen was a selection of adequate questions as well as a classification of the given answers (the algorithm flow diagram is visualized in Fig. 1). Based on these aspects, two components were considered essential: Difficulty of the exercise. Every learning activity possesses levels of difficulty, and these levels were described as values which lie between 0 and 1. An easy question high success probability value (close to 1), and a more difficult one was assigned a low success probability value (close to 0).
Degree of competence. The degree of competence was computed (0 ... 1) to monitor the learning improvement of a user (learning rate), where the computation of this value relied upon the efficiency of learning demonstrated by each learner and was computed instantly. http://www.i-jim.org

Degree of competence
The degree of competence is one of the most important parameters included in the algorithm [15]. The essential objective of the algorithm is to demonstrate which questions are "difficult" and which questions are "not difficult" with regard to the user's knowledge. The degree of competence was determined as a value between 0 and 1, whereby the questions were constantly generated and selected according to their difficulty. If the algorithm requires a question to be generated, then this question should neither be too difficult nor too easy. Initially, the algorithm generates a random question. As illustrated in the Fig. 2, the whole learning process can be separated into two subareas: the learning area (what the learner knows) and the extended learning are (what the learner does not know). In the extended learning area, the learners receive new questions. The difficulty level of these questions is defined as being 25% above the learner's degree of competence. This parameter is relative and based on the teacher's selection. That means, if the learners display low degrees of competence, then the teacher must reduce the extended degree of competence; this will correspondingly be increased when the learners display success.

Pretest
A pretesting process was used to estimate the learning aptitude of the users. Initially, a moderate question was generated, which had a difficulty level that fell between 0.54 and 0.47. If an incorrect answer was provided, an easy question was generated, the difficulty level of which fell between 0.20 and 0.13. Otherwise, a hard question was generated, the difficulty level of which fell between 0.78 and 0.69. In the next phase, the learning aptitude (DOC) was estimated. If a difficult question was answered correctly during the initial phase, then the user achieved a degree of competence of up to 0.75. Otherwise, the user achieved one of 0.50. If the easy question asking during the initial phase was answered correctly, then the user achieved a de-gree of competence of up to 0.25 and, otherwise, one of 0.00. The whole pretesting process is depicted in Fig. 3.

Classification of answers
An important issue that the algorithm takes into consideration is the classification of well-known learning problems. The answers provided by the learners were marked with 0 (if the answer was incorrect), 1 (if the user knew the correct answer once), or 2 (if the user gave two correct answers one after another to well-known questions and, during this process, if the user failed to answer the next question correctly, this parameter was set back to 0).

Selection of questions
After the degree of competence was calculated using the formulae described by [15], the next question was selected. Based on the results, three categories were determined from which the questions were generated: Extended and Actual Learning Area (questions written with 0), Actual Learning Area (questions written with 1), Actual Learning Area (questions written with 2). A random number was used that did not fall in the interval [0,1] to determine the category. Based on the results, three conditions were determined: • Condition 1: If the random number x <= 0.05, a well-known question (2) is selected. • Condition 2: If the random number is 0.05 > x >= 0.15, a known question (1) is selected. • Condition 3: If the random number is x > 0.15, an unknown question that is not in the extended and actual learning area is selected.
According to these three conditions, all questions could be prepared pursuant to their difficulty levels and were assigned corresponding ranks.

Main Concept
1x1 Trainer Flic was created as an educative application that can be used by children, in which the player tries to learn the multiplication table by providing the correct answers. The interface of the app was created to be as simple as it has been possible, so that the children enjoy the learning phase. It was designed in an uncomplicated way to make it easier for children to navigation. The application was divided into two modes: Play and Trainer.
In the Play mode, the player does not need to register and, instead, he or she can freely choose the level (multiplication table) and provide the answers. In the Trainer mode the player must register (to open a new account) and then the learning process will be tracked.

Focus
The main goal of the game is to provide a seamless interaction between the user and the game, allowing them to learn multiplication. When using this application, the user should have fun and, at the same time, can practice the multiplication table. Children can check their progress; in the offline mode, they can see their performance results in the table and, by reviewing their results, they can correct their mistakes to improve their performance. In the online mode, their scores will be saved on the server, but they can also check their scores in the table the same way as they do in the offline mode. This is important because the player will need time until they can solve mathematical problems without making mistakes. This forces the player to use the mobile/tablet application for a long time while trying to do their best. In this way, the learning process will be easier and the player will become more relaxed when solving mathematical problems. The use of the application is crucial for the development of mathematical knowledge.

Flic Button
External Bluetooth devices provide the interactivity between a player and the game with this application. It is possible to apply a smart button called Flic 1 , which can be clicked to trigger over 40 applications and features using the smartphone: you can order an Uber, t set an alarm and play music. Flic recently used open APIs 2 to add Wink 3 Shortcuts to that list. The fliclib works with the Flic application so the user does not need to worry about taking care of the Flics, scanning Flics, or checking the communication with them. The user needs to download and install the Flic app, which is free and can be found in the Google Play Store 4 . The user needs to connect all the Flics to the application. After completing this step, the user can use the Flic Grabber and get access to the Flics inside the application. As shown in Fig. 4, Flic button contains three functionalities for triggering events: Single Click, Double Click and Hold.

Gameplay and Game Elements
As stated in [16], games are usually not described reasonably and comprehensively, way which makes it hard to distinguish game elements without receiving a detailed explanation. For that reason, the visual aspects of the game are described. The following questions were addressed: How was the game structured? How were the levels organized and designed? How might the player try to solve problems? How does the game end, and how the results are displayed? How do auxiliary clowns help the user solve the problems?

Splash Screen and Main Menu
In the application created, the splash screen contains the main logo of the application, the loading simulator and the version of the application. The main menu consists of four buttons: Play, Trainer, Credits and Exit as depicted in Fig. 4. The first two buttons contain the main structure of the game. This means that children can play the game by solving mathematical problems (multiplication problems). The difference between these modes is as follows: Play Mode (Offline): the user can access this offline mode and practice the multiplication table as part of the game. The user's performance record will be saved in the local database so that the user can always check his or her progress.
Trainer Mode (Online): in this mode, registration or authentication via "https://schule.learninglab.tugraz.at/" is required. The user must then select one of the levels and other features (Settings, Joker shop, Statistics), and these will be displayed during the game. The user performance will be traced and saved in a local database so that the user can view his or her performance.
The third button allows the user to read the credits of the application: who wrote the code, who created the design, who managed the application and so on. The last button is called Exit and its purpose is to close the application.  Settings, Statistics). When the user clicks the Trainer Mode button, a window is displayed that contains the login screen. In this window, the user can register his or her account or log in using the proper credentials. This process is continued until the user reaches the game-levels activity (Fig. 5). The levels are defined as buttons so that the user can select one of them. Each button has an inscription (proper number) and a multiplication table associated with this number. When the player clicks the button with number one, all the questions are related to the [1 x ?] multiplication level (random generation of questions): [1 x 1, 1 x 2, 1 x 3, ... , 1 x 10]. In addition to the levels, this activity consists of other important features: Home Button: when the user clicks the Home button, the main menu will be opened. Joker (Shop) Button: there are different assistance items called Jokers, which provide the user with guidance. Each Joker has a different property and different cost. Statistics Button: There is a table in the statistics activity which consists of four columns (name/level name, correct answers, incorrect answers and time). For each unique ID, the user performance on the level is saved in table 1.
If the player chooses one of the levels and get the results from the guessed answers, then these results (correct answers, incorrect answers, time) will be stored in the database and displayed in the table. There are 25 questions, and the time depends on the difficulty selected by the user. If the difficulty chosen is "Beginner", then the time always will be 30", and otherwise the time will be different for every level. Settings Button: the control panel allows the user to configure actions in the application (also called preferences, tools and options). There are three options the user can control: turning the music on/off, configuring the appearance of the Joker (on/off) and changing the difficulty level to/from beginner or advanced.

Magic Cap
This joker differs from all other jokers by its color; it is a default one and is free. That means that the joker helps the user by providing the correct/incorrect answer with the percentage of 50%.

Magic Star
This joker helps the user by telling them the correct answer five times. To unlock this joker, one needs to collect 150 coins by guessing the correct answer (one correct answer corresponds to one coin). Once they have exceeded this limit, the user cannot use the joker anymore.

Magic Bomb
This joker helps the player by increasing the number of coins (+10) after providing five correct answers in a row [#correct_answers % 5 == 0]. After this, an animation called Ripple Animation appears, which warns the player to press the joker button. If the player does not press the joker button, then the user will lose the bonus coins. As a precondition to unlock this joker, the user needs to collect 350 coins.

Magic Heart
This joker helps the user by resetting the time back to the beginning. To unlock this joker, the player needs to collect 550 coins.

Game Activity -Gameplay
The game activity is the core of the application. By completing this activity, the user can practice the multiplication table. This window is separated into three layouts as shown in Fig. 6. The first layout appears in the upper part of the window, the second layout is in the middle and the third layout is in the bottom part.
First layout. In this layout, there are two buttons (Back button, Sound button) and three widgets (time per question, the number of collected coins and the total number of questions). There are 25 strictly defined questions for each level regardless of the choice of difficulty level in the application. When the user clicks on the back button, then the user will return to the Level menu. By clicking the sound button, the user can turn on/off the sound of the application. The time per question can be set in the Setting mode. This depends on the difficulty mode; when the player changes the difficulty to "Advanced", the time will change. For every correct answer, the user will collect a certain number of coins, and these coins can be used to buy new Joker modes. Second layout. In the second layout, the user is shown a question. The question is given along with the answer, but this does not mean that the answer is correct (the answer is generated randomly).
Third layout. The third layout encompasses three buttons: Right button, Wrong but ton, and Joker button. When the user thinks that an answer is correct, he or she can click on the "right" button or, if the answer is wrong, on the "wrong" one. The user can click the third button (Joker) to get help. The buttons can also be pressed by using Flic buttons. As mentioned in "Flic Button" section 4.3, the button contains three functionalities: Single Click (dedicated for the right button), Double Click (dedicated for the wrong button) and Hold (dedicated for Joker button).

SOAP-Requests
The Simple Object Access Protocol (SOAP) is an Extensible Markup Language (XML)-based messaging protocol. It characterizes a set of rules that can be applied to organize messages. It can be used for basic one-way messaging but is especially helpful for performing Remote Procedure Call (RPC)-style, request-response dialogues, as shown in table 2. As input data, this method takes the username and a password and returns the ID of the user.

QuestionService: getNewQuestion()
This method takes the ID of the user as input data and returns the ID of the new question, the label of the question and the answer to the question.

PretestService: checkPretest()
As an input, this method takes the ID of the user and returns a Boolean value: TRUE (the user has completed successfully the pretest) and FALSE (the user has failed to complete the pretest).

SessionService: createSession()
This method requires the ID of the user and the ID of the Platform (Web app, Android or iOS) as input data. As a result, this method returns a session ID, which allows all the questions to be generated and, thus, a more accurate statistical evaluation.

AnswerService: giveAnswer()
This method takes the answer given by the user, the ID of the session, the time reaction and ID of the question as input data and returns a true/false indicator (i.e., whether the answer is stored or not).

Database and Shared Preferences
Two basic tables are created in SQLite and SharedPreferences class is used in the application. The database contains two tables called PlayTable and TrainerTable. The first table is implemented in the Play mode (offline). For every user who has finished a cycle of game, the userId (generated randomly), username (given by the user), the correct answers, incorrect answers and total time taken to finish the game are saved. This table do not have any connection with PlaySharedPreferences, in which the table is based in the context of the activity. This state will be saved independently for every user who plays the game on the smartphone/tablet and turns off the music. The second table contains the userID, levelName, correct answers, incorrect answers and the level time. The preferences of the user are associated with the ID (generated from the server) and, based on this ID, this table is linked to the TrainerSharedPreferences table.

Evaluation
The application created as part of this project was successfully released via the Google Play Store and installed on four smartphones. Three of these smartphones were Motorola Moto E (2nd generation) and one was a Samsung Galaxy S6 Edge. All of these smartphones were equipped with Flic Buttons, and the same Flic account was used for all of them. The evaluation of the application took place on the 23 March 2018 in a secondary school in Graz, Austria and lasted about one hour. Nine pupils took part in the evaluation. They were split into two groups. The first group contained five pupils, whereas the second group contained four pupils. The pupils were invited into a separate room that contained a smartphone with a Flic Button. In the first group, two pupils used the same smartphone and the same Flic Button. Both groups received an explanation about how to play the game, how to use the buttons (three different functionalities), how many questions were on each game stage and where they could find the game in the Google Play Store 5 . Each pupil understood the explanation and were interested in playing the game. The pupils then began simultaneously to play the game. They answered all twenty-five questions, one after the other. Each pupil in the groups completed at least two cycles of the game and, in the end, saved their results with different names in the database. Most students used the Flic Buttons to play the game but some also wanted to use the User interface (UI) buttons. Five different statements were given for the game evaluation. The pupils had to discuss how to rate the statements as a group (not individually). To do so, they chose different smileys (Fig. 8), cutting out smileys with scissors and sticking them on the selected squares, based on the final decision that they had made as a group. Fig. 7. The image shows the statements and smileys that were used by the students to evaluate each statement.

Evaluation Results
After receiving an explanation of statements and the different meanings of the smileys (1, 2, ..., 5) as shown in figure 7, the two groups rated the statements (the higher the number, the better), and these values are given in Table 3. The German statements from the document (see figure 7) have been translated to English for table 3. The tasks in the game were easy for me. 1 4 I want to play the game again. 2 5 In general, the children were happy that they could use a mobile application to practice mathematics and especially the multiplication table. They tried to achieve positive results and, at the same time, they enjoyed the game. During the evaluation, most of the children answered more than 85% of the questions correctly during the first round. When they repeated the game stage for the second time, they improved their scores still further. When they finished a game stage, they saved the results in a table (Database) and compared their new results with the previous ones. One of the main important points of the game's design was the simplicity of the material components. The use of attractive game sprites made it easier to understand. The pupils in group one found it easy to use and also understandable, while the second group considered it more difficult. One of the reasons for this was the control of the Flic buttons, their control improved considerably over time.

Statement 2
The pupils considered the game really fun. During their discussion in the groups and at the end of evaluation process, they emphasized that playing the game had been highly entertaining.

Statement 3
During the development of the project, it was crucial to combine the factors of game playing and learning. We wanted to motivate pupils to learn things more easily and increase their degree of engagement in the learning process. As a result, the two groups were highly motivated and considered it significant to interconnect some-thing completely external (Flic button) to the learning process.

Statement 4
The generation of the questions was random, including the questions about the multiplication tables from one to ten. Both groups expressed different opinions about the question generation. The first group thought that the generation of questions was more difficult than the second group. When the question was displayed together with the incorrect answer, and this answer was close to the correct one, then the pupils needed more time to analyse the question and solve it.

Statement 5
During the evaluation process, the pupils preferred repeating the game several times. They also hide the Flic button under the table in order to test the buttons connectivity from a larger distance. The second group gave this the maximal rating, whereas the first group gave it a surprisingly low rating.

Discussion and Conclusion
The main goal of the project was to create a gaming prototype that could help students learn the multiplication table. Therefore, we created a game called 1x1 Trainer Flic. The game allowed the user to learn the multiplication table in an entertaining way. Furthermore, the application used external Bluetooth devices, which enabled the interaction between the player and the game. Smart buttons called Flic buttons were used in the application. Key aspects described in [17] were implemented in the application: a set of rules and constraints, a set of dynamic responses to the learner's actions, appropriate challenges that enabled the learners to experience a feeling of achievement and gradually improve their ability to learn math. Our results indicate that using a smartphone-based application to learn math can help students efficiently and quickly reach educational goals at all levels of education. The mixture of factors implemented in the project (pupil enjoyment, pleasure and concentration, as well as the resulting outcomes, feedback, competition, challenges and problem-solving skills) motivated the pupils to learn and increased their engagement in the learning process. The results of the evaluation of the application indicated that the children were inter-ested in using mobile devices to learn mathematics and especially the multiplication table. Using mobile-based games helps students develop a positive mental outlook toward mathematics, improves their dynamic participation and helps them acquire mathematical knowledge and aptitude. These kinds of learning games should become indispensable factors of modern teaching methods-Their usage one of the objectives of modern education.