Eu duvido que você obtenha números precisos devido ao número de fatores que influenciam a entrega de pacotes e o tempo de retorno. Há um pouco de discussão sobre o que você está tentando fazer no Stackoverflow: link
Eu quero tentar algo um pouco diferente com a velocidade do wifi. Eu não quero saber qual velocidade está em Mb ou KB / s. Eu quero saber a minha velocidade em m / se eu quero calcular a distância do laptop para o meu roteador. Por exemplo, ou para outros laptops ou telefones - quero ver se consigo criar um mapa com os objetos aos quais posso me conectar ou ver.
Isso é possível? Alguém pode me ajudar em uma direção? Existem programas ou coisas que já fazem isso?
Eu duvido que você obtenha números precisos devido ao número de fatores que influenciam a entrega de pacotes e o tempo de retorno. Há um pouco de discussão sobre o que você está tentando fazer no Stackoverflow: link
Suponho que a sua pergunta é perguntar se você pode determinar a distância de um computador a um roteador usando wifi, e a resposta é sim ... meio que.
Digamos que você envie um sinal do seu laptop para o roteador, e o roteador responda do mesmo modo, e que essa viagem de ida e volta leve 20 nanossegundos, ou seja, 10ns em cada sentido. Sabendo que a velocidade da luz c = 3,0 * 10 ^ 8m / s no ar (na verdade, um pouco menos, mas esse valor está correto para 2 algarismos significativos), podemos determinar a distância por d = c * t, que funciona para ser 3m.
A resposta não será enviada pelo roteador imediatamente. Leva tempo para decodificar o pacote e compor uma resposta, e você não saberá quanto tempo isso leva. O pacote pode ficar em uma fila por alguns nanossegundos, o que, como vimos acima, equivale a um metro a mais. Felizmente, você não precisa se preocupar com a multiplexação no domínio do tempo, o que pioraria as coisas.
Sem controle direto do hardware (neste caso, os controladores de E / S do rádio wifi), você não sabe quando o pacote original é enviado ou quando a resposta é recebida. Normalmente, o sistema operacional ficará entre o seu programa e o hardware. Você vai começar seu temporizador mais cedo e parar tarde.
Há também o problema de que, embora seja tecnicamente viável fazer o tempo em uma resolução de nanossegundos com um laptop, nem todas as combinações de sistema operacional e hardware fornecerão uma resolução de nanossegundos. Bem, o que o microssegmento de tempo oferece a você? As 2 distâncias mais curtas são 0m e 300m, o que está além do alcance do seu wifi típico.
Então, para resumir, o melhor que você pode fazer é colocar um limite superior na distância, que também pode estar além do alcance do wifi. Você nunca obterá hardware de nível de consumidor capaz de fazer isso com precisão.
É possível, embora não com velocidade (que iria flutuar muito e depende de muitos fatores). Você pode usar a força sigal para estimar a localização. Vou tentar encontrar um guia para você.