NPEDUCATIONS, Electronic circuits development, electronics tutorials, microcontroller tutorials and projects, advanced microcontroller (ARM) based tutorials and projects, Embedded c development, Embedded c for ARM cortex M, Intel IoT based projects, IoT projects, CC3200 launch pad projects, MSP430 Launchpad tutorials and projects, Tiva C launch pad tutorials and projects, 8051 tutorials and projects, sensor interfacing with microcontroller tutorials, data communications and networking tutorials, peripheral interfacing with microcontroller, led message scrolling display, arduino based tutorials and projects, intel galileo based tutorials and project, ADC interfacing tutorials, LED Blinking, LCD interfacing, Embedded System tutorials and projects, projects, projects, online Embedded C training

Load Control using DTMF and 8051 Microcontroller

Dual Tone Multiple Frequency (DTMF) is

Software Code

Internet of things (IoT) based remote control robotic vehicle using android | circuit diagram and program code


With the advent of chip technology, remote controlling of toy cars can be done with wide variety of technologies like ir remote based remote control car, blue tooth based remote control car, zigbee based remote control car, GSM based remote control car, android based remote control car, and DTMF based remote control car. In all these the range of controlling the car is limited. These type robotics projects controlling can be useful in designing of control toys, rc car games or rc games.

 With the help of Internet of Things(IoT) technology, we can control these type of rc cars from anywhere and anytime with proper security credentials. By adding different types of sensors and other devices like cameras, metal detectors, etc these types of cars are very useful as unmanned vehicles which can enter area's where man cannot enter. In this project, controlling of car directions will presented from internet using IoT technology. An android application (app) is designed to access the controls of the remote vehicle just like rc controller. This android app is connected to internet, so that we can control the remote vehicle using touch screen on the smart phone.

In this project, a remote control car is driven with two DC motors with H-bridge circuit (L293D). The microcontroller unit (8051 or arduino or MSP430 or AVR) which is connected to wifi device will drive the H-bride circuit according to the commands sent from the android based smart phone. A 5v power supply is designed by using 7805 to power up both MCU unit and wifi device unit.

Internet of things (IoT) based home automation project with smartthings | project circuit and Embedded C program code and Android app


Because of today's busy and luxuries life schedule there are things to be control, monitor and secure from remote location. Based on this idea home automation project or home automation systems have been introduced. A lot of smartthings have been developed day by day to make our regular homes as intelligent homes or smarthouse. Because of the advanced technology smartthings like remote control sensors, remote load control systems, etc are getting miniaturized and make them portable. A lot of home automation idea has been implemented all over the world, but still no open source home automation project were not become best home automation system and not implemented completely. For example zigbee home automation projects and other intelligent home security systems (like GSM based home automation systems) were not become much popular because of its cost and intermediate hardware’s. Let us suppose zigbee home automation projects should require protocol conversion from zigbee network to IPv4 network. Whereas GSM based home automation projects suffer with cell phone signals in remote areas.
Because of the internet of things (IoT),  alot companies like google, facebook and other big organizations are focusing to provide free wifi based internet all over the world. Therefore because of internet of things it is possible to construct smarthomes and smartthings hub. The IoT based smart home automation project will solved the problem discussed above. We can any number of smartthings to these Iot based home automation project or wifi based home automation. No extra hardware and no extra service charges (mobile bills) are required in these IoT based home automation system.

 In this home automation system, an android based home automation app is designed to control the lights and fans at your houses. With the advance technology, the microcontroller unit (MSP430/Arduino) is interfaced with wifi device (CC3100/CC3200). Therefore load control circuit will be controlled by the mcu unit remotely through wifi technology and android based system. This wifi home automation is latest in home automation projects.


What is home automation or house automation and how to automate your home using IoT will explain below

You can make you home as intelligent homes with this DIY project.

Block Diagram:

Signal and Systems tutorials – lecture 1.1

The following series of lectures about the signals and systems gives the brief idea about signals and their analysis for beginners. These lectures also help to understand the difference between time domain, frequency domain and spacial domain. A clear idea will be presented about importance of Fourier series and Fourier transforms to analyze the signals. Further, design of stable systems for signal processing using z-transforms. Finally a small real time project called digital sthescope will be presented to analyze the heart beat signals along with other noise signals.
i.     Introduction to signals

What is a signal?
A signal is any physical phenomenon (like gesture, action, electrical impulse, sound, image and video) through which one can convey information to other. In other words, signals are functions of one or more independent variables typically carry some type of information. The graphical representation of signal is shown in the figure 1.1
figure 1.1 A one dimension continous time signal representation 

Types of signals:
Generally, Signals are classified into two types
1.    Continuous signals:
These signals are functions of continuous independent variable or real number. Again these continuous signals are categorized into two.
a.       One dimension continuous signals:
One dimension continuous signals are the function of continuous single independent variable. For, example a speech signal is a continuous one-dimension signal, where time (t) is the independent variable. Hence speech signal is referred as continuous time one- dimensional signal. Human speech signal is shown in figure 1.2
figure 1.2 human speech signal representation

