This model costs US$35, uses a 35 1.2GHz 64-bit quad-core ARM Cortex-. A53 CPU, has 1GB RAM, integrated 802.11n wireless LAN, and Bluetooth 4.1.
Using Single Board Computers in University Education: A Case Study Santosh Ray and Ali Al Dhaheri1, 1
Khawarizmi International College, Al Ain, UAE {santosh.ray, k-61303613}@khawarizmi.com
Abstract. Information and Communication Technology (ICT) has changed the traditional way of imparting education. Use of computers and mobile devices in classrooms made the teaching and learning process more interactive. However, educational institutions across the world have not yet exploited the full benefits of developments in ICT. A new breed of computing devices, called Single Board Computers (SBC), have flooded the market. These devices are being used by technology enthusiasts across the world for developing IoT(Internet of Things) projects. In this paper, we have presented the use of a SBC named Raspberry Pi in conducting theoretical and practical classes of Undergraduate programs in IT and related fields. Our case study proves that SBCs can be used to impart education in interesting as well as environment friendly manner. This case study can be used as a basis for implementing higher education in economic way in poor and middle income countries. Keywords: University education; Single Board Computers; Raspberry Pi; Internet of Things; Arduino, Linux.
1 Introduction Information and Communication Technology (ICT) has become the backbone of the society living in this millennium. We are using ICT to run all kind of businesses and to communicate with people living in any part of the world. We are using social media to connect to friends, relatives and other like-minded people. We are collecting information through search engines such as Google and Bing to make crucial decisions in business, administration, politics and other fields. Considering the popularity of ICT in all walks of life, it was natural for academic institutions to adopt it for imparting quality education to learners. The adoption of ICT in education made the learning process more interactive and interesting than traditional whiteboard approaches. It became easier for instructors to explain complex theoretical concepts using multimedia technology. Development of handheld devices such as smartphones and tablets brought a new revolution in the field of education. Using these devices information could be accessed anytime and from anywhere. This provided the much needed flexibility to learners to learn at the time and place of their comfort. Mobile apps were developed to learn the same content in more interesting way. This kind of learning is termed as
mobile learning, and it has been widely accepted by students in developed countries where the learners have easy access to handheld devices and high speed internet [1]. Computers and handheld devices, though very helpful in learning, are very costly and less environment friendly. Cost of these devices may range from hundreds dollars to few thousand dollars. This can be a costly affair for billions of learners living in low income countries. Also, consumption of electricity by these devices and subsequent emission of carbon into atmosphere is a major concern for the environment. These economic and environmental concerns compelled the researchers and entrepreneurs to develop more economic and environment friendly devices called Single Board Computers (SBC). An SBC refers to a single PC board with the processor, memory and some type of I/O that allowed it to function as a computer [2]. Initially, SBCs were having very less computation power and could be used for hobby purposes only. In recent years, relatively powerful SBCs have been developed which can be used for serious scientific, industrial and academic purposes. In this paper, we are presenting the use of SBCs for imparting quality education at low cost in University environment. The remaining of the paper is organized as follow: Section 2 of the paper describes developments in the field of SBCs. Section 3 of the paper discusses data collection and data processing used in this research. Section 4 presents the results and discussions related to feasibility of SBCs in higher education. Section 5 concludes the research conducted in this paper.
2 Single Board Computers The first true SBC was developed way back in mid-1970s when “Dyna-Micro” was developed[3]. However, SBCs started gaining momentum only after the introduction of low cost, easy to use microcontroller named Arduino in 2005. Arduino is an open source microcontroller that shares the details of hardware design of the board with everyone. This provided the necessary platform for the rise of modern day SBCs. Though some good SBC were launched after 2005, SBCs got real fame only after the launch of Raspberry Pi by Raspberry Pi Foundation in February 2012. Raspberry Pi Foundation has released different models of Raspberry Pi costing between US$5 to US$35. Initial models were not very powerful, but the latest model, 3B, released in 2016 is computationally powerful enough to meet routine office and personal needs of users. Riding on the popularity of Raspberry Pi, many PC hardware manufacturers, including Intel, stated developing SBCs. Today, SBC industry is approximately U$3.5 billion industry growing at 60% CAGR[4]. These SBCs are being used for developing games[5], home automation[6], designing robots[7], etc. [8]. Internet of Thing (IoT) is a buzzword in today’s technological world. Broadly speaking, “The Internet of Things allows people and things to be connected Anytime, Anyplace, with Anything and Anyone, ideally using Any path/network and Any service“ [9]. All devices are expected to be networked to each other using IoT framework. SBC are expected to be the main IoT hardware components for acquiring and presenting indoor information[10]. There are already many forums and communities discussing innovative project ideas and their implementation for SOC based IoTs.
3 Data Collection and Data Processing As stated earlier in Section 1, the main aim of the research presented in this paper is to determine the technical feasibility of the use of SBCs in imparting education at University level programs. Accordingly, the obvious raw data for this study is the list of courses taught at Universities and software required to conduct these courses. In order to make the study more comprehensive, we studied the details of IT courses offered for Undergraduate programs in three technical institutions in UAE. These institutions are: Khawarizmi International College (KIC), United Arab Emirates University (UAEU), and Higher Colleges of Technology (HCT). We downloaded the syllabi of 41 different courses offered in Bachelor in IT Program at KIC. UAE University offers several Bachelor programs in IT which can be divided into seven tracks. We downloaded descriptions of 96 IT related courses from UAE University. Similarly, we downloaded course descriptions of all the courses offered by Computer Information Science division of HCT. We studied the courses and their software requirements in details. We classified all the software into nine major groups as given below: Operating Systems (Windows/ Linux/ Mac, Windows Server R2) Office Productivity Applications (Word Processor, Spreadsheets, Presentation Software, PDF reader, Front Page) Programming Applications ( Visual Studio (for HTML, JavaScript, ASP, C, C++, C#, OpenGL) , NetBeans ( for Java, JSP, Servlets ), Python) Project Planning and Management Applications (Microsoft Visio, MS Project, IBM Rational Software Architect) Database Management Applications (SQL Server / MySQL/ Microsoft SQL Server, Microsoft Access) Multimedia Applications (Photo Editing Applications, Video Editing Applications, Animation Applications, Adobe Flash Media Streaming Server Networking Applications (Network Security Applications , Wireless Network Simulation ( Packet Tracer), CORE IMPACT penetration testing solution, GFL Languard automatic vulnerability scanner, TamoSoft sniffers for Wired /wireless networks, TamoSoft network content monitoring tool, VisualRoute server, WebInspect NetScanTools scanner, Password policy enforcer from ANIXIS, GFI secure e-mail server, Faststream server, Cisco Adaptive Security Appliance, Cisco security manager, Ciscoworks LAN management solution, Kerio personal firewall, RSA authentication manger 6.1 software, RSA authentication agent software, Global scape secure FTP server, Global scape secure FTP client) Statistical and simulation Software (Minitab 17, SPSS, MATLAB, Win4Lin Terminal Server) Applications to design and implement electronic circuits ( Xilinx webpack, ModelSim, Xilinx chipScope pro, SMP cache simulation, Cadence EDA tools, Silvaco EDA tools, Simon CAD software, Optical design software and PC accelerator, iRoomba Education kit) Besides the software listed in above categories, these institutions use special hardware such as Virtex-4 FX ML410 Embedded Development Platform, Labvolt
trainer circuits, Education and system development kits form Altera, oscilloscopes, signal generators, multimeters etc. Obviously these labs cannot be conducted with SBCs alone. Similarly, software applications categorized into “Applications to design and implement electronic circuits” are device specific. Therefore, we shall exclude these labs from our discussion.
4 Result and Discussion In this section, we shall describe how all the software applications required to run courses in IT and related area can run using SBCs. We selected Raspberry Pi Model 3B as our SBC to run these software applications. Raspberry Pi 3B was launched in February 2016. It is a credit card-sized computer that can be plugged into TV and a keyboard [11]. It can be powered via micro-USB connection like mobile phones or tablets. This model costs US$35, uses a 35 1.2GHz 64-bit quad-core ARM CortexA53 CPU, has 1GB RAM, integrated 802.11n wireless LAN, and Bluetooth 4.1. Operating Systems: The Raspberry Pi supports several distros of Linux operating systems. Raspbian, a Debian based Linux operating system, is officially supported default operating system for Raspberry Pi. Raspberry Pi supports other operating systems such as Ubuntu Mate (https://ubuntu-mate.org/Raspberry-pi/), Snappy Ubuntu Core (https://developer.ubuntu.com/en/snappy/start/#snappy-raspi2), Windows 10 IOT Core (https://developer.microsoft.com/enus/windows/iot/Downloads.htm), Open Source Media Core (https://osmc.tv/), LibreELEC (https://libreelec.tv/), PiNet (http://pinet.org.uk/), RISC OS (https://www.riscosopen.org/content/downloads/Raspberry-pi ), and Weather Station (https://downloads.Raspberrypi.org/weather_station/images/weather_station-2016-0324/ ). Till the writing of this paper, there is no support for Mac OS from Raspberry Pi. Office Productivity Applications: Microsoft Word, Excel, and PowerPoint are most used applications in home and academic institutions. However, these are paid software. LibreOffice (https://www.libreoffice.org/) is default office application suit in most of Linux distributions designed for SBCs including Raspberry Pi. It is a free and powerful alternative to Microsoft office suit. Adobe acrobat pdf reader is most widely used PDF reader in Windows environment. There are many alternatives of Acrobat PDF readers available in Linux. However, we chose Qpdfview for Raspberry Pi. Qpdfview (https://launchpad.net/qpdfview) is a simple but powerful tabbed document viewer. It provides many features including annotation of the pdf documents. Linux on Raspberry Pi supports all major browsers such as Google Chrome, Firefox. The default browser in Raspbian Operating system is Epiphany browser (https://launchpad.net/ubuntu/+source/epiphany-browser ). Programming Applications: The Raspbian operating system, with its strong community base, can support a large number of development tools. It provides a large number of packages and Integrated Development Environments (IDEs) to write and execute programs written in languages such as C, C++, C#, OpenGL, Java, Python, Perl, etc. We observed that all the programming languages taught in the institutions can be covered using two IDEs named MonoDevelop (http://www.monodevelop.com/ ) and NetBeans along with necessary packages (https://netbeans.org/). We wrote C#
programs and ASP.net projects using MonoDevelop on Raspberry Pi. We wrote web based program using HTML, CSS and JavaScript in IDE NetBeans on Raspberry Pi. We also wrote C, C++, Java, and JSP codes using NetBeans on Raspberry Pi. To write computer graphics codes using OpenGL, we need to install some packages namely freeglut3-dev and messa-common-dev. After installation of these packages, any OpenGL code can be run using Linux terminal. Python is very important language being used in a lot of physical computing projects. Therefore, the Raspberry Pi provides IDE for Python 2 and Python 3 with its preinstalled operating system. Project Planning and Management Applications: Raspbian operating system provides several project planning and management applications. LibreOffice Draw, a good alternative to Microsoft Visio for drawing process flowcharts etc., is already a part of LibreOffice suit preinstalled in Raspbian operating system. Similarly, there are many alternatives to Microsoft Project software. We installed GanttProject (https://www.ganttproject.biz/) as alternative to Microsoft Project because it is a free and open source software. We selected BoUML (http://www.bouml.fr/) as an alternative to IBM Rational Software Architect for drawing UML diagrams. Database Management Applications: SQL Server / and Microsoft SQL Server are popular database servers in Windows environment. As these database servers are not supported in Linux environment, MySQL Server (https://dev.mysql.com/downloads/mysql/ ) is the best alternative database server. We installed MySQL server on Raspberry Pi to perform database operations. A very good alternative of Microsoft access is LibreOffice Base. LibreOffice Base is already a part of Raspbian Operating system. Multimedia Applications: From our study of course descriptors of multimedia courses in academic institutions, we observed that these courses require photo editing, video/audio editing applications, and animation applications. There are many photo editing applications available in Linux. But the best alternatives matching in power to Adobe Photoshop is GIMP (GNU Image Manipulation Program, https://www.gimp.org/). Like photo editing applications, there are many video editing applications available for Linux. The most popular Linux alternative to Adobe Premiere is OpenShot (http://www.openshot.org/). There are many free animation software. But, Blender(https://www.blender.org/) is most popular as it supports 3D animation as well. We installed OpenShot and Blender on Raspberry Pi for multimedia operations. Adobe Flash Media Streaming Server costs $995 for standard version, and $4500 for professional version. One popular alternative for Adobe Flash Media Streaming Server on Linux platform is Plex Media Streaming Server (https://www.plex.tv/). We can install media streaming server also on Raspberry Pi. But, it will increase load on Raspberry Pi which already have web server, a database server and other servers installed during the research work for this paper. Networking Applications: The academic institutions use various networking applications to achieve functionalities of small and medium networks. For the purpose of this research, we surveyed many open source network application which are supported by Raspbian operating system. One of the widely used Wireless Network simulator is Cisco Packet Tracer. The most popular open source alternative of Cisco packet tracer is GNS3 (https://www.gns3.com/) in combination with other applications such as Dynamips. One of the widely used network penetration testing software is CORE IMPACT penetration testing solution. We selected
sqlmap(http://sqlmap.org/) as an alternative to CORE IMPACT penetration testing solution. We also surveyed a number of application for network functionalities such as network vulnerability scanner, sniffers for wired/wireless networks, network content monitoring tool, network infrastructure configuration parser, network security analysis, IP Scanner, network debugging tool, among others. Due to space constraint, we are ignoring the description of these tools. Statistical and simulation Software: Most commonly used statistical and simulation software in academic institutions are: Minitab 17, SPSS and, MATLAB. However, all of these are paid software and cannot run in Linux environment. R (https://www.rproject.org/) is a free software environment for statistical computing and graphics. RStudio IDE(https://www.rstudio.com/) is a powerful and productive user interface for R. It is a free and open source software and works great on Windows, Mac, and Linux. We installed R and RStudio on Raspberry Pi and analyzed some sample data to plot suitable graphs. Octave (https://www.gnu.org/software/octave/) is a computer program for performing numerical computations usually done with MATLAB. It is part of the GNU Project. It is a free software under the terms of the GNU General Public License. We installed Octave on Raspberry Pi and tested with sample function to generate contours. Wolfram Mathematica (https://www.wolfram.com/mathematica/ ) is a computational model tool. Mathematica is not a free tool but Wolfram has agreed to provide a copy of Mathematica with each piece of Raspberry Pi (http://www.wolfram.com/raspberry-pi/). From the above discussion, we can conclude that most of the software applications required to conduct theoretical and lab classes are available in Raspbian operating system. Though we selected Raspberry Pi for our research, many other SBCs are available in the market which are equally capable as Raspberry Pi. Due to space constraints of the paper, we are not including details of those SBCs. Also, most of those SBCs are costlier than Raspberry Pi. However, SBCs are not without drawbacks. Constrained with less powerful microprocessors and limited primary memory size, SBCs performance start degrading when we run many applications together.
5 Conclusion and Future Scope The cost of higher education is increasing worldwide. The cost in buying the software, hardware devices, and power consumption by these devices also contribute in increasing the cost of already high running cost of institutions. SBCs are very cheap and environment friendly devices. Also, they create some sense of familiarity with hardware for many learners who never get opportunities to look into the hardware of laptops/desktops and mobile devices. Therefore, we selected one of the popular SBC, Raspberry Pi to conduct research presented in this paper. As Raspberry Pi consumes very less electricity, it generates very less carbon into environment compared to desktops and laptops. At the same time it is, for all regular uses, as powerful as laptops. We proved that SBCs are economically and technologically viable alternatives for imparting technical educations in higher educational institutions. With the increasing popularity of IoT, the universities have to adjust their
curricula to embrace more courses related to embedded systems and cloud computing. The SBCs are getting more powerful with every new model. People have started developing IoT projects using SBCs. With more powerful SBCs in future, technical institutions will be left with no choice but to use SBCs at large scale. Acknowledgments. We would like to thank Dr. Mohammed Saeed, Vice President, Scientific Research, Khawarizmi International College for introducing Raspberry Pi to us and providing all necessary support to conduct the research presented in this paper.
References 1. Ray, S.K., Saeed, M. : Mobile learning using social media platforms: an empirical analysis of users' behaviours. International Journal of Mobile Learning and Organization, 9(3), 258270 (2015). 2. Ortmeyer, C.: Then and now: a brief history of Single Board Computers. Electronic Design Uncovered, 6, 1-11(2014). 3. Rony, P.R., Larsen, D.G. Teaching microcomputer interfacing to non-electrical engineers. Euromicro Newsletter, 3(2), 57-62, (1977). 4. Harrop, J.: Microcontrollers and Single-Board Computers 2016-2026 Applications, Technologies, Players, Markets., (2016). 5. Hussain, S.R., Naidu, K.R., Lokesh, C.R., Vamsikrishna P., Rohan, G.: 2D-game development using Raspberry Pi. 2016 International Conference on Information Communication and Embedded Systems (ICICES), 1-8 (2016) 6. Jain,S, Vaibhav, A., Goyal L.: Raspberry Pi based interactive home automation system through E-mail. International Conference on Optimization, Reliabilty, and Information Technology, 277-280 (2014) 7. Premkumar, K.,.Noel, K.G.J: Smart phone based robotic arm control using raspberry pi, android and Wi-Fi. International Conference on Innovations in Information, Embedded and Communication Systems, (2015) 8. Lee Y-M., Sohn, K-R: Fabrication of smart alarm service system using a tiny flame detection sensor based on a Raspberry Pi. Journal of the Korean Society of Marine Engineering, 39(9), 953-958 (2015). 9. Guillemin P., Friess, P.: Internet of things strategic research roadmap. The Cluster of European Research Projects, Tech. Rep., (2009) 10. Isikdag, U.: Internet of Things: Single Board Computers. Enhanced Building Information Models, 43-53(2015). 11.Upton E., Halfacree, G.: Raspberri Pi User Guide. Third edition, Wiley publications, UK, (2014)