Monday, 26 March 2012

[Solved]: Ubuntu 11.10 wireless very slow in Dell XPS M1530

In one of my previous posts about slow internet connection experienced in Ubuntu 11.04, I could not solve the problem and finally I had to downgrade my laptop to Ubuntu 10.10.

Today's post is about slow wireless connection experienced in my Dell XPS M1530 laptop after installing Ubuntu 11.10 and how this problem was solved.

In my laptop I have installed Ubuntu on dual boot, along with Vista SP2. The wireless speed from Vista SP2 was fairly fast (after I manage to open a browser and try to download in Windows after long wait to boot and finally another long wait after double clicking on the browser application). So I concluded, the slow wireless speed in Ubuntu is something to do with the driver of the wireless adapter that is installed. From the information I got from lspci command, I searched for Linux driver for my wireless adapter, but I couldn't find any. Finally I got information about an utility in Ubuntu that allows installation of drivers which are released by the manufacturers for Windows OS. That is brilliant. I gave it a shot and got excellent speed in my WiFi connection.

I am listing below the steps that I followed to fix the wireless problem and get the WiFi connection to full speed on my laptop.
  1. Downloaded the drivers (.exe files) from dell.com for Windows OS. These driver packages (.exe files) are self extracting zip files, which can be opened and extracted using Archive Manager in Ubuntu
  2. Extract the downloaded drivers
  3. Using 'Package Manager', search for 'ndisgtk' and install ndisgtk
  4. Open 'Wireless Network Drivers', and click 'Install New Driver'
  5. Locate the .inf file from the extracted location above and click 'Install'
  6. In the 'Wireless Network Drivers' the driver will be listed with status Hardware Present: Yes

Hope this helps. :-)

Tuesday, 13 March 2012

HTC Desire Custom ROM Install, Part - 1 [[Overview]]

It was a bit of excitement for me when one of my colleagues was showing off his mobile with a custom ROM installed. I have heard bits and pieces like "Root","ROM","Boot"... with respect to android phone. But at that point of time I never got my hands dirty trying out any of them.

It invoked my curiosity when my colleague described me what he had done to get the "Custom ROM" onto the android phone he had.

Initially it all sounded "greek and latin" to me about the complete process. Also I was a bit skeptical about the whole idea of trying to put a "Custom ROM" in my mobile HTC Desire Bravo GSM

It took a while for me to learn "Custom ROM" is nothing but a "Custom Operating System" for the android phone. There are pretty good custom roms available to download from the internet. The rule of thumb for people who have never tried any of such stuffs is -

"Don't be anxious what will happen to the phone, it will be alright if you start after reading and clarifying on each step to get to the ultimate experience"

One of the first questions that came to me when I thought about taking the "Risk" was -

Why should I?

Fair enough. I did not have any idea why should I go for it. I have seen posts in internet forums about discussions on topics about features that I have always dreamt of having in my mobile, which is available in mobiles using custom ROM. To quote a very simple example, the ability to "Reboot Phone". It will sound funny that even to reboot the phone we do not have an option in the operating system that comes by default with the phone. In a nutshell a custom ROM provides lot of Freedom for us and the phone. But I must say that, after I found an answer to the question, I did not waste any time to get started with the process. There comes the next question Where to start?

I opted the first step towards installing the Custom ROM on my android phone was to gather all information and understand what the relevance of each of these steps were. There was ample information available in the internet. It did not take so long for me to know precisely what is needed for my phone. Even after browsing through and reading lot of articles, I do not think I got the complete idea of the "How".

From all the information I gathered about the process, I started linking the information and trying to "Connect the dots" Voila!! I got it!! I got the answers for the Why, What, How and I am all set ready to go ahead and free my mobile phone.

Ladies and gentlemen welcome to The Freedom of Mobile Phones

The steps in the order of how it is done is given below
  1. Root the phone
  2. Flash the recovery
  3. Backup applications
  4. Nandroid Backup
  5. Other prerequisites
  6. Downloading and Flashing custom ROM
  7. Enjoying the new ROM on the phone

