Java tutorial
//package com.java2s; public class Main { /** * Function to calculate the distance in meters from dbm rssi values. * http://rvmiller.com/2013/05/part-1-wifi-based-trilateration-on-android/ * * The function is based on Free Space Path Loss, and may not work with * indoor signal propagation. * * @param levelInDb RSSI value. * @param freqInMHz Frequency of the sending device. * @return Distance in meters. */ public static double distanceFSPL(double levelInDb, double freqInMHz) { double exp = (27.55 - (20 * Math.log10(freqInMHz)) + Math.abs(levelInDb)) / 20.0; return Math.pow(10.0, exp); } }