Using Wi-Fi RAW data

Using Wi-Fi scan allows you to fix a position also in the most challenging environments where GNSS signals is obstructed or it has multiple reflection. In such cases, fixing the position with GNSS might take several tens of seconds, thus consuming a significant amount of energy, with the risk of not being able to fix a position anyway, 

Wi-Fi location is based on the fingerprinting technology and requires to submit to CloudLocate service the following information for each visible access point:

For privacy reason, you shall send a minimum of 2 access points.

Using u-blox NINA-W15 series module

To obtain the list of Wi-Fi access points using a u-blox NINA-W15x Wi-Fi module, all you need to do is to send an AT command to the module that returns the required number of access points and their relevant information. The command is given as following: 

AT+UWSCAN

The response from the scan is returned as following: 

+UWSCAN:<bssid>,<op_mode>,<ssid>,<channel>,<rssi>,<authentication_suites>,<unicast_ciphers>,<group_ciphers> 

From the given response, relevant information can be extracted and passed in to the Wi-Fi measurement section of CloudLocate.  For example, AT command gives a response as: 

AT+UWSCAN 

+UWSCAN:a1b2c3d4e6f7,1,"staffWifi",1,-87,28,14,2 

+UWSCAN:a8b9c6f2d3e8,1,"guestWifi",6,-57,18,8,8

OK

The given response can be mapped to CloudLocate payload without any conversion

{

"WiFiMeasurements":[

        {

            "BSSID":"a1b2c3d4e6f7",

            "SignalStrength":-87,

            "Channel":1

        },

        {

            "BSSID":"a8b9c6f2d3e8",

            "SignalStrength":-57,

            "Channel":6

        }

]

}

Using u-blox NORA-W36 series

As for u-blox NINA-W15x series, also for NORA-W36 series you need an AT command to get the list of Wi-Fi  Access Points visible by the device.

AT+UWSSC=<scan_mode> 

where scan mode can be Active (0) or Passive (1)

The output is in the format

+UWSSC:<bssid>,<op_mode>,<ssid>,<channel>,<rssi>,<authentication_suites>,<unicast_ciphers>,<group_ciphers> 

and here below an example of a real output with 5 access points

+UWSSC:802AA8035ADE,"ubx",1,-50,18,8,8

+UWSSC:E063DAB75709,"QuickOffice Hyresgast",1,-81,18,8,8

+UWSSC:70F35A51FC61,"cb-test-me-enterprise",1,-84,18,8,8

+UWSSC:244BFE2E8258,"ae-sho_2G",1,-87,18,8,8

+UWSSC:70F35A51FC64,"cb-jenkins-open",1,-82,0,255,255

and the corresponding JSON payload

{

  "RequestId": "82cb34c9-88c9",

  "WiFiMeasurements": [

    {

      "BSSID": "802AA8035ADE",

      "SignalStrength": -50,

      "Channel": 1

    },

    {

      "BSSID": "E063DAB75709",

      "SignalStrength": -81,

      "Channel": 1

    },

        {

      "BSSID": "70F35A51FC61",

      "SignalStrength": -84,

      "Channel": 1

    },

    {

      "BSSID": "244BFE2E8258",

      "SignalStrength": -87,

      "Channel": 1

    },

        {

      "BSSID": "70F35A51FC64",

      "SignalStrength": -82,

      "Channel": 1

    }

  ]

}

You can find further details about the output in the AT command manual

Using third party Wi-Fi modems

If you are using a modem not belonging to u-blox portfolio, feel free to contact the support so that we can help you. Aa first step we suggest you to look at the modem interface specification/technical documentation to see how you can perform a network scan and retrieve the required parameter.