<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Comments on: Log Data with NodeMCU and Google Sheets	</title>
	<atom:link href="https://www.teachmemicro.com/log-data-nodemcu-google-sheets/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=log-data-nodemcu-google-sheets</link>
	<description>Microcontroller Tutorials and Resources</description>
	<lastBuildDate>Sun, 15 Oct 2023 22:01:59 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>
	<item>
		<title>
		By: Andrew		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-89804</link>

		<dc:creator><![CDATA[Andrew]]></dc:creator>
		<pubDate>Fri, 26 Jun 2020 11:58:43 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-89804</guid>

					<description><![CDATA[Hi, this is a fantastic find, thank you for taking the time to write it up. My problem is when I inspect my google form short answer box the code looks quite different. Do you know if google have changed the way they collect this data and is there a fix? Thanks heaps.]]></description>
			<content:encoded><![CDATA[<p>Hi, this is a fantastic find, thank you for taking the time to write it up. My problem is when I inspect my google form short answer box the code looks quite different. Do you know if google have changed the way they collect this data and is there a fix? Thanks heaps.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: bob		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-50764</link>

		<dc:creator><![CDATA[bob]]></dc:creator>
		<pubDate>Mon, 21 Oct 2019 09:11:35 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-50764</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-373&quot;&gt;op&lt;/a&gt;.

how to use multiple variables on the URL of your pushingbox service?]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-373">op</a>.</p>
<p>how to use multiple variables on the URL of your pushingbox service?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: tannu		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-24439</link>

		<dc:creator><![CDATA[tannu]]></dc:creator>
		<pubDate>Wed, 24 Jul 2019 17:02:46 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-24439</guid>

					<description><![CDATA[I am not able to understand where to add multiple variable on the URL of pushingbox service , when we are going to send data of more than one sensor on googlesheet.]]></description>
			<content:encoded><![CDATA[<p>I am not able to understand where to add multiple variable on the URL of pushingbox service , when we are going to send data of more than one sensor on googlesheet.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Ayman		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23835</link>

		<dc:creator><![CDATA[Ayman]]></dc:creator>
		<pubDate>Tue, 09 Jul 2019 14:39:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-23835</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23809&quot;&gt;Chuck Felber&lt;/a&gt;.

I mean both of them, receiving the UID as an array then sending it to the google sheet]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23809">Chuck Felber</a>.</p>
<p>I mean both of them, receiving the UID as an array then sending it to the google sheet</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Chuck Felber		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23809</link>

		<dc:creator><![CDATA[Chuck Felber]]></dc:creator>
		<pubDate>Tue, 09 Jul 2019 03:29:49 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-23809</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23770&quot;&gt;Ayman&lt;/a&gt;.

I do not know what you mean by &quot;i cant do the merge&quot;, please explain. Which code do you need, the Nodemcu lua code that generates the data or the google script that receives the data and adds it to the spreadsheet or both?]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23770">Ayman</a>.</p>
<p>I do not know what you mean by "i cant do the merge", please explain. Which code do you need, the Nodemcu lua code that generates the data or the google script that receives the data and adds it to the spreadsheet or both?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Ayman		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-23770</link>

		<dc:creator><![CDATA[Ayman]]></dc:creator>
		<pubDate>Mon, 08 Jul 2019 11:48:04 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-23770</guid>

					<description><![CDATA[In reply to &lt;a href=&quot;https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-690&quot;&gt;Chuck Felber&lt;/a&gt;.

i am making the same project but i cant do the merge could you send your code it may help]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-690">Chuck Felber</a>.</p>
<p>i am making the same project but i cant do the merge could you send your code it may help</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Debraj Deb		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-19588</link>

		<dc:creator><![CDATA[Debraj Deb]]></dc:creator>
		<pubDate>Tue, 12 Mar 2019 19:44:34 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-19588</guid>

					<description><![CDATA[Super thanks. Using your website, I was able to log data to my google form using ESP8266 AT command. I had to use another micro for doing precise power measurement on AC line, and then send the RMS value to google form using AT command.

Your steps were precise and to the point.]]></description>
			<content:encoded><![CDATA[<p>Super thanks. Using your website, I was able to log data to my google form using ESP8266 AT command. I had to use another micro for doing precise power measurement on AC line, and then send the RMS value to google form using AT command.</p>
<p>Your steps were precise and to the point.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: peyyety		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-15891</link>

		<dc:creator><![CDATA[peyyety]]></dc:creator>
		<pubDate>Fri, 02 Nov 2018 07:36:00 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-15891</guid>

					<description><![CDATA[Hi, I trying to send ultrasonic sensor values to google sheet using your process.My code is uploading successfully but data is not getting in sheet. Plz help me with this. In my serial monitor it is showing that connection failed
 
#include 

const char* ssid = &quot;xxxxx&quot;; 
const char* password = &quot;xxxxx&quot;;    //replace with your own password
const char* host = &quot;api.pushingbox.com&quot;;  

const int trigPin = 5;
const int echoPin = 4;
//height of the water tank in centimeter
const int height_tank=25;

//Pin Number of The Motor Relay
int led=0;

// defines variables
int distance;
int duration;

void setup() {
    pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output
    pinMode(echoPin, INPUT); // Sets the echoPin as an Input
    pinMode(led,OUTPUT);//Set the Motor Relay Pin as an OUTPUT
    Serial.begin(9600); // Starts the serial communication
  
  // We start by connecting to a WiFi network
  Serial.println();
  Serial.println();
  Serial.print(&quot;Connecting to &quot;);
  Serial.println(ssid);
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(&quot;.&quot;);
  }

  Serial.println(&quot;&quot;);
  Serial.println(&quot;WiFi connected&quot;);  
  Serial.println(&quot;IP address: &quot;);
  Serial.println(WiFi.localIP());
}
int ping(){
  // Clears the trigPin
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  // Sets the trigPin on HIGH state for 10 micro seconds
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  // Reads the echoPin, returns the sound wave travel time in microseconds
  duration = pulseIn(echoPin, HIGH);
  // Calculating the distance
  distance= duration*0.034/2;
  // Prints the distance on the Serial Monitor
  return distance;
}

void loop() {
 distance=ping();
   int division_lenght=height_tank/5;
   int level=distance/division_lenght;
   level=5-level;
   Serial.println(level);
   Serial.println(distance);
   if(level==1){
    digitalWrite(led,HIGH);
    Serial.println(&quot; On&quot;);
   }else if(level==2){
    digitalWrite(led,HIGH);
    Serial.println(&quot; On&quot;);
   }else if(level==3){
    digitalWrite(led,HIGH);
    Serial.println(&quot;On&quot;);
   }else if(level==4){
    digitalWrite(led,HIGH);
    Serial.println(&quot;On&quot;);
   }
   else{
    digitalWrite(led,LOW);
    Serial.println(&quot;OFF&quot;);
   }
   delay(1000);  
    Serial.print(&quot;connecting to &quot;);
    Serial.println(host);
  
    // Use WiFiClient class to create TCP connections
    WiFiClient client;
    const int httpPort = 80;
    if (!client.connect(host, httpPort)) {
      Serial.println(&quot;connection failed&quot;);
      return;
    }

    // We now create a URI for the request
    String url = &quot;/pushingbox?&quot;;
    url += &quot;devid=&quot;;
    url += &quot;v57D03554AC78F92&quot;;
    url += &quot;&#038;distance=&quot;+String(distance);
  
    Serial.print(&quot;Requesting URL: &quot;);
    Serial.println(url);
  
    // This will send the request to the server
    client.print(String(&quot;GET &quot;) + url + &quot; HTTP/1.1\r\n&quot; +
               &quot;Host: &quot; + host + &quot;\r\n&quot; + 
               &quot;Connection: close\r\n\r\n&quot;);
    unsigned long timeout = millis();
    while (client.available() == 0) {
      if (millis() - timeout &#062; 5000) {
      Serial.println(&quot;&#062;&#062;&#062; Client Timeout !&quot;);
      client.stop();
      return;
    }
  }
  
  // Read all the lines of the reply from server and print them to Serial
  while(client.available()){
    String line = client.readStringUntil(&#039;\r&#039;);
    Serial.print(line);
    Serial.print(&quot;Data Sent!&quot;);
  }
  
  Serial.println();
  Serial.println(&quot;closing connection&quot;);
  }]]></description>
			<content:encoded><![CDATA[<p>Hi, I trying to send ultrasonic sensor values to google sheet using your process.My code is uploading successfully but data is not getting in sheet. Plz help me with this. In my serial monitor it is showing that connection failed</p>
<p>#include </p>
<p>const char* ssid = "xxxxx";<br />
const char* password = "xxxxx";    //replace with your own password<br />
const char* host = "api.pushingbox.com";  </p>
<p>const int trigPin = 5;<br />
const int echoPin = 4;<br />
//height of the water tank in centimeter<br />
const int height_tank=25;</p>
<p>//Pin Number of The Motor Relay<br />
int led=0;</p>
<p>// defines variables<br />
int distance;<br />
int duration;</p>
<p>void setup() {<br />
    pinMode(trigPin, OUTPUT); // Sets the trigPin as an Output<br />
    pinMode(echoPin, INPUT); // Sets the echoPin as an Input<br />
    pinMode(led,OUTPUT);//Set the Motor Relay Pin as an OUTPUT<br />
    Serial.begin(9600); // Starts the serial communication</p>
<p>  // We start by connecting to a WiFi network<br />
  Serial.println();<br />
  Serial.println();<br />
  Serial.print("Connecting to ");<br />
  Serial.println(ssid);<br />
  WiFi.mode(WIFI_STA);<br />
  WiFi.begin(ssid, password);</p>
<p>  while (WiFi.status() != WL_CONNECTED) {<br />
    delay(500);<br />
    Serial.print(".");<br />
  }</p>
<p>  Serial.println("");<br />
  Serial.println("WiFi connected");<br />
  Serial.println("IP address: ");<br />
  Serial.println(WiFi.localIP());<br />
}<br />
int ping(){<br />
  // Clears the trigPin<br />
  digitalWrite(trigPin, LOW);<br />
  delayMicroseconds(2);<br />
  // Sets the trigPin on HIGH state for 10 micro seconds<br />
  digitalWrite(trigPin, HIGH);<br />
  delayMicroseconds(10);<br />
  digitalWrite(trigPin, LOW);<br />
  // Reads the echoPin, returns the sound wave travel time in microseconds<br />
  duration = pulseIn(echoPin, HIGH);<br />
  // Calculating the distance<br />
  distance= duration*0.034/2;<br />
  // Prints the distance on the Serial Monitor<br />
  return distance;<br />
}</p>
<p>void loop() {<br />
 distance=ping();<br />
   int division_lenght=height_tank/5;<br />
   int level=distance/division_lenght;<br />
   level=5-level;<br />
   Serial.println(level);<br />
   Serial.println(distance);<br />
   if(level==1){<br />
    digitalWrite(led,HIGH);<br />
    Serial.println(" On");<br />
   }else if(level==2){<br />
    digitalWrite(led,HIGH);<br />
    Serial.println(" On");<br />
   }else if(level==3){<br />
    digitalWrite(led,HIGH);<br />
    Serial.println("On");<br />
   }else if(level==4){<br />
    digitalWrite(led,HIGH);<br />
    Serial.println("On");<br />
   }<br />
   else{<br />
    digitalWrite(led,LOW);<br />
    Serial.println("OFF");<br />
   }<br />
   delay(1000);<br />
    Serial.print("connecting to ");<br />
    Serial.println(host);</p>
<p>    // Use WiFiClient class to create TCP connections<br />
    WiFiClient client;<br />
    const int httpPort = 80;<br />
    if (!client.connect(host, httpPort)) {<br />
      Serial.println("connection failed");<br />
      return;<br />
    }</p>
<p>    // We now create a URI for the request<br />
    String url = "/pushingbox?";<br />
    url += "devid=";<br />
    url += "v57D03554AC78F92";<br />
    url += "&amp;distance="+String(distance);</p>
<p>    Serial.print("Requesting URL: ");<br />
    Serial.println(url);</p>
<p>    // This will send the request to the server<br />
    client.print(String("GET ") + url + " HTTP/1.1\r\n" +<br />
               "Host: " + host + "\r\n" +<br />
               "Connection: close\r\n\r\n");<br />
    unsigned long timeout = millis();<br />
    while (client.available() == 0) {<br />
      if (millis() - timeout &gt; 5000) {<br />
      Serial.println("&gt;&gt;&gt; Client Timeout !");<br />
      client.stop();<br />
      return;<br />
    }<br />
  }</p>
<p>  // Read all the lines of the reply from server and print them to Serial<br />
  while(client.available()){<br />
    String line = client.readStringUntil('\r');<br />
    Serial.print(line);<br />
    Serial.print("Data Sent!");<br />
  }</p>
<p>  Serial.println();<br />
  Serial.println("closing connection");<br />
  }</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Richard Trostel		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-15731</link>

		<dc:creator><![CDATA[Richard Trostel]]></dc:creator>
		<pubDate>Thu, 25 Oct 2018 12:47:12 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-15731</guid>

					<description><![CDATA[How do you find your device ID ?
Is it the same ID that shows up on my router in the last tutorial about the light sensor ?
Sorry for the noob question but I am just getting started with MCUs.]]></description>
			<content:encoded><![CDATA[<p>How do you find your device ID ?<br />
Is it the same ID that shows up on my router in the last tutorial about the light sensor ?<br />
Sorry for the noob question but I am just getting started with MCUs.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Alfiya Mukadam		</title>
		<link>https://www.teachmemicro.com/log-data-nodemcu-google-sheets/#comment-11683</link>

		<dc:creator><![CDATA[Alfiya Mukadam]]></dc:creator>
		<pubDate>Mon, 24 Sep 2018 04:22:25 +0000</pubDate>
		<guid isPermaLink="false">https://www.teachmemicro.com/?p=767#comment-11683</guid>

					<description><![CDATA[also, after loading data into spreadsheets can we load them from spreadsheets onto the web page?]]></description>
			<content:encoded><![CDATA[<p>also, after loading data into spreadsheets can we load them from spreadsheets onto the web page?</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: www.teachmemicro.com @ 2026-06-23 03:39:06 by W3 Total Cache
-->