Smartphone Based On ARM9 And Embedded Linux Operating System

DOI : 10.17577/IJERTV2IS60940

Download Full-Text PDF Cite this Publication

Text Only Version

Smartphone Based On ARM9 And Embedded Linux Operating System

Miss Swati Malgonde Prof. Mrs. P. S. Deshpande

Dept.Of E & TC Dept.Of E & TC

S.K.N.C.O.E,Pune S.K.N.C.O.E,Pune

Abstract

A mobile phone that fits in your pocket and lets you communicate from and to anywhere in the world is an amazing invention. Like most inventions, mobile phones are built on a chain of prior technological advancements. Without advancements such as integrated circuits, microprocessors, semiconductor miniaturization, battery technology and, of course, the invention of telephone and radio, the modern mobile phone would not be possible. Smartphone combine the mobile phone with another stream of technology: the computer, which adds the smart in smart phone. The predecessors of todays smart phones are yesterdays personal digital assistants (PDA) and mobile phones. The smart phone began as an amalgamation of these two devices, giving consumers the convenience of one device that performed both functions. Paper describes the Linux- based Smartphone. The Smartphone perform application of both mobile device and PDA.As it perform messaging and calling application like mobile device and smart application like PDA. Smartphone system is of low-cost, low- consumption and facing the mass market. As the System based on free Linux operating system, which saves development charges. Adoption of ARM9 processor increases the level of integration, as well as reduces power consumption.

Keywords: ARM9, GSM modem, Linux System

1. Introduction

In the early inception of mobile technology development, mobile phones were elite devices primarily used by middle and upper class people. Compared to old-fashion landline phones, mobile phones of today are free from the constraints of location specificity, apart from the basic capability of communication. As mobile phones evolve, more and more features have been added, such as full color screen, texting function, mp3 function, and embedded camera, etc. The trend of existing mobile phones development is that they are getting smarter and more user-friendly. As with many electronics industries, the Smartphone industry is rapidly changing and highly Competitive[1].In order to meet higher data

rate and better user experience, the performance of the microprocessors has been more and more important.Nowadays, ARM9TM and ARM11TM processor families are still widely licensed around the world and provide cost- effective solutions for many of todays applications, but the ARM 9 processor is relatively small[2]. ARM 9 processor is based on the ARMv7 architecture and has the ability to scale in speed from 600MHz to greater than 1GHz[3]. And it has high performance, superscalar micro architecture and NEON TM technology for multi-media and SIMD processing. So the ARM 9 processor can meet the requirements for power-optimized mobile devices and performance optimized consumer applications requiring higher Dhrystone MIPS.This paper focused on implementing Smartphone which consist basic application and one smart application like home automation system which is based on linux and ARM9. Home automation involves introducing a degree of computerized or automatic control to certain electrical and electronic systems in a building. These include lighting, temperature control, security systems, garage doors, etc. A hardware system is installed to monitor and control the various appliances. The system would control the appliances based on its configuration. Linux system which is open source as the decreasing the developing cost. In addition, with open source code, developers can customize their linux operating system and the third party application program, which greatly improves development flexibility. Linux is very portable. It Supports 23 architectures in the upstream mainline kernel tree of Linus Torvalds. Kernel is mostly written in C, with some assembly. Split between high-level generic functions and low-level functions to abstract architectural difference.

2. Frame of the System

Embedded system can be divided into hardware layer and software layer in general. Hardware layer is composed of hardware equipment, containing all hardware resource. Hardware mainly consist of memory module, GSM module, UART and processor. Memory module basically consist of two type of memory that is NAND flash and nor flash. Software layer is composed of system software and application software.

Touch screen

Touch screen

S3C2440A(ARM9

)Embedded linux

USB

Relay

Lamp

S3C2440A(ARM9

)Embedded linux

USB

Relay

Lamp

Microcont roller

AT89C51

Microcont roller

AT89C51

Buffer

Buffer

GSM

modem

GSM

modem

Relay

Relay

Fan

Fan

Relay

Relay

Security

System

Security

System

RS 232

RS 232

Regulated Power supply

GSM modem

GSM modem

Data transmission Home Automation System using ARM9

