Close

No This Fun

A project log for SubPos Positioning System

A "dataless" Wi-Fi positioning system that can be used anywhere GPS can't.

bleckyBlecky 03/25/2015 at 13:210 Comments

I got one of the ESP8266 modules connected and working as an AP today.

I had to update as the module I received would not run any AT commands:

I updated to 0.9.4.2; I couldn't get other firmware to work correctly as they wouldn't respond to input (the device responds on the terminal as you type, but it wouldn't accept a carriage return). This firmware runs at 9600baud.

One thing to note is that when there isn't enough power to the device, it doesn't seem to initialise correctly and kills any Wi-Fi devices nearby.

Now since we want to be outputting raw hex to the terminal for the SSID, we will have to use Realterm for this test.

We want to send the following commands:

AT+CWMODE=2

AT+CWSAP=<ssid>,<pass>,<chan>,<enc>

Our command (for Realterm) then ends up being:

AT+CWSAP="\x53\x50\x53\x3a\x20\x41\x55\x53\x00\x00\x00\x63\x3b\x15\x0a\x07\x3b\x76\xff\x31\x07\x5b\xcd\x15\x7a\x02\x00\x00\x00\x00\x00\x00","",1,0

I altered the output of the coder to format the SSID correctly as above. Note that the hex values need to be a two digit representation or it won't work. Also it seems in this firmware version you need to send both the channel and encryption type too (it's not optional contrary to some documentation).

The problem might be due to the carriage returns, line feeds, quotation marks and commas stored as hex values in the SSID, so we are going to have to find a way around this affecting the AT command string (I might have to modify the firmware of the ESP8266).

Interestingly, nulls are ignored on Android (AT+CWSAP="SPS:\x00\x00\x00\x00\x00\x00test","",1,0):

Tune in next time.

Discussions