09/26/2014 at 19:24 •
So my chips finally passed through customs and arrived in sealed anti-static bags. I connected up the VDD and GND to a bench power supply as others have noted that these chips need quite a bit of power. I also needed to connect the CH_PD pin to 3.3V to enable the chip. Just on standby, the chip consumes about 70mA.
I connected the TX and RX lines to my Sparkfun FTDI Basic and fired up Putty just to test out some commands before I hook it up to a chipKIT. I have to talk to the chip over 115200 Baud, and 57600 does not work. I received READY in my Putty terminal and sent AT+RST. The chip spit out a bunch of boot up text which I will include later when I write a post showing the response of all of the commands. I sent AT+CWLAP and nothing... at first I received ERROR. I sent it a couple more times and actually got the chip to list the access points! I tried connecting to my wifi router, but I entered the password wrong and still received OK. I tried sending the inquiry if I was connected and the chip hung up and any command I sent after that said it was busy. All further attempts to send AT+CWLAP hang up the chip.
So I would say so far, the chip isn't as easy to use out of the box as others have stated. I will investigate further and send some more commands and write up a post detailing how the chip responds.
09/11/2014 at 17:04 •
I am still awaiting the arrival of the modules I ordered from AliExpress. I have a tracking number, but it doesn't seem valid yet. It is great reading up on the progress others who have received their modules are making! Peter has been active in the comments and has successfully sent TCP data.
I will provide another update when I receive the modules and being work on the library. I was originally going to write the library for the MSP430 microcontrollers, but it looks like many people who have received their modules are using the Arduino. I might create the library for the Arduino first so that I can get the most amount of people debugging the library. I will eventually port the library to both platforms.
08/29/2014 at 02:28 •
So looking around on this German forum post about the ESP8266
I saw that somebody translated the Chinese AT command pdf (into German which google than translated into English for me). The translation this person posted had much more information about the chip than I had seen before! I had assumed that the Nurdspace page everybody is probably already very familiar with
was translated from the same document and was all the information we had so I didn't bother taking a look at the actual document in Chinese. It seemed like it would be just BARELY enough to get a good library going, however a lot of information was missing like possible return values and the returned data format. It wouldn't have been impossible to figure this stuff out after getting the chip, but it would have taken longer just poking around.
Read on to see the translated document and what to expect from the List Access Points Command.
So I took a look at the Chinese document and after seeing actual return values for the AT commands, I knew there would be something worth looking further into. Instead of posting the Chinese->German->English translation, I threw this document
into Google translate and got some great stuff!
(Edit: Removed .txt translation and replaced with .pdf which provides much easier to read formatting than the .txt file did)
For example, check out the Nurdspace page for the AT command AT+CWLAP which should return a list of the access points that the ESP8266 can see. The page doesn't say anything about what will be returned. How will the data be formatted? WHAT data will even be sent?
From the translated page, we get this information about AT+CWLAP
AT + CWLAP: lists currently available AP
AT + CWLAP
Successful return AP list
+ CWLAP: <ecn>, <ssid>, <rssi> [, <mode>]
OK Or Fails, the return ERROR
<Ecn> 0 OPEN
<Ssid> string parameter, the access point name
<Rssi> signal strength
<Mode> 0 manually connect
An automatic connection
And now we can compare this with the page from the Chinese manual to see how it should be formatted.
You can see that the "An automatic connection" phrase at the end of the translated section should have a "1" in front of it.
So, what should happen if you request a list of the access points? Lets assume there is an open access point at a coffee shop called attwifi with an RSSI of 80.
Starting from the top, you should send
to the ESP8266. The ESP8266 will then send either OK or ERROR. It should then send
+ CWLAB: 0,attwifi,80
The <mode> at the end is in brackets which means that is might not show up every time the chip sends this information. If <mode> is 0, it means "manual connection" and if <mode> is 1, it means "automatic connection". I believe that this will indicate if you manually connected to the access point or if it automatically joined the access point. If it doesn't set anything for <mode>, you aren't connected to the access point. This might point to an ability to set the ESP8266 to automatically join an access point if it sees it, however I could be wrong about this. I don't see anything in the "Join Access Point" AT command that indicates that you can register an access point as an automatic connection, but maybe the EPS8266 does this automatically whenever you join an access point.
I will be working on formatting this document and pouring over it for more hints about the functionality. Take a look and let me know what you find!
08/27/2014 at 17:56 •
I just placed an order for two ESP8266 Modules from AliExpress for $9.50 including free shipping. The processing time is 7 days and the expected shipping time is over 2 weeks. I will be posting the currently available documentation and the translations people have posted soon. I will also create a new GitHub repository to start commiting preliminary code based off of the documentation.