[Bob] has his own smoker and loves to barbecue, but doesn’t like spending all day checking on his smoker’s temperature. He thought about building his own wireless thermometer setup, which would have been pretty awesome, but then he had a better idea: why not hack an existing wireless barbecue thermometer? [Bob] purchased an off-the-shelf wireless BBQ thermometer and reverse-engineered its wireless protocol to make his own wireless thermometer setup.
The first problem [Bob] encountered was figuring out the frequency of the transmitter. Thankfully [Bob] had access to a spectrum analyzer, where he discovered the transmitter was running at 433.92MHz (a cheap RTL-SDR dongle would also get the job done). Next, [Bob] started digging into the manufacturer’s FCC filings and found that it actually called out the transmit frequency, which matched the transmit frequency he measured. He also found a ton of other helpful information in the filing, like a block diagram and full transmitter schematic.
[Bob] used a Radiometrix RF module to receive the thermometer’s signal. He hooked up the output to his logic analyzer to start decoding the protocol. After a quick visual analysis, [Bob] found that the signal was a preamble followed 13 bytes of Manchester-encoded data being transmitted at 2kbps. He started collecting data with known temperatures, created a table of the data, and began looking for patterns. After quite a bit of searching [Bob] was successfully able to find and parse the temperature values out of the data stream. [Bob] did a great job of documenting his process and results, so check out his writeup if you want to try it out yourself.
This is the Kyosho Blizzard, a tracked remote control vehicle that’s a blast to take out in the rapidly retreating snowpack. [Antibore] was interested in performance testing the range of the thing. It includes a camera that streams video back to a tablet or smartphone. Both the video and the controls use WiFi for communications. As he expected, the rover loses control signal at about fifty meters, with the video has a disappointing twenty meter limit. His workaround is to saddle the crawler with a 3G bridge. Not a bad idea that may be feasibly completed with hardware you have on hand.
In this case he grabbed a Beagleboard-XM. It runs embedded Linux and has USB ports which is perfect for the other two parts of the added hardware: a Huawei E230 3G dongle and a WiFi dongle. This means no alterations to the rover were necessary. He set up OpenVPN and performed a few other tweaks. The WiFi signal is constant, as the transmitter and receiver are both attached to the rover. We just wonder about the latency of the 3G traffic. Let’s hear your thoughts on that in the comments below.
We would be remiss if we didn’t tie-in the potential of this hack. Previously this winter we saw a Kyosho with a 3D printed snow thrower attached to the front. More snow removal power, arguably unlimited range… you can do your entire block from the comfort of the couch. To the Future!
[terenceang] got his feet wet with the ESP8266 WiFi module by hacking up an IKEA Molgan PIR light. The stock PIR light simply lights when motion is detected. [terenceang] added some extra functionality to it by making it send notifications to his phone as well.
The default configuration of the stock PIR light was to only work at night. This is done with a photo diode. It was removed to make it work in daylight, along with several other components. He removed a handful of current limiting resistors to disable the hi output LEDs. One was preserved as a visual indicator. The onboard voltage regulator didn’t supply enough current for the ESP8266. [terenceang] used some electronic wizardry and was able to solve the problem with an opto-coupler.
The one thing he would change is moving from battery to mains power, as expected battery life is less than two weeks.Schematics, source code and tons of great pictures are available on his blog. If you want to give it a try but need a crash course check out the recent news that the Arduino IDE works with ESP8266, or give direct programming a try.
Despite a wealth of tutorials for setting up and writing code for the ESP8266 WiFi module, there has not been much of anything on programming this cheap wireless module with the Arduino IDE. Finally, this has changed. After many months of coding, the Arduino IDE supports the ESP8266 module.
The Arduino IDE support was announced on the ESP8266 community forum. Setup is fairly simple with downloads for Linux, OS X, and Windows. This isn’t an ESP8266 shield, either: you can write code for the ESP module, connect the serial pins, and hit the program button.
The basic functions of the Arduino IDE – pinMode, digitalRead, digitalWrite, and analogRead – are available. Most of the WiFi functions work just like the WiFi shield library.
There are a few things that aren’t written yet; PWM doesn’t work, as the ESP8266 only has one hardware PWM source. SPI and I2C slave mode aren’t done yet, and uploading sketches via WiFi needs a little bit of thought. That said, this is a great introduction to programming the ESP module. If the Arduino IDE isn’t your thing, you could always do it the cool way with [CNLohr]’s programming tutorial we featured last week.
The availability of cheap radio modules is making them ubiquitous in an increasing number of projects that we have been seeing recently. The usual go-to solution is using any one of the several modules based on the ESP8266 device. [Willem] wrote in to share with us his experiences with another radio module – the EMW3162 from MXChip, which at $10 isn’t as cheap as the ESP8266 modules, but is a more capable, power packed, device.
The EMW3162 (PDF datasheet) is a low-power embedded WiFi module with integrated wireless LAN, and a STM32F205 Cortex-M3 microcontroller that runs a “self-hosted” WiFi networking library and software application stack. The microcontroller has 1M flash, 128k RAM and runs at 120MHz. And since MXChip is a Broadcom partner, they are allowed to use the WICED_SDK.
The on-board ARM M3 means all kinds of useful interfaces are available: UART, SPI, I2C, ADC, DAC, PWM, TIMERS, GPIO, and a JTAG flash interface. The good news could be on the power consumption figures – the module is touted to be low-power, and the data sheet shows 7mA when connected to an access point but with no data transfer. When transmitting at 20kbps, the current draw is about 24mA, which goes up to 320mA at 11Mbps.
[Willem] has his EMW3162_WICED repository up on Github, but also take a look at the MXChips MICO (Mico-controller based Internet Connectivity Operation System) repository. At the moment, he has it working using Linux, with a gnu gcc compiler and a JLINK JTAG programmer. He also has the WICED SDK working and has a WiFi AP with an on-board 120MHz arm chip. It would be interesting to hear about other users’ experiences with this radio module. Do let us know in the comments below!
Coffee. The lifeblood of our society. The sweet nectar of bean, whose chemical compound makes us feel so, so good. Doesn’t it deserve a place in the Internet of Things? [Matt] and [Don] thought so — so they connected their old coffee pot to their phones.
After receiving their developer version of the Electric Imp board, the two started thinking of small projects to test it out on; ones that might even have a real-world application. Since the Imp is capable of receiving inputs via the web, it’s super easy to write an app to control things — in this case, a coffee pot.
Hardware-wise it was actually pretty simple. The coffee pot control board provides power for the Imp, and the On/Off switch of the coffee maker is wired to one of the Imp’s outputs. One simple app later, and boom we have wireless java capabilities. Heh. Java.
Continue reading “Help! There’s an Imp in my Coffee Pot!”
The ESP8266 is the answer to “I want something with Wifi.” Surprisingly, there are a number of engineers and hobbyists who have not heard of this chip or have heard of it but don’t really understand what it is. It’s basically the answer to everything IoT to so many engineering problems that have plagued the hobbyist and commercial world alike.
The chip is a processor with integrated RAM, some ROM, and a WiFi radio, and the only external components you will need are 4 capacitors, a crystal and an external flash! It’s CHEAP, like $4/ea cheap! Or $5 if you want it on a nice, convenient carrier board that includes all these components. The power consumption is reasonable (~200mA)1, the range is insane ~300m2 without directional equipment, and a PCB trace antenna and ~4km if you want to be ridiculous.
One place thing that more people need to know about is how to program directly for this chip. Too many times projects use it as a crutch via the AT commands. Read on and find out how to hello world with just this chip.
Continue reading “How to Directly Program an Inexpensive ESP8266 WiFi Module”