18 comments

[ 4.0 ms ] story [ 62.4 ms ] thread
Why the arduino? It servers no purpose apart from an overly complex GPIO expander - whereas not only does the RPi have a whole bunch of GPIO, if you need even more you can get a dirt cheap I2C expander that is way more reliable.

This is what you get when people whose main idea for a home automation system is „a responsive design” start creating hardware products...

That's harsh... It's a showcase. It shows support to the arduino. I believe you can stick with your rPi if you want.
I'm sure he knows that, but, y'know, evidently it's fun to insult people on the internet.
It seems this is what you get when someone who wants to learn more about a handful of technologies grabs what is readily available and well documented. They aren't creating hardware products. They took a few hardware items, pieced them together, and put it online for others to peruse. This looks like the path of least resistance to creating a cool hack.
Umm, because only the Arduino has the built-in capacity to handle analogue input? It's quite common to use the two together because of this.

The other option is of course to just use an ADC chip with your RPi, but since most of us who bought RPi's already have Arduino(s) lying around the house, and since they're so easy to interface with Linux devices like the RPi, it's arguably the easier and more convenient option.

ADDENDUM: The responsive design here is actually quite nice. If you want to be on mobile (like most home automation would), it's also the only workable alternative to the arduous task of creating apps for Android and iOS and any other platform you want to support.

Alright seriously, what the hell. Is this some sort of HN parody comment? Is it meant to be ironic in the sense of "look what happens on hacker news when you submit a cool hack - you get shat all over by the first poster!"? Here's a re-write for you:

Neat! You could actually do the same thing entirely without the Arduino by using the GPIO built into the RPi, and pick up a dirt cheap I2C expander if you need more.

I didn't make the comment, and don't necessarily support it, but I think I understand it.

I think it's the result of hobby programming/hardware converging with professional programming/hardware. The hacker scene collides with KickStarter.

People used to have to carefully write assembler to get programmable electronics to do things and had to fit it inside a 1K EEPROM. Suddenly machines exist with literally a million times more memory for prices an order of magnitude less and reference points are suddenly thrown right off.

I'm not that old (not yet 30) but for people >= a certain generation, I can understand why this all seems very very alien.

I think maybe I know one of possible causes.

When you have to struggle with problems too much (solve driver problems that happen due to buggy hardware, fix software crashes that happen due to original author doing some insane pointer juggling, and so on), you may as well end up genuinely hating when others do things in a way that doesn't seem proper to you.

Particularly, I'm guilty of such reactions, although I try to refrain from commenting unless I'm on one of "feel free to blow off some steam" discussion sites (which HN isn't).

Literally the first bullet point under Hardware says "Full access to the GPIO of the Raspberry Pi". Adding support for controlling devices using an arduino is an _excellent_ idea given that there are several home automation / RF shields and online recipes available for the Arduino, which makes it easier for software guys to actually get this setup working.

It's also much easier to reliably implement interrupts using the Arduino, compared to the GPIOs of an ARM CPU running Linux.

> ...people whose main idea for a home automation system is „a responsive design”...

Why is a focus on useful and pleasant design a negative? Having functionality exposed in a clear and thoughtful way that makes the devices more usable should be a positive, I think. I think it's great that someone's thinking about how to lower the bar for making all these cool possibilities accessible.

Looks good. I really like the Wake-on-LAN and ping functions.

Another option for prototyping IO is a Gertboard (if you don't mind a bit of soldering).

> MongoDB

I really hope they took a lot of effort to lock that down, or a lot of homeowners are going to find their homes remote-controlled without their consent.

Can you suggest a good article about this or walkthrough about how to secure it? Is it more difficult than other databases?
I haven't checked recently if they changed it, but MongoDB by default will, to my knowledge, bind to all network devices it can find, allow connections from all possible sources, and allow any connection to it full write access to everything in it.

So, uh, make sure your firewall let's ONLY known machines through to it, and check the manual how to enable authorization. Or better yet: Use a database that isn't designed to be goatse by default.

Pretty cool. I just wonder, why do so many Javascript projects feel the need to add .js after them? You don't see thingie.java or thingie.cpp... Just wondering.
This is cool, and I hope there's a lot more in this space. I get the feeling that home automation is going to grow over the next few years.

I started something similar a while back with Go -- a simple RESTful interface to various bits and bobs in my home. Go was a good fit due to its speed -- it's _fast_ on the RPi, and cross-compiling for ARM is straightforward. Coupled with the LimitlessLED bulbs (cheap!), it currently runs my alarm clock, and makes the lighting in my room react to various situations.

I never finished it, or made a proper interface (I just consumed the services from some Python scripts elsewhere in my network); I should probably pick it up again.

Looks good, I make something similar but the server is in the cloud. www.domothings.com will open beta in September-October.
this is really awsome!! I am thinking of making a locker monitor/controller with this