Lets get right into this. I was logging temperature of a room to an Excel sheet via Serial.print commands, then importing CSV files and yada yada. I couldn't get to the data unless I was at home, and also I had to leave my computer running in order to log the data. I needed a better way to log temperature (or anything for that matter) and be able to access it from anywhere.
Google Docs is a great free service that fits the bill perfect. There are tons of tutorials showing how to do this HOWEVER they are all out of date due to Google changing things up on their forms. So I am here to re-write everything I learned to help you get started and logging real time to the internet. You will need: Arduino R3 Ethernet shield (probably can be done with a YUN or WiFi, but I used Ethernet.) ** I added a screen shot of my dashboard which displays all the data that I am collecting. This is all based on 3 temperature sensors.**
Step 1: Get the Required Account
Get the required accounts:
1. Google. Get a google account. its 2016, you should probably have one by now. FREE
2. Get a pushingbox account via pushingbox.com. FREE and it uses you google account for user info.
Step 2: Create a Google Form and Get FORM KEY
- Inside of google Drive you can create a 'Form' . For the sake of making this simple I will create a single question select the short answer response form as shown. When that is complete, click send form.
- A screen will pop up which will have an option to show URL. Click that(shorten URL) then Copy the URL that is spits out.
- Past that into your web browser and you will find yourself at the form you created.
- From here you will need to right click and select 'Inspect Elements'. This will load the HTML code for the form. You are looking for the line of code that is defining the Text input box. You will find a section of the code that is "
entry.1315919601" (numbers are dependent on you)Take note of this. I will be referring to this as "FORM KEY"
Step 3: Pushingbox, Service and Scenarios
- Head over to pushingbox.com and login with the same google information that you created the form with.
- Go go My Services and create a new custom service. You will need to go to your google form and submit a response. This will load the response page of your form. Copy this URL and past it into the pushingbox Service URL field. Name it whatever you want and set method to GET. Done.
- Now go to my scenarios.
- Just Give a name and ADD
This is where the FORM KEY will be used. Following my template, past this into the scenarios field to add:
Change the bold text with your FORM KEY that you gathered in step 2. Leave the ? and the other stuff, just replace the bold with your stuff. Now copy that whole string Click ADD ACTION and past into the DATA scenario field. Now click SUBMIT.
- Then it will say nice job! or something positive like that. Then select the Service you created only moments ago. This will give you a DEVICE ID remember this, in fact. write it down or copy and past it into a note pad doc. This will be used in the arduino code. Congrats, you are done with that and now its time to code the arduino.
YOU CAN CHECK WHETHER YOU CURRECT
Past below format in your browser
Above will upload 12 to your google form
Step 4: CODE THE ARDUINO
I have attached my very simple code to run this example. You will find a section of things to be edited. This code will send responses to the form you created in the form of data. You will see google then creates a spread sheet and logs all the responses WITH time stamps! Use this to create data logs of temperature, light levels, humidity, motion whatever you want!
The example attached uses a analog sensor.
Can easily be modified for something else.
I hope this lets you walk through the steps and get some data posed to the web. Thanks