Sunday, 23 August 2015

[How to] Connect an android device [using MTP] on Linux [Ubuntu 14.04 LTS] 100% working

I recently moved to Linux[Ubuntu 14.04 ] from windows 8.1 because it hangs a lot on my lappy. Apart from the cool features of Ubuntu , one thing was annoying me that I was unable to connect my android phone [Asus zenfone 4 TOOi] and thus was unable to transfer any files via usb using MTP. After searching a lot I finally got the working answer on which I'm again explaining it here again as simply as possible.
First of all you must have an active Internet connection.
Step 1:
First we need to install some necessary tools for MTP detection in Linux[Ubuntu]
open terminal and type the following command

 sudo apt-get install libmtp-common mtp-tools libmtp-dev libmtp-runtime libmtp9

 sudo apt-get dist-upgrade

Sample terminal command

Step 2:
Now we need to get vender and product ID
For that attach your android MTP device to your Linux system.
Type following command in terminal


My output was as follows

Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 026: ID 0b05:580f ASUSTek Computer, Inc.
Bus 001 Device 025: ID 064e:c21c Suyin Corp.
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 The above one in red color is my device with It's vendor and id("0b05" and "580f")

Step 3:
Now we will amend the mtp udev rules as follows, from a terminal type


 sudo nano /lib/udev/rules.d/69-mtp.rules

Now, add the following line of code

# Asus Zenfone 4 TOOi
ATTR{idVendor}=="0b05", ATTR{idProduct}=="580f", SYMLINK+="libmtp-%k", ENV{ID_MTP_DEVICE}="1", ENV{ID_MEDIA_PLAYER}="1"

Note: change the vender and product id as of your device(In red color in this post) and you can also change the device name after # as per your wish but it is not necessary.

When you are done editing, save the file(Ctrl+c, then Y and then enter)

Step 4:
The next step would also be to add a line of code to the 51 android rules file, again from a terminal type


 sudo nano /etc/udev/rules.d/51-android.rules

Then add the following line of code


ATTR{idVendor}=="0b05", ATTR{idProduct}=="580f", MODE=”0666"

Remember to change the vender id and product id as per your system(shown in red color)

When you done, save the file.

Step 5:
Type the following code in terminal

 sudo service udev restart

after this, save all your work because we will reboot your system

Step 6:

Type following command to reboot your system

sudo reboot

Detected MTP Device

Additional Optional work:
If you want to work with nice GUI with your MTP device rather than using default file explorer of Ubuntu/Linux
try following command

sudo apt-get install gmtp

or you can also download this from software center.

Friday, 7 August 2015


Well I really don't know how old or new this terminology is. I came across this when one of my faculty asked me about it but I unable to answer it. So just like other curious and lazy students, I googled the term to to get  a small  knowledge about it.

Today I'm going to share with the same knowledge I captured from some scratch resources.

Java ring is a finger that contains a small microprocessor with built in capabilities for the user.
java ring s a sort of smart card which can be put on a finger. It is a stainless steel ring with 16 millimeters (0.6 inch) of diameter.

 It contains an inexpensive microprocessor in a stainless steel iBUTTON which runs JVM and preloaded applet within it. Java ring in an extremely secure java powered electronic token. It has number of real world applications. It contains a tiny Java Virtual Machine. It implements the JAVA card 2.0 API. Stores information in NVRAM, ROM. It runs applets.
It includes microprocessor, clock, memory and battery.

JAVA ring components include

  • JAVA virtual machine(JVM)
  • RAM
  • ROM
  • real time clock
  • Blue dot receptor
The Java Virtual machine (JVM) is the virtual machine that run the Java bytecodes. 

JAVA ring contains a 134kb nonvolatile RAM. This nonvolatile RAM provides high speed for read/write operations. It also provides zeroization.
JAVA ring contains 32kb of ROM. "e-commerce " operating system is installed in this ROM.

It gives exact time of the day and can run upto 10 years continuously. It is driven by 32Khz crystal oscillator. The frequency of processor clock varies from 10-20 Mhz. This prohibits the hackers from obtaining information from iBUTTON.

It is a computer chip enclosed in a thick stainless steel can. It is also called "touch memory device". JAVA ring uses 1-wire protocol to communicate between host and iBUTTON.
It is similar to a disk shaped battery.Each iBUTTON has a unique and unalterable address laser attached onto its inside the can lid. The address can be used for identification.

Blue Dot Receptor
These are iBUTTON readers that provide a convenient pipeline into the PC for iBUTTON to PC communication. The receptor's cable connects a USB, serial or parallel port 1-wire adapter. 

content from: