Sometimes a project doesn’t have to be technically amazing to win over our hearts. [Malte]’s ESP8266-based weather station is so cute, and so nicely executed, that it’s easily worth a look. It could totally be a commercial product, and it’s smaller than a matchbox.
It combines temperature, humidity, and barometric pressure sensors on one side of a PCB, with pads for soldering a pre-built ESP8266 module on the other side. Solder it all together and flash the firmware and you’re almost all set.
The final step is to configure it to work with the network. For this, [Malte] built in a nice web-based configuration (and display) application. It also can log its data to an MQTT system, so there’s a bunch more configuration (which we’re trying to make easier) needed there, and the web frontend makes that light work. Everything, from the hardware to the firmware, and even a pre-compiled binary, is up on his GitHub. Very complete and very well done.
If you can read German, or are willing to run it through a translator, give his personal projects webpage a look as well. Good stuff here. Now all he needs is a matching nice display for inside.
It seems these days all the electronics projects are wireless in some form. Whether you choose WiFi, Bluetooth Classic, Bluetooth Low Energy, ZigBee, Z-Wave, Thread, NFC, RFID, Cell, IR, or even semaphore or carrier pigeon depends a lot on the constraints of your project. There are a lot of variables to consider, so here is a guide to help you navigate the choices and come to a conclusion about which to use in your project.
We can really quickly reduce options down to the appropriate tech with just a few questions.
Continue reading “Which Wireless Tech is Right For You?”
The availability of cheap radios, omni-present WiFi and powerful web services means the IoT wave is here to stay. Amazon got into the act with its “do only one thing” Dash button. But a more interesting solution would be an IoT “do it all” button.
[Anand] has been working on his 1btn Open Source WiFi connected IoT button for a while. It connects to the Internet over WiFi to trigger whatever action you have assigned to it using a simple, online interface. It’s reconfigurable and open source. Which means it can be used in pretty imaginative ways, and if needed, can be re-flashed with your own custom firmware should you decide to really get under its hood.
The 1btn’s ESP8266 module is usually in sleep mode, waking up when the button is pressed, making the connection, performing the task and then going back to sleep once confirmation is received. A Red/Green LED indicates if the action was successful or not. You can set it up to send e-mails, messages, tweets or perform actions via a custom script, API or the IFTTT – maker channel. To make it hacker friendly, all of the ESP8266 GPIO pins are accessible via headers. This makes it convenient to add external sensors, for example. There’s also a (unpopulated) QFN footprint to allow adding an ATmega device (168P/328P) whose GPIO pins are also accessible via headers. This opens up a large number of additional applications for the device such as home automation.
On the software side, the 1btn connects to a web console, where you can set up an account, configure the device, register its MAC ID, assign it an alias and set up its actions. All of the source files for the 1btn – firmware, enclosure, schematic, BOM, PCB layout and example use cases – are posted on his Github repository.
If you are a regular Hackaday reader, you’ve probably seen plenty of ESP8266 projects. After all, the inexpensive device is a workhorse for putting a project on WiFi, and it works well. There is a processor onboard, but, most often, the onboard CPU runs a stock firmware that exposes an AT command set or Lua or even BASIC. That means most projects have a separate CPU and that CPU is often–surprise–an Arduino.
It isn’t a big leap of logic to imagine an Arduino with an integrated WiFi subsystem. That’s the idea behind the MKR1000. But the real question you have to ask is: is it better to use an integrated component or just put an Arduino and ESP8266 together?
[Andreas Spiess] not only asked the question, but he answered it in a YouTube video (see below). He examines several factors on the MKR1000, the Arduino Due and Uno, and several other common boards. The examination covers performance, features, and power consumption.
Continue reading “ESP8266 or MKR1000?”
If you’re playing Hackaday Buzzword Bingo, today is your lucky day! Because not only does this article contain “Pi 3” and “IoT”, but we’re just about to type “ESP8266” and “home automation”. Check to see if you haven’t filled a row or something…
Seriously, though. If you’re running a home device network, and like us you’re running it totally insecurely, you might want to firewall that stuff off from the greater Interwebs at least, and probably any computers that you care about as well. The simplest way to do so is to keep your devices on their own WiFi network. That shiny Pi 3 you just bought has WiFi, and doesn’t use so much power that you’d mind leaving it on all the time.
Even if you’re not a Linux networking guru, [Phil Martin]’s tutorial on setting up the Raspberry Pi 3 as a WiFi access point should make it easy for you to use your Pi 3 as the hub of your IoT system’s WiFi. He even shows you how to configure it to forward your IoT network’s packets out to the real world over wired Ethernet, but if you can also use the Pi 3 as your central server, this may not even be necessary. Most of the IoT services that you’d want are available for the Pi.
Those who do want to open up to the world, you can easily set up a very strict firewall on the Pi that won’t interfere with your home’s normal WiFi. Here’s a quick guide to setting up iptables on the Pi, but using even friendlier software like Shorewall should also get the job done.
Still haven’t filled up your bingo card yet? “Arduino!”
Since the introduction of the Raspberry Pi Zero, the hacker, maker, and hobbyist electronics world has been thrown into turmoil. ‘The Raspberry Pi Foundation is corrupt,’ the detractors said, ‘and the Pi Zero is just a marketing ploy to get their name out.’ Others chimed in that the Raspberry Pi Zero doesn’t even exist. Despite what a million monkeys on a million keyboards say, the Raspberry Pi Zero does exist and is very cool, despite how limited it is. There’s only one USB port, but that doesn’t mean you can’t have WiFi. [ajlitt] came up with a WiFi hat for the Pi Zero that goes right through the GPIO pins, and shouldn’t cost more than a few dollars to implement on any Raspberry Pi.
There is no Ethernet port on the Pi, and apart from a single USB OTG port, no apparent high-speed interfaces to the outside world. On the other hand, there’s a few things hidden deep down in the SoC on the Pi including two MMC controllers. One of these controllers is used for the SD card, but the second can be broken out on a few GPIO pins. By tapping into those pins and configuring the kernel just right, SDIO is available on the GPIO pins, giving the Pi WiFi through a cheap ESP8266 module.
We’ve seen [ajlitt]’s work on SDIO devices on the Pi before, but he’s slowly been reworking this build with the Pi Zero in mind. It didn’t begin as a project for the Hackaday Prize, but already it’s one of the more popular entries so far. Of course there are thousands of projects on Hackaday.io that aren’t entered into the Hackaday Prize this year, and if you’re behind one of those, this is your call to step up.
If you need an industrial-strength IoT product, you need an industrial-strength WiFi chipset. For our own household hacks, we’re totally happy with the ESP8266 chip. But if you need to connect to the big, scary Internet you’ll probably want state-of-the-art encryption. In particular, Amazon insists on TLS 1.2 for their Web Services (AWS), and we don’t know how to get that working on the ESP.
[Anuj] designed a breakout board called the knit which includes a Marvell MW300 WiFi SOC. This chip has an onboard ARM Cortex M4F running at 200 MHz, which means you’ve got a lot of everything to play with: flash memory, RAM, a floating-point unit, you name it. And Marvell’s got an SDK for using AWS that includes things like an operating system and peripheral support and other niceties. TLS 1.2 is included.
Best of all, a MW300 breakout is reasonably affordable (though more expensive than the mass-produced ESP8266 modules, naturally) and it’s an entirely open design. [Anuj] also seems to be setting up for a production run, if you don’t feel like making it yourself.
The MW300 is in all sorts of commercial IoT designs, and it’s a battle-tested go-to for interfacing with “the cloud” securely. The only hobbyist-friendly board that’s similar is the Adafruit WICED WiFi Feather, but it’s more expensive, less powerful, and out of stock at the moment, which just shows the demand for something like this.
Of course, if you need more integrated peripherals, you could just hack up a “Hello Barbie” toy which has the same chip as well as sweet audio codecs and a nice fat flash ROM.
We think it’s neat that [Anuj] would make and test a breakout for this powerful little WiFi SOC. We don’t need one for our projects right now — we’re running in entirely insecure mode — but it’s good to know what your options are. (We’re also looking into esp-open-rtos for the ESP8266 — we know they’ve been working on TLS 1.2 encryption, but we don’t know what their status is at the moment. Anyone?)