He descubierto que varios android wifi-apps (WiFi Manager, WiFi Analyzer), que muestra un número de canal de red WiFi, además, a BSSID/SSID, etc. Pero no puedo encontrar ninguna información sobre cómo hacerlo. Lo único que sé es que puedo conseguir algunos de frecuencia wifi. Tal vez determinan un canal que corresponde a esa frecuencia? Hay una forma de detectar el canal de la red de wifi en android? Por supuesto, esta información no es un gran problema y que puedo vivir sin ella 🙂 pero aún así tengo curiosidad…

OriginalEl autor Stan | 2011-03-30

4 Comentarios

  1. 22

    Según Radio-Electronics.com, el número de canal es realmente relacionados con la frecuencia.

    CHA INFERIOR CENTRO SUPERIOR 
    NUM FREC FREC FREC 
    MHZ MHZ MHZ 
    1 2 401 2 412 2 423 
    2 2 404 2 417 2 428 
    3 2 411 2 422 2 433 
    4 2 416 2 427 2 438 
    5 2 421 2 432 2 443 
    6 2 426 2 437 2 448 
    7 2 431 2 442 2 453 
    8 2 436 2 447 2 458 
    9 2 441 2 452 2 463 
    10 2 451 2 457 2 468 
    11 2 451 2 462 2 473 
    12 2 456 2 467 2 478 
    13 2 461 2 472 2 483 
    14 2 473 2 484 2 495 
    

    Para Android, ScanResult contiene la frecuencia del canal.

    He descubierto que mi teléfono android devuelve sólo el centro de las frecuencias de ScanResult. Por lo tanto solo las frecuencias centrales son utilizables. Además, algunos de inferior y superior de las frecuencias son las mismas para los diferentes canales – echa un vistazo a LF de 10 ° y 11 o de la UF de 11 y LF de 14 canales.
    El IEE especificación de describir esto es que aquí (Página 566): standards.ieee.org/getieee802/download/802.11-2007.pdf En resumen, la frecuencia central se inicia en 2412 MHz para el canal 1 y se incrementa en 5 MHz para cada canal 13, canal 14 designado específicamente para Japón
    ¿qué pasa si el dispositivo está conectado a 5.4 Ghz o 4.9 Ghz banda de frecuencia?

    OriginalEl autor Dante is not a Geek

  2. 17
    @SuppressWarnings("boxing")
    private final static ArrayList<Integer> channelsFrequency = new ArrayList<Integer>(
            Arrays.asList(0, 2412, 2417, 2422, 2427, 2432, 2437, 2442, 2447,
                    2452, 2457, 2462, 2467, 2472, 2484));
    
    public static Integer getFrequencyFromChannel(int channel) {
        return channelsFrequency.get(channel);
    }
    
    public static int getChannelFromFrequency(int frequency) {
        return channelsFrequency.indexOf(Integer.valueOf(frequency));
    }
    Lemos, tal vez usted me podría ayudar….. Estoy teniendo similares wifi caso sin resolver… stackoverflow.com/questions/24357892/…

    OriginalEl autor André Lemos

  3. 17

    Puede expresar la conversión a través de un par de fórmulas, una para cada banda. La función devuelve el canal de la frecuencia dada, o -1 en caso de que la frecuencia no es válido wifi de frecuencia (2,4 GHz y 5GHz).

    public static int convertFrequencyToChannel(int freq) {
        if (freq >= 2412 && freq <= 2484) {
            return (freq - 2412) / 5 + 1;
        } else if (freq >= 5170 && freq <= 5825) {
            return (freq - 5170) / 5 + 34;
        } else {
            return -1;
        }
    }

    Es una forma compacta de hacer lo mismo.

    Para la frecuencia 2484 el canal devuelta es 15, mientras que debe ser 14.

    OriginalEl autor jabaldonedo

  4. 14

    Según la norma [802.11-2012], hay una manera más simple de trabajo número de canal de frecuencia. Específicamente,

    channel_center_frequency = channel_starting_frequency + 5 * channel_number

    De 5G de la banda,
    channel_number = 0, 1, …, 200; channel_starting_frequency = 5000 MHz.

    Para 2.4 G de la banda,
    channel_number = 1, 2, …, 13; channel_starting_frequency = 2047 MHz.

    La lista de todos los canales de frecuencias se puede encontrar en la Canales WiFi


    Traducir esto en código – consulte iw fuente:

    int ieee80211_frequency_to_channel(int freq)
    {
        if (freq == 2484)
            return 14;
    
        if (freq < 2484)
            return (freq - 2407) / 5;
    
        return freq/5 - 1000;
    }
    Bonito y elegante solución

    OriginalEl autor artm

Dejar respuesta

Please enter your comment!
Please enter your name here