In the last post, we had little introduction of how the firmware is going to act. With that picture in mind, now we will go a little deeper.
Android <==> BtBee <==> USART <==> uC
USART Communication
Atmega16 contains one USART device. In this section we'll learn how to use it for receiving information. For using any of the peripherals in the uC, we need to do
+ Switch ON the peripheral.
+ Configure the peripheral.
...
Browse » Home » Archives for 2012
Thursday, November 1, 2012
Firmware for uC | Introduction
This post marks the beginning of a new article series discussing the development of the firmware, we coded for the atmega16 micro-controller(we call it the, ORGAN) used in the project.
The firmware will not do anything unless the android(we call it the, BRAIN) asks it to do so. After lot of thinking, and experiments interrupt driven method is chosen for implementation. When it receives a command usually one the predefined set of values defined through these directives.
file: athena.h
/************************************************************
* Actual operations...
Saturday, October 27, 2012
AVR development in Linux
Install necessary packages
$ sudo apt-get install gcc-avr
$ sudo apt-get install avr-libc
$ sudo apt-get install avrdude
Sample code
#include
void main()
{
}
Compiling code
$ avr-gcc -Os -mmcu=$2 file_name.c -o file_name.elf
$ avr-objcopy -j .text -O ihex file_name.elf file_name.hex
Uploading code
$ sudo avrdude -p part_name -c programmer_id \
>-U flash:w:file_name.hex
+ part_name => m16, m8
...
Sunday, October 21, 2012
Setting up Git and Gitorious.org
1. Backup any existing ssh keys
$ cd ~/.ssh/
$ mkdir key_backup
$ mv *.pub ./key_backup/
2. Generate private ssh keys
$ ssh-keygen -t rsa -C "developer.rps@gmail.com"
$ Enter file in which to save the key: filename
$ Enter passphrase : *****
3. Add private ssh key to git.gitorious.org account
$ sudo apt-get install xclip
$ xclip -sel clip < ~/.ssh/filename.pub
...
Saturday, October 6, 2012
Software design - Proposal 01
Starting with a crude idea and refine it step by step..
Requirements
+ accept a command
+ process and understand it
+ do it
Refined 01
+ accept voice command
+ convert it to text
+ understand the text --> mostly pickup an object
+ find the object by looking around
...
Tuesday, September 25, 2012
Getting ready for first review
Weeks went and we have finished voice recognition in Android portion of the project in Android . So we are planning to report it on first review. So next plan is to code image processing utils. here after. And also we are now familiar with Git SCM. We use Gitorious repo for our project, here is it: Repository for Athena[https://gitorious.org/athena/athen...
Monday, September 24, 2012
Git Simple Commands

I keep forgetting how to push files and pull them down. So, this post is for my reference to use GIT.
Adding files to the remote repo
1. Adding the folder(or file) => git add <filename>
2. Checking status of git (confirm whether it is staged) => git status
3. Commiting => git commit -a
4. Pushing the files into remote repo => git push
5. Listing the files (not necessary)
Pulling down files from remote to local repo
...
Thursday, September 6, 2012
Started with Speech Recognition

Couldn't finish up with the bluetooth part of the project. Will deal with it on a good day ( hopefully next week). Luckily, I'm gonna have 9 days OFF. Next week, TCS and HCL companies are coming to the college for Campus Selection. A lot of people get selected in that (here, every Btech student's last hope is TCS), so, we were given a week off for preparation. Anyways its not my issue. Coming back to Speech Recognition.
I used the speech recognition API provided by Android - simple, easy and perfect. Works better than what i thought. One drawback is that it uses an Internet (google) service...
Sunday, September 2, 2012
Working on Bluetooth API

Still working on the Bluetooth app for android. Unfortunately Bluetooth protocol is complicated. Going through the Bluetooth Chat sample code. So far so good. Took some screenshots
So far the app can enable/disable bluetooth, display paired devices, get hold of a device , print its name and its address. Just need to add communication functionality. I hope to complete this app tonite.
...
Friday, August 31, 2012
[01 Sep'12] some-junk-notes
+ running a openCV program under GDB
+ seperation of project arch into different units
- servo handling unit(camera)
- driver unit(locomotion)
- image processing unit
- voice recognition unit.
- interaction interface unit
...
Thursday, August 30, 2012
[30 Aug'12] Tested BtBee
Today we have tested the BtBee module that we bought from SimpleLabs (Chennai). We planned to demonstrate the voice recognition part of the application on coming monday.
and here are something that came to my mind.
we have decided to use stepper motors for driving the bot
got to design the software design soon
there is no user interface required
clean modularity is very important
going to write segments of the programs as separate program, for testing and then integrate them accordingly
image...
Saturday, August 11, 2012
Experiment with OpenCV
We have started the process for making our project. Here is a demonstration, that I have done this evening. This video summarizes, a tutorial written in OpenCV doc.
The program demonstrated loads and plays a video present in the current directory and provides a slider to position the current frame. Happy Coding !!!
You can read the original post on my blog...
Friday, August 10, 2012
Zeroth Review - Second attempt
As the first entry into zeroth review was screwed due to the absense of a block diagram in the abstract, this week we were supposed to present our ideas. I got to thank two people, who supported our ideas and gave us a chance to attempt.
...
Sunday, July 29, 2012
Slides Preparation Going on.

These are the pin out details for atmega16 uC and L293D motor-driver.
...
Subscribe to:
Posts (Atom)