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.
Very much informative!!!!
If you are using raspberry pi as one of your main computers and have separate monitor, keyboard and mouse, then you might be tired of copy and pasting terminal commands and codes while doing projects with raspberry pi, because running chromium-browser and reading tutorial will pi slower and using a sperate keyboard and mouse use our workbench space too.
recently I read a blog Share your keyboard and mouse between computers with Barrier by Gordon Hollingworth which is cool.
In that blog, he mentioned a software called barrier, it's a software that will allow you to use a single keyboard and mouse to control multiple computers by physically turning a dial on the box to switch the machine you're controlling at any given moment. The barrier does this in software, allowing you to tell it which machine to control by moving your mouse to the edge of the screen, or by using a keypress to switch focus to a different system.
Follow these to share your computer keyboard and mouse with the raspberry pi
First, we need setup raspberry pi
Step 1: Download and Install Raspberry Pi OS on SD Card
Step 2: Connect raspberry pi to the wi-fi network
Step 3: Install barrier, for that open your terminal (Ctrl + T) and paste or enter the followingsudo apt install barrier
Then click enter.
Step 4: Setup barrier, Open barrier by typing barrier on the terminal, if you successfully installed the barrier you can see like this.
Select option Client (Use another computer's mouse and keyboard) and Select Auto config option too, also note the Screen name, which we need for the server.
That's all next we need to set up the desktop/laptop computer.
Step 5: Download and Install barrier on desktop or laptop computer (The Server), download link
Step 6: Set up the barrier by selecting Server and position your monitor on barrier software.
To Position, the screen clicks the configure server.
Here, to drag and drop the monitor icon to the desired position you need on the grid.
double click the screen and set the screen name, you can obtain the screen name from the raspberry pi barrier client. (See Step 4)
after setup, it should be like this. Then click OK
in the following screen, click Apply and Just wait few seconds then try to move the mouse to the corner. Yes, It should work.
@rafitc99 Looks cool, Thanks for sharing.
This is a speaker call for MakerChat by MakerGram. MakerChat is a webinar series where makers from different domain sharing their expertise with other fellow makers. MakerGram is an Open Community Platform for Makers and hardware enthusiasts to empower them by promoting learning, sharing and collaboration.
Do you think you can come up with some interesting ideas revolving around Amazon Alexa? What if we could help you build that idea into a reality. Tell us about your idea and the best one wins an Amazon Alexa Echo Dot.
🧲 Bonus points for those solutions involving Covid-19 or promoting social-distancing.
Schedule️Application - The application starts on 26th June 2020. Closing - The registration will end on 17th July 2020. Results - The results declared by last week of July
For Registration: https://alexa.hackclub.com/