element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Forget Me Not Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Forget Me Not Design Challenge
  • More
  • Cancel
Forget Me Not Design Challenge
Blog [FMN#00] My Proposal
  • Blog
  • Forum
  • Documents
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: vish
  • Date Created: 3 Aug 2014 6:45 AM Date Created
  • Views 871 views
  • Likes 2 likes
  • Comments 0 comments
  • forget_me_not
  • raspberry_pi_b+
  • mqtt
  • openhab
  • eclipse
  • enocean
  • raspberry_pi
  • raspberrypi
  • eclipse_paho
  • iot_home_intelligent
  • ti_launchpad
  • arduino
  • openhab_mqtt
  • enocean_sensor_kit
Related
Recommended

[FMN#00] My Proposal

vish
vish
3 Aug 2014

Hello all,

This is my first post in 'Forgot Me Not' challenge. I'm one of the FMN challenge finalists, not the Top 15, but one in the Lucky 5 gangimage. So I'll be receiving the basic kit -- Raspberry Pi B+, enocean sensor kit and an enocean Pi . And this is going to be first rPiimage. I'm going to deviate from my original project proposal due to some budget constrains. I'll have to cut down my shopping list and include some into my lending listimage. The idea will still remain the same, but I'll be dropping a few sensors and try to manage most of the things in software. So you are going to see that my project will take sudden turns and twists as and when I manage to get/lend any new hardware.


In this post, I'll be briefly discussing about my proposal and my initial thoughts.This includes my idea in brief and an architectural description. I'm writing this post assuming more people who are not a part of FMN challenge is also going to read this and so I'll be discussing about somethings which the other contestants may be already familiar/expertise with. Most of my posts will be a result of my experiences as a beginner with rPi and sensor kit. However I'll try to refer to other posts/links as much as possible to avoid redundancy and keep focused mostly on the topic.


My proposal is about building a home automation system that is super simple to use and powerful to expand. By super simple to use, I mean that even a non-technically oriented person should be able to operate, if not setup, the system. I have a seen a few home automation systems, but I can't recommend any of those to my Mom and Dad who just started to learn how to use computers. I wanted to build a system for them, which they will be able to operate with the easiness of how they use their mobile phones. The basic thing is then clear, I cannot have any of the cryptic sensor codes or status codes in my top layer of UI. First I thought of building a system on raspberry pi, which runs my own custom server software and GUI. Then I met FHEM, a perl server which is widely used for home automation. Good to start with, it supports many automation peripherals out of the box( includes enocean sensors support too ). Everything is good, except UI. So I thought I'll use FHEM in backend and use a custom webUI. That was my initial proposal. Now I'm going to take my first deviation -- I'll be using openHAB instead. Today morning I downloaded and setup my openHAB server in my ubuntu 14.04 machine, and it's neat. It supports many devices/protocols out-of-the-box. The default GUI is also clean and neat( I'll be soon posting my experiences while setting up openHAB for first time ). The only hurdle I'm seeing is to learn the 'openHAB' way of scripting and wiring things together which basically means learning their scripting language, openHAB designer and the interfaces to hardware.


As I said, I'm designing a system with simplicity to use in mind, there are three central ideas for my project :

     1. Measure

     2. Visualize

     3. Control


The following diagram depicts my basic idea :


image


This project will consist of three main modules:

1. A Gateway module to interface between the network and room controllers. This module is responsible for taking the taking the status reports send by each room module and update this  status to user. Also, for the enocean sensors which are deployed in each rooms this will act as a direct gateway to the system.

Hence :

     1. Gateway between user and home.

     2. Gateway between different controllers in rooms.

     3. Gateway of enocean sensors to the system.

Gateway will also be running a database to store the collected information for future visualization.

2. Room Controllers : Each room will be having individual controllers which will be updating current room status to the gateway and also switching the devices according to the commands from gateway. This module is responsible to the ambient condition measurement and forwarding it to the gateway. I'll be using arduinos/launchpads as room controllers with associated sensors.

3. User Interface : This module is will be the part user will be presented with. I'm planning to use the default openHAB UI.

 

So basically this is how it's going to work. You can setup the network by connecting the gateway module to your Wifi/Ethernet router. All the controller modules are connected to your gateway module. Once your gateway module is connected to you home network, you will be able to access the UI from you PC/tablet/smartphone which is also connected to your home network. This part does not require an internet connection to work. Everything is managed inside your home network. When you enable MQTT broker services in your gateway module, you will be able to monitor and control your home via public network.


For those who are new to MQTT, it is a light-weight publish/subscribe messaging protocol mainly used for machine-2-machine(M2M) communication. You can find more information at MQTT. But MQTT is just a protocol, we need softwares which can talk this. Eclipse Paho is a project which provides opensource implementation of tools and libraries of M2M protocols in a handful of different programming languages. openHAB also has MQTT bindings. We'll be using these bindings in our gateway module with openHAB. A good reading about why we need MQTT for communications can be found in IP Post 2: Designing A System Of IOTs- Rant! by ipv1.


So that's it for now. I hope you got a basic overview of my idea and the tools I'm planning to use. As I go, I may change a few, bend a few, twist a few. This project is going to be very agile. I'm eager to hear from you, suggestions, criticisms and new ideas.


happy hacking,

vish


 


<< Prev | Table of Contents | Next >>

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube