Basics

Cross Compilation Demystified

Cross-compiling is an integral part of embedded software development. Most established projects adhere to set of well defined contract to achieve this. But still, there are many other (smaller) projects which employ subtle variations to achieve the same effect. Owing to this, a lot of beginners get thrown off guard...

Installing and configuring a TFTP Server on Ubuntu

TFTP is a very simple UDP file transfer protocol that can be implemented with very little effort and footprint. For this reason, TFTP servers are very crucial for embedded developers even if they are used only for the purpose of firmware upgrades. This article is more of a note-to-self so...

Simple DIY Electromagnetic Bell

You might think its pass time while I was talking about simple electromagnetic bells at my blog. Truth be told I would agree with you and embedjournal is pitching for a higher game in the near future. We will soon get into some android programming and write mobile apps that...

Microcontroller Input voltage Measurement through ADC Module

Input voltage measurement of an embedded device is not as simple as it sounds. But if estimated, can come in very handy in a number of occasions. In this article we will see how we can add this feature to your embedded system with minimal components. It is one thing...

Servo Motor Interface - Looking behind Arduino Servo library

Have you ever looked into the Arduino source files? Well you should be!! I have been hanging around there for quite some time now. The Arduino Servo class has half a dozen functions to handle all the servo related tasks like the attach(), read(), write() and detach(). There was too...

Basics of DC Motor Drive and Speed Control for Robots

DC motors are really cheap and can be found very easily. In this post we will discuss the basic theory behind the DC motor drive system and its speed control. Having some basic understanding of how your motor driver works will play a key role in building your own circuits...

Circuit Debugging - Tips Tricks & Techniques

Here we are with a TTT (Tips, Tricks and Techniques) post again after a long time! Firstly I have to apologize for the recent inactivity in the blog. I’ve been a little busy over the last few months. But guess what! I have some good news! I think I’ll soon...

Reading datasheet, what to look for and how to find them

Did you know that experienced engineers spend up to an hour on every major component that they are going to be using for upcoming projects? Project as in, real commercial work involving a lot of money and man hour.. not just some hobby project. When a component is being purchased...

Interrupt On Change (IOC) in PIC Microcontrollers

The interrupt on change is a cool feature on microcontrollers. Like you guessed, the interrupt occurs when there is a state change in any of the port pin associated with this feature. In PIC microcontrollers, PORT B has the Interrupt on Change feature. The controller jumps into the interrupt vector...

Interface 7 Segment Display with Microcontroller

The 7 segment display is widely used to display numeric data. They are limited by the number of segments (LEDs) they have and hence are not suitable for displaying text. There are some variants of this kind of displays that have 11 segments which enables them to display text also....

Make PCBs at Home With Toner Transfer Method

Toner Transfer method for making PCB at home is probably one thing that went as viral as the Arduino. Electronics hobbyists around the world started using it to make professional looking PCBs at home. Here I will document the steps involved in fabricating PCBs with things that you can mostly...

Stepper Motor Interface with PIC Microcontroller

In my previous post Introduction to Stepper Motors and How they Work, we had a look at stepper motors and how they work. This post will deal with the programming and circuitry involved in the stepper motor interface with PIC microcontroller. Usually a microcontroller is used to produce the stepping...

Need for Clock Line in Digital Communication

What is the need for a clock line in digital communication protocols? This was a question that was posted on a Facebook page. I was surprised to see no one had posted a response. Probably they felt that the question was below standard, lame, stupid or on the worst case...

Shortest Path Line Follower Robot Logic Revealed!

Bored of the conventional line follower? People nearly are losing interest? Here is a post that could change it all and turn the winds to your side. Imagine if your robot was to start from node A (source) and move to node B (destination) and come back to node A!...

Line Follower Robot - Build it from scratch

Line Follower Robots are the most common type of robots that are built by hobbyist and students interested in robotics and embedded systems. The reason for the popularity of the Line Follower robot is the fact that it is simple to build and it is easy to understand the logic...

Timer/Counter Module - A Controller Independent Guide

In this post I intend to provide a standalone, controller independent, Guide to Timer / Counter Module in Microcontrollers. The concepts explained are not associated with any one particular controller which might not be useful for all readers. To an extent this is an independent post but little exposure to...

I2C Protocol (2-Wire Interface) in a nut shell

The I2C protocol also known as the two wire interface is a simple serial communication protocol that uses just two pins of a microcontroller namely SCL (serial clock) and SDA (serial data). This is a very popular protocol that can be used to address a large number of slave devices...