A Proof Of Concept Project For The ESP8266

It’s hardly been a month since we first heard of the impossibly cheap WiFi adapter for micros, the ESP8266. Since then orders have slowly been flowing out of ports in China and onto the workbenches of tinkerers around the world. Finally, we have a working project using this module. It might only be a display to show the current weather conditions, but it’s a start, and only a hint of what this module can do.

Since the ESP8266 found its way into the storefronts of the usual distributors, a lot of effort has gone into translating the datasheets both on hackaday.io and the nurdspace wiki. The module does respond to simple AT commands, and with the right bit of code it’s possible to pull a few bits of data off of the Internet.

The code requests data from openweathermap.org and displays the current temperature, pressure, and humidity on a small TFT display. The entire thing is powered by just an Arduino, so for anyone wanting a cheap way to put an Arduino project on the Internet, there ‘ya go.

The CC3200 dev board with Energia

Energia On The CC3200

If you’re looking to connect things to the internet, with the goal of building some sort of “Internet of Things,” the new CC3200 chip from TI is an interesting option. Now you can get started quickly with the Energia development environment for the CC3200.

We discussed the CC3200 previously on Hackaday. The chip gives you an ARM Cortex M4 processor with a built-in WiFi stack and radio. It supports things like web servers and SSL out of the box.

Energia is an Arduino-like development environment for TI chips. It makes writing firmware for these devices easier, since a lot of the work is already done. The collection of libraries aids in getting prototypes running quickly. You can even debug Energia sketches using TI’s fully featured IDE.

With this new release of Energia, the existing Energia WiFi library supports the built-in WiFi radio on the CC3200. This should make prototyping of WiFi devices easier, and cheaper since the CC3200 Launchpad retails for $30.

More WiFi Modules For IoT Madness

The last year has brought us CC3000 WiFi module from TI, and recently the improved CC3200 that includes an integrated microcontroller. The Chinese design houses have gotten the hint, putting out the exceptionally cheap ESP8266, a serial to WiFi bridge that also includes a microcontroller to handle the TCP/IP stack and the software side of an 802.11 connection. Now there’s another dedicated WiFi module. It’s called the MT7681, and it’s exactly what you would expect given the competition: a programmable module with the ability to connect to a WiFi network.

Like TI’s CC3200, and the ESP8266, the MT7681 can be connected to any microcontroller over a serial connection, making it a serial to WiFi bridge. This module also contains a user-programmable microcontroller, meaning you don’t need to connect an Arduino to blink a few pins; UART, SPI, and a few GPIO pins are right on the board. The module also includes an SDK and gnu compiler, so development of custom code running on this module should be easier than some of the other alternatives.

You can pick up one of the MT7681 modules through the usual channels, but there’s an Indiegogo campaign based in China that takes this module and builds a ‘dock’ around it. The dock has a relay, temperature/humidity sensor, a few GPIO pins, and a USB serial connection for use as an Internet of Things base station.

For anyone looking for a little more computational horsepower, there’s also a few mentions and press releases announcing another module, the MT7688, This is a very small (12mm by 12mm) module running Linux with 256 MB of RAM and 802.11n support. This module hasn’t even hit the market yet, but we’ll be on the lookout for when it will be released.

Thanks [uhrheber] for sending this one in.

The Current State Of ESP8266 Development

A few weeks ago we caught wind of a very cool new chip. It’s called the ESP8266, and it’s a WiFi module that allows you to connect just about any project to an 802.11 b/g/n network. It also costs $5. Yes, there was much rejoicing when this chip was announced.

Since we learned of the ESP8266, there has been a lot of work done to translate the datasheets from Chinese, figure out how the SOC can be programmed, and a few preliminary attempts at getting this module working with an Arduino. Keep in mind, very few people have one of these modules in hand right now, so all this information is completely untested. Here’s what we have so far:

Over on Hackaday Projects, [bafeigum] has been working to research the capabilities of this module. Most of the comments deal with the AT Command set for the module and figuring out what is actually returned when certain commands are called.

The ESP8266 community forum is about a week old, but already there’s a wealth of information. Most of the efforts seem to be centered on getting GCC to program this chip, something that would make the ESP8266 a single-solution chip for anything that needs WiFi and a bit of processing power. Everyone (including the great [Sprite_TM]) has currently hit a roadblock, so if you have a ton of experience with GCC and the Xtensa microcontroller, check out that thread. Failing that, we’ll have to wait until someone from Tensilica, the company behind the guts of this chip, to chime in and help everyone figure out how this thing actually works.

