element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • 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
Forget Me Not Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Forget Me Not Design Challenge
  • More
  • Cancel
Forget Me Not Design Challenge
Blog IP Post 2: Designing A System Of IOTs- Rant!
  • Blog
  • Forum
  • Documents
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: ipv1
  • Date Created: 2 Aug 2014 8:06 AM Date Created
  • Views 280 views
  • Likes 2 likes
  • Comments 8 comments
  • forget_me_not
  • forget_what
  • internet_of_things
Related
Recommended

IP Post 2: Designing A System Of IOTs- Rant!

ipv1
ipv1
2 Aug 2014

When we start working on a project, we start by isolating a problem and then designing a solution for it. For the Internet of things, this means having a device connected to the internet and sending the desired info online. My project being part of the Forget me not challenge meant that I was going to do that. However I have paused to thing about somthings as well as blog about it.

 

In my design, I have a lot of sub systems connected to the OpenHAB system. I was planning to connect various devices to an Online MQTT server and have my devices send updates to an MQTT server.

 

 

 

The problem with this is that if eveyone decides exactly this, then what happens? If every house has say half a dozen IOT systems and they are all transmitting to the internet and there are half a million homes in a city- Bye bye internet!

 

The routing algorithms will have to every efficient and might need to compress data themselves as well to allow all that data to go around. This got me thinking... It would be much better if I can localize the IOT traffic that need not be accessed from across the Internet. I would have to partition my design into services with local connectivity and Internet connectivity. Sounds simple? Well its not. When we say IOT that means that everything is connected to the Internet. I came across MQTT in one of Benjamin Kabe of Eclipse's seminars where it was pointed out that...

 

MQTT was specifically designed for resource-constrained devices and low bandwidth, high latency networks such as dial up lines and satellite links, for example. Basically, it can be used effectively in embedded systems.

 

One of the advantages MQTT has over more full-featured “enterprise messaging” brokers is that its intentionally low footprint makes it ideal for today’s mobile and developing “Internet of Things” style applications. In fact, companies like Facebook are using it as part of their mobile applications because it has such a low power draw and is light on network bandwidth.

 

Now that puts my mind at ease that I am in fact looking at the right protocol. So what else should I be looking at?

 

Our project uses EnOcean's sensors which solve many problems, but what happens to all other IOT devices? What happens to my existing stuff? In the Beyond the Phone Challenge, I had built an IOT sensor system where I had built a solution using Apache and MySQL and PHP to store data. Can I use that with this?

 

Here is a scenario... I have OpenHAB as my aggregator which will be talking to all the devices. Existing IOT devices may need to post to an MQTT server and then my OpenHAB would subscribe to that and there would be some internet traffic for no reason. So what is the solution? Since I can have most IOT systems either as HTTP servers or MQTT Clients, I can talk to them locally. I can have an MQTT server locally and the devices can post to them locally. So what happens to the other HTTP devices? Well since they are essentially HTTP servers waiting for queries, I can write a python script that can make an HTTP query and do a post on MQTT. That way eveything is getting sent over MQTT. The point is to funnel everything to an MQTT broker and then use OpenHAB's MQTT binding do the rest. If I come across any other devices later with a different interface which my be network based or anything else, it would be a simple matter of connecting it to my RPi and running a python script that will be parse the data to MQTT.

 

Why am I doing this you ask? Standardization of architecture. When I was drafting my application, I made around 2 dozen version where I changed so many things including end devices. The point it the requirements may change with time and place, and I am not a software guy(why do I keep saying that? I dunno.!) so I want to learning everything about one thing. In this case MQTT and I already know python(and C,C++ and Java and .NET and a bunch of other languages that I use like after a year). So that should work for me...

 

This text was not really planned and I really made decisions(and researched other stuff) as I was writing it hence if you find there is something you can suggest, PLEASE DO!

 

Lastly I have not posted anything about what my project is going to be because I am still modifying things and that from my experience is a good thing. Once I have some parts of Humpty-Dumpty ready, I will make a reveal. Right now since it is an India Summer I am going through, I would call this project, "Forget Me Not in The Summer".

 

Thanks in advance for your suggestions.(I will need em)

 

IP

<< Previous Post | Table Of Contents | Next Post >>

Anonymous

Top Comments

  • mcb1
    mcb1 over 8 years ago +1

    Well done Inderpreet.

    You have highlighted one thing the "lets connect everything to the internet" haven't considered when their idea expanded to every house.

     

    Mark

Parents
  • ravi_butani
    ravi_butani over 8 years ago

    very interesting..."lets connect everything to the internet"

    • Cancel
    • Vote Up 0 Vote Down
    • Reply
    • More
    • Cancel
Comment
  • ravi_butani
    ravi_butani over 8 years ago

    very interesting..."lets connect everything to the internet"

    • Cancel
    • Vote Up 0 Vote Down
    • Reply
    • More
    • Cancel
Children
  • ipv1
    ipv1 over 8 years ago in reply to ravi_butani

    Ha ha... That we can verify if there is actually a problem.

    • Cancel
    • Vote Up 0 Vote Down
    • Reply
    • More
    • Cancel
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 © 2022 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

  • Facebook
  • Twitter
  • linkedin
  • YouTube