Figure 1.Block diagram of Smartphone system

    1. Hardware Description

      Here we discuss about the hardware part of the system . Figure 1shows the basic block diagram of the system.System consist data transmission unit using ARM9 and smart application unit like home automation system. S3C2440 ARM9 processor with touch screen, serial port, GSM modem. The touch screen is interfaced to mini2440 development board.UART0 is used to perform command line operation of the board on PC and UART1 is used to communicate with PC from board using touch screen.The data receiving and transmitting in the SMS format is done by using GSM modem[4].GSM module adopts SIM 300, which supports 3V SIM card, voice, short message. This system adopts Flash memory and SDRAM memory. As the internal memory of smartphone system, SDRAM is designed for transfer, storage and read-write internal data in the system. Nand Flash is mainly used for storage of system boot, OS Kernel, file system, graphical interfaces and application program. For home automation system GSM modem,AT89C51 microcontroller,buffer and relay are used. AT89C51 is an 8-bit microcontroller and belongs to Atmel's 8051 family. ATMEL 89C51 has 4KB of Flash programmable and erasable read only memory (PEROM) and 128 bytes of RAM. It can be erased and program to a maximum of 1000 times.

    2. Software design

Software design of smartphone mainly consist boot loader stage , system kernel ,loading file system and finally developing application program. U-Boot

is at the boot loader stage. Boot loader is the first software code after system powers up. It initializes the hardware equipment and builds up the map of memory space. System kernel is the centre of the operating system It is very modular in nature, since all features of the system that are not needed for a specific embedded system can be removed from the kernel. This system adopts Yaffs file system. As a kind of JFS designed for NAND flash memory in embedded system [5]. For developing application program, system adopts Qtopia. Functions like messaging, calling, system uses graphical user interface which is designed by QT designer.For home automation system microcontroller is programmed using assembly language.

3. Flow Of System Development

As a prototype of the Linux smart phone platform, we implemented the hardware based on the design described in this paper and ported the Linux-based smart phone software layers on the hardware. We are going to develop smart phone system which perform smart aplication like home automation system. Home automation means controlling home appliances like lamp,fan,security system by sending SMS through GSM modem.For that purpose it is necessary to develop messaging interface on ARM 9 board. Implementation of smart phone mainly include following steps

    1. Porting Linux

      To port linux on our board Install the USB Download Driver and connect the board with the

      Figure 2 DNW window

      serial cable and the USB cable to the PC. Porting of linux is done using DNW[9]. Installing Linux system is mainly consist the following steps:

      • Run DNW

      • Open the COM port

      • Power on the board.

      • The bootloader menu appears and DNW shows the USB connection [USB:OK]:

      • Select the option for porting linux system on board .Figure 2 shows DNW window.

    2. Installing cross compilation toolchain

      Here code is developing for ARM processor which is build on X86 platform. so for that purpose cross compile environment is build[8]. For installing cross compilation toolchain following are the steps:

      • Install VMware player on X-86 platform

      • Install Ubuntu as linux operating system on X-86 platform

      • Download arm-linux-gcc-4.4.3.tar.gz compressed file from friendly arm website.

      • Extract the arm-linux-gcc-4.4.3.tar.gz using command as

        #cd /opt/FriendlArm/toolschain/4.4.3/bin

        #tar xvf arm-linux-gcc-4.4.3.tar.gz

        Now set environmental variables for arm-linux-gcc- 4.4.3.tar.gz

        #export PATH=/opt/FriendlArm/toolschain/4.4.3/bin:$PATH

    3. Installing x86-qtopia

      x86-qtopia provides tools and support for developing qt applications and running them on the host pc in a simulated embedded environment. Here's how to set it up.

      • Download x86-qtopia.tar.gz compressed file from friendly arm website.

      • Extract the x86-qtopia.tar.gz

        #tar xvf x86-qtopia.tar.gz

      • Edit the following file

        sudo gedit /opt/FriendlyARM/mini2440/x86 qtopia/qtopia-2.2.0 FriendlyARM/qtopia/src/libraries/qtopia/qm emoryfile_unix.cpp

        f=::open(tmpFile.latin1(),O_CREAT| O_WRONLY);

        f=::open(tmpFile.latin1(), O_CREAT | O_WRONLY, (S_IRUSR|S_IWUSR));

        Edit the build scripts to remove the initial archive removal and extractions. This will prevent the source code changes above from being deleted and overwritten [8].

      • Finally run the build…

        /build-all

    4. Installing arm-qtopia

      • Download arm-qtopia.tgz compressed file from friendly arm website.

      • Extract the arm-qtopia.tgz

        #tar xvf arm-qtopia.tgz

      • Edit the following source files

        sudogedit /opt/FriendlyARM/mini2440/arm- qtopia/qtopia-2.2.0- FriendlyARM/qtopia/src/libraries/qtopia/qm emoryfile_unix.cpp

        f = ::open(tmpFile.latin1(), O_CREAT | O_WRONLY);

        f = ::open(tmpFile.latin1(), O_CREAT | O_WRONLY, (S_IRUSR|S_IWUSR));

      • Finally run the build…

        /build-all

    5. Developing application program

