iHome Automation System Home Automation System Team: Million Dollar Contingency Regiment Adam Doehling Chris Manning Ryan Patterson 1 Project Goals • The goal of this project is to develop a home automation system that gives the user complete control over all remotely controllable aspects of his or her home. • The automation system will have the ability to be controlled from a central host PC, the Internet, and also remotely accessed via a Pocket PC with a Windows Mobile based application. iHome Security & Automation System 2 Hardware Overview • The automation system will use four levels of ‘nodes’ to control different aspects of the automation system. These nodes will be designated as Level 0-Level 3. Different levels of nodes will have different responsibilities in terms of what electronics they have control over. Level 0 nodes will only connect to the system via Level 1 nodes, and all other levels of nodes will connect directly to the central server. This will be done via Cat5 cable or wirelessly for L1 nodes, and via Ethernet for L2 and L3 nodes. iHome Security & Automation System 3 iHome Security & Automation System iHome Automation Overall Flowchart 4 Hardware Description-Level 0 Nodes • Features controlled by Level 0 nodes are mostly sensors, such as sound, temperature, photo cells, and security. Also, these nodes control simple on/off operation of lights, power outlets, and similar functions. These are the lowest level nodes in the iHome Automation System. Level 0 nodes will not have a user interface, and they connect to the system through L1 nodes. iHome Security & Automation System 5 L1 Device Interface All L0 Nodes connect to the system via L1 nodes using the following L1 ports: • Eight TTL Output Ports (5V) • Four TTL Input Ports (5V) • Three Analog Input Ports (3.3V) • Four PWM Output Port (5V, resolution of 33,300) • 127 Channel I2C Port (3.6V) • Two SPI Ports (3.6V, 1mbps) • One digital quadrature encoder input (5V) iHome Security & Automation System 6 Hardware Description-Level 1 Nodes • Level 1 nodes connect to the system by either Cat5 cable (in a daisy-chain configuration) or wirelessly. Level 1 nodes control Level 0 nodes and provide a user interface for these nodes. These nodes will typically be mounted in a 2-gang electrical box, in place of a traditional light switch. iHome Security & Automation System 7 Hardware Description-Base Station • The Base Station bridges the central server to the L1 node network. It connects to the central server using USB, and then connects to the rest of the L1 nodes via Cat5 cable (RS-485 signaling) and wirelessly. Although the Base Station itself is USB-bus powered, it also distributes power to the all of the L1 nodes from a stand-alone power supply. iHome Security & Automation System 8 Level 1/ Base Station Block Diagram TI MSP430F169 USB USB Endpoint RS-485 Transceiver RS-485 Bus Quadrature Encoders MCU Optional USB alternative to RS485 / Base Station USB Endpoint RS-485 Transceiver 8-bit Parallel Bus MCU SPI Bus TI MSP430F149 PWM Touch Sensors LCD Display iHome Security & Automation System Digital Potentiometer 1 Mb Flash 9 Hardware Description-Level 2 Nodes • Level 2 nodes are designed for audio / communications, and have no user interface. Features controlled by these type of nodes include, but are not limited to: audio/entertainment playback (MP3 and WMA format), 2-way intercom operation, etc. These nodes connect to the central server via Ethernet, and are individually powered. iHome Security & Automation System 10 RCA/Stereo Mini Connector (30 Ω) Stereo Output 2x22W Speaker Output (4Ω) Stereo Mini Connector Line In MP3/WAV Encoder/Decoder VLSI1003 SPI 8-bit Parallel Addressed Bus 8-bit parallel bus with latched/ translated address bus MCU Atmel AT91SAM7S256 (ARM7TDMI Core) Ethernet 512kbyte SRAM Buffer Realtek 8019AS CY62148BLL L2 Block Diagram RJ45 Connector iHome Security & Automation System 11 Hardware Description-Level 3 Nodes • Level 3 nodes may or may not (depending on time constraints) be included in our project. Level 3 nodes are used for streaming video between the central server, TVs, and video cameras. Level 3 nodes do also not have any type of direct user interface. iHome Security & Automation System 12 Software Overview • There will need to be three software applications written for this project: one for the central server, a web server for accessing the system via the Internet, and an application for remote control via Pocket PCs. iHome Security & Automation System 13 Software DescriptioniHome Control Center • The Control Center will provide the user with access to control all devices in the iHome Automation System, as well as administrative actions, such as laying out new floor plans for the user’s home, adding new nodes, changing scheduling, etc. The Control Center will be the main interface for the user to control the system, and will communicate with the web server in order to issue commands to the L2 and L3 nodes. The Control Center will run on the same machine as the web server, making communication almost instantaneous. iHome Security & Automation System 14 Software DescriptionWebserver • The iHome Automation System can be controlled via the Internet using the central server’s web server. After logging into this system, you will have full access to your home. The web server also interfaces the L2 and L3 nodes to the iHome Control Center software. iHome Security & Automation System 15 Software DescriptionPocket PC-based Remote User Interface • The Pocket PC based Windows Mobile application used for the remote user interface will use internal wireless Ethernet to communicate with the web server, which will in turn control the nodal hardware. All control over the individual hardware components will be accessible via the mobile application; however, no administrative capabilities will be available via the Pocket PC. The program will poll the web server in order to update new nodes or functions added, and unlike the central server, it will be text-driven, instead of graphic-driven. iHome Security & Automation System 16 Objectives for This Semester -What needs to be done? • Hardware − Design a wired & wireless USB Base Station − L0 nodes for physical control of systems − Completion of construction of higher-order nodes (L1 – L3) • Firmware/Software − Completion of GUI and code for both the central server (iHome Control Center) and the remote user (Pocket PC) interface − Completion of firmware for the L1 – L2 nodes − Completion of all firmware for the Base Station − Webserver for both remote access and L2/L3 node communication iHome Security & Automation System 17 Division of Labor -Who is doing what? • Adam- construction of web server, and L0 node completion, and completion of L2 node design / programming. • Chris- user interface for Pocket PC, completion of various peripheral hardware. • Ryan- completion of the user interface for the iHome Control Center, and completion of L0 nodes, L1 nodes, and Base Station. iHome Security & Automation System 18 Schedule -When will everything be done? iHome Security & Automation System 19 Risks and contingency plan -Where do risks lie, and how will we deal with them? • Many of the risks associated with this project are tied up in the Level 3 nodes, because of their complexity. − For this reason, the entire sub-system of Level 3 nodes are subject to completion of all other sub-systems, so that we can guarantee satisfactory completion of the project. • Other risks include running out of time before being able to polish our product to industry specifications. iHome Security & Automation System 20 iHome Security & Automation System 21