In the posts to follow, I will explain in detail each of these steps. Till then good bye and take care.

Wednesday, 14 September 2011

Query to find all the dependent tables in Oracle

I was trying to find a easy query to get the list of tables that are dependent on a given table. I developed a query, that will give the chain of dependencies.
SELECT ac2.table_name,
  Ac1.Table_Name AS Referenced_Table,
  ac2.u_level
FROM all_constraints ac1,
  (SELECT Constraint_Name,
    Table_Name,
    R_Constraint_Name,
    level AS u_level
  FROM All_Constraints
  WHERE Constraint_Type              = 'R'
    START WITH Table_Name            = :r_table_name
    CONNECT BY Prior Constraint_Name = R_Constraint_Name
  ) Ac2
WHERE Ac1.Constraint_Name = Ac2.R_Constraint_Name
ORDER BY u_level,
  ac2.table_name,
  ac1.table_name

Thursday, 4 August 2011

ASPX page continuously asks for credentials.

I came across the error The type initializer for 'System.Management.Automation.Runspaces.InitialSessionState' threw an exception. when trying to compile the c# in ASP.NET code using Visual Studio.

Solved
Open Control Panel > Install / Uninstall Programs > .NET 3.5 SP1 > Repair

Monday, 11 July 2011

Microsoft Windows 7 : Screen Savers dropdown disabled (or grayed)

I wanted to edit the screensaver on my machine. I have windows 7 installed. I navigated to Control Panel > Appearance and Personalization > Personalization > Change Screen Saver
The 'Screen Saver' dropdown appeared to be disabled (or grayed) with 'None' selected.

Solved:
  1. Open regedit.exe
  2. Go to HKEY_CURRENT_USER > Software > Policies > Microsoft > Windows > Control Panel > Desktop
  3. Right-click SCRNSAVE.EXE and select Delete.

Friday, 8 July 2011

An error occured in avast! engine: Invalid argument

I recently installed Avast4Workstation in my laptop running Ubuntu 10.10. The avast engine was able to do a complete scan of my system. After that I decided to fetch latest updates for avast and clicked 'Update database' in the GUI. After the update happened, the avast will not open, but shows the error message

An error occurred in avast! engine: Invalid argument

Solved:
In older kernels the maximum size of SHM block was limited to a certain number of bytes, that is being exceeded by the database. We need to increase the size of the SHM block to accommodate the large database
The command to be executed in the terminal is as follows. When executing the command it will ask for the root password.
sudo sysctl -w kernel.shmmax=128000000
The above command provided me with a temporary solution to the problem I was facing. After I restarted my machine, if I wanted to open avast, I had to type the command again. To get away with this, there is another way.

Add the line kernel.shmmax = 128000000 to the bottom of the sysctl.conf text file.
How to update the sysctl.conf file:
  1. Go to 'etc' folder, select sysctl.conf file
  2. With the sysctl.conf file selected, press Alt + F2. This will open the 'Run application' dialog
    1. Type gksu gedit
    2. Add kernel.shmmax = 128000000 to the file and save

Tuesday, 5 July 2011

Get assembly fully qualified name

While doing development it has occurred to me many times how to get the assembly name easily of a dll(that is strong named). The normal approach is to create it manually from the properties of the dll file.

I would like to share with you a very eazy way to get the fully qualified assembly name using Visual Studio. It uses the external tools feature of Visual Studio.

  1. Open Visual Studio
  2. Go to Tools –> External Tools
  3. Click on "Add" to add a tool, and put in the following values:
    1. Title: Get Qualified Assembly Name
    2. Command: Powershell.exe
    3. Arguments: -command "[System.Reflection.AssemblyName]::GetAssemblyName(\"$(TargetPath)\").FullName"
    4. Check "Use Output Window". All other checkboxes should be unchecked
The new tool appears under Tools –> Get Qualified Assembly Name.

When this menu item is selected, the assembly name is given in the output window.
It should look like HelloWorld, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b2135059549c7590