IoT Cloud Service.
Abhay last edited by salmanfaris
How can we store data generated from IoT devices to cloud and blockchain.
swalahamani last edited by swalahamani
There are numerous ways to persist data generated from IoT devices in the cloud.
Since you haven't mentioned any specific requirements, I'm just giving you some general options commonly used.
Normally you have to write a service running on cloud to accept data from your IoT device and persist it on any persistent storage methods such as RDBMS or NoSQL Database engines or even plain files. You can write REST, Socket (Websocket / Socket.io or MQTT services for this. If you have to submit data in high frequency to the server from numerous devices the same time, you may better to consider using some load balancers and use lazy write or in-memory database like Redis or Casandra.
If you don't like to write the entire server service your self, you can use IoT cloud with built-in APIs or with simply configurable API generators.
You can also use Firebase like solutions for faster setup with cloud functions.
salmanfaris last edited by salmanfaris
Hi @Abhay ,
Like @swalahamani said there are many proving IoT data harvesting and visualizing tools. The trickiest part is choosing right that suit for your application and your stack.
we can categorize the tools into two categories Industrial specific and prototyping based on the architecture and cost.
Industrial specific service
These tools are Industry and product ready ones if you are really looking to space where you can expand your IoT product into larger userbase then these for you.
AWS IoT Platform
AWS has broad and deep IoT services, from the edge to the cloud. Device software, Amazon FreeRTOS and AWS IoT Greengrass, provides local data collection and analysis. In the cloud, AWS IoT is the only vendor to bring together data management and rich analytics in easy to use services designed specifically for noisy IoT data.
Cloud IoT Core is a fully managed service that allows you to easily and securely connect, manage, and ingest data from millions of globally dispersed devices. Cloud IoT Core, in combination with other services on the Cloud IoT platform, provides a complete solution for collecting, processing, analyzing, and visualizing IoT data in real-time to support improved operational efficiency.
IBM Watson IoT Platform
IBM Watson IoT Platform is a managed, cloud-hosted service designed to make it simple to derive value from your IoT devices. Watson IoT Platform and its additional add on services - Blockchain service and analytic service - enable organizations to capture and explore data for devices, equipment, and machines, and discover insights that can drive better decision-making.
Oracle Internet of Things Cloud Service
Oracle Internet of Things (IoT) Cloud Service is a managed Platform as a Service (PaaS) cloud-based offering that helps you make critical business decisions and strategies by allowing you to connect your devices to the cloud, analyze data from those devices in real-time, and integrate your data with enterprise applications, web services, or with other Oracle Cloud Services, such as Oracle Business Intelligence Cloud Service.
Microsoft Azure IoT
Enable highly secure and reliable communication between your IoT application and the devices it manages. Azure IoT Hub provides a cloud-hosted solution backend to connect virtually any device. Extend your solution from the cloud to the edge with per-device authentication, built-in device management and scaled provisioning.
--> I used the Microsoft Azure, Google IoT Core and AWS IoT services and I most satisfied with AWS IoT Services, You can also get free credits when you register for the first time in any of the above.
Prototype specific service
The problem with the Industrial specific service is that we need more time to set up and irrespective of the number either a single device or more it has same higher maintaining cost and time to set up, so I found it's not suitable for rapid prototyping
Cayenne is the world’s first drag and drop IoT project builder that empowers developers, designers and engineers to quickly prototype and share their connected device projects. Cayenne was designed to help users create Internet of Things prototypes and then bring them to production.
Adafruit IO is a system that makes data useful. Our focus is on ease of use and allowing simple data connections with little programming required.
IO includes client libraries that wrap our REST and MQTT APIs. IO is built on Ruby on Rails, and Node.js.
Thingspeak IoT Platform
ThingSpeak is an IoT analytics platform service that allows you to aggregate, visualize, and analyze live data streams in the cloud. You can send data to ThingSpeakfrom your devices, create instant visualizations of live data, and send alerts using web services like Twitter and Twilio. With MATLAB analytics inside ThingSpeak, you can write and execute MATLAB code to perform preprocessing, visualizations, and analyses. ThingSpeak enables engineers and scientists to prototype and builds IoT systems without setting up servers or developing web software.
--> I used the Cayenne, Adafruit IO and both are really good if you want to build a prototype/POC in a couple of hours.
I hope my explanation is useful, Also there are many services out there like Node-RED, Eclipse Kapua etc. So the choice is actually based on your end goal and what you are going to do with the data.
All the best.
@swalahamani thank you
@salmanfaris thank you
kowshik1729 last edited by kowshik1729
How can we store data generated from IoT devices to cloud and blockchain.
As salman bro has told there are many ways to upload data to cloud like gcp, amazon s3 buckets and many more. But, I would suggest you to facilitate us with more details like what is the application that you are using to upload the data whether it's a temperature values from a DHT sensor or kinda stuff.
Because, there are many simple and as complex ways to upload the data. If you are in the idea of using a laptop or a system with an internet connection at the project area then I would suggest you to go with Adafruit IO cloud services. You don't have to use any external shields or wifi modules to do this. You can use a simple python script running over your laptop that reads the values from the arduino and pushes them to the cloud.
Adafruit IO is super easy to use for the beginners and flexible due to it's API. If you don't have to use a laptop then grab nodeMCU which has an on-board WiFi module that connects to nearby WiFi networks and uploads the data. The Adafruit IO has pretty good interfaces for Data visualization. Check out their website https://io.adafruit.com/
@kowshik1729 we are trying to store readings from vehicles like to blockchain. For the purpose of securly recording the data which can be further used for forensics. But before implementing it with blockchain we are trying to learn how to store these data to cloud. As a first step we are thinking to use arduino or rasberry pi to learn things. Later moving to NODEMCU.
kowshik1729 last edited by
@Abhay I would like to specify some things. As you told you are in prototyping stage and your project obviously involves sensors, my suggestion is to go with any MCU's like arduino or Nodemcu kinda stuff.
Because raspberry pi can be used only when you need a replica of functionality that a computer gives. So, I suggest you to take up MCU's like nodeMCU, ESP32 and if I'm correct there is a variation of Arduino with an inbuilt esp8266 wifi chip over it. I'm sure there is one like that. Incase of any change in the functionality of the project you can go on with your own method. This is just a suggestion.
@kowshik1729 thank you, for the suggestion. Its informative.
I haven't found a good sensor module for this at al
another option is that you can build capacitive sensor your own with resistors.
"Energy is liberated matter, matter is energy maintained" ~ Bill Bryson
Have you ever wondered what the future of energy would be like? Especially since machine learning has opened up such a wide range of innovations and opportunities?
Care to take a look at the answers?
The RSET IEEE Power and Energy Society SBC proudly presents to you an informative webinar on "Machine Learning in Power Systems" hosted by Dr. Qiuhua Huang.
Dr. Qiuhua Huang is currently a Senior Power System Research Engineer with the Electricity Infrastructure Group, Pacific Northwest National Laboratory, USA. He has been a Principal Investigator, Project Manager, Task Lead and Key Technical Contributor in 10+ DOE-funded projects. Besides these, he is also the recipient of the 2019 IEEE PES Prize Paper Award, 2018 R&D 100 Award and several other achievements in his field of expertise.
Join us as we delve into the enigma that is Machine Learning.
Registration open to all.
Date: 7th June 2020
Time: 11:00 a.m
@salmanfaris best if you could point me to an example that works as described: getting different values depending on hoe close the finger is without really touching. nothing i tried did work yet
@salmanfaris I haven't found a good sensor module for this at all. I used a thing which was calles touch sensor and it returns only 1/0. Tried to use touchRead() but it is not sensitive apparently, only 40 and 1 more or less.
#define touch_pin_numer 33
const int VALUE_THRESHOLD = 30;
TOUCH_SENSOR_VALUE = touchRead(touch_pin_numer);
if(TOUCH_SENSOR_VALUE < VALUE_THRESHOLD)
Serial.println ("Touch ON");
Serial.println ("Touch OFF");
should show something between 40 (current max) and 1 (current min) the closer the finger gets but it shows 40/41/39 and 1 - nothing inbetween. got this code from the web