How to Directly Program an Inexpensive ESP8266 WiFi Module

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”

Solar Charge Controller Improves Efficiency of Solar Panels

The simplest and easiest way to charge a battery with a solar panel is to connect the panel directly to the battery. Assuming the panel has a diode to prevent energy from flowing through it from the battery when there’s no sunlight. This is fairly common but not very efficient. [Debasish Dutta] has built a charge controller that addresses the inefficiencies of such a system though, and was able to implement maximum power point tracking using an Arduino.

Maximum power point tracking (MPPT) is a method that uses PWM and a special DC-DC converter to match the impedance of the solar panel to the battery. This means that more energy can be harvested from the panel than would otherwise be available. The circuit is placed in between the panel and the battery and regulates the output voltage of the panel so it matches the voltage on the battery more closely. [Debasish] reports that an efficiency gain of 30-40% can be made with this particular design.

This device has a few bells and whistles as well, including the ability to log data over WiFi, an LCD display to report the status of the panel, battery, and controller, and can charge USB devices. This would be a great addition to any solar installation, especially if you’ve built one into your truck.

This is [Debasish]’s second entry to The Hackaday Prize. We covered his first one a few days ago. That means only one thing: start a project and start documenting it on hackaday.io

Controlling Central Heating Via Wi-Fi

If you’ve ever lived in a building with manually controlled central heating, you’ll probably understand [Martin]’s motivation for this hack. These heating systems often have old fashioned valves to control the radiator. No Nest support, no thermostat, just a knob you turn.

To solve this problem, [Martin] built a Wi-Fi enabled thermostat. This impressive build brings together a custom PCB based on the ESP8266 Wi-Fi microcontroller and a mobile-friendly web UI based on the Open Thermostat Scheduler. The project’s web server is fully self-contained on the ESP8266.

To replace that manual value, [Martin] used a thermoelectric actuator from a Swiss company called HERZ. This is driven by a relay, which is controlled by the ESP8266 microcontroller. Based on the schedule and the measured temperature, the actuator lets fluid flow through the radiator and heat the room.

As a bonus, the device supports NTP for getting the time, MQTT for publishing real-time data, and ThingSpeak for logging and graphing historic data. The source code and design files are available under a Creative Commons license.

File Sharing In Your Pocket

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.

Wearable WiFi Finder Uses the ESP8266

It seems like a day doesn’t go by without an ESP8266 project here on Hackaday. There’s a good reason for that, the chip and associated modules have brought low-cost WiFi connectivity to the masses. Today we have [Stevica Kuharski], who has built an open WiFi access point detector using the ESP8266. To do this he’s using the Lua compatible NodeMcu firwmare. [Stevica] wrote his own Lua scripts to run on the ESP8266’s internal 32 bit microcontroller. The freewifi script scans and searches for open WiFi networks. If a network is detected, the user is informed via a blinking LED.

To make the project wearable, [Stevica] powered the project with a pair of CR2450 coin cell batteries. The ESP8266 is not known for being a particularly low power device, so we’re curious to see what sort of battery life  [Stevica] gets with his project. The project source is already available on GitHub, and [Stevica] is hoping to kick off an Indiegogo campaign in the next few weeks. Click past the break to see the WiFi detector in action.

Continue reading “Wearable WiFi Finder Uses the ESP8266″

Who’s Watching the Kids?

It wasn’t long ago that we saw the Echo bloom into existence as a standalone product from its conceptual roots as a smartphone utility. These little black columns have hardly collected their first film of dust on our coffee tables and we’re already seeing similar technology debut on the toy market, which causes me to raise an eye-brow.

There seems to be some appeal towards making toys smarter, with the intent being that they may help a child learn while they play. Fair enough. It was recently announced that a WiFi enabled, “Hello Barbie” doll will be released sometime this Fall. This new doll will not only be capable of responding to a child’s statements and questions by accessing the Internet at large, it will also log the likes and dislikes of its new BFF on a cloud database so that it can reference the information for later conversations. Neat, right? Because it’s totally safe to trust the Internet with information innocently surrendered by your child.

Similarly there is a Kickstarter going on right now for a re-skinned box-o-internet for kids in the shape of a dinosaur. The “GreenDino”, is the first in a new line called, CogniToys, from a company touted by IBM which has its supercomputer, Watson, working as a backbone to answer all of the questions a child might ask. In addition to acting as an informational steward, the GreenDino will also toss out questions, and upon receiving a correct answer, respond with praise.

Advancements in technology are stellar. Though I can see where a child version of myself would love having an infinitely smart robot dinosaur to bombard with questions, in the case of WiFi and cloud connectivity, the novelty doesn’t outweigh the potential hazards the technology is vulnerable to. Like what, you ask?

Whether on Facebook or some other platform, adults accept the unknown risks involved when we put personal information out on the Internet. Say for instance I allow some mega-corporation to store on their cloud that my favorite color is yellow. By doing so, I accept the potential outcome that I will be thrown into a demographic and advertised to… or in ten years be dragged to an internment camp by a corrupt yellow-hating government who subpoenaed information about me from the corporation I consensually surrendered it to.

The fact is that I understand those types of risks… no matter how extreme and silly they might seem. The child playing with the Barbie does not.

All worst case scenarios of personal data leakage and misuse aside, what happens when Barbie starts wanting accessories? Or says to their new BFF something like, “Wouldn’t we have so much more fun if I had a hot pink convertible?”

A Real-Time Networked VU Running on the ESP8266

Even though the ESP8266 WiFi chipsets are really cheap (and can be somewhat challenging to work with), they still pack a lot of processing power. For instance, [Mr.jb.swe] took one of these modules and made a stand-alone live VU meter with WS2812B LED strip. The VU runs entirely on the ESP chip, without any additional microcontroller. It’s an example we think a lot of projects could follow to do away with unused horsepower (extra microcontrollers) sometimes used to avoid programming directly on the ESP. The stuff you can do with these modules is wild… did you see this WiFi signal strength mapping project?

The ESP chipset acts as a UDP client which receives packets from a WinAmp plugin that [Mr.jb.swe] wrote. The plugin continuously calculates the dB of whatever track is playing and streams it over WiFi to his ESP8266. He also mentions that the ADC of the ESP chipset could be used to sample audio as well, although that pretty much eliminates the need for WiFi.

The whole setup is very responsive even though the processor is parsing UDP messages, driving the WS2812 strip, and driving a small OLED display for debug—and it doesn’t even use a separate microcontroller. [Mr.jb.swe] also posted snippets of his code to get you started on your own project. Check out the videos after the break to see it in action.

Continue reading “A Real-Time Networked VU Running on the ESP8266″