My talk at BarCamp July 2015

June 17th, 2016 Comments off

Here is my talk at BarCamp 2015. The talk is in my mother tounge,Malayalam.

Categories: Computers Tags:

Disabling touch pad while typing:- Ubuntu 14.04

April 9th, 2016 Comments off

Currently, I am using an Asus X200M netbook with ubuntu 14.04 lts. The keyboard of the netbook is slighly small compared to regular laptop. This is  a slight drawback of all netbooks.  For me it took only a couple of hours to get adjusted to the new keyboard.

However, while typing, my thumb inadertently touches the  touch pad and the cursor jumps to some random location.  I am always using an external mouse for navigation  as  I dont like to use t touch pad . So I decided to find out a way to disable the touch pad when I am typing long documents.

Here are the steps for disabling and  enabling  touch pad.

Find out the device id of your touch pad.   Open a terminal and type

$  xinput list

output from xinput

Look for the id of your touch pad. In my case the touch pad is detected as a logitec mouse and the id is 13.  The other mouse shown in the figure is my external mouse. If in doubt, remove the external mouse and re run the command to find out the correct device id.

In order to disable touch pad type the following command.

$ xinput set-prop 13 "Device Enabled" 0

You can eneable the touch pad by changing 0 to 1 in the command above.

Categories: Computers Tags:

Installing latest arduino on Ubuntu 14.04

April 9th, 2016 Comments off

I have been   tinkering with NodeMCU devkit boards recently. The easiest way to program these little beasts is to use arduino platform and install the compilers and other tools from . Unfortunately the stock arduino shipped with ubuntu 14.04 is quite old.  You need a recent version of arduino  software. to get the esp8266 board working.

Here is what I did.

Removed the existing arduio installation

My nodeMCU collection.

My nodeMCU collection.

$ sudo apt-get remove arduino

Download the appropriate arduino software from  This is available for both 32 bit and 64 bit editions.  Choose the correct version.

The arduino software platfrom is written  in Java. So install java runtime.

$  sudo apt-get install openjdk-7-jre

Unzip the arduino software  and move it to an appropriate location. I moved it to  /opt.

tar -xJf arduino-1.6.4-linux64.tar.xz
sudo mv arduino-1.6.4 /opt

Add appropriate path to .bashrc file.

I added PATH=$PATH;/opt/arduino-1.6.4/bin. Change it according to your arduino location and version.

Open a terminal and execute the new arduino.

Categories: Computers, Gnu/Linux, Micro controllers Tags:

Wireless on Asus X200M netbooks: Ubuntu 14.04 LTS

April 4th, 2016 Comments off

We resently bought several Asus X200 series netbooks for our faculty members. The main attraction of this  cute  netbook is its  light weight and a built in HDMI port. We plan to use them extensively for   content delivery in class rooms. These  machines are really cheap, costing around Rs17000 ( around $260).  The base model comes with Intel® Celeron® Dual-Core ~ 2.58 GHz Processor and 2GB ram, DOS operating system. It has an 11.6 inch LED display.

Our idea was to put   ubuntu 14.04 and deploy the machines. The machine has an ethernet port and wifi port.  Installation of Ubuntu 15.10 was a smooth affair.  Unfortunately, the broadcom wifi interface did  not work out of the box. Here is what I did to fix the issue.

  1. Find out which wifi chip is used.

$lspci broadcom wifi lspci

The wifi chip is  Broadcom Corporation BCM43142. You have to download and compile the kernel module for this chip.

2) Make sure that the machine is connected to internet and the apt sources are properly set up

3) Update  the machine

$ sudo apt-get update

4) Finally instal the  bcmwl driver.

$ sudo apt-get install linux-headers-`uname -r` dkms build-essential bcmwl-kernel-source

This will downlad necessary driver  your wifi will be up and running. The above line installs dynamic kernel module support  and compiles the broadcom wireless driver.

Categories: Computers, Gnu/Linux Tags:

A simple Si5351A breakout board

February 19th, 2015 4 comments

I have been toying with the idea of making a Si5351A breakout board ever since I saw the chip details on Silicon labs web site. It seems  SI5351A is an ideal choice for Variable Frequency Oscillator (VFO) for a homebrewed radio.  The SI5351 is an i2c programmable any frequency clock generator. The chip can  generates up to 8 non-integer-related  frequencies from 8 kHz to 160 MHz depending on the model. There are 3 different variations of the chip currently available.  For the home brewer SI 5351A looks promising as it is available in a 10 pin MSOP package.

For the ham radio home brewer, such a chip which can be programmed over many ham bands offer  numerous possibilities.   The most obvious choice would be  as a VFO. Currently, the analog devices DDS chips are ruling the market. Compared to them the Silicon Labs chips are cheaper and less cumbersome to handle. I am yet to see the noise performance of these two chips compared.

In fact, there are a couple of commercial Si5351A breakout boards   targeted at the  home brewer. They cost around 10$. But the chip itself cost only 1.33$  on the Silicon Labs website and you need only a few  additional components to complete the board. The total cost need not be more than 3 $.  Along with a cheap Arduino clone, Si5351A gives you lot of flexibility. An added advantages is that the SI5351A  has three independent programmable clock generators. You can combine  the  VFO and   BFO  into a single chip.

My idea was to build a single side PCB so that any one can build one via toner transfer. Last week,  I had a long  chat  with my friend and colleague Amal Dev  about designing  a simple board.  The board routing was done by Amal Dev on eagle,  We have  designed an experimental single sided board and it may not be conforming to RF design principles always.

For the interested home brewer a  toner transferable image is  here.    You can  buy the  SI5351 from RS components  or from Mouser.  The board is to be powered from a 5v source.  The SI5351A needs 3.3v for its operation. The LM1117 is used for generating this.  Note that the LM1117  is SMD and is soldered on the copper side.  The two MOSFETs ( BS170)   are used to convert the I2C levels from 5v to 3.3v.  Check the pin outs before you solder.  The board can be directly powered from an arduino.

For programming the board you can try the example code from Hansummers.  Alternately you can try the excellent si5351 arduino library.  Tom Hall AK2B has some  sample sketches using this library. Please note that I2C address of the chip may be different from those found in the above code. Please use an I2C scanner  to find out your chips address and then modify your code accordingly.

si5351 breakout board

Schematic of si5351 breakout board. Q1 and Q2 are bs170. The regulator is a smd lm1117




Si 5351 board.


Component Placement on the Si5351 break out board.

The pin out of the SI5351A is shown below.


A special thanks to Amogh Desai who tested the first version  and reported couple of errors.  Further comments and error reports are welcome.

Categories: Ham Radio Tags: