tcs3200_xboard_feature_image

Interfacing TCS3200 Colour Sensor with AVR ATmega32

Detecting colour of an object can be an interesting and useful electronic application. It can be realized using a colour sensor like TCS3200 and a general purpose microcontroller like AVR ATmega32. TCS3200 Colour Light to Frequency Converter Chip Fig. TCS3200 Chip .   TCS3200 chip is designed to detect the colour of light incident on it. It has an array of photodiode (a matrix of 8×8, so a total 64 sensors). These photodiodes are covered with three type of filters. Sixteen sensor have RED filter over them thus can measure only the component of red in the incident light. Like wise other sixteen have GREEN filter and sixteen have BLUE filter. As you should know that any visible colour can be broken into three primary colours. So these three type of filtered sensors helps measure the weightage of each of primary colours in incident light. The rest 16 sensors have clear filter. TCS3200 converts the intensity of incident radiation into frequency. The output waveform is a 50% duty cycle square wave. You can use the timer of a MCU to measure period of pulse and thus get the frequency. The output of TCS3200 is available in single line. So you would ask how we get the intensity of RED,GREEN, BLUE and CLEAR channels? Well it has two inputs S2 and […]

gsm_voting_feature_image

SMS Based Voting System – AVR GSM Project

If you want a live demo of this, please register from the link given below. (Only in Pune) REGISTER NOW! This project can also be implemented using a PIC18F4520 microcontroller. Hi friends ! Here I am showing a microcontroller based project called the "GSM Based Voting System". Using this system you can ask your users to vote for any of the four options. Four available options are identified by a letters ‘A’, ‘B’, ‘C’ and ‘D’. User can vote for any option by sending a text message to the mobile number. For example if you want to create a poll like this. Which is your favorite phone brand? A: Nokia B: Apple C: Samsung D: L.G. So your user can vote for any of the four brands by sending a message like this VOTE x where x is the choice he/she wish to vote for. For example if they want to vote for Nokia, then they should send a message like this : VOTE A The number of vote received for each option is shown in real time on the LCD Module. The votes are stored in the internal EEPROM of the AVR so they are not lost on power failures. That means even if you switch off the device and switch it on after few days (or few years!) […]

sim900_send_receive_msg_feature_image

Sending and Receiving SMS using SIM300 GSM Module

If you want a live demo of this, please register from the link given below. (Only in Pune) REGISTER NOW! This project can also be implemented using a PIC18F4520 microcontroller. We have schematic and C library available. Hi friends in this part we will have a look at the functions related to text messages. By the end of this article you will have a clear idea of how to wait for a text message, read the message, send a new text message and deleted a received message. We have already discussed the basics of SIM300 GSM Module interface with AVR MCU in our previous tutorial you can refer that article to know about the schematic and basic communication code. GSM Module SIM300 Interface with AVR After reading the above article you will know how we have connected the SIM300, AVR ATmega32 and LCD Module to make a basic test rig. Also covered in the article is the detail about the communication method between SIM300 and AVR which is called asynchronous serial communication, done using AVR’s USART peripheral. The article shows you how to use the AVR USART library to send and receive data to/from the GSM Module. We have also discussed the command response method used for the interfacing with the module. Working code is provided that shows you how […]

sim900_avr_interface_feature_image

GSM Module SIM300 Interface with AVR Amega32

If you want a live demo of this, please register from the link given below. (Only in Pune) REGISTER NOW! This project can also be implemented using a PIC18F4520 microcontroller. We have schematic and C library available. A GSM/GPRS Module like SIM300 can be used for any embedded application that requires a long range communication, like a robot in Chennai controlled by a person sitting in New Delhi! Or simply a water pump in a rice field turned on in the morning by a farmer sitting in his house few kilometers away! You have few communication options depending on the application, they may be as follows. Simple SMS based communication Turn on/off loads using simple SMS commands, so the controlling device is a standard handset. You can use any mobile phone to control the device. A intruder alarm/fire alarm that informs about the panic situation to the house owner on his/her mobile via SMS. Call based communication A smart intruder alarm/fire alarm that calls the police or fire station and plays a pre recorded audio message to inform about the emergency. Internet Based Communication (GPRS) User can control the end application using any PC/Tablet/Mobile with internet connection. Example: LED Message Displays installed on highways/expressways controlled from a central control room to inform users or traffic conditions ahead. A robot controlled […]

lfrm8_feature_image

Line Following Robot using AVR ATmega8