The Arduino-heads out there will have a much easier time. There’s already a tutorial for using the ESP8266 as a serial WiFi module. Note the ESP operates on 3.3 Volts, so connecting this module to the 5V pin means you’ll be out $5 and several weeks of shipping time.

This is an incredible amount of development in a very short amount of time, made even more remarkable by the fact that no one has one of these WiFi modules yet. When these modules do arrive to workbenches around the world, we’ll expect the Hackaday tip line to be flooded with very small and somewhat battery friendly WiFi builds.

New Chip Alert: The ESP8266 WiFi Module (It’s $5)

Every so often we run across something in the Hackaday tip line that sends us scurrying to Google, trying to source a component, part, or assembly. The ESP8266 WiFi module is the latest, made interesting because it pretty much doesn’t exist outside China.

Why is it cool? It’s a WiFi module with an SOC, making it somewhat similar to TI’s CC300 in conception (A.K.A. the thing that makes the Spark Core so appealing), in that a microcontroller on the module takes care of all the WiFi, TCP/IP stack, and the overhead found in an 802.11 network. It’s addressable over SPI and UART, making this an exceptionally easy choice for anyone wanting to build an Internet of Things thing; you can simply connect any microcontroller to this module and start pushing data up to the Internet. Oh, it’s also being sold for $5 in quantity one. Yes, for five dollars you can blink a LED from the Internet. That’s about half the price as the CC3000 itself, and a quarter of the price if you were to build a CC3000 breakout board.

There’s a catch, right, there’s always a catch. Yep. About two hours after this post is published it will be the number one English language Google result for “ESP8266.” As far as the English-speaking world is concerned, there is absolutely nothing to be found anywhere on the Internet on this module.

Seeed Studio recently sold a few of these modules for $7 and has some documentation, including a full datasheet and an AT command set. All the documentation is in Chinese. There’s also an “ESP8266 IoT SDK”, but from a quick glance at the code, this appears to be an SDK for the SOC on the module, not a simple way to connect the module to a microcontroller.

Anyone wanting to grab one of these modules can do so on Ali Express. Anyone wanting to do something with one of these modules will have a much more difficult time, most likely poking and prodding bits randomly with the help of Google translate. Should someone, or even a group of people, want to take up the task of creating a translation of the datasheet and possibly a library, we have a pretty collaborative project hosting site where you can do that. You may organize in the comments below; we’ll also be taking bets as to when a product using the ESP8266 will be found on Kickstarter. My guess is under a month.

EDIT: Here’s a translation of the datasheet and AT command set.

Edit two: [bafeigum] is writing a library go help him out.

Thanks [Liam] for the tip.

Building The NSA’s Tools

Fake ANT Catalog Entry for HackRF

Back in 2013, the NSA ANT Catalog was leaked. This document contained a list of devices that are available to the NSA to carry out surveillance.

[Michael Ossmann] took a look at this, and realized that a lot of their tools were similar to devices the open source hardware community had built. Based on that, he gave a talk on The NSA Playset at Toorcamp 2014. This covered how one might implement these devices using open hardware.

The above image is a parody of an ANT Catalog page, which shows [Michael]’s HackRF, an open source software defined radio. In the talk, [Michael] and [Dean Pierce] go over the ANT Catalog devices one by one, discussing the hardware that would be needed to build your own.

Some of these tools already have open source counterparts. The NIGHTSTAND WiFi exploitation tools is essentially a WiFi Pineapple. SPARROW II is more or less a device running Kismet attached to a drone, which we’ve seen before.

A video of the Toorcamp talk is available on [Michael]’s blog. There will also be a variety of talks on this subject at DEFCON next week, which we’re looking forward to. For further reading, Wikipedia has a great summary of the ANT Catalog.

The Smart Humidor

humidor

If you’re a cigar aficionado, you know storing cigars at the proper temperature and humidity is something you just need to do. Centuries of design have gone into the simple humidor, and now, I guess, it’s time to put some electronics alongside your cigars.

The design of [dzzie]’s smart humidor consists of an Arduino, WiFi shield, LCD + button shield, and most importantly, a DHT22 temperature and humidity sensor. In a bit of thoughtfulness, only the DHT22 is mounted inside the humidor; everything else is in an enclosure mounted outside the humidor, including a few buttons for clearing alerts and logging when water is added.

The smart humidor reads the DHT22 sensor every 20 minutes and uploads the data to a web server where useful graphs are rendered. The control box will send out an alert email to [dzzie] if the temperature or humidity is out of the desired range.