b.      Multi-dimension continuous signals:
Multi-dimension continuous signals are the function of multiple continuous independent variables. For, example image brightness is a function that varies horizontally and vertically.
2.    Discrete signals:
These signals are functions of integer number or discrete independent variable. The discrete signals are also categorized into two.
a.       One dimension discrete signals:
One dimension discrete signals are the function of discrete single independent variable. The representation of discrete time signal is shown below figure 1.3.

figure 1.3 one dimension discrete signal representation

b.      Multi-dimension discrete signals:
Multi-dimension discrete signals are the function of multiple discrete independent variables. For example, the representation of spatial antenna array is a two dimension discrete signal x[n,m].

Basic design rules for PCB beginners

In this tutorial, I am going to provide some basic rules and guidelines to design effective PCB on CAD tools for beginners. The beginner must know about measurement units and common technologies used in PCB design. Without knowing these rules, the beginners might confuse always to start with PCB design.

There are two types of measurement units are used in PCB design on CAD tools.
1.       Imperial inches (thou)
2.       Metric millimeter (mm)
1 thou is also referred as 1 mil which is equal to 1/1000th of an inch. The term ‘mil’ indicates one milli -inch.
1 thou or 1 mil= 1/1000th of an inch

Practically, both these measurement units are used in PCB designing. Generally, thou’s are used for basic ‘design and layout’ requirements like track width, pad size, spacing’s and grids dimensions, etc.
Where metric millimeter is used for ‘mechanical and manufacturing’ type requirements like board dimensions and hole sizes. Most of the manufacturers produce metric size drills, so it is difficult to get imperial size drills in the market. Most of the surface mount components have metric pin spacing and dimensions. While designing such surface mount component footprints, the designers have to use metric grid and pads.
We can convert imperial inches to metric millimeter and vice versa,
100thou=0.1 inch=2.54mm

Basic design rules for design and layout components in CAD tools
1.       Grids
2.       Tracks
3.       Pads
4.       Vias
5.       Polygons
6.       Clearance
1.       Working with grid:
Setting up the grid size is the major part to start your design. First of all you have to layout your board on a fixed grid and this is called snap grid. This grid makes your components, cursor and tracks will snap into fixed grid positions. For a “through hole work” PCB’s 100 thou is a standard placement grid and 50 thou is used for general tracking work like running tracks between through hole tracks.
2.          Working with tracks: There is no recommended standard for track sizes. As general rule of thumb, the bigger the track width have lower DC resistances, lower inductance, can be easier and cheaper for the manufacturer to etch, inspect and rework. For beginners, the following are the recommended track width in different scenarios.
a.       25 thou for signal tracks
b.      50 thou for power and ground tracks
c.       10 to 15 thou for tracks going between IC and component pads.

3.       Working with pads:
There is an important parameter known as the pad/hole ratio. A simple rule of thumb in PCB design, the pad/hole ratio should be at least 1.8.  Or the pad size should be at least 0.5mm larger than the hole size.

4.       Working with vias:
Vias connect the tracks from one side of your board to another called electrical stitching. Holes in vias are usually a fair bit smaller the component pads, with 0.5-0.7mm.

5.       Working with polygons:
A polygon automatically fills in a desired area with copper, which flows around the other pads and tracks. They are very useful for laying down ground planes. One important rules about polygon placement is make sure  you place polygons after you have  placed all of your tracks and pads.

6.       Clearances:
For basic through designs, at least 15 thou is a good clearance. With 10 thou or 8 thou being used for more complex and denser surface mount layouts. For 240v mains on PCB’s a minimum of 8mm (315 thou) spacing should be allowed between 24v tracks and isolated signal tracks.

By using these basic design rules you can start your PCB layout with less errors.


In this tutorial, we will see the types of serial communication and clear idea about it.

Types of Serial Communication:

Even thought the parallel communication got lot advantages over the serial communication, unfortunately the serial communication got popular for its less cost. Because of the fact, that the not all peripherals that are connected to computer or processors required high speed data communication.
Based on the format of data to be transmitted or received over the serial communication, it is divided into three types.
a.   Synchronous Serial Communication
b.   Asynchronous Serial Communication
c.   Isochronous Serial Communication

Synchronous Serial Communication: In this, the two or more devices which are involved in communication must be synchronized with a clock signal. By doing so, all the devices can receive or transmit the data in sync with clock signal. For example just like, in group dance, all the dancers sync their dance moments (~data) with respect to music beat (~clock signal) as shown in the figure.

Figure 1: Group Dancers sync their moment with respect to Music

Generally, in data communication, the data transmission and reception can be represented by using timing diagrams as shown below.

Figure 2: Timing diagram for Synchronous serial communication protocol

One may have still doubt, how this synchronous serial communication will work?

For this, let us consider parallel to serial shift register (transmitter) at one end and serial to parallel shift register (receiver) at other end. Both are driven with same clock signal to synchronize the data transmission as shown in the below figure. In this communication, we can do block transfer of bits.

Figure 3: Synchronous Serial communication protocol implementation using shift registers