This system adopts Qtopia as the platform for application program Qtopia possesses PDA function. Besides this system has the function of wireless communication, including making calls, short message management.GUI graphical interface is designed by QT Designer[6]. QT Designer, a kind of design tool with visualized user interface, can improve the development speed of QT application program. Here are the steps of creating a GUI application for Friendly arm board.

  • Open Qt designer which is available with "ARM-Qtopia 2.2.0".

  • With Qt Designer create the main form.

  • Create a script file "build" for building the application.

  • Create a script file "formuic" for compiling the .ui form file. Run the script.

  • Create two files main.cpp , MainWindowImp.h and MainWindowImp.cpp

  • Generate the .pro (project) file using the qmake tool. A project file serial.pro has been created. Build the application.

  • Go to the location where the application is located and run the project file on X-86 platform.

    The following procedure step describes how to upload these files onto our development board. Qtopia file system-Create the serial Desktop file, it Takes the binary file and then open hyper terminal using serial cable connect it to the COM0 of mini2440 and COM port of the PC to change the attributes of the uploaded file. It should become executable in order to run our application. Take the executable code in USB device and connect it to board. Copy the code at udisk[7].

    root@FriendlyARM$cp/udisk/Projectfile/opt/Qtopia/ bin

    Restart the board . Now the board is ready for the application purpose.

  • connect mini2440 to GSM modem through serial cable

  • Connect power supply to mini2440 and GSM modem

  • Wireless communication module adopts AT command for data deliver.

As the messaging interface is developed using QT designer,for sending SMS for controlling home appliances.On transmitter side ARM9 board send SMS using AT command.On receiver side GSM modem receives the SMS and send it to microcontroller.On the basis of received SMS microcontroller perform the required operation.

4. Result

Figure 3 shows the booting of the system when we make board on and Figure 4 shows the different types of application supported by linux

Figure 3 Booting of the system

Figure 4 Application supported by linux

Figure 5 shows GUI for messaging application developed by QT designer for ARM board

Figure 5 Message Interface

5. Conclusion

The methods mentioned above is the ways of summarizes in the realization the process of data transmition to the GSM module. On the basis of hardware like S3C2440 development board, gsm module, memory module and using software resources like linux operating system, smartphone is

developed,which is having good expandability, low power-consumption, low-cost, excellent reliability.

References

  1. Canalys, Smartphone Market Trends Report 2010/2011,

    http://www.canalys.com/services/reports/spmt/.

  2. Yanpeng Sun, Peng Peng, Yuan Zhang, Linux Transplantation Based on The Processor S3C2440, The Ninth International Conference on Electronic Measurement & Instruments, 2009, pp.2- 3062-309..

  3. Wenyan Ci, Xueli Chen, Suhua Cai, Chunmei Xia, Methods and skills on transplanting Linux to ARM S3C2410, 2nd International Conference on Computer Engineering and Technology, 2010, pp.V4- 8V4-11.

  4. Camacho, G.; Alducin, G.; Gutierrez, J.; Miranda, Software Development for Local Data Transfer for Mobile Applications Using GPS and GPRS Technology International conference on electronics and communication, pp.7,March 2006

  5. NAND vs. NOR Flash Memory: Technology Overview

  6. Gasmin Blanchette, MarkSummerfield.C++ GUI Programmingwith Qt3[M].NewYork:PrenticeHall,2004:3-306

  7. Ch. Sravani; N.V.Narayana Rao ; Developing Touch Screen based Data Transmission Using S3C2440 Processor,IJERA journal,vol 2.pp-863- 869,February 2012

  8. [online] http://Equallybadblogspot.in/2010/02/project- how-to-set-up-default-dev-tools.html

  9. [Online] availabe : http://www.friendlyarm.net.

  10. [Online] availabe : http://www.samsung.com

Leave a Reply