Ever so slowly, everyone’s favorite WiFi adapter is making its way into Internet-enabled projects. [jimeer01] created a device that reads the subject and sender lines from the latest email in his inbox and displays it on an LCD using the ESP8266 WiFi chip.
[jimeer] is using a ByPic for writing to the LCD and querying an inbox through an ESP8266 module. The ByPic is a board built around the BV_Basic firmware, stuffing a PIC microcontroller in an Arduino form factor and giving it a BASIC interpreter. Because this board isn’t ‘compile and flash’ like an Arduino, it’s perfectly suited for changing WiFi configurations and IMAP server credentials on the fly.
The device grabs the latest email in an inbox and displays the date, sender, and subject on the display. After scrolling through those lines, the PIC hits the ESP8266 to query the server again, grabbing the latest email, and repeating the whole process again, all without needing to connect the device to a computer. Video below.
It’s a shame the module doesn’t have more of the GPIO pins broken out. As it stands to do almost anything useful with that particular module you need to have an external microcontroller doing all of the dumb IO stuff, which slightly defeats the purpose of having the nice processor on board to begin with.
Maybe you could add a port expander to your design.
With four or five I/O you can expand to 16 or more.
That’s the problem, there’s not five GPIO to be had on that breakout board.
That is the point of having a separate microcontroller the Mini-Max (BV502) connected to the ESP8266 not only gives you 20+ GPIO but SPI, ADC, TIMERS, Touch pad control etc. You can also easily program it.
there are 21 GPIOs on the chip!!!
Yeah, but you can’t get to them without your own custom breakout. There’s zero chance of me being able to solder that chip, we really need less crappy breakouts for it.
http://www.electrodragon.com/product/esp8266-wifi-board-full-ios-smd/
Sure you can :)
That’s a lot nicer. Wish it had proper through hole pads though.
Just out of curiosity, is ElectroDragon any good? I’m understandably leery of Chinese sites, gotten backhanded too many times.
I’ve used them a LOT. Very cheap prices and pretty good quality stuff. I haven’t ordered ICs from them, but their Arduinos, shields and things like buttons etc are all good.
Also I found significantly cheaper faster (within a week) postage to UK.
thats what kynar/transformer wire is for
And i am still waiting for my module for over a month now…
So many great ideas what to do with it.
There is one included in the discovery kit (www.shop.byvac.com), in stock now.
“copyright” seriously ? Where we are ?…
All of the ByPic source code is open source
I’m having issues with mine, I tried to connect to sites using TCP and usually don’t receive a reply in the terminal window just SEND OK message after I’ve sent the GET request.
Probably not the proper forum to post this but maybe someone can help or link a resource.
Also, I’ve bricked one after doing an update. Has anyone bricked one and was able to unbrick?
I would assume that since the firmware is store on SPI FLASH, worse case senerio is desolder it for reprogramming or spend another $4.50?
I worked on mine yesterday, and it took a long time to understand how to get it to work correctly. I used a 3,3v FTDI basic to connect to the ESP using putty under windows, and had the same issues you report, in the end I got it to work by giving AT+CIPSEND=40
(or some other large bit number)
“GET /
\r\n\r\n\r\n
Then the Get request itself with a space and enter following, and then Ctrl+M followed by Ctrl+J again (\r and \n shortcuts for putty) and again till I got a response… If I only did GET / \r\n\r\n\r\n I didn’t get an answer, and also some servers need a HTTP/1.0 following, and if you are trying to reach a shared host you need to insert Host: thehosttoreach.com on the next line, then a new line, and then Ctrl+M, Ctrl+J
Get /
Host: example.com
\r\n\r\n\…
If you use CoolTerm it is a bit easier, since it can be configured to send \r\n on each Enter press.
If you use ByPic its even easier still as you can write a simple function to do several AT commands, for example the info() function sends about 6 at commands and reports back to the terminal. Great for an instant update of, Mode, Transmission type, SSID, IP address and timeout to mention a few.
Thanks! I’ll try that (i’m using putty but do have cooltherm)
Also, are you doing this on completely stock esp8266 or did you do the firmware update?
Just on the stock, the version reports 00160901, I have not done any updating. I am just using the standard AT commands; so far there has been no show stoppers although it would be nice to be able to change the IP address when in access point mode(2).
A stock one, though I’d try to get it to work before updating anything.. Had about 2,5 hours of “error 400 – Bad Request” and “505 Version not supported” or something before I got it to work, but in general, just give a load of extra bits to AT+CIPSEND the first time, and pad with the linebreak and carrier returns until you get an answer from the server,,,
From my experience, of 10 devices and only 3 working well, are they very alpha-stage firmware and zero quality control construction. This does not mean you should not use them but it should mean that you should be prepared for other problems outside your wiring or code. Specifically.
1. You may get a dud that will never connect to a router (as in the case of 5 of the units I bought) it may or may not give an error, say its ready or connected but its lying.
2. Get disconnected or hang at strange times (as in the case of 2 of my units)
Both may work after a firmware update but until I see production level firmware and 100% success rate I would keep a mosfet on the Vdd power line to power off-on the unit on any error (dont just rely on the reset pin or the chip enable)
The result of this in some cases is frustration and my advice is get 2 or 3 just in case, flash it if you have problems and if that doesnt work or you dont have time just bin it, its not worth the frustration.
I am eagerly awaiting expresif or some uber cool hacker to provide a more reliable firmware, and a company with better QC start making them, then this device will shine.
AT+FACTRESET would be a good start for the next rev of the firmware :-)
What power supply are you using? Sounds like the problems I had until I gave them a 300ma capable 3v3, they don’t seem to like running even 0.1v under 3v3. The AT firmware is indeed very buggy though.
Hmmm, I should get one and connect it to our physical mailbox, to find out if the mailman has arrived, without traipsing through the snow and slush.
Ren: Have a look at You Have Mail (http://hackaday.io/project/1188-you-have-mail) it does exactly that. (Or is in progress)
Brian, is the source code available anywhere?