Minimal MQTT: Power And Privacy

In this installment of Minimal MQTT, I’m going to cover two loose ends: one on the sensor node side, and one on the MQTT server side. Specifically, I’ll tackle the NodeMCU’s sleep mode to reduce power and step you through bridging MQTT servers to get your data securely out of your home server and into “the cloud”, which is really just other people’s servers.

If you’re just stepping into this series now, you should really check out the other three posts, where I set up a server, then build up some sensor nodes, and then flesh-out a few ways to control everything from your phone or the web. That’s the coolest material, anyway. This last installment just refines what we’ve built on. Let’s go!

Continue reading “Minimal MQTT: Power And Privacy”

Tools Of The Trade – Reflow

In our previous issues in this series on making circuit boards, we covered placing solder paste and placing components. Now it’s time to bake our cake!

There are a variety of methods for reflowing a circuit board, but they all rely on a single principle: heat up the solder paste (a mixture of flux and solder) until the flux burns off and the solder becomes liquid, and then cool it down. Accomplishing this once or twice is easy; once you’ve played with a hot plate you’ll swear off through hole. Scaling it up and doing it repeatedly with high yield is extremely challenging, though. Continue reading “Tools Of The Trade – Reflow”

Minimal MQTT: Control And Clients

So you’ve built a central server and filled your house with WiFi-connected nodes all speaking to each other using the MQTT protocol. In short, you’ve got the machine-to-machine side of things entirely squared away. Now it’s time to bring the humans into the loop! We’re going to explore a couple graphical user interfaces.

You could build a physical knob and/or LED display for every little aspect of your entire system, but honestly, this is where GUIs really shine. In this installment of Minimal MQTT, we’re going to look at human-friendly ways of consuming and producing data to interact with your connected sensors, switches, and displays. There are a ton of frameworks out there that use MQTT to build something like this, but we’re going to cut out the middle-man and go straight for some GUI MQTT clients.

Continue reading “Minimal MQTT: Control And Clients”

Hack Your Apartment: Keyless Entry With Little Effort

A typical buzzer for an apartment complex.
A typical buzzer for an apartment complex.

If you’ve been to an apartment complex with a locked front door, you’ve seen the buzzer systems. You press the corresponding button for the apartment you want and can talk to the resident. They can press a button to unlock the door briefly, and then you go up to their apartment and they don’t have to come down to let you in. But what if you’re the resident and you want to go for a run without your keys jingling in your pocket? What if you want to open it using just your smartphone?

I knew this was a silly problem, and everyone I told about it thought that for the amount of time and effort it might save, it was hardly worth it.

Challenge accepted.

How fast can I put this together using only parts I have around the apartment? Turns out about 2 hours.

Continue reading “Hack Your Apartment: Keyless Entry With Little Effort”

Virtually Free Rapsberry Pis

One of the nice things about the Raspberry Pi is that it runs Linux and you can do a lot of development right on the board. The converse of that is you can do a lot of development on a Linux desktop and then move things over to the Pi once you get the biggest bugs out. However, sometimes you really need to run code on the actual platform.

There is, however, an in-between solution that has the added benefit of upping your skills: emulate a Pi on your desktop. If you use Linux or Windows on your desktop, you can use QEMU to execute Raspberry Pi software virtually. This might be useful if you don’t have a Pi (or, at least, don’t have it with you). Or you just want to leverage your large computer to simplify development. Of course we would be delighted to see you build the Pi equivalent of the Tamagotchi Singularity but that’s a bit beyond the scope of this article.

Since I use Linux, I’m going to focus on that. If you insist on using Windows, you can find a ready-to-go project on Sourceforge. For the most part, you should find the process similar. The method I’ll talk about works on Kubuntu, but should also work on most other Debian-based systems, including Ubuntu.

Continue reading “Virtually Free Rapsberry Pis”

Minimal MQTT: Networked Nodes

Last time on Minimal MQTT, we used a Raspberry Pi to set up an MQTT broker — the central hub of a home data network. Now it’s time to add some sensor and display nodes and get this thing running. So pull out your ESP-8266 module of choice, and let’s get going.

DSCF8443For hardware, we’re using a WeMos D1 Mini because they’re really cute, and absolutely dirt cheap, but basically any ESP module will do. For instance, you can do the same on the simplest ESP-01 module if you’ve got your own USB-serial adapter and are willing to jumper some pins to get it into bootloader mode. If you insist on a deluxe development board that bears the Jolly Wrencher, we know some people.

NodeMCU: Getting the Firmware

We’re using the NodeMCU firmware because it’s quick and easy to get running. But you’re not stuck with NodeMCU if you want to go it alone: MQTT has broad support. [TuanPM] ported over an MQTT library to the native ESP8266 SDK and of course there’s espduino, a port for an Arduino-plus-ESP combo. He also ported the MQTT module to NodeMCU that we’ll be using today. Thanks, [TuanPM]!

Continue reading “Minimal MQTT: Networked Nodes”

Beyond WD-40: Lubes For The Home Shop

If your shop is anything like mine, you’ve got a large selection of colorful cans claiming to contain the best and absolutely only lubricant you’ll ever need. I’ve been sucked in by the marketing more times than I care to admit, hoping that the next product will really set itself apart from the others and magically unstick all the stuck stuff in my mechanical life. It never happens, though, and in the end I generally find myself reaching for the familiar blue and yellow can of WD-40 for just about every job.

Continue reading “Beyond WD-40: Lubes For The Home Shop”