<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
		<id>https://wiki.binefa.cat/index.php?action=history&amp;feed=atom&amp;title=Tecnolog%C3%ADas_IoT%2C_Hands_on_y_MVP_%2827%2F4%2F2019%29</id>
		<title>Tecnologías IoT, Hands on y MVP (27/4/2019) - Historial de revisió</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.binefa.cat/index.php?action=history&amp;feed=atom&amp;title=Tecnolog%C3%ADas_IoT%2C_Hands_on_y_MVP_%2827%2F4%2F2019%29"/>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;action=history"/>
		<updated>2026-04-18T12:52:22Z</updated>
		<subtitle>Historial de revisió per a aquesta pàgina del wiki</subtitle>
		<generator>MediaWiki 1.29.0</generator>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=1023&amp;oldid=prev</id>
		<title>Jordi : /* Bases de datos de series temporales */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=1023&amp;oldid=prev"/>
				<updated>2020-01-13T14:20:51Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Bases de datos de series temporales&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 14:20, 13 gen 2020&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l148&quot; &gt;Línia 148:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 148:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; source /etc/os-release&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; source /etc/os-release&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; test $VERSION_ID = &amp;quot;9&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;deb https://repos.influxdata.com/debian stretch stable&amp;quot; | sudo tee /etc/apt/sources.list.d/influxdb.list&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; test $VERSION_ID = &amp;quot;9&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;deb https://repos.influxdata.com/debian stretch stable&amp;quot; | sudo tee /etc/apt/sources.list.d/influxdb.list&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install influxdb&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install influxdb &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''influxdb-client'''&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo systemctl unmask influxdb.service&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo systemctl unmask influxdb.service&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo systemctl start influxdb&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#160; sudo systemctl start influxdb&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:924:newid:1023 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=924&amp;oldid=prev</id>
		<title>Jordi : /* Pantalla táctil Nextion */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=924&amp;oldid=prev"/>
				<updated>2019-04-26T11:22:01Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Pantalla táctil Nextion&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 11:22, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l281&quot; &gt;Línia 281:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 281:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://binefa.cat/training/upcSchool/20190427/nextion/ Enlace a material para trabajar con la pantalla táctil Nextion]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:921:newid:924 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=921&amp;oldid=prev</id>
		<title>Jordi : /* MQTTS */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=921&amp;oldid=prev"/>
				<updated>2019-04-26T11:15:12Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;MQTTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 11:15, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l130&quot; &gt;Línia 130:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 130:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Configuració de MQTTS a un servidor remot basat en Debian 9]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Configuració de MQTTS a un servidor remot basat en Debian 9]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://binefa.cat/dam/M7UF1_M9UF2_M9UF3_M15UF1/20190412_aval_2aPart/mqtts/ &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Codi per a connectar l'&lt;/del&gt;ESP32 a MQTTS]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://binefa.cat/dam/M7UF1_M9UF2_M9UF3_M15UF1/20190412_aval_2aPart/mqtts/ &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Código para conectar el &lt;/ins&gt;ESP32 a MQTTS]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Almacenaje y visualización de datos IoT ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Almacenaje y visualización de datos IoT ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:920:newid:921 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=920&amp;oldid=prev</id>
		<title>Jordi : /* MQTTS */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=920&amp;oldid=prev"/>
				<updated>2019-04-26T11:14:27Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;MQTTS&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 11:14, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l126&quot; &gt;Línia 126:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 126:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== MQTTS ====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== MQTTS ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[MQTT i MQTTS]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Configuració de MQTTS a un servidor remot basat en Debian 9]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://binefa.cat/dam/M7UF1_M9UF2_M9UF3_M15UF1/20190412_aval_2aPart/mqtts/ Codi per a connectar l'ESP32 a MQTTS]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Almacenaje y visualización de datos IoT ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Almacenaje y visualización de datos IoT ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:911:newid:920 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=911&amp;oldid=prev</id>
		<title>Jordi : /* Visualización en NodeRed */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=911&amp;oldid=prev"/>
				<updated>2019-04-26T08:26:46Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Visualización en NodeRed&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 08:26, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l130&quot; &gt;Línia 130:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 130:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Vídeo [https://youtu.be/JdV4x925au0 #255 Node-Red, InfluxDB, and Grafana Tutorial on a Raspberry Pi] de [https://twitter.com/spiessa Andres Spiess]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Vídeo [https://youtu.be/JdV4x925au0 #255 Node-Red, InfluxDB, and Grafana Tutorial on a Raspberry Pi] de [https://twitter.com/spiessa Andres Spiess]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Visualización en NodeRed ====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Visualización &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;y control &lt;/ins&gt;en NodeRed ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://binefa.cat/training/upcSchool/20190427/nodeRed/random00_view.png Visualización de una generación de números aleatorios]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://binefa.cat/training/upcSchool/20190427/nodeRed/random00_view.png Visualización de una generación de números aleatorios]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:910:newid:911 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=910&amp;oldid=prev</id>
		<title>Jordi : /* Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=910&amp;oldid=prev"/>
				<updated>2019-04-26T08:23:50Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 08:23, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l273&quot; &gt;Línia 273:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 273:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en '''Grafana''' el '''valor de la LDR''' de un módulo witty '''ESP8266'''. Publicación de datos cada dos segundos mediante '''MQTT''', gestión en '''NodeRed''' capturándolos y enviándolos a una base de datos temporal '''InfluxDB'''. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en '''Grafana''' el '''valor de la LDR''' de un módulo witty '''ESP8266'''. Publicación de datos cada dos segundos mediante '''MQTT''', gestión en '''NodeRed''' capturándolos y enviándolos a una base de datos temporal '''InfluxDB'''. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en '''Grafana''' el valor de temperatura, humedad y presión atmosférica de un sensor '''BME280''' conectado por el bus I2C a un '''ESP32'''. Publicación de datos cada 10 segundos mediante '''MQTTS''', gestión en '''NodeRed''' capturándolos y enviándolos a una base de datos temporal '''InfluxDB'''. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la temperatura, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/del&gt;humedad y presión atmosférica&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/del&gt;con un refresco cada 30 segundos.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en '''Grafana''' el valor de temperatura, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;humedad y presión atmosférica&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;de un sensor '''BME280''' conectado por el bus I2C a un '''ESP32'''. Publicación de datos cada 10 segundos mediante '''MQTTS''', gestión en '''NodeRed''' capturándolos y enviándolos a una base de datos temporal '''InfluxDB'''. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la temperatura, humedad y presión atmosférica con un refresco cada 30 segundos.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:907:newid:910 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=907&amp;oldid=prev</id>
		<title>Jordi : /* Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana */</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=907&amp;oldid=prev"/>
				<updated>2019-04-26T08:22:01Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 08:22, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l271&quot; &gt;Línia 271:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 271:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana ====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en Grafana el valor de la LDR de un módulo witty ESP8266. Publicación de datos cada dos segundos mediante MQTT, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;Grafana&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;el &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;valor de la LDR&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;de un módulo witty &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;ESP8266&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;. Publicación de datos cada dos segundos mediante &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;MQTT&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;, gestión en &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;NodeRed&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;capturándolos y enviándolos a una base de datos temporal &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;InfluxDB&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en Grafana el valor de temperatura, humedad y presión atmosférica de un sensor BME280 conectado por el bus I2C a un ESP32. Publicación de datos cada 10 segundos mediante MQTTS, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la temperatura, humedad y presión atmosférica con un refresco cada 30 segundos.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;Grafana&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;el valor de temperatura, humedad y presión atmosférica de un sensor &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;BME280&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;conectado por el bus I2C a un &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;ESP32&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;. Publicación de datos cada 10 segundos mediante &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;MQTTS&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;, gestión en &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;NodeRed&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;capturándolos y enviándolos a una base de datos temporal &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;InfluxDB&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la temperatura, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;humedad y presión atmosférica&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;con un refresco cada 30 segundos.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== Pantalla táctil Nextion ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:905:newid:907 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=905&amp;oldid=prev</id>
		<title>Jordi a 08:19, 26 abr 2019</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=905&amp;oldid=prev"/>
				<updated>2019-04-26T08:19:48Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='ca'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Versió més antiga&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revisió del 08:19, 26 abr 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l270&quot; &gt;Línia 270:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línia 270:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Al finalizar seleccionar el icono '''Save dashboard'''&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Al finalizar seleccionar el icono '''Save dashboard'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;=&lt;/del&gt;==== Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;=&lt;/del&gt;====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en Grafana el valor de la LDR de un módulo witty ESP8266. Publicación de datos cada dos segundos mediante MQTT, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;- Visualizar en Grafana el valor de la LDR de un módulo witty ESP8266. Publicación de datos cada dos segundos mediante MQTT, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki_binefa_cat-wiki_bc:diff:version:1.11a:oldid:904:newid:905 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	<entry>
		<id>https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=904&amp;oldid=prev</id>
		<title>Jordi : Es crea la pàgina amb «= 27/4/2019 = === ESP8266 === ==== Conceptos básicos ==== Código [https://binefa.cat/php/telecos/codis/ESP8266/ESP8266_06c_TestPins/ESP8266_06c_TestPins.ino ESP8266_...».</title>
		<link rel="alternate" type="text/html" href="https://wiki.binefa.cat/index.php?title=Tecnolog%C3%ADas_IoT,_Hands_on_y_MVP_(27/4/2019)&amp;diff=904&amp;oldid=prev"/>
				<updated>2019-04-26T08:17:23Z</updated>
		
		<summary type="html">&lt;p&gt;Es crea la pàgina amb «= 27/4/2019 = === ESP8266 === ==== Conceptos básicos ==== Código [https://binefa.cat/php/telecos/codis/ESP8266/ESP8266_06c_TestPins/ESP8266_06c_TestPins.ino ESP8266_...».&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pàgina nova&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= 27/4/2019 =&lt;br /&gt;
=== ESP8266 ===&lt;br /&gt;
==== Conceptos básicos ====&lt;br /&gt;
Código [https://binefa.cat/php/telecos/codis/ESP8266/ESP8266_06c_TestPins/ESP8266_06c_TestPins.ino ESP8266_06c_TestPins.ino] para leer y escribir parámetros al Arduino desde el ordenador, usando el propio IDE de Arduino, GtkTerm (desde GNU/Linux) o [https://putty.org/ putty] (desde Windows).&lt;br /&gt;
&lt;br /&gt;
==== Conexión a diversas redes WiFi ====&lt;br /&gt;
[https://wiki.binefa.cat/index.php?title=Connexi%C3%B3_a_m%C3%BAltiples_xarxes_sense_fils Conexión a diversas redes WiFi]&lt;br /&gt;
&lt;br /&gt;
==== Uso de UDP en el ESP8266 ====&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/udp/esp8266_udpTest_mDNS_upcSchool.zip Código UDP para el ESP8266 pudiendo usar múltiples redes WiFi]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/udp/UDPbasic02_Qt5_max.apk Aplicación (.apk) para Android desarrollada en Qt5 para enviar y recibir datagramas UDP]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/udp/UDPbasic02_Qt5_max.tar.gz Código de la aplicación para Android desarrollada en Qt5 para enviar y recibir datagramas UDP]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/udp/udpNodeRED.png Captura de pantalla de flujos NodeRED usando UDP para conectarse al ESP8266]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/udp/udp.nodered.txt Código para importar al NodeRED, usando UDP para conectarse al ESP8266]&lt;br /&gt;
&lt;br /&gt;
==== Uso de ModBus TCP en el ESP8266 ====&lt;br /&gt;
[https://youtu.be/k993tAFRLSE Vídeo &amp;quot;Understanding Modbus Serial and TCP/IP&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
===== Uso de ModBus TCP en Python comunicando con el ESP8266 =====&lt;br /&gt;
&lt;br /&gt;
Desde el terminal hemos de cargar la biblioteca pyModbusTCP usando '''pip''':&lt;br /&gt;
 sudo pip3 install pyModbusTCP&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/modbusTCP/srvModbus_senseEscriureIP.zip Simulación de servidor ModBus TCP desde Python]. Para [https://wiki.binefa.cat/index.php?title=Recursos_en_Python#Portabilitat_de_Windows_a_Linux solucionar el problema de ejecutar en GNU/Linux un archivo de Python hecho en Windows].&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/modbusTCP/esp8266_modbus_estatBoto_LDR_i_led_upcSchool.zip Código ModBus TCP para ESP8266]&lt;br /&gt;
&lt;br /&gt;
[https://www.binefa.cat/training/upcSchool/20190427/modbusTCP/readingLdr_modbusTCP.py.txt Cliente ModBus TCP en Python para leer la LDR del ESP8266]&lt;br /&gt;
&lt;br /&gt;
[https://www.binefa.cat/training/upcSchool/20190427/modbusTCP/writingRedLed_modbusTCP.py.txt Cliente ModBus TCP en Python para escribir y leer el color rojo del led tricolor del ESP8266]&lt;br /&gt;
&lt;br /&gt;
[https://www.binefa.cat/training/upcSchool/20190427/modbusTCP/writingRedLed_readButton_modbusTCP.py.txt Cliente ModBus TCP en Python para escribir y leer el color rojo del led tricolor del ESP8266 y el botón de la placa superior]&lt;br /&gt;
&lt;br /&gt;
===== Uso de nodos ModBus TCP en el NodeRED comunicando con el ESP8266 =====&lt;br /&gt;
&lt;br /&gt;
La mayoría de contribuciones ModBusTCP en NodeRED preguntan cíclicamente al dispositivo servidor. La excepción es '''node-red-contrib-modbustcp-no-pooling'''. Debido a que no está actualizado desde hace más de dos años, estos nodos no funcionan correctamente en versiones modernas de NodeRED. Una solución es usar los códigos desarrollados en Python en el apartado anterior y hacerlos servir desde NodeRED.&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/modbusTCP/python_NodeRED/fluxModBusOnce.png Captura de pantalla de flujos NodeRED usando Python para ModBus TCP]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/modbusTCP/python_NodeRED/fluxModBusOnce.nodered.txt Código para importar al NodeRED, usando Python para ModBus TCP]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/modbusTCP/python_NodeRED/20190427_python_NodeRED.zip Grupo de códigos en Python adaptados para funcionar una sola vez cuando son llamados]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://flows.nodered.org/node/node-red-contrib-modbustcp-no-pooling Instalación de node-red-contrib-modbustcp-no-pooling] Otra manera de instalarlo es desde el propio NodeRED: Menú / ''Manage Palette'' / ''Palette'' (pestaña izquierda) / ''Install'' (pestaña superior) / Escribir en ''search modules'' : '''node-red-contrib-modbustcp-no-pooling''' / apretar la tecla Enter / seleccionar el botón ''Install''&lt;br /&gt;
&lt;br /&gt;
Parar NodeRED:&lt;br /&gt;
 sudo systemctl stop nodered&lt;br /&gt;
&lt;br /&gt;
'''Comentar''' la '''línea 46''' del archivo ~/.node-red/node_modules/node-red-contrib-modbustcp-no-pooling/'''modbustcp.js''' :&lt;br /&gt;
 module.exports = function (RED) {&lt;br /&gt;
    '''//'''var RED = require(process.env.NODE_RED_HOME+&amp;quot;/red/red&amp;quot;);    &lt;br /&gt;
    var modbus = require('jsmodbus');&lt;br /&gt;
&lt;br /&gt;
Volver a moner en marcha NodeRED:&lt;br /&gt;
 sudo systemctl start nodered&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Ejercicios de ModBus TCP con el ESP8266 =====&lt;br /&gt;
- Modificar el código del ESP8266 para añadir los ''coils'' de control de los leds verde y azul del led tricolor del ESP8266&lt;br /&gt;
&lt;br /&gt;
- Hacer un cliente ModbusTCP desde Python que haga una secuencia semafórica&lt;br /&gt;
&lt;br /&gt;
- Añadir al tablero de control del NodeRED el control del led verde y azul&lt;br /&gt;
&lt;br /&gt;
==== Uso de MQTT en el ESP8266 ====&lt;br /&gt;
[https://wiki.binefa.cat/index.php?title=MQTT_a_l%27ESP8266 MQTT en el ESP8266]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/mqtt/esp8266_MQTT_ldr_upcSchool/ Código MQTT para ESP8266 usando el IDE de Arduino]&lt;br /&gt;
&lt;br /&gt;
[https://wiki.binefa.cat/index.php?title=Introducci%C3%B3_a_Internet_de_les_Coses_-_juny_2018#MQTT Más información sobre el protocolo MQTT]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/IoT/mqtt/MQTT_Dash/ Configuración de MQTT Dash en Android]&lt;br /&gt;
&lt;br /&gt;
===== Ejercicios de MQTT con el ESP8266 =====&lt;br /&gt;
- [https://binefa.cat/IoT/nodeRed/prj/mqtt_esp8266_esp32/ex00/ Uso del NodeRED y MQTT]&lt;br /&gt;
&lt;br /&gt;
- [https://binefa.cat/IoT/nodeRed/prj/mqtt_esp8266_esp32/ex01/ Uso del panel de control del NodeRED y MQTT]&lt;br /&gt;
&lt;br /&gt;
=== Raspberry ===&lt;br /&gt;
[[MQTT_i_MQTTS]]&lt;br /&gt;
&lt;br /&gt;
=== ESP32 ===&lt;br /&gt;
[https://wiki.binefa.cat/index.php?title=%C3%8Dndex_general#ESP32 Sobre el ESP32]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/blob/master/esp32_4buttons_4leds/esp32_4buttons_4leds.ino Código de prueba de los 4 botones y los 4 leds]&lt;br /&gt;
&lt;br /&gt;
==== I2C ====&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/ceic/20181031/20181031_ceic_02.pdf Explicación del I2C (o TWI ) entre las páginas 57 y 68]&lt;br /&gt;
&lt;br /&gt;
Código para escanear las direcciones de todos los dispositivosus I2C conectados: [https://github.com/jordibinefa/arduino-IDE-codes/blob/master/esp32_i2cScanner_02/esp32_i2cScanner_02.ino esp32_i2cScanner_02.ino]. &lt;br /&gt;
&lt;br /&gt;
 '''0x20''' - '''0x27''' (b0: 3 b1: 2 b2: 1): PCF8574 (de un tipo)&lt;br /&gt;
 '''0x38''' - '''0x3F''' (b0: 3 b1: 2 b2: 1): PCF8574 (de otro tipo)&lt;br /&gt;
 '''0x3C''': OLED&lt;br /&gt;
 '''0x48''': ADS1115&lt;br /&gt;
 '''0x50''' y '''0x68''': RTC&lt;br /&gt;
 '''0x69''': GY-521 (Cable verde entre AD0 y VCC. Para evitar que sea 0x68 y colisione con el RTC)&lt;br /&gt;
 '''0x76''': BME280&lt;br /&gt;
&lt;br /&gt;
Puede haber conflicto de direcciones entre el PCF8574 y la pantalla OLED.&lt;br /&gt;
&lt;br /&gt;
===== ADC - ADS1115 =====&lt;br /&gt;
El [http://www.ti.com/product/ADS1115# chip ADS1115] tiene 4 canales de 16 bits. Las lecturas se hacen mediante el bus I2C.&lt;br /&gt;
&lt;br /&gt;
En [https://github.com/jordibinefa/PLB-IoT-I2C la placa lila PLB-IoT-I2C], cuando la placa ADS1115 está conectada, una entrada lee la tensión de la batería del RTC y las otras tres leen el valor de los potenciómetros conectados a la placa.&lt;br /&gt;
&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/blob/master/esp32_ads1115/esp32_ads1115.ino Código de pruebas para el ADC ADS115]&lt;br /&gt;
&lt;br /&gt;
===== OLED - SSD1306 =====&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/tree/master/esp32_oled_SSD1306SimpleDemo Demostración básica de uso de la pantalla OLED]&lt;br /&gt;
&lt;br /&gt;
===== RTC - DS1307 =====&lt;br /&gt;
RTC: Real Time Clock&lt;br /&gt;
&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/tree/master/esp32_oled_TinyRTC Reloj usando RTC y pantalla OLED]&lt;br /&gt;
&lt;br /&gt;
===== BME280 =====&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/blob/master/esp32_BME280_WeatherStation_04/esp32_BME280_WeatherStation_04.ino Estación metereológica] (temperatura, humedad y presión atmosférica)&lt;br /&gt;
&lt;br /&gt;
[https://github.com/jordibinefa/arduino-IDE-codes/tree/master/esp32_oled_TinyRTC_4B_4L_ADS1115_BME280 Periféricos I2C integrados a la placa PLB-IoT-I2C]&lt;br /&gt;
&lt;br /&gt;
==== MQTTS ====&lt;br /&gt;
&lt;br /&gt;
=== Almacenaje y visualización de datos IoT ===&lt;br /&gt;
Vídeo [https://youtu.be/JdV4x925au0 #255 Node-Red, InfluxDB, and Grafana Tutorial on a Raspberry Pi] de [https://twitter.com/spiessa Andres Spiess]&lt;br /&gt;
&lt;br /&gt;
==== Visualización en NodeRed ====&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random00_view.png Visualización de una generación de números aleatorios]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random00_nodes.png Nodos para una generación de números aleatorios]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random00.nodered.txt Código para una generación de números aleatorios]&lt;br /&gt;
&lt;br /&gt;
==== Bases de datos de series temporales ====&lt;br /&gt;
Proceso de instalación de la base de datos de series temporales InfluxDB (en la metadistribución basada en Debian 9 no viene instalado):&lt;br /&gt;
 curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -&lt;br /&gt;
 source /etc/os-release&lt;br /&gt;
 test $VERSION_ID = &amp;quot;9&amp;quot; &amp;amp;&amp;amp; echo &amp;quot;deb https://repos.influxdata.com/debian stretch stable&amp;quot; | sudo tee /etc/apt/sources.list.d/influxdb.list&lt;br /&gt;
 sudo apt-get update &amp;amp;&amp;amp; sudo apt-get install influxdb&lt;br /&gt;
 sudo systemctl unmask influxdb.service&lt;br /&gt;
 sudo systemctl start influxdb&lt;br /&gt;
&lt;br /&gt;
Fuente: [https://docs.influxdata.com/influxdb/v1.7/introduction/installation/ Instalación de InfluxDB]&lt;br /&gt;
&lt;br /&gt;
Creación de base de datos, usuarios e inserción de valores:&lt;br /&gt;
 influx&lt;br /&gt;
 &amp;gt; CREATE USER &amp;quot;admin&amp;quot; WITH PASSWORD 'internetcoses' WITH ALL PRIVILEGES&lt;br /&gt;
 &amp;gt; create database aula206&lt;br /&gt;
 &amp;gt; show databases&lt;br /&gt;
 &amp;gt; use aula206&lt;br /&gt;
 &amp;gt; insert Temperatura value=24.5&lt;br /&gt;
 &amp;gt; insert Pressio value=1000.0&lt;br /&gt;
 &amp;gt; insert Humitat value=50.0&lt;br /&gt;
 &amp;gt; CREATE USER &amp;quot;iot&amp;quot; WITH PASSWORD 'iot'&lt;br /&gt;
 &amp;gt; GRANT ALL ON &amp;quot;aula206&amp;quot; TO &amp;quot;iot&amp;quot;&lt;br /&gt;
 &amp;gt; CREATE USER &amp;quot;convidat&amp;quot; WITH PASSWORD 'benvingut'&lt;br /&gt;
 &amp;gt; GRANT READ ON &amp;quot;aula206&amp;quot; TO &amp;quot;convidat&amp;quot;&lt;br /&gt;
 &amp;gt; show users&lt;br /&gt;
 &amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Cambio de configuración para acceder siempre con usuario y contraseña:&lt;br /&gt;
  sudo geany /etc/influxdb/influxdb.conf&lt;br /&gt;
&lt;br /&gt;
en la líniea 259 quitar el símbolo '''#''' y cambiar '''false''' a '''true'''&lt;br /&gt;
  auth-enabled = true&lt;br /&gt;
&lt;br /&gt;
y una vez hechos los cambios, reiniciamos el servicio:&lt;br /&gt;
 sudo systemctl stop influxdb&lt;br /&gt;
 sudo systemctl start influxdb&lt;br /&gt;
&lt;br /&gt;
Acceso mediante usuario y contraseña:&lt;br /&gt;
 influx -username iot -password iot&lt;br /&gt;
 &amp;gt; show databases&lt;br /&gt;
 &amp;gt; use aula206&lt;br /&gt;
 &amp;gt; select * from Temperatura&lt;br /&gt;
 &amp;gt; select * from Humitat&lt;br /&gt;
 &amp;gt; insert Pressio value=1000.20&lt;br /&gt;
 &amp;gt; select * from Pressio&lt;br /&gt;
 name: Pressio&lt;br /&gt;
 time                value&lt;br /&gt;
 ----                -----&lt;br /&gt;
 1556103462149266855 1000&lt;br /&gt;
 1556104229514255364 1000.2&lt;br /&gt;
 &amp;gt; delete from Pressio where time=1556104229514255364&lt;br /&gt;
 &amp;gt; select * from Pressio&lt;br /&gt;
 name: Pressio&lt;br /&gt;
 time                value&lt;br /&gt;
 ----                -----&lt;br /&gt;
 1556103462149266855 1000&lt;br /&gt;
 &amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
 influx -username convidat -password benvingut&lt;br /&gt;
 &amp;gt; use aula206&lt;br /&gt;
 &amp;gt; select * from Pressio &lt;br /&gt;
 &amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
===== Nodos InfluxDB en NodeRed =====&lt;br /&gt;
[https://flows.nodered.org/node/node-red-contrib-influxdb Instalación de los nodos InfluxDB para NodeRED] (en la metadistribución basada en Debian 9 ya viene instalado)&lt;br /&gt;
&lt;br /&gt;
Iniciar a un valor el campo '''nAleat''' de la base de datos local '''aula206''' creada anteriormente con InfluxDB&lt;br /&gt;
&lt;br /&gt;
 influx -username iot -password iot&lt;br /&gt;
 &amp;gt; use aula206&lt;br /&gt;
 &amp;gt; insert nAleat value=20.0&lt;br /&gt;
 &amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random01_Influxdb_out_node_Flow.png Visualización del flujo NodeRed con un nodo InfluxDB]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random01_Influxdb_out_node_Cfg01.png Configuración del nodo InfluxDB de salida]&lt;br /&gt;
&lt;br /&gt;
[https://binefa.cat/training/upcSchool/20190427/nodeRed/random01_Influxdb_out_node_Cfg00.png Configuración del servidor InfluxDB para ser usado por el nodo de salida]&lt;br /&gt;
&lt;br /&gt;
Una vez puesto en marcha (botón '''ON''' apretado) los datos se almacenan a InfluxDB. Para parar la alimentación de la base de datos apretar el botón '''OFF'''. Paralelamente se pueden ver los datos introducidos al campo '''nAleat''' en tiempo real.&lt;br /&gt;
 influx -username iot -password iot&lt;br /&gt;
 &amp;gt; use aula206&lt;br /&gt;
 &amp;gt; select * from nAleat&lt;br /&gt;
 name: nAleat&lt;br /&gt;
 time                value&lt;br /&gt;
 ----                -----&lt;br /&gt;
 1556191773053726623 20&lt;br /&gt;
 1556192308275283453 24.5&lt;br /&gt;
 1556192309269114244 15.5&lt;br /&gt;
 1556192310275315326 19.2&lt;br /&gt;
 1556192311278913648 15.8&lt;br /&gt;
 1556192312279631340 20.2&lt;br /&gt;
 1556192313281601350 18.2&lt;br /&gt;
&lt;br /&gt;
==== Visualización en Grafana ====&lt;br /&gt;
[http://docs.grafana.org/installation/debian/ Instalación de Grafana en Debian] (en la metadistribución basada en Debian 9 ya viene instalado. Por defecto, al acceder a Grafana, el usuario '''admin''' tiene la contraseña '''admin''' y la primera vez que se accede pide cambiarla. La contraseña de '''admin''' en vuestra máquina virtual es '''iot1234''').&lt;br /&gt;
&lt;br /&gt;
Para saber si Grafana está activo:&lt;br /&gt;
 systemctl status grafana-server&lt;br /&gt;
&lt;br /&gt;
En caso de que no esté activo:&lt;br /&gt;
 sudo systemctl start grafana-server&lt;br /&gt;
&lt;br /&gt;
Para hacer que Grafana se inicie al arrancar la máquina virtual:&lt;br /&gt;
 sudo systemctl daemon-reload&lt;br /&gt;
 sudo systemctl enable grafana-server.service&lt;br /&gt;
&lt;br /&gt;
Para acceder al Grafana, introducir en un navegador de la máquina ''host'' la IP de la máquina virtual acabado por ''':3000'''. Por ejemplo ''http://174.105.0.59:3000''&lt;br /&gt;
&lt;br /&gt;
Al acceder hay un icono '''Add data source'''. Después de clicarlo seleccionar '''InfluxDB'''. Como '''URL''' escribir '''http://localhost:8086'''. Como '''database''' escribir '''aula206'''. Como '''User''' escribir '''iot''' y como '''Password''' escribir '''iot'''.&lt;br /&gt;
&lt;br /&gt;
Apretar el botón '''Save &amp;amp; Test'''. Si todo ha ido bien aparecerá '''Data source is working'''.&lt;br /&gt;
&lt;br /&gt;
El siguiente paso es añadir un panel de control. En ''Home'' hay el icono '''New dashboard'''. En '''New Panel''' seleccionar la opción '''Choose Visualization'''. Seleccionar '''Graph'''.&lt;br /&gt;
&lt;br /&gt;
Opciones:&lt;br /&gt;
&lt;br /&gt;
Visualization / Stacking &amp;amp; Null value -&amp;gt; Null value '''connected'''&lt;br /&gt;
&lt;br /&gt;
Visualization / Axes / Left Y / Unit -&amp;gt; '''Celsius (ºC)'''&lt;br /&gt;
&lt;br /&gt;
Visualization / legend / Values -&amp;gt; Seleccionar '''Min''', '''Max''', '''Avg''' y '''Current'''&lt;br /&gt;
&lt;br /&gt;
Queries / select measurement -&amp;gt; '''nAleat'''&lt;br /&gt;
&lt;br /&gt;
General / Title -&amp;gt; '''Números aleatorios'''&lt;br /&gt;
&lt;br /&gt;
General / Transparent -&amp;gt; Seleccionado&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Al finalizar seleccionar el icono '''Save dashboard'''&lt;br /&gt;
&lt;br /&gt;
===== Ejercicios de supervisión de datos usando NodeRed, InfluxDB y Grafana =====&lt;br /&gt;
- Visualizar en Grafana el valor de la LDR de un módulo witty ESP8266. Publicación de datos cada dos segundos mediante MQTT, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la LDR con un refresco cada 5 segundos.&lt;br /&gt;
&lt;br /&gt;
- Visualizar en Grafana el valor de temperatura, humedad y presión atmosférica de un sensor BME280 conectado por el bus I2C a un ESP32. Publicación de datos cada 10 segundos mediante MQTTS, gestión en NodeRed capturándolos y enviándolos a una base de datos temporal InfluxDB. Visualizar en Grafana (gráfica y visualizador de tipo reloj) los valores de la temperatura, humedad y presión atmosférica con un refresco cada 30 segundos.&lt;br /&gt;
&lt;br /&gt;
=== Pantalla táctil Nextion ===&lt;/div&gt;</summary>
		<author><name>Jordi</name></author>	</entry>

	</feed>