One of the most basic autonomous robot you can build is a line following robot(LFR). This type of robot is run over a white surface which has an arbitrary path drawn over it by using back paint. The task of the robot is to run exactly along this painted path. You may note that the surface may also be black(or any other dark colour), in that case the path is a light colour like white. Please watch the following video for a LFR in action. Designing an LFR At minimum our LFR design require the following components. A sensor to detect the line on the surface.(It can be a simple IR Reflectance Sensor or an high end camera!). We will use a simple IR based sensor, it is cheap and easy to build and use. This article describe how to make a line sensor array. A microprocessor to run the code that takes inputs from the sensor and control the motion of robot. We will use a cheap single chip computer called an microcontroller (MCU). A popular family of microcontroller is AVR series from Atmel. A member of the popular family is ATmega8. ATmega8 is chosen because it has just the required amount of resources and is very low cost. The MCU cannot drive the motors (used to actually make […]

ps2_interface_avr_feature_image

PS2 Keyboard Interface with AVR MCU

A PC keyboard is an old and trusted human machine interface. Most peoples are familiar with it. When a text entry is required it is the best method. If we can interface the PC keyboard with an AVR MCU we can create a whole lot of interesting applications! This tutorial will focus on our easy to use PS2 keyboard library for AVR MCU. Fig. 1 – A PC Keyboard(PS2 Type).   The PS2 Keyboard Library for AVR The PS2 Keyboard library for AVR has only two functions one for initializing the library and one for reading a ASCII character from the queue. The keyboard library automatically translates the scan codes to ASCII characters and buffers them in a FIFO queue. That means even if the CPU is busy doing something else and a character arrives from the keyboard, it will be automatically buffered in a queue. After that the CPU can read the characters anytime when it is free. void InitPS2() Function to initialize the PS2 keyboard library. Internally it initialize the ps2 system and sets up the INT0 isr for handling PS data traffic. Arguments: NONE Return Value: NONE   char ReadFromKbdQ(uint8_t wait) Function to read a character from the keyboard buffer. The wait parameter can be 0 or non zero. When wait is non zero the the function […]

Making a Line Sensor using IR Receiver

A line follower robot, or a LFR in short, is a simple autonomous robot that optically tracks a line made on the surface of the floor. That means you have an arbitrary line drawn on the floor and the robot tracks it by moving right along it! The line is sensed using a piece of hardware called a line sensor. A line sensor can be easily made using a low cost IR Rx/Tx pair. The IR Rx emmits IR radiation and the Rx helps in receiving the waves. See the figure below for working of line sensor. Working of Line Sensor Schematic for Line Sensor. Line Sensor Schematic   Actual IR Rx Tx Pair. Line Sensor Array. Actually a group of such sensor units as described above is required to make a line follower robot. We generally use 3 or 5 such sensor unit to make a line sensor array. The complete steps are described below. You need small piece of veroboard (general purpose PCB). Actual IR Rx Tx Pair. We will fit the sensor at the castor mount of the metal chassis. So we carefully mark the location we need drilling. Mark drilling location.   Mark the drilling location. You can make the hole easily by using a pair of scissor. Just press and rotate. Make hole using scissor. […]

custom_char_feature_image

Displaying Custom Characters on Alphanumeric LCDs

You can use this LCD Custom Char Builder Software to quickly and easily build custom characters for alphanumeric LCD modules. LCD Custom Char Maker A standard alphanumeric LCD module supports eight custom characters. So our software has view for all eight custom chars named from Char 0 to Char7. You can select any char to edit at a time. Select a char to edit … You can use your mouse to draw the character in the large green area as shown above. Holding right mouse button erases the pixel. In the example below we have drawn a "Heart" symbol for custom Char 1. Draw the char using mouse. Now we have completed drawing all the eight custom characters. Draw all 8 characters. Finally HIT Save code to get a custom_char.h file. This header file is compatible with our popular LCD interface library. You just need to copy/paste this header file in your lcd project folder. Then edit the lcd.c (part of our library) to include this file. Outputting a custom char on LCD is fairly easy! Say for example if you need to write. "I ♥ AVR" write the code like this :- LCDWriteString("I %2 AVR"); The %2 will be replaced by the custom Custom Char 2 which is defined as a heart symbol in our header file generated above. […]

avr_moving_msg_display_feature_image

AVR ATmega8 Project – LED Moving Message Display

An interesting project that can be done using Microcontroller is a LED message scroll er. It teaches you a quite lot of things. So I decided to make one. I made the hardware design modular and cascadeble That means the whole display is made up of several 15×7 modules. Each module has everything to drive 15×7 led matrix which includes a ULN2003 row driver IC and two shift register IC to drive the 15 columns. Data is loaded serially into the 15 columns. and multiplexing is done along the row. The 15×7 Smart LED Board. The 15×7 Smart LED Board.   Schematic. The Controller Board. Any cheap AVR MCU like a ATmega8 can be used to control this board (also up to 4 such boards which give a total of 60px by 7px display). We are using our low cost development board as the controller to the LED matrix board. This board can be purchased at a price as low as Rs. 249 including the MCU ! So wiring this project is a matter of ten minutes ! Low Cost AVR Board   Whole Setup. Connecting The Display Module with Devboard. PIN Diagram.   PIN No PIN Name Devboard PIN 1 GND GND 2 N/C   3 +5V IN +5V out 4 N/C   5 Serial Data In PB0 6 […]

Translators Wanted

Hi All, We are planning to make our Software eXtreme Burner – AVR available in your local languages! So we need translators. Those who are interested in translating the app may leave a comment here, so that we can contact you latter. How to translate? Download the message catalog file (English). It has a pair of string values named msgid and msgstr. The msgid has the original English text. You have to translate it in your local language and enter in the field msgstr. For example see the images below. Finally you can send the completed message catalog to my email id given in the catalog file itself. Download message catalog. Completed Translations Ukrainian Translation by Mr. Pavlo Kasperskyi German Translation by Håkon Spanish Translation by Breogan Slovak Translation by Alex OM3TY Czech Translation by Martin Ondrák Bengali Translation by Muhammad Hasan-uz-zaman (Hasan) Portuguese Translation by Mauro Souza Waiting for others to finish rest languages !

eXtreme Burner – AVR 1.3 Beta Test

Hi All, I was adding support for some chips with big flash memory (like ATmega2560 etc.) in my Programmer Software eXtreme Burner – AVR. But right now I do not have any ready setup with ATmega2560 so I ask anyone of you who have got a ATmega2560 (or ATmega128) setup to please carry out a simple test. Just download the eXtreme Burner AVR 1.3 Beta. And try to flash the following hex files. Test Hex File for ATmega128 and ATmega2560. And update me the details via a comment on this page. Serial Interface. Now your USBasp can double as a USB to serial converter at NO extra cost! We now have a basic serial terminal integrated in the eXtreme Burner AVR ! The terminal can be launched from the Tool Menu. But you need a modified USBasp Firmware to use the terminal. It is available from here. USBasp Firmware with UART Support. eXtreme Burner AVR v1.3 Beta !