Saturday, 12 August 2017

Getting Started with NodeMCU

Hello Friends,

Today we will write first program for NodeMCU3 that is led blinking. NodeMCU3 has esp12e and ch340 (USB-TTL) on-board. It can be connected to PC/ Laptop via USB mini(type B) data cable.

Let's get started.

All we need is NodeMCU3 and arduino IDE.
LED and resistor



Tuesday, 1 August 2017

Step by step installation guide for ch340 USB-UART converter

Hello Friends,

In this tutorial, we will cover how to install ch340 driver for different versions of windows.
CH340 is USB-UART converter and is used for serial communication with PC/ laptop with external device e.g. GSM module, GPS module, arduino pro, etc.

Things required:

CH340 USB-UART

Monday, 3 July 2017

4-Digit Seven Segment TM1637 Display interfacing with arduino

Hello Arduino Lovers,

In this post, I am going to interface 4-digit seven segment display with arduino. It's TM1637 based display and it just requires 4-pins. And it's better than conventional 4-digid SSD since that requires 12 (8+4) output pins. So, it saves our pin. As MCU have limited I/Os it's very useful.

The pins are as follows:

CLK, DIO, VCC and GND. 

It's 2-wire serial communication and it's different from I2C communication.

Sunday, 11 June 2017

Generating a delay of 1s using timer in atmega8

Hello Friends,

In this tutorial, we will learn how to generate a delay of 1second using timer0 in atmega8.

We are writing the code in Avr studio 4.

Timer 0 is a 8-bit timer means we can feed any value from 0 (0x00) to 255 (0xff)

Timing Diagram
In this example, we are using prescaler of value8. Prescaler divides the base frequency (provided by crystal or internal rc oscillator).

Machine Cycle = 1/Fosc      (Fosc is 8 MHz)

M.C = 1/8 us or 0.125 us

Delay = (256-x) * 0.125 * Pre scaler  (Pre scaler = 8)

Friday, 24 March 2017

Matlab with Arduino - Part 1

In this post, we are going to install arduino library in matlab.
There are two options available:
Online and Offline support package for matlab. We are using offline method for installation of arduino library.


  • Matlab 
  • Matlab account (for downloading support package)
  • Arduino IDE
  • Arduino UNO board
First of all, download the support package zip file from:

Thursday, 16 March 2017

Temperature based fan speed control using arduino uno and lm35

In this post, we will make a temperature based fan control using arduino and lm35. LM35 is temperature sensor, whose output is analog (linear). Arduino uno has six channle of adc (A0-A5)
and adc is of 10-bit

Stuff required:
  • Arduino UNO
  • LM35
  • LCD 16*2
  • POT 10k
  • Motor driver (L293D)
  • DC motor

Sunday, 5 March 2017

Getting Started with Raspberry Pi

Hello Raspberry Pi Lovers,

In this post, we are going to install NOOBS on raspbeery pi.

Stuff required:

  • Raspberry Pi 2/3
  • SD card booted with Raspbian OS
  • Hook-up wire
  • LED with 220ohm resistor
  • 5V/ 1A power supply
  • Monitor with HDMI port (or you can use HDMI to VGA)

Wednesday, 8 February 2017

Temperature logger using arduino and thingspeak

Hello Arduino lovers,

In this tutorial, we are making a temperature logger using arduino and thingspeak.
Let's start

Things required:

  1. Arduino Uno
  2. LM35
  3. Sim900 module
  4. Internet pack 
  5. Thinkspeak account

Thursday, 26 January 2017

Interfacing 20*4 LCD with arduino

Hello Friends,

In this tutorial, we are going to interface 20*4 lcd with arduino uno. As the name suggests it has 4 rows and twenty columns. In total, we can show 80 characters. It has blue backlight. It has 16 pins just like 16*2. The pin configuration of 20*4 lcd is similar to that of 16*2 lcd.

Circuit Diagram:
Connection on proteus

Monday, 9 January 2017

How to burn Arduino bootloader to atmega 328

In this post we will learn, how to burn hex file in avr microcontroller using programmer and burner software.

List of components/software:

1. USBasp programmer
2. Target circuit board having microcontroller (mine have atmega328)
3. Avrdudes (Burner software)

Prerequisites:
USBasp driver installed in your system.
If it is not installed, then read instructions about installation from my previous post.
USBasp driver installation

Default fuse byte for atmega328 is: LFUSE = 0X62 and HFUSE = 0XD9. It might vary
This corresponds to internal rc oscillator

LFUSE = 0XFF and HFUSE = 0XDE
This corresponds to external oscillator having frequency 16 MHz