Embedded System Search

Custom Search


Tuesday, October 6, 2009

GPS Anti-Kidnapping Systems --component list

For thoese who are interested in this project, below is the list of the components used in this system.

AtmelAT89C51ED2 Microcontroller
Leadtek LR9540/9805ST GPS receiver module
Maxim MAX232 5V RS232 transceiver
74HC00N Quad Nand Gate
74LS07 Hex Buffer/Driver
Electrolytic Capacitors Miscellaneous capacitors
Ceramic Capacitors Miscellaneous capacitors
DB-9 Connectors Male/Female serial port connector
Resistors Miscellaneous resistors
LM7805 5V voltage regulator
MCX Antenna GPS antenna
JHD 162A 16X2 LCD Display
IC sockets Sockets for miscellaneous chips
Connectors Miscellaneous connectors
Photo resist board Self fabricate PCB board
SE T610 USB cable The Pop-port connector is used
Nokia 6610 Serial cable Modified to suit SE T610
2nd hand SE T610

Wednesday, July 15, 2009

Project Title: GPS Based Anti-Kidnapping System

This is one of the lastest final year project done by Mr. Pui.

1.0 Project Description:

A portable GPS based anti-kidnapping system coupled with remote Google Earth location identification system is proposed in this project. The Project deals with the development of a portable hardware device which is able to extract GPS data and re-transmit it to a remote computer.

The main components of the hardware part are the microcontroller, GPS receiver module and a GSM compatible mobile phone. Upon triggering the distress button, the anti-kidnapping system will identify the current location of the device bearer by sending the GPS data through text message via GSM network. Subsequently, a remote PC with a mobile phone connected through Bluetooth will receive the incoming GPS data and activate the decoding process automatically in order to generate the Keyhole Markup Language (KML) files which are used to map the current location of the device bearer on the Google Earth program. Having identified the location, an operator at the remote PC will dispatch help through the built-in text message to the rescuer. The overall system is shown in Figure 1.0.

2.0 Hardware Realization

The development of the overall system involves the design of a hardware prototype that is capable of extracting the GPS data known as National Marine Electronics Association, (NMEA) sentence from the GPS receiver module and a microcontroller programme that is able to convert these data into a form suitable for text message sending. Encoding technique known as the octet encoding is done on the data and fitted into a sentence known as Protocol Data Unit (PDU) sentence. This sentence is used widely in GSM devices to send text messages. A Google Earth mapping program designed in Visual Basic 6.0 is developed to map the receiving data on Google Earth. This programme includes a short message sending function in which the operator of the computer can send the location of the victim to his/her family member of any contacts that have been pre-stored in the system. The overall hardware prototype is shown in Figure 2.0 and the Graphical User Interface (GUI) of the Google Earth mapping program is shown in Figure 3.0.

Figure 2.0 Overall hardware prototypes.

Figure 3.0 GUI of Google Earth mapping program

The final testing of the system is done successfully and it is recorded on video. Figure 4.0 show the result of the Google Earth mapping system that is able to identify the location based on the GPS coordinate received via SMS.

Figure 4.0 Google Earth mapping.

  • 3.0 Conclusion / Project Results

    The results of this project are summarised as follows:-
  • A hardware prototype is developed and fully operated as expected.
  • Communication between the mobile phone and microcontroller to enable the sending of extracted GPS data text messages is achieved.
  • The Google Earth mapping programme developed for the remote PC is able to receive the incoming text messages and map the GPS data on Google Earth automatically.
  • The text message sending function on the developed Google Earth mapping programme performed efficiently.

The overall system is fully tested and worked as expected.

The innovation of this system originates from the transformation of raw GPS data to location on Google Earth. This student project serves as a low-cost solution (about RM400 excluding handset) to help in the fight against kidnapping. It can be further enhanced for commercial use.

Friday, June 20, 2008

What is the Watchdog Timer?

Software stability is a major issue on any platform. Anyone who uses software has probably experienced problems that crash the computer or program in question. This is also true of embedded programs, and in most cases there is no user around to reset the computer when things go wrong. That job is occupied by the watchdog timer. The watchdog timer is a 16 bit counter that resets the processor when it rolls over to zero. The processor can reset the counter or turn it off, but, correctly used, it will reset the processor in case of a code crash. To avoid getting reset, the program must reset the timer every so often. A program which has crashed will not do so, and the system will reset. To improve its efficacy, the watchdog timer register also requires a password. In order to change the lower part of the watchdog control register, the upper part of the register must be written with a specific value. This value is specified by the alias WDTPW in the MSP header files. This password reduces the likelihood that a random crashed instruction could prevent the reset.

Other uses for the Watchdog Timer

In situations where a system crash is not a concern, the watchdog timer can also act as an additional timer. The watchdog timer can be configured to give an interrupt when it rolls over; this interrupt could also be used to handle system crashes. While the watchdog timer is not as versatile as the other MSP430 timers, the watchdog control register WDTCTL still allows selection of the timer’s divider and clock source. Often the watchdog timer is simply turned off by setting the hold bit in the control register. Any changes to this register require writing the password to the upper bits

Sunday, November 12, 2006



The objective of this embedded systems, design and application is meant to be a hands-on type to enhance the practical skills of students by developing and debugging an embedded systems hardware and software/firmware. Also provide students with an opportunity to gain a thorough understanding of the design methodology of the embedded systems and familiarity with hardware and software development and debugging tools.

You may find lecture notes and lab sheet in this blog related to the subject embedded systems.

Learning Outcomes

On completion of this unit, students should be able to:

Understand the concepts, issues, challenges and process related to the system level design of an embedded system.
Design and develop an embedded system from scratch, starting from processor selection, electronics components, data sheets and progressing through construction of hardware and implementation of firmware.
Perform troubleshooting, testing, measuring and analysing the developed embedded systems board.


Embedded system designOverview, Special challenges with embedded systems, microprocessor embedded system board design, memory requirements (RAM, EEPROM), address decoding, I/O interfacing, processors selection, part selection and design approaches.
Programming for embedded systems
Embedded operating systems, assembly languages, C/C++ cross assembler, interrupt handling, timer interruptions, watchdog implementation, real-time software design and programming techniques.

Input Devices–Switches, DIP Switches, and Keypads interfacing, output devices–LEDs, Seven-Segment Displays, Tri-state Indicators and LCDs interfacing. Interfacing to Other Devices such as sensors, stepper motor and DC motor speed control, Analogue-to-digital conversion, the RS-232 Interface.

Close-loop control, On-off control, PID control, velocity control, position control, concept of Fuzzy-logic based control, real time design

Data sheet for PIC16F877A

PIC16F877A Instruction Set

Manual For MPLAB IDE


ADCON Register


LAB 1 Assignment 1 Protel

LAB 1.1 Soldering Technique

LAB 2 Introduction to MPLAB IDE

LAB 2.1 Simple Addressing Mode



LAB 4 Switches


LAB5 Keypad

LAB6 ADC-less


Tutorial 7

Please download the instruction set here.

Download case study 1 here


Click to view the video clip on "Demonstration of Motion Control"