Asynchronous Serial Communication: In Synchronous serial communication, the end devices are driven with common clock and because of that the receiver knows about the data transfer.

But in Asynchronous serial communication protocol, there is no common clock used to synchronize between transmitter and receiver. So the receiver doesn’t know about when the data will come from transmitter and when to receive it. Hence in this protocol, along with data, some extra bits also transferred to make the receiver to identify weather the valid data is coming or not. Usually, in simple Asynchronous serial communication, a start bit and stop bit are added to actual data to indicate the start and end of the data. Then collectively, the start bit, data bit and end bit are referred as data frame or data packet or protocol data unit (PSU) as shown in the below figure. This technique of adding extra bits are referred as framing and extra bits are called frame over head.

Figure 4: Asynchronous Serial Data Frame 

When the receiver device finds the valid start bit, then it understands about the data incoming and receives the data bits. Finally once the receiver finds the stop bit, it will truncate the receiving data bits.

Synchronous Serial Communication protocol
Asynchronous Serial Communication protocol
All the devices are driven with Common Clock.
No Common Clock
Block transfer – Stream of bits
Packet transfer – framing required
Less complex to implement the hardware with simple shift registers
Design of hardware is complex to identify the valid start bits, data bits and stop bits.
Ex:- Mouse connection with PC
Ex:- Com ports on PC, ATM (asynchronous transfer mode) switching.
Data (one or multiple bytes) can be sent in block with block header. Synch characters will be sent till the next block is ready. Break characters are sent to indicate the end of the transmission.
The time interval between successive frames is not fixed
Relatively high speed
Relatively low speed due to number of bits and time interval or gap between frames
Comparatively costly
Comparatively cheap
Data block is not fixed
Frame size is fixed

Isochronous serial communication protocol:

It is the combination of both synchronous and asynchronous protocols. In which we can transfer the block of data as asynchronously at random intervals. For example, video streaming uses this isochronous serial communication protocol. This protocol doesn't have error correction mechanism. Error correction may introduce the jitter in such applications.


In these series of tutorials, I am going to discuss some basics about the data communications like, definitions of data, information, communication, types of communication, basic types of data communications, classification of serial communication, how asynchronous serial communication can be handled, and why it popular, types of communication channels, what is need of OSI model, Data communication standards, Why TCP/IP protocol is popular etc.

Introduction to Data Communication:

1.   What is data?
Data is collection of unorganized raw symbols like letters, symbols, numbers, etc. Data itself has no meaning until it is interpreted.

2.   What is Information?
Information is the well organized data that can be interpreted.

Example1: The light coming from a torch is raw data, if the same torch produces ON –OFF light continuously then it will be treated as information as shown in the below figure. Generally this type of technique is used to send message like “SOS-save our shape”.

Figure1: Sending light signals using torch light - animated

Example2:  Similarly, some signals are used to send messages in olden days.

Figure 2: Sending signals using smoke - animated

Raw facts of things                        
Data with exact meaning which can interpreted
No contextual meaning

3.   What is communication?
It is the activity of exchanging or conveying information by using different variety of means (speaking, writing, smoke    signals, light signals etc).
Based on the nature of the signals that can be transmitted, the communication is broadly classified in to two.
a.   Analog Communication – In this communication, the information is conveyed through analog signals.
b.   Digital Communication – Because of advent of digital circuits and computers, it is possible to send the data through digital communication. This is also referred as data communication.

4.   What is data Communication?
It is the way of exchanging of digital data information from one place to another place through digital signals and their processing techniques.

The data communication is further classified into two types based on the number of bits transmitted at a time.
a.   Parallel Communication – In this communication, it is possible to transfer or receive the data as N-bits (8,16, 32, 64) at time. To transfer N bits at time, we need a bus cable. For example, the FRC bus cable is used between hard drive and mother board in your PC for parallel communication.
b.   Serial Communication – Here, the data is transmitted or received bit by bit. A single or two wires are enough to transmit or receive the data in bit by bit pashion. For example, the connection between mouse and CPU is a serial communication.

Parallel Communication
Serial Communication
N bits are transmitted/received at a time
Bit by bit are transmitted/received at a time
Bus cable required      
One or two wire are enough
Cost - Bus cable cost increases as distance increases
Cost – comparatively less cost
Speed – because of N bits transmission/ reception at a time, the speed is high
Speed – Comparatively low speed due to bit by bit communication.
Complexity- easy to implement (a simple latch is enough to copy the data onto a bus and vice versa).
Complexity- difficult to implement (serial data must be converted back to parallel before processing).
Ex: FRC bus cable connection between mother board and hard drive or DVD-drive
Ex: connection between PC to mouse or keyboard is an example of serial communication.
To establish a proper communications between two devices, a set of rules (agreements between devices) to be defined and should be followed by the devices at the time of communication. Those set of rules to govern the communication in proper way is referred as “PROTOCOL”. The following types of serial communications are referred as types of serial communication protocols.


If you really like this tutorial, Don't forget to give the comment or please subscribe to the RSS feed by submitting your E-mail or like our Facebook page.

Powered by Blogger