Free cloud server to run scripts

I have build some sensor nodes and I want to find a free (if it can be) server for running scripts getting measurements from ethernet connected Arduino nodes. Does anyone has an idea where to start? How I realize this? Do I use a specific language? Framework? What? My aim is to gather real-time data, graphs and if possible to control the nodes from the browser by sending commands.

Thanks

If you want to be independent get yourself a Raspberry Pi that will function as your cloud computer. I have the following setup.

I run node-red to have a server that runs javascript based flows collecting data, storing them into a database and providing a nice web interface to program the flows and to display the data. I believe this is already installed by default when you install NOOBS Raspbian.

https://nodered.org/

influxdb is a time based data base that is really easy to use from node-red and is perfect for sensor data. Once you installed the data base, there are nodes available that hide all the complicated stuff. You just drag them into your flow (looks like a sheet of paper) connect them with other nodes with the mouse, configure a few parameters and off you go.

To send data from my sensors nodes I use MQTT protocol. This is supported by a library with easy examples. It runs on top of your network connection (TCP/IP). The protocol requires a broker node. I use mosquitto on the Raspberry. There you can use node-red mqtt nodes to get the data into your flow, wher you can store it in a data base and then analyse and display later.

You can also find lots of tutorials and youtube videos for all of this. Its is a lot of fun. :slight_smile:

Amazing!! Great idea!! So you just connect the Rapsberry to an ethernet and you run it like a sever... How about the delay and the data you have to store inside the Raspberry??

Yes, you just connect the Raspberry Pi to your network (Ethernet or WiFi).

Part of Node-red is a server that runs the flows, provides a web interface for programming the logic of what happens with the data and for displaying the data. There is very little programming necessary.

influxdb can be used to store the data on the Raspberry Pi SD card. You only need this when you want to see that data from many days of even month. If you just want to see live data and control something you do not need inluxdb. The data base can be backed up as well in case the SD card ever fails.

So you can do one thing at a time. You do not need everything running at once.

The delay is depending on your application. You can send and receive data in real time. But when you have a month full of data and do a data base request asking to show you the average temperature of the last month it will take a couple of seconds to show you the graph on your web interface.