Trip / Trek to Vasota Thick Forest Near Pune and Satara
Details about the trek were distributed by my colleague who received it from Prasad Mane.
E-Mail message from Prasad Mane
Trek to Tiger Fort Vasota on 05 feb 2011 to 6th Feb 2011
Date: Departure on Sat 05th feb 2011
* The Route --- Pune -Satara -Bamnoli - Met Indavali-Vasota-ambawde-Bamnoli-Pune
* Age Group: 10 years and above ( Any person with average fitness level can do this trek)
* Reporting time: Sat 05th feb 2011, 7.30 am at satara
* Dos and dont's -- No smoking & alcohol consumption (leaders have all
the rights to take the decision, incase of any misbehavior)
* Difficulty level- Moderate
Other Details:-
charges - Rs 850 /- per person
Charges Include –
1)Bamnoli to Vasota base - By Boat
2)Breakfast and Tea at Bamnoli
3)snacks in between walk
4)dinner and halt at ambawde
5)ambawde to Bamnoli - By Boat
6)Breakfast and Tea at Bamnoli
7)All service taxes and forest entry charges
Must Haves—
Good strong ruck sack,Personal prescribed medicines if any, bedding
-either sleeping bag or shawl, , torch, two liters of Water ,Cap,
Shoes, Full pants (half pants not allowed), full T-shirts , cameras on
your own responsibility
For Booking Contact
Rushikesh Joshi:-+91 9423262008
:-+91 9503030397
Gautam Joshi: +91 9823102118
Stay
Another good experience from the trip was the stay at Ambawade - a village nearby which is connected by water route. Our stay was arranged by one of the organizer who was a resident of the same village. They give us traditional Maharashtrian food prepared in the village(very spicy).
C-Coding Guidelines for making embedded systems safe
C-Coding Guidelines for making embedded systems safe. C languages and its possible problems C Programming language is widely used in the programming of Embedded software because of the specific reasons like - Availability: For most of controllers, C is only efficient programming language available other than assembly language. - Support for low level operations. -Availability of optimizing compilers which produces faster, smaller and less RAM efficient codes. - Requirement for portable code due to changing environment and market competition. - Availability of auto code tools and open systems etc. - Assembly language will not be suitable for critical applications since the possibility of bug getting introduced and testing efforts are very high. Some of the problems which can be found in programs written in C language are - Typing and careless mistakes done by programmer - Wrong understanding of language by the programmer - Program not compiles as programmer expects. - Errors/Bugs in compiler - Logical/Runtime errors in program. So we should be very careful in wring C-programs for safety critical embedded systems. Since C is highly matured and long been in use, lot of possible mistakes are known and also there are tools are available for the analysis of C code. So if we are coding in a constrained way keeping the guidelies collected from experienced programmers, then we can avoid most of the bugs and their by reduce the debugging efforts and time to market. There are standards available for the developement of C codes. Some standards are ISO 9001/ISO 90003/TicKIT, MISRA, MIL, ANSI etc. Tools can be used for the static analysis of the code written. Things to remember ==== Will be updated ===
Improve Android mobile battery life with a simple techneque
Most of these cases will be somewhat difficult for someone who is not so familiar in gadgets. What I have noticed is, main reason for the battery running out of juice is due to the mobile data connection. If we are enabling and disabling the mobile data connection whenever required, then it is going to make a lot of difference(it helped me to improve battery life by around 4-6times). Disabling mobile data does not just means disabling of background data. But nobody wants to always go to the settings menu and disable or enable mobile dat frequently.
In this case we can use some simple application which provides a widget to enable and disable the mobile data. Toggle Data Widget, Data Enabler Widget are two application which I found while searching on android market which are free.
Another option is to add the power widget to enable/disble WiFi, GPS.
Hindi Online Internet Radio Station List with player
Single exe perl interpreter - perl-static.exe
Getting perl is very easy, we can get the package for windows, linux, mac etc from the website install. Or we can the source code from download page and compile it.
One problem with the binary packages available from perl download page is, it contains lot of modules and the perl.exe itself cannot be used to run(actual perl will be present in a dll). That is we should have the entire package to run the perl. So I thought of getting a perl interpreter which is available in a single exe.
So I got the source code for perl from the download page and found there is an option build static-perl which when compiled will give an exe file called perl-static.exe. This perl exe file can be used standalone and contains the libraries also.
You can download a copy of the perl-static which I have compiled using perl version 5.10
perl-static.zip
Screenshot of perl-static.exe version
Perl script to remove comments from C Program using regular expressions
1
2
3
4
5
6
7
8
9
10
11
12
#!/usr/bin/perl -w
$/ = undef; # no line delimiter
$_ = <>; # read entire file
s! ((['"]) (?: \\. | .)*? \2) | # skip quoted strings
/\* .*? \*/ | # delete C comments
// [^\n\r]* # delete C++ comments
! $1 || ' ' # change comments to a single space
!xseg; # ignore white space, treat as single line
# evaluate result, repeat globally
print;
This script will remove both C style comments /**/ and C++ comments //. Another advantage of this script is that, it will not remove /* ... */ which comes inside the double quotes like "This is /* a */string". This is acheived with the help of conditional operations in perl regular expressions(regexp). Here regular expression is used with "e" extented switch, inorder to put comments and spaces in between the regular expression. This makes it readable.
Thanks to Lorin.
Boot swap - technique to reprogram bootloader itself
But what if we have found some bug in the bootloader itself and want to reprogram the bootloader ?
Some options are
But what about embedded systems in which controller is not accessable and the only option is reprogramming itself using the bootloader ?
This is possible if
Brief note about bootloader
In a simple bootloader example shown above, bootloader is present in the region 0 to 0x1000. So this region will not be changed during reprogramming.Layout of a simple bootloader
Bootloader with option for reprogramming the bootloader itself
I will explain this with the help of the microcontroller v850 series microcontroller from Renesas.
v850 controller flash memory ROM has the following featuresFlash Layout of v850 Series controllers - Reprogramming the entire flash Memory (Boot Swap)
Now the software can be designed in two waysUpdating Bootloaders
A) Always the entire flash memory is reflashed.
In this cas there will not be seperate bootloader/application. So download is done in two stages. Also it is ensured that the code for downloading and the dependencies are present in the lower two bocks. Steps involved will be.
B) Simple architecture is followed, special code with bootloader(Bootswapper) will be downloaded to update the bootloader.
Updation of bootloader using bootswapper
In this case bootloader will work same as that of the simple bootloader. But if we want to update the bootlaoder, then we can download a special code (say Bootswapper). This special code will contain the code for the new boot loader which is offsetted to some other adderss. After complete download, bootloader will pass the control to the application(here the special code - bootswapper). Now this special code will execute from RAM and copy the address offseted new bootloader to the bock 2 and 3. After that it will swap the blocks to have the new bootloader in the blocks 0 and 1.
Add a torch to your robot project using White Power LED
3Watts Power LED with 45deg Lens
Now a days white power LEDs are becoming popular, cheaper and more efficient. This makes it easier to use white LEDs as torch lights. You might have seen cheap Chinese torch lights available in the market.
Now why should we add a torch light to robot ?
Most of us have made roborts which can move, navigation enabled etc. Adding a torch light will help us to use it during night also. It is also cheap, I found the LED and lens shown in the picture for just INR105(around $2.5).
Lens and LED kept seperately
We can find a lot of circuits if we serarch on google. I have listed below some of the circuits which I found useful.
You can search on Google for more information.
Read Tamil webpages on mobile phone using Opera Mini
Before starting, this is how a tamil unicode page looks, if you are trying to open a Tamil page without doing the setting.
Yahoo Tamil page - Before setting
First step is to type the address bar "about:config" and press go.
Now this will show a menu called "Power-User Settings" where some settings related to loading of pages will be shown, from this menu we have to change the setting "Use bitmap fonts for complex scripts". Default selection for this setting will be No. Inorder to read Tamil pages, change this setting to Yes.Opera Mini - Address to open configuration page
Change setting to Yes
Now click save and go back to the Opera Mini home to open any tamil page and see.
Click Save button to save the settings
Yahoo Tamil Page - After setting Note: Enabling this option will result in higher data rate. For example, yahoo tamil site size is 129KB with setting and it was only 32KB before enabling the setting. If you are upgrading Opera mini to a higher version, then this setting has to be done again.
Walk-In Test at Cisco
Test was for 1hour and there was around 10 questions. All questions were C-programs/C snippets which contains one or two logical errors. We were instructed to mark the error on the same sheet and describe the mistake.
Programms were based on data structures, string handling, arrays, dynamic memmory allocation etc which includes lot of pointer operations, function call and return. There was one program based on unix function calls like open, read, write which I was not familiar.
They told us that, I we are short listed, then they will be informing in one week, because the openings are in Chennai location. So the paper will be sent to Chennai location where it will be evaluated.
Now awaiting resopnse..
We would like to meet you for a person discussion and the details for the meeting are given below:
B Wing
O'Shaugnessy Road
Akkithimanahalli
Bangalore - 560027
Karnataka
India
Phone: +91 80 4103 3000
Yesterday(7 May 2011), I attented the interview.. It was a 1:1 interview. They asked about my previous experience, but when I started explaining they showed lack of interest, since my experience was on automotive embedded domain. Then I was told to write two C-programs.
1) To print a two dimensional array(square matrix) in the diagonaly
2) To print the contents of a simple linked list in the reverse order (without using multiple traversal and memory )
I was not able to write the answer to the second question as I was not so familier with data structures, I wrote program to reverse the linked list. I was told to leave after that..
I dont have much hope that they might call.. but still awaiting for a response.
MINI ARM7 KIT - ARM developement board Review
I was trying to start working with ARM microcontroller for long time. I thought it will be better to buy one developement borad to start. Since it is only for hobby purpose, I did not want to invest much on the developement board, so I started searching for a cheap ARM developement board.MINI ARM7 KIT - LPC 2148
First I searched in the local electronic markets in Pune, but I was able to find only two shops in Pune where there boards are available (Rajiv electronics and Sadashiv electronics). I enquired in these shops, but I was not able to find any boards which were cheaper than 2500(around $57) and I did not feel it is worth buying those boards. So I deced to get MINI ARM7 KIT - LPC 2148 from NSK electronics, Bangalore which is available for 1500 online. There is option for buying online, but I bought it directly from their shop when I visited Bangalore last week.
Review
There is no seperate power supply, but the USB cable can be used as power supply.
Board contains
Setting up the board was very easy, Connect the serial port to computer, install and open the Philips Flash Utility(download v2.2.3 here), and set the options as shown in screenshot below.
Even though the quality of the board is not up to the mark(one out of four LEDs did not work when I tried the LED blink code), this will be a cheap and good option to start with.
Construct your own MMC/SD card adapter for microcontroller interfacing
These are the items which I have used for construction.
Shown below are pics of what I have made
Adapter with SD card inserteed