A Rebel Alliance for Internet of Things Standards

Back when the original Internet, the digital one, was being brought together there was a vicious standards war. The fallout from the war fundamentally underpins how we use the Internet today, and what’s surprising is that things didn’t work out how everyone expected. The rebel alliance won, and when it comes to standards, it turns out that’s a lot more common than you might think.

Looking back the history of the Internet could have been very different. In the mid eighties the OSI standards were the obvious choice. In 1988 the Department of Commerce issued a mandate that all computers purchased by government agencies should be OSI compatible starting from the middle of 1990, and yet two years later the battle was already over, and the OSI standards had already lost.

In fact by the early nineties the dominance of TCP/IP was almost complete. In January of 1991 the British academic backbone network, called JANET (which was based around X.25 colored book protocols), established a pilot project to host IP traffic on the network. Within ten months the IP traffic had exceeded the levels of X.25 traffic, and IP support became official in November.

“Twenty five years ago a much smaller crowd was fighting about open versus proprietary, and Internet versus OSI. In the end, ‘rough consensus and running code’ decided the matter: open won and Internet won,”

Marshall Rose, chair of several IETF Working Groups during the period

This of course wasn’t the first standards battle, history is littered with innumerable standards that have won or lost. It also wasn’t the last the Internet was to see. By the mid noughties SOAP and XML were seen as the obvious way to build out the distributed services we all, at that point, already saw coming. Yet by the end of the decade SOAP and XML were in heavy retreat. RESTful services and JSON, far more lightweight and developer friendly than their heavyweight counterparts, had won.

“JSON appeared at a time when developers felt drowned by misguided overcomplicated XML-based web services, and JSON let them just get the job done,”

“Because it came from JavaScript, and pretty much anybody could do it, JSON was free of XML’s fondness for design by committee. It also looked more familiar to programmers.”

Simon St. Laurent, content manager at LinkedIn and O’Reilly author

Yet, depending on which standards body you want to listen to, ECMA or the IETF, JSON only became a standard in 2013, or 2014, respectively and while the IETF RFC talks about semantics and security, the ECMA standard covers only the syntax. Despite that it’s unlikely many people have actually read the standards, and this includes the developers using the standard and even those implementing the libraries those developers depend on.

We have reached the point where standardization bodies no longer create standards, they formalize them, and the way we build the Internet of Things is going to be fundamentally influenced by that new reality.

Continue reading “A Rebel Alliance for Internet of Things Standards”

Stairwell Lights Keep Toddler with Night-Blindness Safe

A devastating diagnosis for a young child is every parent’s worst nightmare. All too often there’s nothing that can be done, but occasionally there’s a window of opportunity to make things better for the child, even if we can’t offer a cure. In that case even a simple hack, like a rapid response stairwell light to help deal with night-blindness, can make a real difference.

[Becca] isn’t yet a year old, but she and her parents carry a heavy burden. She was born with Usher Syndrome, an extremely rare genetic disease that affects hearing and vision to different degrees. In [Becca]’s case, she was born profoundly deaf and will likely lose her sight by the time she’s 10 or so. Her dad [Jake] realized that the soon-to-be-toddler was at risk due to a dark stairwell and the night-blindness that accompanies Usher, so he came up with a simple tech solution to the problem.

He chose Philips Hue LED light strips to run up the stringer of the stairs controlled by a Raspberry Pi. Originally he planned to use IFTTT for but the latency resulted in the light not switching on fast enough. He ended up using a simple PIR motion sensor which the Pi monitors and then uses the Hue API to control the light. This will no doubt give him a platform for future capabilities to help [Becca].

We’ve covered a few builds where parents have hacked solutions for their kids, like this custom media center for the builder’s autistic son. We suspect [Jake] has a few more tricks up his sleeve to help [Becca], and we’re looking forward to seeing how she does.

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”

1btn – an Open Source Dash

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.

The HackadayPrize2016 is Sponsored by:

Internet of Things in Five Minutes

If you’re looking for the quickest way to go from zero to voice-controlled home automation system, you should spend five minutes checking out [Hari Wiguna]’s project on Hackaday.io where he connects up IoT gadgets and services into a functioning lightswitch. (Video below the break.)

6166971452133983621[Hari] demonstrates how to set up a complex chain: Amazon Echo to IFTTT to Adafruit.io as a data broker, which is then polled by an ESP8266 unit in his home that controls his X10 setup. (Pshwew.) But each step along the way is designed to be nearly plug-and-play, so it’s really a lot like clicking Lego blocks together. [Hari]’s video is a nice overview.

There’s only one catch if you’re going to replicate this yourself: the X10 system that’s used for the last mile. Unless you have one of these setups already, you’re on your own for controlling the outlets that turn the lights on and off. For price and hackability, we suggest the common 433MHz wireless outlet switches and pairing them with cheap 433MHz transmitters, available at eBay for around $1. We’ve seen a lot of hacks of these systems — they’re quite common both in the US and Europe.

We’ve also covered [Hari]’s projects before: both his self-learning TV remote and a sweet Halloween hack. His video production skills are excellent. We’re in awe of how much info he crams into his YouTube videos.

Help Needed: No-Soldering ESP8266 IFTTT Button

We all love to see amazing hacks in their finished state and be dazzled by what our peers can do. But that’s just the summit of the hacker’s Everest. We all know that the real work is in getting there. Hackaday.io user [stopsendingmejunk] is working on an ESP8266-based IFTTT Button based on a simple breakout board so that anyone could rebuild it without having to do any soldering, and he’s looking for collaboration.

[stopsendingmejunk]’s project takes off from this similar project on different hardware. The board he’s chosen to use is the EZSBC ESP8266-07 breakout, which should have everything he needs, including an on-board button. It should be an easy enough job, but he’s having trouble getting the thing to stay asleep until the button is pressed.

We’ve seen more than a few hacks of the Amazon Dash button, but aside from hacking for hacking’s sake, we’re also happy to see a ground-up open redesign. Besides, this looks like it’ll be a great introductory project, requiring little fiddling around. With a little help. The code is up here on GitHub. Anyone game?

Super Bowl Football Lamp Keeps You Informed

[David] loves to watch football. After his preferred team lost the playoffs, he wanted another reason to watch the big game last Sunday. He ended up building himself a football-shaped lamp that changes color based on who scored last.

[David] started with a Spark Core and a Spark Button. The Spark is the primary microcontroller and includes WiFi. The Spark Button is essentially a shield for the Spark that includes an accelerometer, some LEDs, and a few push buttons. The other part of this build was the housing. [David] used a toy football he got for free as swag from a parade.

As for the code, [David] started by first learning how to control the LEDs on the Spark Button. Then he wrote his own touchdown function to illuminate the football a specific color. Since the Spark uses the REST API, [David] is able to trigger this function by simply visiting the URL of his Spark. This makes it very simple to trigger the event.

The final part of this build was made easy thanks to IfThisThenThat (IFTTT). This is a web service that allows you to monitor and interact with various online web services. It can monitor one service, and then interact with another based on events that happen in the first service. In this case, [David] is using a “channel” added to IFTTT by ESPN. This channel can trigger when certain events happen for whatever team you specify. For this project [David] is monitoring touchdowns.

After combining all of these various services, [David] had a working light that would change colors based on which team scored. He did notice that IFTTT has anywhere between a 1 and 15 minute delay, and he hopes to improve upon this design by hooking directly to an API and skipping the extra service altogether.