MicroPython On The ESP8266: Kicking The Tires

Scripting languages are for large computers, right? “Real” embedded device work is a hellish, never-ending cycle of code, compile, and re-flash. Well, I used to think so too, but with the proliferation of scripting and other interactive languages to microcontrollers over the last few years, the hurdle to interactive development on the small chips has gotten a lot lower.

On the ESP8266 platform, I’ve tried out NodeMCU’s Lua and ESP8266 BASIC. (For the last half-year, I’ve been using the awesome Mecrisp-Stellaris almost exclusively on the STM32F1xx and F4xx chips, but haven’t dipped into ESP8266 Forth yet.)

NodeMCU is great because it’s got everything you could want built in, and through cloud services it’s easy to get a tailored build made that maximizes free flash memory for your projects. I just don’t dig the asynchronous Lua thing (you might, try it!). ESP BASIC has a different set of libraries, and is missing MQTT for my purposes. Still it’s pretty slick, and worth a look.

So when the MicroPython folks announced that they were releasing the binary builds for the ESP, I thought it was time to give it a spin. I’ve used Python for nearly twelve years now, so it’s like a comfortable shoe for me. Would MicroPython be the same on the ESP8266? The short answer is yes and no.

Continue reading “MicroPython On The ESP8266: Kicking The Tires”

Never Gonna Give Up Free WiFi

Our conscience almost prevented us from posting this one. Almost.

What do people all around the world want most? Free WiFi. And what inevitable force do they want to avoid most, just after death and taxes? Rick Astley. As a getting-started project with the ESP8266, Hackaday.io user [jaime] built a “free WiFi portal” that takes advantage of people’s deepest desires. Instead of delivering sweet, high-bandwidth connectivity, once you click through the onerous terms and conditions, it delivers you a looped GIF with background music.

And all of this on $4 worth of hardware, with firmware assembled in the cloud and easily available to anyone. We live in a truly frivolous glorious age.

Digging through our archives, we found a number of Rickroll posts that we’d rather forget, but this steam-powered record player bears a second look.

Planespotter Spots Planes, Tracks Destinations

Ever looked up in the sky and wondered where all of those planes above you were going? [squix] no longer has to, thanks to his ESP8266-based Planespotter.

He built this nifty device to grab the details of the flights he sees taking off from Zurich airport. It’s a neat build, running on an ESP8266 that receives ADS-B data from ADS-B Exchange. This service allows you to query the ADS-B data with a specific location.

[squix]’s plane tracker sends a query to ADS-B exchange for flights in his location and below a certain height (so he sees ones that are just taking off), then displays the received information on the OLED screen. He says a display-only version will run you around $20, while the full version that also receives and shares data with the ADS-B Exchange will cost you about $50. That’s a lot cheaper than a plane ticket…

Your ESP8266 Needs More Memory

We just got through reviewing MicroPython on the ESP8266, and one of the main takehomes is that our ESP modules need more flash memory. You may be in the same boat — the earliest (and cheapest) modules on the market only had 512 kB of flash. For over-the-air programming, or to give you some more space for fancier programs, you’re going to want 1 MB or even 4 MB.

The solution? Just buy a new flash chip and solder it on. This is especially easy if you’ve got an ESP-01, ESP-03, or ESP-11 modules where the flash chip is exposed. Desolder, resolder, done. It can be a little trickier for those modules with a tin can around chips, but that’s nothing that a little hot air can’t fix. See the video embedded below for a good walk-through.

Continue reading “Your ESP8266 Needs More Memory”

Two Great Radios Taste Great Together

[Johan Kanflo] sent us his latest recipe: a blend of one part RFM69 sub-gigahertz radio transceiver with one part ESP8266 module. The resulting dish looks absolutely delicious!

We’re all charmed with the ease of use that the ESP8266 brings to the table — plug it in and you’re talking to your existing WiFi network — but we hate the power consumption for battery-powered applications. WiFi is a power hog. And although ISM-band radio modules make point-to-point communications cheap and power-saving, getting them to talk with your computer takes an adapter.

So [Johan] combined the two radios and made a sweet ISM-radio-to-WiFi bridge. His demo application takes whatever data is sent over the ISM band and pushes it to an MQTT broker on his WiFi network. Hardware and firmware are up on GitHub.

We’ve been wanting a device like this for our home network for a while now. Kudos, [Johan] for making it so easy!

Avoiding Exercise With An ESP8266 And Blynk

[Mike Diamond] was tired of climbing down (and back up) 40 stairs to check his mailbox. He decided to create a mailbox alert using the ESP8266 to connect to his WiFi. The idea was simple: have the ESP8266 monitor when the mailbox flap opened using a magnet and a reed switch. As always, though, the devil is in the details. [Mike] got things working with a little help and shares not only the finished design but how he got there.

To handle the sending of e-mail, [Mike] used the Blynk app. You often think of Blynk as a way to build user interfaces on an Android or iOS device that can control an Arduino. In this case, though, [Mike] used the library with the ESP8266 and had it send e-mail on his behalf.

Continue reading “Avoiding Exercise With An ESP8266 And Blynk”

Broadcasting Bluetooth Beacons With Bubbles

Bluetooth beacons have only been around for a few years, but the draw is incredible. With Bluetooth beacons, your phone is location aware, even with location services are turned off. They’re seen in fast food joints, big box retailers, and anywhere else there’s a dollar to be made. [Nemik] has been working on a home automation project, and came up with a use for Bluetooth beacons that might actually be useful. It’s a WiFi-based Bluetooth beacon notifier that scans the area for beacons and forwards them to an MQTT server.

[Nemik]’s ‘Presence Detector’ for Bluetooth advertisements is actually a surprisingly simple build, leveraging the unbelievably cheap wireless modules available to us today. The WiFi side of the equation is a NodeMCU v2 ESP8266 dev board that provides all the smarts for the device via Lua scripting. The Bluetooth side of the board is a PTR5518 module that has a nRF51822 tucked inside. With the right configuration, this small board will listen for BLE advertisements and forward them to an MQTT server where they can be seen by anyone on the network.

[Nemik] is selling these beacon to WiFi bridges, but in the spirit of Open Hardware, he’s also giving away the designs and firmware so you can make your own. If you ever have an abundance of Bluetooth beacons sitting around and want to make a beacons of Things thing, this is the build for it.