[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”
If you’re like us, you probably have more than one Apple Remote kicking around in a parts drawer, and if you’re even more like us, you’re probably really annoyed at Apple’s tendency to use proprietary hardware and software at every turn (lightning connector, anyone?). But there’s hope for the Apple Remote now: [Sourcery] has completed a project that allows an Apple Remote to control anything you wish.
The idea is fairly straightforward: A device interprets the IR signals from an Apple Remote, and then outputs another IR signal that can do something useful on a non-Apple product. [Sourcery] uses an Arduino to do the IR translation, along with a set of IR emitters and detectors, and now the Apple Remote can control anything, from stereos to TVs to anything you can imagine. It also doesn’t remove the Apple Remote’s capability to control Apple products, in case you need yours to do that as well.
[Sourcery] notes that sometimes working with RAW IR signals can be a little difficult, but the information on their project and in their 25-minute video discusses how to deal with that, so make sure to check that out after the break. Don’t have an Apple Remote? You can do a similar thing with a PS3 controller.
Continue reading “Control Anything with an Apple Remote”
The idea of a pirate box is pretty simple. All you need is a tiny Linux system with a WiFi adapter, a bit of storage space, and the software that will allow anyone to upload a few files to the server and an interface that will let anyone on the network download those files. In practice, though, a pirate box is a mess of wires and power adapters – not the pocketable device a WiFi file sharing box should be.
[Chris] came up with a much smaller file sharing beacon. It’s not based on a router; instead, [Chris]’ build uses an ez Share WiFi microSD adapter. It’s a device meant to push pics taken by a digital camera up to the Internet, but by configuring the software just so, up to five users can connect to the adapter and pull files down from a microSD card. The build only requires putting power to the correct pins. A LiPo battery and charge controller takes care of this problem.
There are a few shortcomings to this project – [Chris] doesn’t know how to upload files to the device. Maybe someone sufficiently clever can figure out how to make that work. Still, if you’re ever in a situation where you’d like to share some files with people in the same building, this is the device you need.
Thanks [Jake] for the tip.