IoT full stack solution

This is a solution for IoT devices that connect via a pc to internet and send data to a cloud like web application

Similar projects worth following
While I' m studying for my MSc Thesis and being inspired by previous work on tutoring on hands-on IoT seminars an idea came to thrill me.... The idea was simple: "Why not create a solution that will contain wireless sensors in many kinds of networks and sends data to a web application on some sort of cloud infrastructure?" and so we begin.....

First thing first, we assembly the hardware and we create some battery powered Arduino based wireless IoT modules that use either Bluetooth or ZigBee/Xbee to communicate with the so called solution gateway.Also the solution gateway has some sensors connected directly on it.

-Solution gateway you say? What's that??

-Well that's a -as small as possible(or big you choose/I prefer the smaller)- Linux preferably based PC that has Python on it (2.7 and/or 3.x) for running the application's client. Solution gateway has the ability to connect via Bluetooth and ZigBee to Aruino based IoT modules. The same PC (I used a Raspberry Pi Zero W because it has both Bluetooth & WiFi on it) connects to various sensors (or a single one) via its GPIO. The Raspberry Pi gathers all data wirelessly and wireslly via Pyrhon program and the same program send to server the sensor's data.

-Server hah??

-The server (you can put it on a cloud based infrastructure, currently its an Ubuntu based VM) is a LAMP stack system. It can run to a LEMP stack system the same way. The web application hosted on the LAMP stack consists of a REST API app written in Slim 2 framework that exposes various endpoints that get and set data from and to DB and of a Yii framework based app that hadles UI for data presentation as its main parts. Supplementary part of the server solution are the MySQL DB on which data from all IoT modules are stored.

At last are the DATA presented in a nice ajax filled datatable on Yii UI.

-Oh and what about code & licences?

-Well of course the code is mostly under BSD and GPL licence and it is currently on Bitbucket until I finish my Thesis, then I'm thinking to provided publicly on my Github account.

-Why not now on Github???? I want it!!!!

-Plz be patient and wait until I finish my MSc Thesis, then we 'll see!!


  • 1 × HC05/HC06 Bluetooth module It is used for IoT modules that connect via Bluetooth to solution gateway
  • 2 × ZigBee-Xbee S2/S1 or whatever *Bee modules This pair is used fo IoT modules that connect via XBee/ZigBee to solution gateway
  • 2 × ZigBee-Xbee S2/S1 or whatever *Bee modules breakout/usb adapter boards These are used as adapters in order to connect IoT modules Arduino with Xbee & solution gateway to Xbee
  • 2 × Arduino Mini Pro (or other mini/nano *duino) These are the "brains" of its Arduino based module
  • 3 × Semi permanent breadboards These are the foundations of each module (Both Arduino & Raspberry Pi based)

View all 13 components

  • Bluetooth under microscope

    Dimitris Andritsakis07/16/2017 at 09:04 0 comments

    Another thing to put under test about these modules is the second wireless technology used for transmitting data wirelessly from modules to a base station. This is Bluetooth! Bluetooth is around many years and there are many peripherals for almost every device with silicon :) So there are as many attacks and vulnerabilities as well fixes to test

  • Xbee under microscope

    Dimitris Andritsakis07/16/2017 at 08:42 0 comments

    Now I'm going forward next step which is trying to intercept communications between wireless modules and the base station they are connected. So for that I purchased a Wireless Development Board form NXP the USB-KW24D512 which has sniffing utility built in and can sniff Xbee packets by default. Also you can write your own wireless application for it and run it on its ARM M4 embedded processor.

View all 2 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates