Skip to content

Latest commit

 

History

History
46 lines (30 loc) · 1.94 KB

README.md

File metadata and controls

46 lines (30 loc) · 1.94 KB

Home Control

Welcome home!

Home Control is home automation app for iOS, built in Swift. You probably won't have much luck simply forking this project for your own use. There's a lot going on, and it's all built for my own custom hardware and room layout!

Screenshot

I'm working on documenting this project in a series of blog posts, and this repo will be provided as a jumping off point for anyone interested in starting their own app. In the meantime, you can contact me @mbcharbonneau on Twitter.

Services

Parse is the data backend and push notification service that lets the app talk to hardware via the Internet.

IFTTT provides a maker channel for controlling home automation hardware through an HTTP call.

Hardware

Arduino Yún is the house's main controller. It gathers data from several hardware devices on the local network, and sends it up to Parse.

iBeacons provide highly specific indoor positioning. For instance, knowing when you set your phone on the nightstand when it's time for bed.

Belkin WeMo devices allow the app to control lights and appliances.

Building

You'll have to provide a few constants and API keys before you can compile. Here's the format you'll need:

struct Configuration {
    struct Parse {
        static let AppID = "";
        static let ClientKey = "";
    }

    struct IFTTT {
        static let ClientKey = "";
    }

    struct MonsterPit {
        static let Location = CLLocationCoordinate2D(latitude: 0.0, longitude: 0.0)
        static let BeaconUUID = ""
    }
}

... but even then you won't see anything unless you already have data in Parse. Take a look at RoomSensor.swift and SwitchedDevice.swift for more info.