Code School Research
Code School Research
Code School Research
Code School
Arduino Learning Platform for School Students
Bedfordshire Bedfordshire
1|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
2|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
3|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
individually. Teachers also possible to Evaluate the new system with the
give homework related to the robotic and application already in the market and
without many tools students can just use make a list of pros and cons.
their parents' mobile and using the
Android application to create the creative 1.3 Description of Artefact
Arduino program. The system can define as an Arduino
learning platform called “Code School”
1.2 Aim and Objectives of the Project which is an Android application. This
“Code School” is an Android-based section has discussed the functionalities of
mobile application, which removes the gap the system.
between technology and the Sri Lankan
school student's outdated learning method. The system has two user types called
The Objective's and Aim's below were Student and Teacher each user has to
defined on the project initiation register to the system before using it. If the
teacher is registered with the system
Aim teacher should have to activate his account
To develop an Android application to over the phone by giving the proof of the
teach Arduino programming to School teaching license that part is manually done
Students. with the system owner. From the teacher’s
account login teachers can create a group
Objectives project to work with the school student
Identify and evaluate similar team.
applications.
Develop an Android application to Students have to register with their parent's
create Arduino codes. details, with the student account student
Develop web Service application to can create an individual project or work
connect android application with with the group projects.
Arduino connector.
Develop and build a NodeMCU Students and teachers can add the devices
connector to test an Android in two types called private and public,
application. private devices are only accessible within
the account device is registered but the
public devices visible to all the users in the
4|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Code School network and they can use the Section two Literature Review, which is
device to test their code. discussed the importance of the platform
with reviewing the respected published
1.4 Development of Artefact works regarding the project.
This section describes the architecture of Section three Artefact Design, which
the system which developed. describes the methods and tools followed
during the design time.
The system is mainly developed as a
mobile application with a Web API Section four Development and Testing,
service. Android application provides the which discussed the development and
user interface for the user to do all the testing methods during the implementation
activities in the system API service to do time.
the background process of all the
functionalities including login and Section five Evaluation, which describes
registration. NodeMCU device is only the outcome of the project and explain
communicating with the API server. with the user experience.
Mobile application used to configure the
device settings. Section six Conclusion and Future works,
which discussed the future modification or
features will integrate with the system.
5|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
6|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
mobile application like a game to play and Figure 3 FunJava App. (top teacher agent
explaining out loud with the blackboard, below on
inside of the game, a student has to solve
contest mode).
the mathematical questions. (Chang &
Effects of Design Factors of Game-based
Yang, 2016)
English Vocabulary Learning APP on
Learning Performance, Sustained
Attention, Emotional State, and
Memory Retention
Figure 4 User interface of Star VOC of PHONE Figure 5 User interface of Tic-Tac-Toe of
Words APP PHONE Words APP
Schools under the 12-year National
Applying Instructional APPs and the Fundamental Education System.
Cloud Platform to Solve Students' The system is for vocational training
Learning Problems in Core Specialized centers to help instructors teach the
Courses of Refrigeration and Air student, and to learn the air condition and
Conditioning in Vocational High refrigerator after the lectures and solve
problems during the lecture and conduct
7|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
8|Page
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
are going to learn how to implement doctors. This system will monitor the
usable applications however this is not babies' heart pules and body temperature
implemented only in the case study. of the babies in the neonatal intensive care
(Tundjungsari, 2016) unit. The system is analyzing the data and
information to the doctors and nurses
Responsive design and content about the critical situation of the babies to
adaptation for e-learning on mobile get emergency treatments. The
devices temperature sensor and pulse sensor
In the journal mentioned research is to measure the baby’s health and send those
develop an E-learning platform to learn dates through the internet to mobile
and develop responsive design application applications using Arduino Realtime.
with work on limited bandwidth (Najib, Hassan, Shair, Rahim, & Wahab,
conditions. In this research, the researcher 2019)
tries to solve content rendering problems
in different hardware specifications.
(Bhuttoo, Soman, & Sungkur, 2017)
2.4 Arduino
No researches are available for teaching
Arduino for the students. However, there
are few articles found some application Figure 6 Overall block diagram of the Neonatal
done using the Arduino with the proposed Monitoring System (a) hardware (b) software
Figure 7 Energy Metering System Overall system IoT based smart water tank with
block diagram Android application
The system is a Smart Water tank to stop
2.5 Internet of Things the wastage of sustaining water resources
Home monitoring system-based internet in the global. Mostly water motors are
of things controlling manually by the turning on and
The system provides home monitoring off the power switch on the water motor
capability through the Internet of Things. but the problem is there is no way to know
Design for controlling the devices and the water level and decide to water level is
collect data from the devices connected to low or high basically, the operator has to
the home network. The system is used monitor the water tank until it fully and
XBee devices with the ZigBee and TCP/IP then turn off and the only operator can see
protocols. Web interface is providing to the water is low after stop or slow the
the users or householders if they going to water flow in the pipe. And if the operator
the outside and if they forget the switch off forgets to turn off the motor correct time
any electronic device they can monitor water will overflow, and it is a huge
through the system and turn off the device wastage of electricity and the water. (Shah,
using the web interface. (Kung, et al., Patil, & Ingleshwar, 2017)
2018)
10 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
11 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Pocket Code
Pocket Code is a mobile application run on
the Android and iOS mobile operating
systems. This application is built for kids
Figure 13 Pictoblox User Interface to improve their creativity by building
Dabble their applications. Kids can build their
Dabble is an Android application build to games, music creation applications. They
control Arduino devices through the can create their game characters by
Bluetooth. Application has simplified drawing and give them animated moving
interfaces with including all kind of sensor effects and build it like a game application.
types with control instruction are built-in (catrobat, 2020)
with the application. Users can connect the
Arduino board with the Bluetooth
12 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
2.7 Conclusion
"Code School" is not like the existing
systems which have described the above
section. "Code School" will provide a
13 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
3.0 Artifact Design The planning stage was initiated with the
Artifact Design section of this document research. For the development that was
discussed the system designing phase very useful the research details to get
details. Further, the section contains how information about the technologies and the
the data and information were gathered. system in the real world. Data collection
The tools and the methods used for the was done in various ways like reading
system designing. Methodology used for documents and articles in the forums,
the system and how it was applied to the blogs, and the web sites as well as the
system. books and reports which are accessed from
the google search results and google
3.1 Requirement Gathering and schooler search results with these findings
Analysis supervisor was helped to improve the
The development methodology followed project idea.
for the project is Agile Kanban
Methodology. Kanban Methodology The idea was finalized with the
allowed the very flexibility and see the preparation of the project proposal with a
whole picture of the project graphically. clear description of the project aims and
The methodology allowed considering the the objectives of the project. With the
requirement of the project, divide the approval of the project proposal, it needs
whole project into small individual tasks, to gather all the requirement which needed
and simplify the complexity of the project. for the complete the project idea.
This methodology was very helpful for
designing the project background.
14 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
15 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Login
The user has to have a confirmed
registered account in the Code School
network and the user can enter the
registered email address and password if
the credential is succeeded user will get
the dashboard screen.
Figure 17 Design - User Registration
Confirm Registration
User need to complete the registration
process by confirming the email address
which was registered. The system
automatically sends the Unique
Confirmation code to the user’s email
address user has to manually enter the
code and confirm the registration of the
account.
16 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
My Projects
This screen provides individual project list
users can open the project and work on the
existing projects. Users can identify the
project by project name and the
description of the project.
Dashboard
Successfully logged users get the
dashboard screen. Using a dashboard users
can navigate to the main functionalities in
Figure 21 Design – My Project List
the system.
17 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
My Project Create
The screen is to create individual new
projects. The user has to enter the project
name and the proper description of the
project.
Group Projects
Users can work on the group project using
this screen. The user has to select the
school and the group after click search
system is list down the group project
according to the selection of the
dropdown.
18 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
19 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
4.0 Development and Testing storage of the mobile all the data save to
Development and Testing section of this the database through the API service. Web
document is discussed how the API Service configuring is got a very
development phase and testing phase is difficult part of the application however
carried out, problems, and solutions. Code after the researcher trying few HTTP
School system is a combination of three- libraries used the “Fast-Android-
component those are Android application, Network” (AMIT, 2020) Github project
Web API service, and the Hardware Unit. as the API service caller library.
20 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
solve the problem and configure the API external WIFI module however they need
service. to buy other components which want to
complete their robot. Users need to burn
The Arduino code generator is one of the their NodeMCU device with the Code
main functionality on the entire system to School default firmware before the use of
implement it the researcher used part of continuous usage. In the default firmware,
the “BlocklyDuino” (Fred, 2020) Github the user has to change the WIFI SSID and
project. Integration of the BlocklyDuino WIFI Password with their network router.
gets a little difficult however it was
successfully integrated with the Web API Default Firmware Code
service as a web page with doing some #include
<ESP8266httpUpdate.h>
modification to the source and connect #include
with the Arduino compiler. The Arduino <ESP8266HTTPClient.h>
#include <ArduinoJson.h>
compiler is compiled the Arduino source
code and return the compiled binary file. const char* ssid =
"Thameesha"; // Set your
Compiler implementation is getting a very router SSID
interesting part of the project. The const char* password =
"#####12345#"; // Set your
researcher tried a few ways to implement router password
the compiler after a few experiments with int checkUpdateFreq = 1;
21 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
22 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
23 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
ox
1 Inva Email: Val Emai Pas
. lid 12fan#gm idat l Not s
3 Ema ail.com ion Vali
il Err d
addr or valid
ess in ation
for Em mess
mat ail age
Fiel
d
1 Inva Password Val Pass Pas
. lid : 12345 idat word s
4 Pass ion must
wor Err conta
d or in at
for In least
mat Pas 8
swo chara
rd cters
Fiel inclu
d ding
UPP
ER/l
ower
case,
Spec
ial
Char
acter,
and
Num
bers
1 Inva Parent Val Not Pas
. lid Phone idat Vali s
5 Pare No: ion d
nt 12345678 Err Form
Pho or at
ne In valid
No Par ation
for ent mess
mat Pho age
ne
No
Fiel
d
24 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
27 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
28 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
29 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Group Projects ad
Grou down
ps
7. Searc But List Avail Pass
3 h ton down able
Butto Cli the Proje
n ck Avail ct
Click able List
Proje
cts
7. Click Cli Navi Open Pass
4 Open ck gate ed
Butto But to the Select
n in ton Ardui ed
Projec no Proje
t Code ct in
Scree Ardui
n no
with Code
openi Scree
ng n
the
Proje
ct
7. Create Cli Navi Open Pass
5 New ck gate ed
Figure 33 Developed - Group Project List Butto But to Grou
n ton Grou p
Click p Proje
Table 9 TestCase 7 - Group Project List Proje ct
Test Case: 7 ct Creat
Name: Group Project List Creat e
Pre-Condition: User has to click e Scree
Group Project Tile Scree n
N Descr Inp Expe Gene Pass n
o. iption uts cted rated /Fail
Resu Resul
lt t
7. Load On Drop Scho Pass
1 List of - down ols
the Pag load Load
Schoo e- with ed to
ls Lo the Drop
ad Scho down
ols
7. Load On Drop Grou Pass
2 List of - down ps
the Pag load Load
Group e- with ed to
s Lo the Drop
30 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
32 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Figure 37 Developed - Arduino Coding Graphical Figure 38 Developed - Arduino Coding Text View
View
no Displa
Table 13 TestCase 11 - Arduino Coding Screen Code y
11 Blocks Tab Previe Arduin Pass
Test Case: 11 .4 Tab Clic w o
Name: Arduino Coding Screen Click k Ardui Block
Pre-Condition: User has to click open button no Displa
in MyProject or Group Project Lists Block y
N Descri Inp Expec Gener Pass/ Code
o. ption uts ted ated Fail 11 ToolBo But Show/ Show/ Pass
Result Result .5 x ton Hide Hide
11 Load On- Projec Projec Pass Button Clic Side Side
.1 Select Pa t Load t Click k ToolB ToolB
ed ge- Loade ox ox
Existin Loa d 11 Save But Save Projec Pass
g d .6 Button ton the t
Project Click Clic Projec Saved
11 Load On- Load Canva Pass k t Succe
.2 Create Pa Empty s ss
d New ge- Canv Loade Mess
Project Loa as d age
d Empty 11 Run But Uploa Devic Fail
11 Arduin Tab Previe Arduin Pass .7 Button ton d e
.3 o Tab Clic w o Click Clic code Updat
Click k Ardui Code
34 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
k to the e
Devic Creat
e e
Succe
ss
Mess
age
35 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
5.0 Evaluation
36 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
37 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
There was no personalization option resolve the day to day problems came
for the user. when using the platform.
Include Q&A feature to solve the basic
While the system has it’s limitation there problems.
are has the recommendation to improve Include the Tutorial feature to improve
the system. Those are, the knowledge about the use of the
Implement and add more libraries to application.
support other IoT board types.
Implement the user role functionality
and the customize interface according
to the user type.
Implement the group project view page
and list down the students' group
project works to view.
Implement the functionalities to add
personalization features for the
individual users.
38 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
7.0 References
Aboelmaged, M., Abdelghani, Y., & Abd El Ghany, M. (2017). Wireless IoT based metering
system for energy efficient smart cites. 2017 29th International Conference on
Microelectronics (ICM).
AMIT, S. (2020, 05 16). Fast-Android-Networking. Retrieved from GitHub:
https://github.com/amitshekhariitbhu/Fast-Android-Networking
Anton, S. (2020). ArduinoDroid - Arduino IDE. Retrieved 05 16, 2020, from
https://play.google.com/store/apps/details?
id=name.antonsmirnov.android.arduinodroid2&hl=en
Bhuttoo, V., Soman, K., & Sungkur, R. (2017). Responsive design and content adaptation for
e-learning on mobile devices. 2017 1st International Conference on Next Generation
Computing Applications (NextComp).
catrobat, p. (2020). Pocketcode. Retrieved 05 16, 2020, from
https://www.catrobat.org/#pocketcode
Chang, R.-C., & Yang, C.-Y. (2016). Developing a mobile app for game-based learning in
middle school mathematics course. 2016 International Conference on Applied System
Innovation (ICASI).
Dolgopolovas, V., Jevsikova, T., & Dagiene, V. (2017). From Android games to coding in C-
An approach to motivate novice engineering students to learn programming: A case
study. Computer Applications in Engineering Education.
Fred, L. (2020, 05 16). BlocklyDuino. Retrieved from GitHub:
https://github.com/BlocklyDuino/BlocklyDuino
Hsu, C.-F., Chen, C.-M., & Cao, D. (2017). Effects of Design Factors of Game-Based
English Vocabulary Learning APP on Learning Performance, Sustained Attention,
Emotional State, and Memory Retention. 2017 6th IIAI International Congress on
Advanced Applied Informatics (IIAI-AAI).
Kung, Y.-F., Liou, S.-W., Qiu, G.-Z., Zu, B.-C., Wang, Z.-H., & Jong, G.-J. (2018). Home
monitoring system based internet of things. 2018 IEEE International Conference on
Applied System Invention (ICASI).
Li, T.-J., Li, Y., Chen, F., & Myers, B. (2017). Programming IoT Devices by Demonstration
Using Mobile Apps. End-User Development.
39 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
Linke, R., Kothe, T., & Alt, F. (2017). TaBooGa. Proceedings of the 2017 Conference on
Interaction Design and Children.
Lynch, M. (2017). Thetechedvocate. Retrieved 05 15, 2020, from
https://www.thetechedvocate.org/five-reasons-to-teach-robotics-in-schools/
Madhu, G., & Vyjayanthi, C. (2018). Implementation of Cost Effective Smart Home
Controller with Android Application Using Node MCU and Internet of Things (IOT).
2018 2nd International Conference on Power, Energy and Environment: Towards
Smart Technology (ICEPE).
Montes-Leon, H., Hijon-Neira, R., Perez-Marin, D., & Leon, S. (2019). Improving
Programming Learning on High School Students through Educative Apps. 2019
International Symposium on Computers in Education (SIIE).
Najib, S., Hassan, N., Shair, N., Rahim, N., & Wahab, N. (2019). Intelligent Neonatal
Monitoring System Based on Android Application using Multi Sensors. 2019 IEEE
9th Symposium on Computer Applications & Industrial Electronics (ISCAIE).
Panpaeng, S., Phanpeang, P., & Metharak, E. (2018). Cigarette Smoke Detectors for Non-
Smoking Areas in the Building. 2018 22nd International Computer Science and
Engineering Conference (ICSEC).
Ragunath, J. (2020, 05 16). Android Saripaar. Retrieved from GitHub:
https://github.com/ragunathjawahar/android-saripaar
Shah, P., Patil, A., & Ingleshwar, S. (2017). IoT based smart water tank with Android
application. 2017 International Conference on I-SMAC (IoT in Social, Mobile,
Analytics and Cloud) (I-SMAC).
STEMpedia, D. (2020). Dabble. Retrieved 05 16, 2020, from
https://thestempedia.com/product/dabble
STEMpedia, P. (2020). PictoBlox. Retrieved 05 16, 2020, from
https://thestempedia.com/product/pictoblox
Thestempedia. (n.d.). Retrieved 05 16, 2020, from
https://thestempedia.com/product/pictoblox
Tundjungsari, V. (2016). E-learning model for teaching programming language for secondary
school students in Indonesia. 2016 13th International Conference on Remote
Engineering and Virtual Instrumentation (REV).
Wu, M.-J., & Kuo, S.-M. (2017). Applying Instructional APPs and the Cloud Platform to
Solve Students' Learning Problems in Core Specialized Courses of Refrigeration and
40 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
41 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
42 | P a g e
International Journal of Computer Applications (0975 – 8887)
Volume *– No.*, ___________ 2020
43 | P a g e