1 00:00:01,649 --> 00:00:05,049 como siempre, pero de verdad voy a intentar 2 00:00:05,049 --> 00:00:06,809 ir más despacio para ver si 3 00:00:06,809 --> 00:00:08,869 al menos lo que me dé tiempo a contar 4 00:00:08,869 --> 00:00:09,449 pues queda 5 00:00:09,449 --> 00:00:12,650 sirve para algo, y aquí como queda grabado 6 00:00:12,650 --> 00:00:14,130 pues mejor, mejor que en clase 7 00:00:14,130 --> 00:00:17,070 intentaré no acelerarme, pero si me acelero 8 00:00:17,070 --> 00:00:18,769 me echáis el rato 9 00:00:18,769 --> 00:00:20,609 vale, entonces 10 00:00:20,609 --> 00:00:22,890 primera cosa, os voy a compartir 11 00:00:22,890 --> 00:00:25,030 hoy la clase, voy a estar trabajando 12 00:00:25,030 --> 00:00:25,789 con la webcam 13 00:00:25,789 --> 00:00:28,289 y con una segunda webcam 14 00:00:28,289 --> 00:00:30,829 en la que os voy a enseñar lo que estoy haciendo 15 00:00:30,829 --> 00:00:33,829 voy a compartir la segunda webcam 16 00:00:33,829 --> 00:00:34,990 ahora, a ver 17 00:00:34,990 --> 00:00:37,409 cámara 18 00:00:37,409 --> 00:00:45,460 si lo he hecho antes y ahora no soy capaz 19 00:00:45,460 --> 00:00:47,829 de hacerlo 20 00:00:47,829 --> 00:00:52,770 hemos visto popular por un par de sitios 21 00:00:52,770 --> 00:00:54,289 por un par de cámaras me parece 22 00:00:54,289 --> 00:00:56,750 si, y ahora como lo he hecho 23 00:00:56,750 --> 00:00:57,909 que ahora no soy capaz de hacerlo 24 00:00:57,909 --> 00:01:00,929 antes la única diferencia es que estabas 25 00:01:00,929 --> 00:01:01,670 compartiendo 26 00:01:01,670 --> 00:01:03,850 tu escritorio 27 00:01:03,850 --> 00:01:06,549 ahora ya está, gracias Jesús 28 00:01:06,549 --> 00:01:10,769 ahora deberíais empezar a ver 29 00:01:10,769 --> 00:01:13,530 una zona de mi escritorio 30 00:01:13,530 --> 00:01:15,189 y mi mano por ahí moviéndose 31 00:01:15,189 --> 00:01:17,290 voy a intentar 32 00:01:17,290 --> 00:01:18,510 colocarlo un poco mejor 33 00:01:18,510 --> 00:01:20,250 a ver si puedo 34 00:01:20,250 --> 00:01:22,790 va, entonces 35 00:01:22,790 --> 00:01:25,030 esto ocupa mucho 36 00:01:25,030 --> 00:01:25,750 voy a ponerlo 37 00:01:25,750 --> 00:01:30,950 vale, esto que veis aquí 38 00:01:30,950 --> 00:01:33,069 es lo que vosotros estabais esperando 39 00:01:33,069 --> 00:01:34,750 el paquete de las placas 40 00:01:34,750 --> 00:01:36,810 que acaba de llegar, entonces lo tengo aquí 41 00:01:36,810 --> 00:01:38,510 y lo voy a abrir delante de vosotros lo primero 42 00:01:38,510 --> 00:01:41,469 para que os hagáis una idea de cómo llega esto, ¿vale? 43 00:01:41,510 --> 00:01:43,569 Como veis, no tiene más identificación 44 00:01:43,569 --> 00:01:45,689 y directamente lo abro. 45 00:01:49,760 --> 00:01:50,140 Este lado. 46 00:01:50,420 --> 00:01:51,920 Voy a intentar poner la cámara más alta 47 00:01:51,920 --> 00:01:53,000 para que lo veáis todo. 48 00:01:55,439 --> 00:01:56,000 Así va. 49 00:01:57,780 --> 00:01:58,019 Ahí. 50 00:01:58,359 --> 00:01:59,219 Aquí está la luz. 51 00:02:00,420 --> 00:02:01,340 Está estorbando. 52 00:02:03,879 --> 00:02:04,680 Ahora hay más o menos. 53 00:02:05,819 --> 00:02:06,219 Vale. 54 00:02:25,020 --> 00:02:27,340 Pues como veis, viene en su caja. 55 00:02:27,599 --> 00:02:28,960 Como veis, la caja no es muy grande. 56 00:02:28,960 --> 00:02:33,219 Esto es gracias a que elegí un tamaño de stencil reducido. 57 00:02:33,319 --> 00:02:37,599 Recordad lo que os dije, si no tenéis cuidado y no ponéis que el tamaño de stencil, 58 00:02:37,719 --> 00:02:40,979 o que le hice un tamaño reducido, os van a mandar el stencil estándar, 59 00:02:41,060 --> 00:02:43,280 que es más grande que un A4, ¿vale? Es muy grande. 60 00:02:43,719 --> 00:02:47,020 Entonces los costes de envío van a ser bastante altos. 61 00:02:52,120 --> 00:02:55,039 Pues ahí veis cómo viene esto presentado. 62 00:02:55,960 --> 00:02:58,479 Por un lado tenemos ya aquí un paquete de placas. 63 00:02:58,699 --> 00:02:59,979 No sé si se verá algo. 64 00:03:00,280 --> 00:03:02,879 Esta es justo la placa que diseñé con vosotros. 65 00:03:03,479 --> 00:03:05,879 luego además pedí 66 00:03:05,879 --> 00:03:07,919 porque pensé que os interesaría alguno 67 00:03:07,919 --> 00:03:09,919 que lo vamos a ver hoy, la placa de MFC 68 00:03:09,919 --> 00:03:10,759 que es esta de aquí 69 00:03:10,759 --> 00:03:14,099 y luego también pedí las placas de los 70 00:03:14,099 --> 00:03:15,639 INCIEN, que son estas otras 71 00:03:15,639 --> 00:03:18,039 y en algún lugar tiene que estar 72 00:03:18,039 --> 00:03:19,699 el stencil, que es aquí abajo 73 00:03:19,699 --> 00:03:24,240 ¿veis? no sé si se apreciará 74 00:03:24,240 --> 00:03:25,860 ese es el stencil 75 00:03:25,860 --> 00:03:27,960 de acero, esto es muy fino 76 00:03:27,960 --> 00:03:30,340 voy a abrir para que lo veáis 77 00:03:30,340 --> 00:03:36,360 y con esto es con lo que 78 00:03:36,360 --> 00:03:38,300 vamos a aplicar el estaño en pasta 79 00:03:38,300 --> 00:03:53,620 Esto es lo que os digo, que si no tienes la precaución de pedirlo de un tamaño reducido, te mandan el grande que es bastante más costoso. No más costoso por el stencil, el stencil te cuesta lo mismo, es más costoso por los gastos de envío. 80 00:03:53,620 --> 00:04:19,879 Y voy a abrir la placa. En este caso no lo trae, pero es frecuente que vengan con papel. Bueno, sí, en este caso han metido una bolsa de silica gel, pero otras veces lo mandan con papel que atrapa la humedad entre placa y placa. 81 00:04:19,879 --> 00:04:21,639 porque si no hay el peligro de que se oxiden 82 00:04:21,639 --> 00:04:23,699 durante el transporte las placas 83 00:04:23,699 --> 00:04:25,839 entonces bueno, voy a sacar una 84 00:04:25,839 --> 00:04:26,600 para que la veáis 85 00:04:26,600 --> 00:04:33,110 no sé si se verá ahí 86 00:04:33,110 --> 00:04:35,050 que pusimos por un lado lo de ISMIE 87 00:04:35,050 --> 00:04:36,430 esta es la placa 88 00:04:36,430 --> 00:04:38,889 con el RAP3172 89 00:04:38,889 --> 00:04:40,529 aquí tenemos el conector para 90 00:04:40,529 --> 00:04:43,089 la SD-Card, el acelerómetro 91 00:04:43,089 --> 00:04:45,209 sensor de puerta abierta 92 00:04:45,209 --> 00:04:47,589 y por detrás, no sé si se alcanzarán 93 00:04:47,589 --> 00:04:49,069 a ver, pues deberían estar vuestros nombres 94 00:04:49,069 --> 00:04:51,470 espero no haber metido la pata 95 00:04:51,470 --> 00:04:52,970 en ninguno, deberían estar por ahí 96 00:04:52,970 --> 00:04:55,610 entonces esta será la placa que soldemos 97 00:04:55,610 --> 00:04:57,889 en esa sesión que ya veremos 98 00:04:57,889 --> 00:04:58,810 a ver cuando organizamos 99 00:04:58,810 --> 00:05:00,810 bueno, pues esto por un lado 100 00:05:00,810 --> 00:05:05,420 listo, como veis ha tardado 101 00:05:05,420 --> 00:05:07,339 más o menos lo que esperábamos 102 00:05:07,339 --> 00:05:09,620 creo que lo mandábamos a fabricar 103 00:05:09,620 --> 00:05:11,540 el martes de la semana 104 00:05:11,540 --> 00:05:13,339 pasada, pues ha tardado 105 00:05:13,339 --> 00:05:15,000 nueve días 106 00:05:15,000 --> 00:05:16,199 más o menos en llegar 107 00:05:16,199 --> 00:05:19,120 en fabricarse y llegar 108 00:05:19,120 --> 00:05:20,819 y eso que no lo pedí 109 00:05:20,819 --> 00:05:22,779 por transporte urgente 110 00:05:22,779 --> 00:05:24,319 si lo hubiéramos pedido por transporte urgente 111 00:05:24,319 --> 00:05:26,160 igual hubiera llegado más tarde 112 00:05:26,160 --> 00:05:28,540 porque lo hubieran parado en la aduana 113 00:05:28,540 --> 00:05:30,379 y hubiera 114 00:05:30,379 --> 00:05:32,259 tardado más, esto ya 115 00:05:32,259 --> 00:05:33,740 he pagado los impuestos yo en origen 116 00:05:33,740 --> 00:05:36,199 con lo cual en principio ya no tienen que 117 00:05:36,199 --> 00:05:38,439 pararlo en aduana y por eso al final 118 00:05:38,439 --> 00:05:40,420 yo creo que se acelera pidiéndolo 119 00:05:40,420 --> 00:05:42,379 así a pedirlo como transporte 120 00:05:42,379 --> 00:05:44,240 rápido, vale y ahora ya vuelvo a mi 121 00:05:44,240 --> 00:05:45,199 cámara normal 122 00:05:45,199 --> 00:05:47,480 y a ver 123 00:05:47,480 --> 00:05:49,740 a volver a la cámara 124 00:05:49,740 --> 00:05:56,819 vale 125 00:05:56,819 --> 00:06:01,720 ahí está 126 00:06:01,720 --> 00:06:18,029 Ahí, listo. Bien, y ahora, creo que estoy compartiendo mi pantalla, o no, no la estoy compartiendo, entonces la voy a compartir. Comparto la pantalla completa. Vale. 127 00:06:18,029 --> 00:06:34,230 Lo primero, os he puesto en el aula virtual todos los temas, ¿vale? El de Matter, Bluetooth, NFC, NB-IoT y me falta subir el diseño de las placas. Lo subiré lo antes que pueda, ¿vale? 128 00:06:34,230 --> 00:06:37,209 entonces hoy lo primero que quería hacer 129 00:06:37,209 --> 00:06:38,790 era terminar con la parte de Matter 130 00:06:38,790 --> 00:06:41,329 en Matter ahí en clase estuvimos viendo 131 00:06:41,329 --> 00:06:43,430 la parte de Fred 132 00:06:43,430 --> 00:06:45,410 y ahora me gustaría mostraros 133 00:06:45,410 --> 00:06:46,930 la parte de Wifi 134 00:06:46,930 --> 00:06:49,569 os recuerdo, voy a poner la presentación 135 00:06:49,569 --> 00:06:52,129 aquí 136 00:06:52,129 --> 00:06:55,569 os recuerdo breve introducción 137 00:06:55,569 --> 00:06:56,569 a Matter 138 00:06:56,569 --> 00:06:59,810 Matter ya os comenté que es un protocolo 139 00:06:59,810 --> 00:07:01,470 de domótica 140 00:07:01,470 --> 00:07:03,889 y nosotros hicimos aplicación práctica 141 00:07:03,889 --> 00:07:07,509 en clase con el FR32MGS24 142 00:07:07,509 --> 00:07:10,689 que este es un microcontrolador de Silicon Labs 143 00:07:10,689 --> 00:07:13,189 está muy bien porque de momento Silicon Labs 144 00:07:13,189 --> 00:07:16,449 es la única que tiene librerías 145 00:07:16,449 --> 00:07:19,009 de Arduino para Matter 146 00:07:19,009 --> 00:07:22,430 sobre Thread, sobre este protocolo mallado 147 00:07:22,430 --> 00:07:25,209 que utilizaba la banda de 2.4 GHz 148 00:07:25,209 --> 00:07:27,730 entonces recordad que os comenté que Matter 149 00:07:27,730 --> 00:07:30,850 puede utilizar dos protocolos de transporte 150 00:07:30,850 --> 00:07:35,790 dos redes de transporte, perdón, la red Thread o bien la red Wi-Fi. 151 00:07:36,329 --> 00:07:39,850 Entonces, lo que voy a hacer ahora es un ejemplo práctico con el 32C6 152 00:07:40,370 --> 00:07:43,949 para que veáis la parte de Wi-Fi, en clase ya vimos la parte de Thread. 153 00:07:44,629 --> 00:07:47,689 Entonces, bueno, no voy a volver a entrar en todo lo que estuvimos viendo, 154 00:07:48,050 --> 00:07:52,990 muy por encima, recordad que, a ver, que cerremos esto, 155 00:07:53,110 --> 00:07:56,310 porque si no nos van a estar molestando todo el rato, aquí. 156 00:07:56,310 --> 00:07:59,750 bien, recordad que es un protocolo 157 00:07:59,750 --> 00:08:00,870 de aplicación 158 00:08:00,870 --> 00:08:03,529 es solamente la capa de aplicación 159 00:08:03,529 --> 00:08:05,470 no es un stack completo 160 00:08:05,470 --> 00:08:07,509 y gracias a eso puede funcionar 161 00:08:07,509 --> 00:08:09,370 sobre otros tipos de redes, concretamente 162 00:08:09,370 --> 00:08:11,529 sobre la red Thread y sobre la red Wifi 163 00:08:11,529 --> 00:08:13,230 adicionalmente también funciona 164 00:08:13,230 --> 00:08:14,370 sobre la red Ethernet 165 00:08:14,370 --> 00:08:16,870 pero sobre la red Bluetooth 166 00:08:16,870 --> 00:08:18,529 solamente funciona de momento 167 00:08:18,529 --> 00:08:20,689 para el comisionamiento 168 00:08:20,689 --> 00:08:22,410 o el comisionado de dispositivos 169 00:08:22,410 --> 00:08:24,569 no sirve para transmitir datos 170 00:08:24,569 --> 00:08:42,429 Sino solamente para dar de alta los dispositivos en la red. Como os comenté, lo apoyan los principales fabricantes. Por así decirlo, es un sucesor de Zigbee y está apoyado por los principales fabricantes. Y muy importante, funciona sobre IPv6, la versión 6 del protocolo IP. 171 00:08:42,429 --> 00:08:44,870 esto quiere decir que si lo usáis en casa 172 00:08:44,870 --> 00:08:46,490 o en una instalación, la que sea 173 00:08:46,490 --> 00:08:48,529 tenéis que aseguraros de que el router 174 00:08:48,529 --> 00:08:50,470 que estéis utilizando, el router wifi 175 00:08:50,470 --> 00:08:52,570 tenga activado IPv6 176 00:08:52,570 --> 00:08:54,370 eso es una opción que la mayoría de los routers 177 00:08:54,370 --> 00:08:56,330 es marcar una casilla y listo 178 00:08:56,330 --> 00:08:58,190 de hecho la mayoría de los routers viene ya activada 179 00:08:58,190 --> 00:08:59,190 así es que no hay que hacer nada 180 00:08:59,190 --> 00:09:01,730 permite conectar un montón de dispositivos 181 00:09:01,730 --> 00:09:03,990 16.000 y pico dispositivos 182 00:09:03,990 --> 00:09:06,090 por la red 3 y hasta 183 00:09:06,090 --> 00:09:07,990 65.000 dispositivos en total 184 00:09:07,990 --> 00:09:10,710 teniendo en cuenta la red wifi y la red 3 185 00:09:10,710 --> 00:09:12,070 y el problema que tiene 186 00:09:12,070 --> 00:09:13,110 es que 187 00:09:13,110 --> 00:09:16,230 pues eso, que está todavía un poco inmaduro 188 00:09:16,230 --> 00:09:17,429 entonces van apareciendo 189 00:09:17,429 --> 00:09:19,789 nuevas versiones cada poco tiempo 190 00:09:19,789 --> 00:09:22,570 la última es de noviembre del año pasado 191 00:09:22,570 --> 00:09:24,490 no tiene ni 5 meses 192 00:09:24,490 --> 00:09:26,250 de antigüedad 193 00:09:26,250 --> 00:09:28,389 os estuve hablando de la parte de CRED 194 00:09:28,389 --> 00:09:30,610 que esto es importante, es una red mallada 195 00:09:30,610 --> 00:09:32,309 pero que funciona 196 00:09:32,309 --> 00:09:34,549 sobre la banda de 2.4 GHz 197 00:09:34,549 --> 00:09:36,409 así que no tiene un alcance enorme 198 00:09:36,409 --> 00:09:38,330 tiene corto alcance 199 00:09:38,330 --> 00:09:40,230 del orden de unos 30 metros en interiores 200 00:09:40,230 --> 00:09:41,649 y también 201 00:09:41,649 --> 00:09:43,590 una baja tasa de transferencia 202 00:09:43,590 --> 00:09:46,350 si tiene baja tasa de transferencia 203 00:09:46,350 --> 00:09:47,450 y bajo alcance 204 00:09:47,450 --> 00:09:49,409 ¿qué es lo que tendrá de bueno? 205 00:09:49,629 --> 00:09:51,129 pues lo que tendrá de bueno es el consumo 206 00:09:51,129 --> 00:09:52,230 el consumo es muy bajo 207 00:09:52,230 --> 00:09:53,809 y gracias a eso 208 00:09:53,809 --> 00:09:55,850 la mayoría de los dispositivos Thread 209 00:09:55,850 --> 00:09:57,289 pueden funcionar con baterías 210 00:09:57,289 --> 00:09:59,789 no obstante hay dos tipos de dispositivos Thread 211 00:09:59,789 --> 00:10:01,289 los dispositivos mínimo 212 00:10:01,289 --> 00:10:02,509 que son los que os digo 213 00:10:02,509 --> 00:10:04,210 que funcionan típicamente con baterías 214 00:10:04,210 --> 00:10:06,590 y bien los dispositivos completos 215 00:10:06,590 --> 00:10:07,090 los full 216 00:10:07,090 --> 00:10:08,669 que estos son los que funcionan 217 00:10:08,669 --> 00:10:09,509 como repetidores 218 00:10:09,509 --> 00:10:10,269 los routers 219 00:10:10,269 --> 00:10:12,769 eso es lo que hacen, es que tienen cada uno de ellos 220 00:10:12,769 --> 00:10:14,429 una tabla de direcciones 221 00:10:14,429 --> 00:10:16,490 y cuando escuchan un paquete 222 00:10:16,490 --> 00:10:18,669 saben si lo tienen que reemitir 223 00:10:18,669 --> 00:10:20,610 o no lo tienen que reemitir porque lo va a reemitir 224 00:10:20,610 --> 00:10:21,590 otro router distinto 225 00:10:21,590 --> 00:10:24,669 para conseguir de esta forma salto a salto 226 00:10:24,669 --> 00:10:26,429 llegar hasta el dispositivo final 227 00:10:26,429 --> 00:10:28,330 bueno, estuvimos viendo aquí un poco 228 00:10:28,330 --> 00:10:30,429 como era la arquitectura, como era el modelo 229 00:10:30,429 --> 00:10:31,889 de datos, esto es importante 230 00:10:31,889 --> 00:10:33,409 el modelo de datos 231 00:10:33,409 --> 00:10:36,409 es quizás el punto más fuerte que tiene 232 00:10:36,409 --> 00:10:37,909 Matter, y es que el 233 00:10:37,909 --> 00:10:40,110 estándar declara, define 234 00:10:40,110 --> 00:10:42,690 como tiene que ser cada tipo de dispositivo 235 00:10:42,690 --> 00:10:44,230 como tiene que ser una lavadora mater 236 00:10:44,230 --> 00:10:46,269 como tiene que ser un cerrojo mater 237 00:10:46,269 --> 00:10:48,049 como tiene que ser un termostato mater 238 00:10:48,049 --> 00:10:50,909 eso está perfectamente definido en el estándar 239 00:10:50,909 --> 00:10:52,049 ¿y cómo lo han hecho? 240 00:10:52,149 --> 00:10:54,850 pues lo han hecho definiendo en cada tipo de dispositivo 241 00:10:54,850 --> 00:10:56,690 por ejemplo, el ejemplo que tenemos aquí 242 00:10:56,690 --> 00:10:58,190 de un cerrojo de puerta 243 00:10:58,190 --> 00:11:00,389 va a tener un nodo 244 00:11:00,389 --> 00:11:02,990 entonces, ese nodo 245 00:11:02,990 --> 00:11:05,149 va a tener una sola dirección de red 246 00:11:05,149 --> 00:11:07,070 en la red thread 247 00:11:07,070 --> 00:11:08,750 o en la red wifi 248 00:11:08,750 --> 00:11:09,389 en la que sea 249 00:11:09,389 --> 00:11:28,190 Y dentro de ese nodo podemos tener uno o más Endpoints. El Endpoint 0, ese es obligatorio. Ese es el Endpoint que contiene la información referente a la propia red. Y en el Endpoint 1 o en los siguientes es en los que se almacena un conjunto de características de ese dispositivo. 250 00:11:28,190 --> 00:11:32,090 estas características se definen como clusters 251 00:11:32,090 --> 00:11:33,909 o se llaman clusters 252 00:11:33,909 --> 00:11:36,169 entonces lo que tenemos aquí es que por ejemplo 253 00:11:36,169 --> 00:11:40,330 tenemos un cluster que tiene una serie de atributos 254 00:11:40,330 --> 00:11:42,850 ¿qué atributos? pues el tipo de cerradura por ejemplo 255 00:11:42,850 --> 00:11:45,350 el estado en el que se encuentra, si está abierta o cerrada 256 00:11:45,350 --> 00:11:48,690 una serie de comandos, pues por ejemplo abrir la cerradura 257 00:11:48,690 --> 00:11:51,909 cerrar la cerradura, cambiar la contraseña de la cerradura 258 00:11:51,909 --> 00:11:55,929 y también una serie de eventos, pues por ejemplo lanzar una alerta 259 00:11:55,929 --> 00:11:58,009 una alarma si se abre la puerta 260 00:11:58,009 --> 00:12:22,370 Entonces el concepto es este, modelo de datos que está compuesto por tipos de dispositivos. Cada tipo de dispositivos tiene un nodo que es una funcionalidad completa y que tiene una dirección única de red. Cada uno de estos nodos puede tener uno o más endpoints. Típicamente tendrá más de uno, el cero que es el obligatorio y luego endpoints para cada funcionalidad. 261 00:12:22,370 --> 00:12:46,629 Esas funcionalidades se definen mediante clusters y en los clusters lo que tenemos son los atributos, los comandos y los eventos, ¿vale? Bien, entonces aquí os puse un ejemplo para que vierais, por ejemplo, cómo era un cargador de vehículo eléctrico, todo esto está en la especificación de Matter, que es gratuita, ¿vale? Se puede acceder a ella gratuitamente, pero no es de acceso libre, hay que registrarse para que te la envíen. 262 00:12:46,629 --> 00:12:51,269 De todas formas, si buscáis un poco por Google, seguro que la encontráis también. 263 00:12:51,769 --> 00:12:53,450 ¿Cómo es la topología de una red Matter? 264 00:12:53,570 --> 00:12:56,710 Bueno, pues lo principal en la red Matter es el controlador. 265 00:12:57,149 --> 00:13:02,269 El controlador va a ser un dispositivo que típicamente va a ser tu teléfono móvil o un altavoz inteligente 266 00:13:02,269 --> 00:13:05,669 en el que tú vas a dar de alta a los demás nodos. 267 00:13:06,309 --> 00:13:10,929 Esos nodos pueden ser nodos de la red Wi-Fi, con lo cual no vas a tener ningún problema 268 00:13:10,929 --> 00:13:15,269 porque esos nodos directamente se van a conectar al router Wi-Fi de tu domicilio 269 00:13:15,269 --> 00:13:19,330 o bien pueden ser nodos Thread, estos que veis aquí a la derecha. 270 00:13:19,889 --> 00:13:23,309 Estos nodos Thread no pueden conectarse directamente al router Wi-Fi 271 00:13:23,309 --> 00:13:27,129 porque el router Wi-Fi no tiene modem de red Thread. 272 00:13:27,629 --> 00:13:32,929 Entonces lo que vas a necesitar es un dispositivo que actúe como router de borde Thread. 273 00:13:32,929 --> 00:13:35,730 Es decir, un dispositivo que tenga dos interfaces. 274 00:13:36,269 --> 00:13:39,350 Una interfaz Wi-Fi o también podría ser Ethernet, ¿vale? 275 00:13:39,730 --> 00:13:44,669 Y por otro lado, una interfaz Thread, que es la que van a aprovechar todos estos dispositivos 276 00:13:44,669 --> 00:13:47,509 para conformar una única red Matter 277 00:13:47,509 --> 00:13:49,570 en la que algunos de sus dispositivos 278 00:13:49,570 --> 00:13:50,690 se conectan por Wi-Fi 279 00:13:50,690 --> 00:13:52,690 y otros se conectan por Thread. 280 00:13:53,190 --> 00:13:55,470 Estuve comentando que este router de borde 281 00:13:55,470 --> 00:13:57,809 lo puedes comprar directamente, 282 00:13:57,950 --> 00:13:59,070 puede ser un Amazon Echo 283 00:13:59,070 --> 00:14:00,309 como el que llevé yo a clase, 284 00:14:00,990 --> 00:14:02,850 o bien te lo puedes montar tú mismo. 285 00:14:02,970 --> 00:14:03,649 Gracias a Google, 286 00:14:03,789 --> 00:14:07,509 que tiene una versión gratuita de Thread 287 00:14:07,509 --> 00:14:09,090 que se llama OpenThread 288 00:14:09,090 --> 00:14:10,889 y dentro de esa versión 289 00:14:10,889 --> 00:14:12,090 tienen el border router 290 00:14:12,090 --> 00:14:12,850 que te lo puedes instalar 291 00:14:12,850 --> 00:14:14,149 en una Raspberry Pi, por ejemplo, 292 00:14:14,669 --> 00:14:20,049 O en un par de SP32, también te lo puedes instalar si te gusta más el camino do-it-yourself, ¿vale? 293 00:14:21,210 --> 00:14:22,990 Conceptos interesantes que vimos en Matter. 294 00:14:23,409 --> 00:14:25,070 Bueno, pues el primero, ¿qué es la fábrica? 295 00:14:25,309 --> 00:14:31,549 La fábrica es un conjunto de nodos, pero lo interesante es que un mismo nodo puede formar parte de dos fábricas distintas, ¿vale? 296 00:14:31,549 --> 00:14:36,669 Es decir, un mismo dispositivo yo lo puedo comisionar en dos controladores diferentes. 297 00:14:37,230 --> 00:14:42,070 Y de esta forma, ese dispositivo lo voy a poder controlar con dos controladores distintos. 298 00:14:42,649 --> 00:14:45,950 Luego era el controlador, que era esto que os decía, típicamente el teléfono móvil, 299 00:14:46,190 --> 00:14:48,870 desde el que vamos a añadir los dispositivos y los vamos a configurar. 300 00:14:49,529 --> 00:14:55,129 El binding, que es la funcionalidad más deseada, pero que apenas se puede utilizar hoy por hoy, 301 00:14:55,129 --> 00:15:00,009 el binding era que yo directamente vinculo dos dispositivos, por ejemplo, 302 00:15:00,149 --> 00:15:05,929 yo vinculo este termostato que tengo aquí a las válvulas de mis radiadores 303 00:15:05,929 --> 00:15:10,190 y los vinculo directamente de tal forma que se pueden comunicar entre sí, 304 00:15:10,190 --> 00:15:12,389 incluso si el controlador está caído 305 00:15:12,389 --> 00:15:14,250 o sea, incluso si no hay controlador 306 00:15:14,250 --> 00:15:16,769 pero eso de momento, pues no es posible 307 00:15:16,769 --> 00:15:19,009 o es posible solamente con dispositivos 308 00:15:19,009 --> 00:15:20,590 del mismo fabricante 309 00:15:20,590 --> 00:15:22,950 y eso pues claro, es precisamente lo contrario 310 00:15:22,950 --> 00:15:24,830 de lo que pretende Matter 311 00:15:24,830 --> 00:15:26,970 que es la máxima compatibilidad posible 312 00:15:26,970 --> 00:15:27,870 luego 313 00:15:27,870 --> 00:15:30,830 otro concepto interesante es el de Bridge 314 00:15:30,830 --> 00:15:32,529 Bridge que es, pues bueno, en esta 315 00:15:32,529 --> 00:15:34,149 diapositiva que os enseñaba antes 316 00:15:34,149 --> 00:15:36,350 tenemos la red Matter, que es la de abajo 317 00:15:36,350 --> 00:15:38,289 la que está compuesta por dispositivos Wi-Fi 318 00:15:38,289 --> 00:15:39,809 y dispositivos Thread 319 00:15:39,809 --> 00:15:42,110 pero podría darse el caso de que tuviéramos 320 00:15:42,110 --> 00:15:44,009 como veis aquí arriba a la derecha, otro tipo 321 00:15:44,009 --> 00:15:45,909 de dispositivos que usan otros 322 00:15:45,909 --> 00:15:47,730 protocolos, pues ZipBee 323 00:15:47,730 --> 00:15:49,889 Z-Wave, LoRaWAN 324 00:15:49,889 --> 00:15:51,070 lo que sea, Bluetooth 325 00:15:51,070 --> 00:15:54,029 esos dispositivos se pueden unir 326 00:15:54,029 --> 00:15:55,889 a la red Matter también a través 327 00:15:55,889 --> 00:15:57,610 de un bridge, un puente 328 00:15:57,610 --> 00:15:59,970 entonces, ¿ese puente 329 00:15:59,970 --> 00:16:01,830 normalmente dónde está? pues puede estar 330 00:16:01,830 --> 00:16:03,870 en el propio controlador, si tenéis 331 00:16:03,870 --> 00:16:05,950 un altavoz inteligente, o a lo mejor es un 332 00:16:05,950 --> 00:16:07,730 puente que te tienes que crear tú mismo 333 00:16:07,730 --> 00:16:10,490 de nuevo con un arrastro de repeat o algo parecido 334 00:16:10,490 --> 00:16:13,509 y luego el último concepto era el de comisionar 335 00:16:13,509 --> 00:16:16,590 el de dar react a un dispositivo, bueno estuvimos viendo la parte 336 00:16:16,590 --> 00:16:19,669 de la seguridad que tenía dos tipos de sesiones, la sesión pase 337 00:16:19,669 --> 00:16:21,250 y la sesión case 338 00:16:21,250 --> 00:16:25,190 la sesión pase es esta que veis aquí arriba 339 00:16:25,190 --> 00:16:28,610 que esa es la fase inicial cuando se está 340 00:16:28,610 --> 00:16:31,450 descubriendo al dispositivo y en esta primera 341 00:16:31,450 --> 00:16:34,750 parte del comisionado lo que tenemos 342 00:16:34,750 --> 00:16:37,450 es el intercambio de las credenciales 343 00:16:37,450 --> 00:16:56,750 Y luego ya pasamos a la fase case, que ahí es donde se le proporciona los certificados de seguridad, que esos certificados son los que se van a usar para el resto de las comunicaciones. Una vez que el dispositivo está dado de alta, con el certificado NOC, el certificado operacional, se encriptan todas las comunicaciones. 344 00:16:56,750 --> 00:16:58,590 esto es interesante en Matter 345 00:16:58,590 --> 00:17:01,090 porque un dispositivo ni siquiera 346 00:17:01,090 --> 00:17:02,970 puede unirse a la red Matter como no tenga las 347 00:17:02,970 --> 00:17:04,970 credenciales de seguridad, es decir, no es como 348 00:17:04,970 --> 00:17:06,950 otros tipos de redes a las que un dispositivo 349 00:17:06,950 --> 00:17:08,849 se puede unir libremente 350 00:17:08,849 --> 00:17:10,910 pero luego una vez unido es cuando 351 00:17:10,910 --> 00:17:13,250 se comprueba si tiene las credenciales 352 00:17:13,250 --> 00:17:15,089 o no, aquí no funciona así 353 00:17:15,089 --> 00:17:17,329 aquí directamente para siquiera unirse 354 00:17:17,329 --> 00:17:18,990 ya las credenciales tienen 355 00:17:18,990 --> 00:17:20,930 que ser correctas, entonces bueno estuvimos 356 00:17:20,930 --> 00:17:22,869 hablando de esta parte de cómo 357 00:17:22,869 --> 00:17:24,829 funcionaba el comisionado que 358 00:17:24,829 --> 00:17:26,670 simplemente dar de alta 359 00:17:26,670 --> 00:17:29,250 al dispositivo, ya os comenté 360 00:17:29,250 --> 00:17:30,970 que la forma más habitual de darlo 361 00:17:30,970 --> 00:17:32,869 de alta es escaneando un código QR 362 00:17:32,869 --> 00:17:35,230 que te presenta el propio dispositivo 363 00:17:35,230 --> 00:17:37,470 o bien 364 00:17:37,470 --> 00:17:38,970 en otros se puede hacer también 365 00:17:38,970 --> 00:17:40,890 mediante NFC, directamente acercas 366 00:17:40,890 --> 00:17:43,309 el móvil al dispositivo, lo reconoce 367 00:17:43,309 --> 00:17:44,990 y lo da de alta, distintos 368 00:17:44,990 --> 00:17:46,809 border routers de Thread que tenemos 369 00:17:46,809 --> 00:17:48,930 pues os puse aquí los de Amazon 370 00:17:48,930 --> 00:17:51,470 pues por ejemplo si tenéis un 371 00:17:51,470 --> 00:17:52,710 un Echo 372 00:17:52,710 --> 00:17:54,569 normalito, que es el más económico 373 00:17:54,569 --> 00:17:57,029 pues si es a partir de la cuarta generación 374 00:17:57,029 --> 00:17:58,789 sí que podéis usar FRED directamente 375 00:17:58,789 --> 00:18:01,170 el que yo os enseñé el otro día 376 00:18:01,170 --> 00:18:02,730 que lo tengo aquí hoy también 377 00:18:02,730 --> 00:18:04,069 es este, el Ecoswap 8 378 00:18:04,069 --> 00:18:06,029 de tercera generación 379 00:18:06,029 --> 00:18:08,950 y esto nos lo enseñé 380 00:18:08,950 --> 00:18:10,910 que es donde están las 381 00:18:10,910 --> 00:18:12,269 claves de la red 382 00:18:12,269 --> 00:18:14,710 esto lo puedes ver si tú vas a tu cuenta 383 00:18:14,710 --> 00:18:17,029 de Amazon 384 00:18:17,029 --> 00:18:19,009 en gestionar contenidos 385 00:18:19,009 --> 00:18:20,170 y dispositivos 386 00:18:20,170 --> 00:18:22,970 vas a ver que hay una sección que se llama preferencias 387 00:18:22,970 --> 00:18:25,109 ya tienes las contraseñas 388 00:18:25,109 --> 00:18:26,450 de tu red wifi 389 00:18:26,450 --> 00:18:28,250 y también las contraseñas 390 00:18:28,250 --> 00:18:30,250 de tu red 3 391 00:18:30,250 --> 00:18:33,369 si tienes más de una red, podrían aparecer aquí abajo 392 00:18:33,369 --> 00:18:34,849 entonces esto es interesante 393 00:18:34,849 --> 00:18:36,890 porque tú puedes borrar esto 394 00:18:36,890 --> 00:18:39,069 yo podría borrar de Amazon 395 00:18:39,069 --> 00:18:40,450 estas contraseñas 396 00:18:40,450 --> 00:18:42,849 y esto sería un problema, porque si quiero 397 00:18:42,849 --> 00:18:44,250 dar de alta dispositivos nuevos 398 00:18:44,250 --> 00:18:46,549 pues Amazon, si estoy usando 399 00:18:46,549 --> 00:18:48,769 el Echo, Amazon no va a saber las contraseñas 400 00:18:48,769 --> 00:18:50,450 entonces no les va a permitir 401 00:18:50,450 --> 00:18:52,849 darse de alta, es decir, tendría que iniciar 402 00:18:52,970 --> 00:18:54,150 una red nueva 403 00:18:54,150 --> 00:18:56,710 entonces no conviene borrarlo 404 00:18:56,710 --> 00:18:58,890 bien, y en clase ya estuvimos trabajando 405 00:18:58,890 --> 00:19:00,329 con el MG24 406 00:19:00,329 --> 00:19:01,950 que era este que os decía 407 00:19:01,950 --> 00:19:04,690 de Silicon Labs, que este está muy bien 408 00:19:04,690 --> 00:19:05,869 porque me permite utilizar 409 00:19:05,869 --> 00:19:07,690 la red Thread 410 00:19:07,690 --> 00:19:11,069 y hoy el que quería enseñaros es este otro 411 00:19:11,069 --> 00:19:12,609 el SP32 412 00:19:12,609 --> 00:19:14,190 C6 413 00:19:14,190 --> 00:19:16,710 entonces en este caso lo que tenemos 414 00:19:16,710 --> 00:19:18,549 es dos núcleos 415 00:19:18,549 --> 00:19:20,710 de microcontrolador 416 00:19:21,269 --> 00:19:22,769 RISC-V 417 00:19:22,970 --> 00:19:48,769 Sí, perdonad. Tenemos dos núcleos de microcontrolador RISC-V. Ojo, ya no es ARM. Esa otra arquitectura que os dije que por los problemas que estaba habiendo de seguridad y de falta de confianza en los fabricantes de los microcontroladores, estaba poco a poco instalándose una arquitectura nueva de Open Hardware, de código abierto. 418 00:19:48,769 --> 00:19:51,069 de tal forma que tú te puedes crear 419 00:19:51,069 --> 00:19:53,049 tus propios microcontroladores con este código 420 00:19:53,049 --> 00:19:53,769 de instrucciones 421 00:19:53,769 --> 00:19:57,049 ESP Expressive es una de las primeras 422 00:19:57,049 --> 00:19:58,710 que se ha unido a esta corriente 423 00:19:58,710 --> 00:20:00,769 y tiene este microcontrolador 424 00:20:00,769 --> 00:20:03,009 el ESP3216 que trae 425 00:20:03,009 --> 00:20:04,730 dos núcleos RISC-V 426 00:20:04,730 --> 00:20:06,970 y esto es muy interesante porque mientras que 427 00:20:06,970 --> 00:20:09,230 uno de los núcleos funciona a toda velocidad 428 00:20:09,230 --> 00:20:10,470 a 160 MHz 429 00:20:10,470 --> 00:20:13,289 el otro núcleo solo funciona a 20 MHz 430 00:20:13,289 --> 00:20:14,990 y ya sé que vosotros sabéis 431 00:20:14,990 --> 00:20:17,210 por qué es esto, vosotros sabéis que esto es 432 00:20:17,210 --> 00:20:20,109 porque si voy más despacio consumo menos 433 00:20:20,109 --> 00:20:22,349 entonces lo que ocurre en este microcontrolador 434 00:20:22,349 --> 00:20:25,269 es que tiene un núcleo que es el que está funcionando 435 00:20:25,269 --> 00:20:27,670 cuando lo ponemos en modo de sueño profundo 436 00:20:27,670 --> 00:20:30,650 el de 20 MHz y cuando lo despertamos 437 00:20:30,650 --> 00:20:33,430 arranca el núcleo principal de 160 MHz 438 00:20:33,430 --> 00:20:35,970 para hacer las operaciones lo más rápido posible 439 00:20:35,970 --> 00:20:37,769 y poderse ir a dormir cuanto antes 440 00:20:37,769 --> 00:20:40,109 y así consigue consumir lo menos posible 441 00:20:40,109 --> 00:20:42,910 son microcontroladores muy potentes 442 00:20:42,910 --> 00:20:44,910 tanto el que os enseñé anteriormente 443 00:20:44,910 --> 00:20:46,710 este pues veis que tienen dos 444 00:20:46,710 --> 00:20:48,410 UAR, una I2C 445 00:20:48,410 --> 00:20:50,970 dos SPIs, un montón de puertos analógicos 446 00:20:50,970 --> 00:20:52,789 ¿vale? pues en el SP32 pasa 447 00:20:52,789 --> 00:20:54,750 lo mismo, tiene una UAR, una UAR 448 00:20:54,750 --> 00:20:56,630 de bajo consumo, una I2C 449 00:20:56,630 --> 00:20:58,789 una I2C de bajo consumo, una 450 00:20:58,789 --> 00:21:00,650 SPI, 11 puertos 451 00:21:00,650 --> 00:21:03,009 PWM de salida pseudoanalógica 452 00:21:03,009 --> 00:21:05,089 7 entradas analógicas 453 00:21:05,089 --> 00:21:07,150 ¿vale? una entrada específica 454 00:21:07,150 --> 00:21:08,410 para tarjetas SD card 455 00:21:08,410 --> 00:21:10,609 y el consumo como veis cuando está dormido 456 00:21:10,609 --> 00:21:12,430 es bajísimo, bueno un detalle 457 00:21:12,430 --> 00:21:14,230 importante es que este PIN 458 00:21:14,230 --> 00:21:16,230 tiene, perdón, este microcontrolador tiene 459 00:21:16,230 --> 00:21:17,769 un LED, pero el LED 460 00:21:17,769 --> 00:21:20,130 está colocado en lógica inversa 461 00:21:20,130 --> 00:21:22,509 es decir, está conectado al pin 15 462 00:21:22,509 --> 00:21:24,390 si tú pones el pin 15 463 00:21:24,390 --> 00:21:26,230 en alto, el LED 464 00:21:26,230 --> 00:21:28,269 se apaga, porque está instalado de esta forma 465 00:21:28,269 --> 00:21:30,210 está entre 3 voltios y el 466 00:21:30,210 --> 00:21:32,109 GPIO 15, entonces si yo 467 00:21:32,109 --> 00:21:34,410 el pin 15 lo pongo en alto, el LED se apaga 468 00:21:34,410 --> 00:21:36,109 sin embargo, si el pin 15 469 00:21:36,109 --> 00:21:38,289 lo pongo en bajo, el LED se enciende 470 00:21:38,289 --> 00:21:40,150 ¿vale? funciona así, bueno, pues 471 00:21:40,150 --> 00:21:41,230 esto hay que tenerlo en cuenta 472 00:21:41,230 --> 00:21:44,930 y nada, simplemente os voy a enseñar 473 00:21:44,930 --> 00:21:45,670 un ejemplo 474 00:21:45,670 --> 00:21:50,130 ¿Problema que tiene? Pues que de momento no existen librerías 475 00:21:50,130 --> 00:21:53,190 Thread para el SP32C6 en Arduino 476 00:21:53,190 --> 00:21:56,730 no es que el SP32C6 no pueda usar 477 00:21:56,730 --> 00:21:59,210 Thread, puede usar Thread perfectamente 478 00:21:59,210 --> 00:22:02,230 porque lleva un modem en 2.4 GHz 479 00:22:02,230 --> 00:22:05,250 entonces perfectamente puede usar Wi-Fi, puede usar Bluetooth 480 00:22:05,250 --> 00:22:08,349 o puede usar Thread, el problema es que las librerías de Thread 481 00:22:08,349 --> 00:22:10,369 todavía no están disponibles en Arduino 482 00:22:10,369 --> 00:22:13,009 entonces no tenemos más remedio que utilizar 483 00:22:13,009 --> 00:22:13,970 wifi 484 00:22:13,970 --> 00:22:17,269 entonces voy a coger un nodo y lo voy a conectar 485 00:22:17,269 --> 00:22:20,660 los nodos son estos 486 00:22:20,660 --> 00:22:22,539 que ya os enseñé 487 00:22:22,539 --> 00:22:24,140 en clase, que venían en estas cajitas 488 00:22:24,140 --> 00:22:26,660 abro uno 489 00:22:26,660 --> 00:22:32,940 y simplemente 490 00:22:32,940 --> 00:22:35,140 lo voy a conectar a mi ordenador 491 00:22:35,140 --> 00:22:37,099 vale, no lo voy a conectar de momento 492 00:22:37,099 --> 00:22:38,920 porque quiero enseñaros 493 00:22:38,920 --> 00:22:39,559 una cosa 494 00:22:39,559 --> 00:22:42,500 vamos a conectarlo aquí al puerto 495 00:22:42,500 --> 00:22:47,859 si puertos libres ya 496 00:22:47,859 --> 00:22:49,779 esta es la cámara 497 00:22:49,779 --> 00:22:55,940 entonces, tengo aquí 498 00:22:55,940 --> 00:22:58,099 abierto Arduino 499 00:22:58,099 --> 00:22:59,660 ya, a ver, aquí 500 00:22:59,660 --> 00:23:03,799 entonces, recordad lo primero, que para 501 00:23:03,799 --> 00:23:05,079 que estas placas funcionen 502 00:23:05,079 --> 00:23:07,359 tienes que tener instalado 503 00:23:07,359 --> 00:23:09,839 las placas del SP32 504 00:23:09,839 --> 00:23:11,119 que eso se hace aquí, ¿vale? 505 00:23:11,660 --> 00:23:13,119 pero aquí hay un detalle que os quería 506 00:23:13,119 --> 00:23:15,059 llamar la atención 507 00:23:15,059 --> 00:23:17,599 fijaos, si tú buscas aquí SP32 508 00:23:17,599 --> 00:23:20,019 te salen las placas 509 00:23:20,019 --> 00:23:22,039 SP32 de Expressive 510 00:23:22,039 --> 00:23:24,059 que son las que nosotros queremos instalar 511 00:23:24,059 --> 00:23:26,099 ¿vale? eso aparece así 512 00:23:26,099 --> 00:23:27,380 de forma predeterminada 513 00:23:27,380 --> 00:23:30,119 pero si tú añades aquí 514 00:23:30,119 --> 00:23:32,099 a archivo preferencias 515 00:23:32,099 --> 00:23:38,549 este archivo 516 00:23:38,549 --> 00:23:40,829 esta dirección ¿vale? que es el URL donde están 517 00:23:40,829 --> 00:23:43,009 esas placas, vas a tener acceso 518 00:23:43,009 --> 00:23:44,890 a versiones más actualizadas que las 519 00:23:44,890 --> 00:23:46,789 que tiene Arduino ¿vale? lo que quiero 520 00:23:46,789 --> 00:23:48,950 decir con esto, si tú no pones este detalle 521 00:23:48,950 --> 00:23:50,990 aquí, las versiones 522 00:23:50,990 --> 00:23:52,069 que te van a aparecer aquí 523 00:23:52,069 --> 00:23:54,789 son buenas, pero no van a ser 524 00:23:54,789 --> 00:23:56,769 las últimas disponibles, sin embargo 525 00:23:56,769 --> 00:23:58,710 si pones ahí esa dirección 526 00:23:58,710 --> 00:24:01,069 entonces vas a tener las últimas disponibles 527 00:24:01,069 --> 00:24:02,910 ¿de dónde sacas esa dirección? 528 00:24:03,029 --> 00:24:04,509 pues simplemente buscando en internet 529 00:24:04,509 --> 00:24:06,410 pues yo qué sé, ¿dónde tengo yo el navegador web? 530 00:24:06,470 --> 00:24:06,890 por aquí 531 00:24:06,890 --> 00:24:10,130 pues si yo quiero ver las de Silicon Labs 532 00:24:10,130 --> 00:24:12,490 pues pongo Silicon Labs 533 00:24:12,490 --> 00:24:13,930 Arduino 534 00:24:13,930 --> 00:24:15,210 Github 535 00:24:15,210 --> 00:24:20,349 y directamente ya me sale ahí el core 536 00:24:20,349 --> 00:24:21,549 para Silicon Labs 537 00:24:21,549 --> 00:24:24,109 y por aquí en algún sitio 538 00:24:24,109 --> 00:24:26,190 ¿veis? aquí inmediatamente 539 00:24:26,190 --> 00:24:28,509 te dice cuál es el archivo 540 00:24:28,509 --> 00:24:30,970 cuál es la dirección que tienes que poner ahí en Arduino 541 00:24:30,970 --> 00:24:32,910 para tener acceso a las últimas 542 00:24:32,910 --> 00:24:35,009 versiones, bien, pues así 543 00:24:35,009 --> 00:24:36,490 como esto en el caso de 544 00:24:36,490 --> 00:24:38,829 Expressive, veis, yo tendría que 545 00:24:38,829 --> 00:24:40,910 actualizarlas, pero no lo voy a hacer porque ya sabéis 546 00:24:40,910 --> 00:24:42,710 que tarda un montón, pues 547 00:24:42,710 --> 00:24:44,690 lo que os estaba diciendo, así como en el caso de las 548 00:24:44,690 --> 00:24:46,450 SP32 no marca la diferencia 549 00:24:46,450 --> 00:24:48,569 no marca mucho la diferencia 550 00:24:48,569 --> 00:24:50,609 porque las de SP32 suelen estar bastante 551 00:24:50,609 --> 00:24:52,470 actualizadas, en las de Expressive 552 00:24:52,470 --> 00:24:54,890 sí, en las de Expressive, como no pongáis 553 00:24:54,890 --> 00:24:56,630 la última versión, no 554 00:24:56,630 --> 00:24:58,289 va a funcionar bien los ejemplos, vale 555 00:24:58,289 --> 00:25:15,829 Entonces es importante que sepáis eso, que para que os aparezca aquí la posibilidad de instalar las últimas versiones, tenéis que ir a archivo preferencias y en la sección de URLs adicionales tenéis que añadir, veis, por ejemplo, tengo yo aquí la de Silicon Labs y eso es lo que me da acceso a las últimas versiones disponibles. 556 00:25:15,829 --> 00:25:17,710 vale, una vez hecho esto 557 00:25:17,710 --> 00:25:20,329 ahora ya sí, voy a ir al administrador 558 00:25:20,329 --> 00:25:21,250 de dispositivos 559 00:25:21,250 --> 00:25:25,759 para que ahora cuando yo conecte 560 00:25:25,759 --> 00:25:28,039 este SP32, sepa 561 00:25:28,039 --> 00:25:30,559 en qué puerto se ha conectado 562 00:25:30,559 --> 00:25:32,000 veis que ahora mismo en mi ordenador 563 00:25:32,000 --> 00:25:33,579 no tengo ningún puerto 564 00:25:33,579 --> 00:25:36,000 entonces no hay forma de equivocarse 565 00:25:36,000 --> 00:25:37,740 voy a conectarlo 566 00:25:37,740 --> 00:25:50,190 creo que está fallando 567 00:25:50,190 --> 00:25:52,549 la cámara, no sé si me estáis viendo 568 00:25:52,549 --> 00:25:54,569 ¿me estáis viendo? 569 00:25:55,490 --> 00:25:56,349 ahora no 570 00:25:56,349 --> 00:25:58,170 ahora no 571 00:25:58,569 --> 00:26:00,089 Y mi pantalla tampoco, ¿no? 572 00:26:01,930 --> 00:26:02,329 Bueno. 573 00:26:02,930 --> 00:26:03,089 No. 574 00:26:03,690 --> 00:26:03,890 Bueno. 575 00:26:04,230 --> 00:26:06,670 Sí, ha visto los archivos que tienes ahí, de dispositivos. 576 00:26:07,210 --> 00:26:07,589 Sí, sí. 577 00:26:07,890 --> 00:26:08,109 Vale. 578 00:26:08,509 --> 00:26:11,549 Es que, perdonadme, pero hoy tengo aquí un montón de cosas conectadas al ordenador 579 00:26:11,549 --> 00:26:15,069 y se ve que cuando conecto algunas me resetea... 580 00:26:15,069 --> 00:26:18,750 Bueno, esto está como loco ahí reseteando el... 581 00:26:18,750 --> 00:26:19,049 A ver. 582 00:26:21,420 --> 00:26:21,779 Ahí. 583 00:26:22,440 --> 00:26:22,740 ¿Vale? 584 00:26:22,980 --> 00:26:23,160 Ya. 585 00:26:23,599 --> 00:26:24,579 Ya se está quieto. 586 00:26:25,099 --> 00:26:25,279 Vale. 587 00:26:25,720 --> 00:26:28,660 Entonces, ¿veis que me ha creado aquí un puerto nuevo, que es el TORN 17? 588 00:26:29,720 --> 00:26:29,900 ¿Vale? 589 00:26:29,900 --> 00:26:39,880 Entonces yo ya puedo ir directamente a Arduino y decirle que quiero utilizar una placa de la familia SP32 590 00:26:39,880 --> 00:27:01,490 y concretamente en este caso es una Xiao SP32C6, esta de aquí, y que la tengo instalada en el puerto PON17. 591 00:27:01,490 --> 00:27:04,410 haciendo esto 592 00:27:04,410 --> 00:27:07,089 ya podéis directamente a archivo 593 00:27:07,089 --> 00:27:08,730 ejemplos 594 00:27:08,730 --> 00:27:10,829 y vamos a ver que tenemos ahí 595 00:27:10,829 --> 00:27:12,029 una serie de ejemplos 596 00:27:12,029 --> 00:27:15,190 para la placa SIAO SP32C6 597 00:27:15,190 --> 00:27:16,630 y concretamente 598 00:27:16,630 --> 00:27:18,470 tengo una colección de ejemplos para Matter 599 00:27:18,470 --> 00:27:20,670 entonces veis que ahí puedo 600 00:27:20,670 --> 00:27:22,190 coger y 601 00:27:22,190 --> 00:27:25,210 crearme una luz de colores 602 00:27:25,210 --> 00:27:26,269 una prueba 603 00:27:26,269 --> 00:27:28,130 un sensor de humedad 604 00:27:28,130 --> 00:27:30,349 un ventilador, veis que tenemos 605 00:27:30,349 --> 00:27:32,150 un montón de opciones 606 00:27:32,150 --> 00:27:34,470 voy a coger una sencillita que es la de crear 607 00:27:34,470 --> 00:27:36,029 una luz como el otro día 608 00:27:36,029 --> 00:27:40,700 y vais a ver que la diferencia aquí 609 00:27:40,700 --> 00:27:42,880 es que las credenciales 610 00:27:42,880 --> 00:27:44,740 de la red wifi se las tenemos que dar nosotros 611 00:27:44,740 --> 00:27:45,339 directamente 612 00:27:45,339 --> 00:27:51,990 entonces vamos a ver si arranca el ejemplo 613 00:27:51,990 --> 00:27:57,349 pues este sería el archivo 614 00:27:57,349 --> 00:28:00,349 veis que coge la librería mater 615 00:28:00,349 --> 00:28:01,609 la librería wifi 616 00:28:01,609 --> 00:28:03,849 yo tengo que poner aquí las credenciales 617 00:28:03,849 --> 00:28:05,049 de la red 618 00:28:05,049 --> 00:28:07,150 wifi de mi casa 619 00:28:07,150 --> 00:28:07,809 en este caso 620 00:28:07,809 --> 00:28:12,180 ¿vale? 621 00:28:13,140 --> 00:28:14,740 y bueno, luego aquí hace una serie 622 00:28:14,740 --> 00:28:16,259 define un pin 623 00:28:16,259 --> 00:28:18,539 también tiene un botón 624 00:28:18,539 --> 00:28:20,819 que se puede, tiene un botón 625 00:28:20,819 --> 00:28:21,900 un tiempo de 626 00:28:21,900 --> 00:28:23,839 antirebote y demás 627 00:28:23,839 --> 00:28:26,640 pero bueno, el código básicamente lo que hace es 628 00:28:26,640 --> 00:28:28,460 definir el 629 00:28:28,460 --> 00:28:30,700 LED como salida, recordad 630 00:28:30,700 --> 00:28:32,240 que el LED está en lógica inversa 631 00:28:32,240 --> 00:28:34,579 ¿vale? y luego empieza aquí 632 00:28:34,579 --> 00:28:36,500 toda la parte del comisionado 633 00:28:36,500 --> 00:28:43,720 Entonces yo directamente este código ya lo voy a cargar, le voy a dar ya porque como sabéis esto tarda un poquito para que se vaya cargando. 634 00:28:44,440 --> 00:28:52,859 Y entre tanto voy a ir preparando ya mi teléfono móvil para poder con el controlador dar de alta este dispositivo. 635 00:28:53,200 --> 00:28:59,519 Entonces voy a cambiar otra vez de webcam para que podáis ver lo que hago en el móvil. 636 00:29:26,670 --> 00:29:29,369 Ahora creo que deberíais estar viendo más o menos mi teléfono móvil. 637 00:29:29,369 --> 00:29:36,230 Entonces, aquí lo que hago es irme a la aplicación de Amazon, Alexa. 638 00:29:38,109 --> 00:29:41,670 Tengo que procurar no decir Alexa muy alto porque tengo Alexa aquí al lado, ¿vale? 639 00:29:41,690 --> 00:29:43,549 Entonces, lo voy a decir en bajita. 640 00:29:45,289 --> 00:29:48,369 Ahí tengo, no sé si veis algo, la verdad, espero que se vea algo. 641 00:29:49,470 --> 00:29:54,460 Aquí abajo en dispositivos, ¿vale? 642 00:29:54,740 --> 00:30:01,240 Tengo ya los dispositivos que creamos el otro día en clase, que era la primera luz, ¿vale? 643 00:30:01,579 --> 00:30:22,319 Entonces, ahora yo le tendría que decir que quiero crear un dispositivo nuevo. Le digo aquí que quiero pulsar añadir un dispositivo y me pregunta qué tipo de dispositivo es. Pues puede ser una televisión, un enchufe, lo que sea, una lavadora. Yo pulso la última opción de todas, que es otro. Y ahí me salen las tecnologías disponibles. 644 00:30:22,319 --> 00:30:24,859 no sé si se ve, pero las energías disponibles 645 00:30:24,859 --> 00:30:26,779 veis que ya en primer lugar sale precisamente 646 00:30:26,779 --> 00:30:28,519 en Matter, y luego pues otras 647 00:30:28,519 --> 00:30:30,880 como Bluetooth, IP, Wi-Fi, Z-Wave 648 00:30:30,880 --> 00:30:32,759 ¿vale? pulso directamente 649 00:30:32,759 --> 00:30:33,220 en Matter 650 00:30:33,220 --> 00:30:36,559 y ahí me dice, ¿tu dispositivo tiene 651 00:30:36,559 --> 00:30:38,559 el logotipo Matter? le digo, sí, obviamente 652 00:30:38,559 --> 00:30:40,619 no lo tiene, ¿vale? porque lo estamos fabricando 653 00:30:40,619 --> 00:30:42,500 nosotros mismos, pero bueno, le decimos 654 00:30:42,500 --> 00:30:44,599 que sí, ¿está encendido 655 00:30:44,599 --> 00:30:46,119 el dispositivo? le digo que sí 656 00:30:46,119 --> 00:30:48,660 y entonces él me dice, oye 657 00:30:48,660 --> 00:30:50,559 escanea el código QR, bueno, pues ahora 658 00:30:50,559 --> 00:30:52,779 vuelvo, a ver si ha terminado ya Arduino de compilar 659 00:30:52,779 --> 00:31:06,759 no ha terminado de compilar todavía 660 00:31:06,759 --> 00:31:11,779 no sé si esperar un poco o seguir avanzando 661 00:31:11,779 --> 00:31:16,539 porque hoy encima con todo lo que tengo aquí conectado me temo que esto va a ser lento 662 00:31:16,539 --> 00:31:20,319 voy a esperar unos segundillos por si tengo la suerte 663 00:31:20,319 --> 00:31:24,279 de que acaba pronto y os lo puedo enseñar y si no paso a otra 664 00:31:24,279 --> 00:31:47,470 cosa y luego retorno a esta, vale voy a pasar a otra cosa 665 00:31:47,470 --> 00:31:48,950 porque no quiero perder tiempo. 666 00:31:49,089 --> 00:31:50,230 Lo dejo aquí compilando 667 00:31:50,230 --> 00:31:53,190 y ahora voy a pasar a NCC. 668 00:31:53,849 --> 00:31:54,970 Entonces, os voy a contar un poco 669 00:31:54,970 --> 00:31:56,650 la teoría, repaso de teoría, 670 00:31:56,750 --> 00:31:58,529 que ya la vimos en su momento, 671 00:31:58,670 --> 00:31:59,750 una de las primeras sesiones, 672 00:31:59,869 --> 00:32:00,670 creo que fue en la segunda. 673 00:32:01,430 --> 00:32:02,450 Hago repaso de teoría 674 00:32:02,450 --> 00:32:05,269 y hacemos unas prácticas con NCC. 675 00:32:05,470 --> 00:32:07,170 Mientras tanto, a ver si acaba esto de compilar 676 00:32:07,170 --> 00:32:08,170 para que podamos terminar. 677 00:32:08,410 --> 00:32:09,630 Mira, ahora ha avanzado un poco. 678 00:32:10,289 --> 00:32:12,009 Pero vamos a NCC. 679 00:32:12,009 --> 00:32:23,950 estas son las comunicaciones de corto alcance 680 00:32:23,950 --> 00:32:27,390 entonces son comunicaciones 681 00:32:27,390 --> 00:32:30,130 que funcionan de una forma muy curiosa 682 00:32:30,130 --> 00:32:32,710 porque son comunicaciones uno a uno 683 00:32:32,710 --> 00:32:36,089 en la que uno de los dispositivos puede ser pasivo 684 00:32:36,089 --> 00:32:39,170 eso quiere decir que no tiene fuente de alimentación propia 685 00:32:39,170 --> 00:32:42,650 sino que tiene la alimentación del otro dispositivo 686 00:32:42,650 --> 00:32:46,349 que forzosamente tiene que ser un dispositivo activo, ¿vale? 687 00:32:46,569 --> 00:32:47,569 ¿Cómo funciona esto? 688 00:32:47,650 --> 00:32:49,589 Pues bueno, lo podéis ver aquí en el primer gráfico. 689 00:32:50,569 --> 00:32:54,269 Aquí lo que tendríamos sería un lector y una tarjeta NFC. 690 00:32:54,789 --> 00:32:58,529 Entonces lo que ocurre es que el campo magnético lo genera el lector 691 00:32:58,529 --> 00:33:08,109 y ese campo magnético, la tarjeta extrae energía suficiente para poderse alimentar a sí misma, ¿vale? 692 00:33:08,609 --> 00:33:11,190 Y a su vez, ¿cómo transmite los datos al lector? 693 00:33:11,190 --> 00:33:27,049 Pues esto es muy curioso, porque lo que hace es cambiar su impedancia, ¿vale? Puede ponerse una impedancia alta o una impedancia baja. ¿Eso qué quiere decir? Eso quiere decir que al lector le va a costar más corriente o menos corriente mantener este campo magnético. 694 00:33:27,049 --> 00:33:29,349 entonces midiendo el lector 695 00:33:29,349 --> 00:33:32,349 cuánta corriente está consumiendo 696 00:33:32,349 --> 00:33:34,369 en mantener el campo magnético 697 00:33:34,369 --> 00:33:36,569 sabe si lo que le quiere transmitir 698 00:33:36,569 --> 00:33:38,630 la tarjeta son ceros o son unos 699 00:33:38,630 --> 00:33:40,349 eso es lo que se llama 700 00:33:40,349 --> 00:33:41,809 modulación por carga 701 00:33:41,809 --> 00:33:43,950 por carga o por impedancia 702 00:33:43,950 --> 00:33:45,549 bien, pues 703 00:33:45,549 --> 00:33:48,170 esta tecnología utiliza 704 00:33:48,170 --> 00:33:50,670 la banda de 13,56 MHz 705 00:33:50,670 --> 00:33:51,690 que también es una banda 706 00:33:51,690 --> 00:33:54,549 ISM, industrial científica o médica 707 00:33:54,549 --> 00:33:55,849 es decir, que la podemos usar 708 00:33:55,849 --> 00:33:58,630 sin tener, no estáis viendo la presentación 709 00:33:58,630 --> 00:33:58,890 ¿verdad? 710 00:34:00,670 --> 00:34:01,009 ¿o sí? 711 00:34:01,569 --> 00:34:02,410 Sí, sí 712 00:34:02,410 --> 00:34:06,109 Vale, entonces 713 00:34:06,109 --> 00:34:07,950 esta banda nosotros la podemos utilizar 714 00:34:07,950 --> 00:34:10,409 sin pagar ninguna licencia 715 00:34:10,409 --> 00:34:12,050 entonces aquí hay 716 00:34:12,050 --> 00:34:13,909 bastante parte de nomenclatura 717 00:34:13,909 --> 00:34:16,210 en el estándar NFC es una tecnología 718 00:34:16,210 --> 00:34:18,050 ya bastante antigua y ha ido 719 00:34:18,050 --> 00:34:19,769 pasando por un montón de evoluciones 720 00:34:19,769 --> 00:34:21,530 que provocan que se 721 00:34:21,530 --> 00:34:23,829 arrastre en términos muy distintos 722 00:34:23,829 --> 00:34:46,329 Entonces, una misma cosa se puede llamar de muchas formas. Por ejemplo, un escáner y un lector son lo mismo, pero también se llama PCD, que es el dispositivo de acoplamiento próximo. Y sin embargo, una etiqueta o una tarjeta también se puede llamar un PIC, que es la tarjeta con circuito integrado de proximidad, o incluso un BIC, que es lo mismo pero de vecindad. 723 00:34:46,329 --> 00:34:48,889 entonces lo que estáis viendo aquí abajo a la derecha 724 00:34:48,889 --> 00:34:50,409 es cómo 725 00:34:50,409 --> 00:34:52,030 funciona la comunicación 726 00:34:52,030 --> 00:34:53,610 entre el lector 727 00:34:53,610 --> 00:34:56,750 y la tarjeta, entonces el lector 728 00:34:56,750 --> 00:34:58,889 tiene un campo 729 00:34:58,889 --> 00:35:00,269 para generar potencia 730 00:35:00,269 --> 00:35:02,769 para generar un campo magnético 731 00:35:02,769 --> 00:35:04,590 perdón, y luego tiene otro 732 00:35:04,590 --> 00:35:07,110 en el que lee cuánto 733 00:35:07,110 --> 00:35:08,909 está cargando 734 00:35:08,909 --> 00:35:10,670 la tarjeta 735 00:35:10,670 --> 00:35:12,730 o cuánto está cargando, si está cargando 736 00:35:12,730 --> 00:35:14,929 mucho, si está en impedancia alta o está en impedancia 737 00:35:14,929 --> 00:35:18,449 baja, ¿vale? Así funciona esto. Entonces, los conceptos. 738 00:35:19,050 --> 00:35:22,849 Tap, tap, eso quiere decir acercar el lector a la tarjeta. 739 00:35:23,050 --> 00:35:26,750 Hacer tap es tocar, de hecho, es tocar la 740 00:35:26,750 --> 00:35:30,849 tarjeta con el lector. El alcance típico es un par de 741 00:35:30,849 --> 00:35:34,829 centímetros. El que garantiza el estándar, 5 milímetros, ¿vale? 742 00:35:34,829 --> 00:35:38,530 El estándar te dice que sí o sí, a 5 milímetros va a funcionar. 743 00:35:39,130 --> 00:35:42,849 Tasas de transferencia, muy variadas, depende del modelo que estemos usando, ¿vale? 744 00:35:42,849 --> 00:35:52,309 Desde tasas de transferencia muy bajas, 100 kilobits por segundo, a bastante altas, como veis aquí, 1,7 megabits por segundo. 745 00:35:52,829 --> 00:35:57,650 Lo más interesante que tiene probablemente el NFC es su tiempo de conexión. 746 00:35:58,210 --> 00:36:01,769 Conecta casi inmediatamente, incluso más rápido que un mando de infrarrojos. 747 00:36:01,869 --> 00:36:10,809 El mando de vuestro televisor, simplemente para establecer la conexión, para que se reconozca la portadora y todo lo demás, consume medio segundo. 748 00:36:10,809 --> 00:36:13,110 una de Bluetooth consume mucho más 749 00:36:13,110 --> 00:36:15,269 un segundo típicamente o incluso más 750 00:36:15,269 --> 00:36:17,130 sin embargo lo bueno que tiene NFC 751 00:36:17,130 --> 00:36:18,929 es que hace conexión prácticamente 752 00:36:18,929 --> 00:36:20,769 de forma inmediata, entonces por ejemplo 753 00:36:20,769 --> 00:36:22,929 cuando usáis vuestro abono de transporte 754 00:36:22,929 --> 00:36:24,849 en el autobús o en el metro, sabéis que es 755 00:36:24,849 --> 00:36:26,949 simplemente pasar la tarjeta y la 756 00:36:26,949 --> 00:36:28,070 lee inmediatamente 757 00:36:28,070 --> 00:36:31,170 bien, esto es en modo pasivo 758 00:36:31,170 --> 00:36:33,309 si nosotros utilizamos modo activo 759 00:36:33,309 --> 00:36:34,949 es decir, los dos dispositivos 760 00:36:34,949 --> 00:36:37,090 con alimentación, entonces 761 00:36:37,090 --> 00:36:38,710 el alcance puede ser un poco mayor 762 00:36:38,710 --> 00:36:40,230 puede llegar hasta un metro 763 00:36:40,230 --> 00:36:43,730 ¿qué formatos tienen las tarjetas? 764 00:36:43,969 --> 00:36:45,289 pues tienen muchos formatos 765 00:36:45,289 --> 00:36:46,429 los vais a ver pues esto 766 00:36:46,429 --> 00:36:49,170 en muñequeras, en pegatinas, en llaveros 767 00:36:49,170 --> 00:36:51,469 para pegarlos en los libros de las bibliotecas 768 00:36:51,469 --> 00:36:52,809 que los habréis visto seguramente 769 00:36:52,809 --> 00:36:55,349 en las mascotas y en el ganado se lo inyectan 770 00:36:55,349 --> 00:36:57,070 esto es un poco fastidioso 771 00:36:57,070 --> 00:36:59,530 porque hay veces que se va desplazando 772 00:36:59,530 --> 00:37:01,690 el chip y no está donde lo inyectó 773 00:37:01,690 --> 00:37:03,230 sino que se va moviendo por el animal 774 00:37:03,230 --> 00:37:05,590 y acaba en un sitio completamente distinto 775 00:37:05,590 --> 00:37:06,510 ¿vale? 776 00:37:06,829 --> 00:37:09,010 y luego hay que tener en cuenta que hay 777 00:37:09,010 --> 00:37:11,090 varias tecnologías de NFC 778 00:37:11,090 --> 00:37:13,030 hay una que es la primera 779 00:37:13,030 --> 00:37:14,630 que surgió, que es el NFC 780 00:37:14,630 --> 00:37:16,289 de baja frecuencia 781 00:37:16,289 --> 00:37:18,650 y ese normalmente funciona en la banda 782 00:37:18,650 --> 00:37:20,269 de 125 kHz 783 00:37:20,269 --> 00:37:21,530 eso es lo que 784 00:37:21,530 --> 00:37:24,429 normalmente llamamos RFID 785 00:37:24,429 --> 00:37:26,250 esto es una tecnología de 786 00:37:26,250 --> 00:37:28,449 1983 y precisamente 787 00:37:28,449 --> 00:37:30,489 fue esta tecnología la que dio lugar al nombre 788 00:37:30,489 --> 00:37:32,489 de Internet de las Cosas, se viene utilizando 789 00:37:32,489 --> 00:37:34,869 justo desde eso, desde 1983 790 00:37:34,869 --> 00:37:36,590 el problema que 791 00:37:36,590 --> 00:37:36,889 tiene 792 00:37:36,889 --> 00:37:39,949 el RFID 793 00:37:39,949 --> 00:37:41,989 es que no permite transmitir 794 00:37:41,989 --> 00:37:44,130 datos, solo sirve para identificación 795 00:37:44,130 --> 00:37:45,469 para identificarte 796 00:37:45,469 --> 00:37:47,650 soy yo, pero no es fácil 797 00:37:47,650 --> 00:37:49,190 transmitir datos con RFID 798 00:37:49,190 --> 00:37:51,110 por eso surge después 799 00:37:51,110 --> 00:37:53,730 el NFC, principalmente lo pone 800 00:37:53,730 --> 00:37:55,230 en marcha Sony, Nokia y Philips 801 00:37:55,230 --> 00:37:56,789 que esto es en 2004 802 00:37:56,789 --> 00:37:59,510 y ahí lo que tenemos ya son 803 00:37:59,510 --> 00:38:01,809 etiquetas que vais a ver que las antenas 804 00:38:01,809 --> 00:38:03,190 tienen muchas menos vueltas 805 00:38:03,190 --> 00:38:05,829 en RFID vais a ver que hay un montón de vueltas 806 00:38:05,829 --> 00:38:07,510 en la antena, porque es de baja frecuencia 807 00:38:07,510 --> 00:38:09,710 sin embargo, en las de alta frecuencia 808 00:38:09,710 --> 00:38:11,889 que son las que van a 13,56 MHz 809 00:38:11,889 --> 00:38:13,610 lo que vais a ver ahí es que 810 00:38:13,610 --> 00:38:15,409 el número de vueltas es muy pequeñito, ¿vale? 811 00:38:15,409 --> 00:38:17,829 algunas tienen 4 o 5 vueltas, 8 vueltas 812 00:38:17,829 --> 00:38:19,650 es lo típico, estas son 813 00:38:19,650 --> 00:38:21,670 las tecnologías de 814 00:38:21,670 --> 00:38:23,050 corto alcance más conocidas 815 00:38:23,050 --> 00:38:25,730 pero hay otra, que esta es menos conocida 816 00:38:25,730 --> 00:38:27,090 que se llama 817 00:38:27,090 --> 00:38:29,250 NFC Rain 818 00:38:29,250 --> 00:38:31,909 de lluvia, ¿vale? y esa es de alto 819 00:38:31,909 --> 00:38:33,670 alcance, de ultra alta 820 00:38:33,670 --> 00:38:35,710 frecuencia, y las antenas son así 821 00:38:35,710 --> 00:38:37,690 de raras, son esto que estáis viendo aquí 822 00:38:37,690 --> 00:38:39,510 ¿vale? ¿qué tiene de interesante 823 00:38:39,510 --> 00:38:41,650 esta tecnología? pues lo que estáis 824 00:38:41,650 --> 00:38:43,610 viendo aquí abajo, que tiene un alcance 825 00:38:43,610 --> 00:38:44,829 de hasta 10 metros 826 00:38:44,829 --> 00:38:47,329 ¿vale? mientras que las otras 827 00:38:47,329 --> 00:38:48,769 tienen un alcance 828 00:38:48,769 --> 00:38:51,449 del orden de un metro 829 00:38:51,449 --> 00:38:53,070 como muchos, si es en modo activo 830 00:38:53,070 --> 00:38:55,250 o incluso de menos si es en modo pasivo 831 00:38:55,250 --> 00:38:57,210 pues estas otras de aquí abajo 832 00:38:57,210 --> 00:38:59,349 están muy bien para logística 833 00:38:59,349 --> 00:39:00,769 porque tú puedes tener un almacén 834 00:39:00,769 --> 00:39:03,269 y puedes estar leyendo las etiquetas 835 00:39:03,269 --> 00:39:04,969 de todo lo que hay en ese almacén 836 00:39:04,969 --> 00:39:06,929 porque tiene un alcance de 10 metros 837 00:39:06,929 --> 00:39:09,050 y si algo sale o entra del almacén 838 00:39:09,050 --> 00:39:11,329 pues puedes actualizar directamente 839 00:39:11,329 --> 00:39:12,130 el inventario 840 00:39:12,130 --> 00:39:15,849 hay dos tecnologías principales 841 00:39:15,849 --> 00:39:17,210 de NFC 842 00:39:17,210 --> 00:39:19,570 la de NXP y la de Sony 843 00:39:19,570 --> 00:39:21,250 la de NXP 844 00:39:21,250 --> 00:39:22,690 se llama MyFair 845 00:39:22,690 --> 00:39:24,889 y la de Sony se llama Felica 846 00:39:24,889 --> 00:39:27,489 entonces ¿qué ocurre? pues claro que cada fabricante 847 00:39:27,489 --> 00:39:29,329 como siempre pues iba por su lado 848 00:39:29,329 --> 00:39:31,369 desarrollando su propia tecnología 849 00:39:31,369 --> 00:39:33,409 y esto fragmentaba el mercado 850 00:39:33,409 --> 00:39:34,909 y para evitar eso 851 00:39:34,909 --> 00:39:36,949 es para lo que surge el foro 852 00:39:36,949 --> 00:39:38,750 NFC, que pretende 853 00:39:38,750 --> 00:39:41,050 unificar estas dos tecnologías 854 00:39:41,050 --> 00:39:41,230 ¿vale? 855 00:39:41,610 --> 00:39:44,469 la de ultra 856 00:39:44,469 --> 00:39:46,449 esa de 10 metros 857 00:39:46,449 --> 00:39:48,650 ¿esa es en pasivo o en activo? 858 00:39:49,590 --> 00:39:50,230 no, no, en pasivo 859 00:39:50,230 --> 00:39:51,369 ¿en pasivo? 860 00:39:51,869 --> 00:39:56,110 ¿tiene activo o no? 861 00:39:57,550 --> 00:39:59,070 sí, el lector siempre 862 00:39:59,070 --> 00:40:01,010 uno de los dos tiene que ser activo siempre 863 00:40:01,010 --> 00:40:02,429 que en este caso es el lector 864 00:40:02,429 --> 00:40:04,429 ya, pero digo la otra 865 00:40:04,429 --> 00:40:06,809 ah, la otra que sí tiene modo activo 866 00:40:06,809 --> 00:40:08,809 que yo sepa, no, yo solamente las he visto 867 00:40:08,809 --> 00:40:10,829 en modo pasivo, porque estas se venden como pegatinas 868 00:40:10,829 --> 00:40:12,070 además se venden como churros 869 00:40:12,070 --> 00:40:14,710 se compran en bobinas, tienen una bobina entera 870 00:40:14,710 --> 00:40:15,670 de pegatinas de estas 871 00:40:15,670 --> 00:40:18,550 y son muy baratas y ni tiene batería 872 00:40:18,550 --> 00:40:20,789 ni tiene nada, simplemente se pega y ya está 873 00:40:20,789 --> 00:40:22,730 esto, para que os hagáis una idea 874 00:40:22,730 --> 00:40:24,449 tiene un tamaño de unos 10 centímetros 875 00:40:24,449 --> 00:40:26,750 más o menos, la pegatina esta que estáis 876 00:40:26,750 --> 00:40:27,670 viendo aquí 877 00:40:27,670 --> 00:40:30,530 creo que tengo una diapositiva 878 00:40:30,530 --> 00:40:32,570 luego hacia el final, donde doy 879 00:40:32,570 --> 00:40:33,730 algún detalle más sobre 880 00:40:33,730 --> 00:40:36,550 sobre Rain, vale, entonces bueno 881 00:40:36,550 --> 00:40:40,730 ¿Cómo funciona esta parte de la modulación por carga? 882 00:40:41,090 --> 00:40:43,230 La modulación esta del dispositivo pasivo. 883 00:40:43,969 --> 00:40:46,190 Bueno, pues lo que hace el dispositivo pasivo 884 00:40:46,190 --> 00:40:50,010 es que de la frecuencia del campo magnético que genera el activo, 885 00:40:50,110 --> 00:40:53,429 que es una frecuencia de 13,56 MHz, como os decía antes, 886 00:40:54,030 --> 00:40:56,309 lo que hace es que la divide entre 16 887 00:40:56,309 --> 00:40:59,869 y se crea allí una suportadora, ¿vale? 888 00:40:59,869 --> 00:41:04,789 Se crea una señal de unos 848 kHz, ¿vale? 889 00:41:04,789 --> 00:41:08,349 Que es la dieciseisava parte de trece coma cincuenta y seis. 890 00:41:08,550 --> 00:41:14,389 Y lo que va a hacer es que va a cargar o va a descargar el circuito magnético a este ritmo, ¿vale? 891 00:41:14,389 --> 00:41:16,789 A este ritmo de los ochocientos cuarenta y ocho kiloherzios. 892 00:41:17,550 --> 00:41:18,110 Funciona así. 893 00:41:18,750 --> 00:41:18,949 Bien. 894 00:41:19,829 --> 00:41:21,409 ¿Qué modulación se puede utilizar aquí? 895 00:41:21,550 --> 00:41:22,849 ¿Qué tipo de codificación? 896 00:41:23,210 --> 00:41:28,530 Bueno, pues las codificaciones que tenemos principalmente son la non-return to un cero, ¿vale? 897 00:41:28,530 --> 00:41:33,750 El Manchester, el Miller modificado, o el one out of four, o one out of dieciséis, 898 00:41:33,750 --> 00:41:36,070 o 1.32 o lo que tú quieras, ¿vale? 899 00:41:36,429 --> 00:41:37,449 ¿Esto qué quiere decir? 900 00:41:37,590 --> 00:41:39,190 Bueno, ¿qué estáis viendo aquí a la derecha? 901 00:41:39,730 --> 00:41:44,190 Pues lo que estáis viendo es esa subfrecuencia, 902 00:41:44,289 --> 00:41:49,090 que os decía, esa subportadora de 848 kiloherzios, ¿vale? 903 00:41:49,469 --> 00:41:52,969 Aquí tenemos un ciclo de 848 kiloherzios. 904 00:41:53,090 --> 00:41:56,289 Aquí otro ciclo de 848 kiloherzios, ¿vale? 905 00:41:57,170 --> 00:41:59,949 Entonces, esta es la longitud de onda, ¿vale? 906 00:41:59,949 --> 00:42:00,489 Esta es una onda. 907 00:42:00,489 --> 00:42:04,969 Imaginaos aquí la señal senoidal de 848 kiloherzios. 908 00:42:05,110 --> 00:42:08,610 Bien, pues si en el método de codificación no returna un cero, 909 00:42:09,309 --> 00:42:13,329 un uno se codifica manteniendo todo en alto, 910 00:42:13,590 --> 00:42:15,849 cargando constantemente al campo magnético, 911 00:42:16,130 --> 00:42:18,849 y un cero no cargándolo en absoluto. 912 00:42:18,949 --> 00:42:21,530 Entonces, si yo quiero transmitir un uno, cargo el campo magnético. 913 00:42:22,030 --> 00:42:26,969 Es decir, hago que al lector le cueste más mantener el campo magnético. 914 00:42:27,630 --> 00:42:46,670 ¿Cuánto más? Pues depende del dispositivo. La carga que producen es de entre un 10 y un 100%. Es decir, son capaces de absorber completamente el campo magnético que emite el emisor, el lector, si lo ponemos al 100%. Típicamente se usan cargas muy inferiores, cargas del orden del 10%. Eso es el non-returto cero. 915 00:42:46,670 --> 00:42:50,010 el Manchester funciona por mitades 916 00:42:50,010 --> 00:42:51,670 lo que hace es que ese ciclo 917 00:42:51,670 --> 00:42:53,909 de 848 kHz 918 00:42:53,909 --> 00:42:55,250 según 919 00:42:55,250 --> 00:42:57,550 lo cargue en la primera mitad 920 00:42:57,550 --> 00:42:59,789 o según lo cargue en la segunda mitad 921 00:42:59,789 --> 00:43:01,809 estamos transmitiendo un 1 o un 0 922 00:43:01,809 --> 00:43:03,909 ¿veis? si lo cargo en la primera mitad 923 00:43:03,909 --> 00:43:05,469 y no lo cargo en la segunda 924 00:43:05,469 --> 00:43:07,530 estoy queriendo transmitir un 0 925 00:43:07,530 --> 00:43:09,690 si no lo cargo en la primera mitad 926 00:43:09,690 --> 00:43:11,829 pero si lo cargo en la segunda mitad 927 00:43:11,829 --> 00:43:14,090 estoy queriendo transmitir un 0 928 00:43:14,090 --> 00:43:16,010 bien, pues este es 929 00:43:16,010 --> 00:43:22,050 el manchester luego está el miller que para mí es el más raro de todos vale en el miller lo que 930 00:43:22,050 --> 00:43:32,869 ocurre es que detrás de la mitad justo después de la mitad se emite un pulso vale ese pulso si es 931 00:43:32,869 --> 00:43:38,909 justo detrás de la mitad quiere decir que quieres transmitir un 1 y si es justo al inicio vamos a 932 00:43:38,909 --> 00:43:45,250 buscar uno que esté al inicio a ver por ejemplo este está al inicio eso quiere decir que quieres 933 00:43:45,250 --> 00:43:51,469 transmitir un 0. Este está al inicio, quiero transmitir un 0. Sin embargo, si el pulso lo doy 934 00:43:51,469 --> 00:43:57,409 justo después de la mitad, quiero transmitir un 1, pero tiene una excepción. Resulta que si 935 00:43:57,409 --> 00:44:02,429 después de un 1, por ejemplo aquí, yo quiero transmitir un 0, pues no tengo que poner ningún 936 00:44:02,429 --> 00:44:08,050 pulso. Lo suyo sería, si yo quisiera transmitir un 0 aquí, pues ya sabéis que al inicio tendría 937 00:44:08,050 --> 00:44:12,349 que hacer un pulso, tendría que ver un pulso aquí. Pues no, resulta que hay una excepción que dice 938 00:44:12,349 --> 00:44:13,670 que si después de un 1 939 00:44:13,670 --> 00:44:14,789 quieres transmitir un 0 940 00:44:14,789 --> 00:44:16,030 pues no hace falta 941 00:44:16,030 --> 00:44:16,989 que hagas ningún pulso 942 00:44:16,989 --> 00:44:18,050 que ya se sobreentiende 943 00:44:18,050 --> 00:44:19,489 que lo que quieres transmitir 944 00:44:19,489 --> 00:44:19,989 es un 0 945 00:44:19,989 --> 00:44:21,309 aunque no haya ningún pulso 946 00:44:21,309 --> 00:44:22,849 en todo este ciclo 947 00:44:22,849 --> 00:44:23,469 ¿vale? 948 00:44:24,449 --> 00:44:24,690 bueno 949 00:44:24,690 --> 00:44:25,690 y luego está 950 00:44:25,690 --> 00:44:26,809 el 1 out of 4 951 00:44:26,809 --> 00:44:27,889 o el 1 out of 16 952 00:44:27,889 --> 00:44:29,449 que este es muy curioso 953 00:44:29,449 --> 00:44:30,250 porque es parecido 954 00:44:30,250 --> 00:44:30,750 al Miller 955 00:44:30,750 --> 00:44:32,170 lo que ocurre 956 00:44:32,170 --> 00:44:32,929 es que ya por ejemplo 957 00:44:32,929 --> 00:44:34,230 en 1 out of 4 958 00:44:34,230 --> 00:44:35,429 lo que hacemos 959 00:44:35,429 --> 00:44:36,530 es que codificamos 960 00:44:36,530 --> 00:44:37,550 en vez de un único bit 961 00:44:37,550 --> 00:44:38,130 veis que aquí 962 00:44:38,130 --> 00:44:39,090 íbamos codificando 963 00:44:39,090 --> 00:44:40,130 en cada ciclo 964 00:44:40,130 --> 00:44:41,130 o un 0 965 00:44:41,130 --> 00:44:41,610 o un 1 966 00:44:41,610 --> 00:44:43,889 o un 0 o un 1, pues sin embargo 967 00:44:43,889 --> 00:44:44,989 en el 1 out of 4 968 00:44:44,989 --> 00:44:48,030 lo que hacemos es que en cada uno de estos ciclos 969 00:44:48,030 --> 00:44:49,710 podemos codificar 970 00:44:49,710 --> 00:44:50,969 hasta 2 bits 971 00:44:50,969 --> 00:44:53,690 ¿y cómo lo hacemos? pues igual que en el mirror 972 00:44:53,690 --> 00:44:55,769 dependiendo del momento en el que emitamos 973 00:44:55,769 --> 00:44:58,030 el pulso, si lo hacemos casi al principio 974 00:44:58,030 --> 00:44:59,809 es un 0, 0, si lo hacemos 975 00:44:59,809 --> 00:45:01,429 un poquito después es un 0, 1 976 00:45:01,429 --> 00:45:03,449 si lo hacemos todavía un poquito después 977 00:45:03,449 --> 00:45:05,829 es un 1, 0 y si lo hacemos justo 978 00:45:05,829 --> 00:45:07,230 al final es un 1, 1 979 00:45:07,230 --> 00:45:09,570 pues igual que tenemos el 1 out of 4 980 00:45:09,570 --> 00:45:11,789 hay otro que es One of 16 981 00:45:11,789 --> 00:45:13,110 One of System 982 00:45:13,110 --> 00:45:15,570 que es simplemente dividir esto en todavía 983 00:45:15,570 --> 00:45:16,610 más divisiones 984 00:45:16,610 --> 00:45:19,090 obviamente, cuanto 985 00:45:19,090 --> 00:45:21,230 más divisiones hagamos 986 00:45:21,230 --> 00:45:23,690 pues mayor será la tasa de transferencia 987 00:45:23,690 --> 00:45:24,550 ¿vale? 988 00:45:24,989 --> 00:45:27,349 más datos podremos transmitir 989 00:45:27,349 --> 00:45:28,030 bueno 990 00:45:28,030 --> 00:45:31,190 ¿cómo transmite entonces 991 00:45:31,190 --> 00:45:33,550 la tarjeta al lector? 992 00:45:33,690 --> 00:45:34,429 pues ya lo hemos dicho 993 00:45:34,429 --> 00:45:37,730 si es la tarjeta al lector, transmite por carga 994 00:45:37,730 --> 00:45:39,289 ¿vale? por load modulation 995 00:45:39,289 --> 00:45:41,610 modulando la carga 996 00:45:41,610 --> 00:45:43,150 que ofrece al campo magnético 997 00:45:43,150 --> 00:45:45,389 pero sin embargo si son dos dispositivos 998 00:45:45,389 --> 00:45:47,489 activos no tienen que cargarse 999 00:45:47,489 --> 00:45:49,409 el uno al otro porque ninguno tiene que obtener 1000 00:45:49,409 --> 00:45:51,429 energía del otro, entonces lo que se 1001 00:45:51,429 --> 00:45:53,570 utiliza es codificación por fase 1002 00:45:53,570 --> 00:45:55,010 ¿vale? por cambio de fase 1003 00:45:55,010 --> 00:45:57,489 que es lo que estáis viendo aquí en el último de los casos 1004 00:45:57,489 --> 00:45:59,429 ¿vale? aquí tenemos que si son 1005 00:45:59,429 --> 00:46:01,429 dos dispositivos activos comunicándose entre 1006 00:46:01,429 --> 00:46:03,670 sí o bien el lector 1007 00:46:03,670 --> 00:46:05,389 que quiere mandar información 1008 00:46:05,389 --> 00:46:07,389 a la tarjeta, pues si el lector quiere 1009 00:46:07,389 --> 00:46:11,250 mandar información a la tarjeta, incluso si la tarjeta es pasiva, utiliza 1010 00:46:11,250 --> 00:46:15,550 modulación por cambio de fase. Y aquí estáis viendo los dos casos extremos 1011 00:46:15,550 --> 00:46:19,409 de modulación por carga. Una modulación con carga 1012 00:46:19,409 --> 00:46:23,110 del 100%, es decir, que anula completamente el campo magnético 1013 00:46:23,110 --> 00:46:27,309 o una modulación del 10%, que apenas se observa, pero veis aquí hay una pequeña 1014 00:46:27,309 --> 00:46:31,210 carga, esta sección es un poco más bajita, tiene un poquito menos 1015 00:46:31,210 --> 00:46:35,369 de amplitud. Bueno, pues así funciona esto. Un problema, una 1016 00:46:35,369 --> 00:46:37,469 curiosidad que tiene esto del NFC, es que 1017 00:46:37,469 --> 00:46:39,510 claro, si tú pones estas pegatinas 1018 00:46:39,510 --> 00:46:41,690 en una superficie metálica, 1019 00:46:42,150 --> 00:46:43,409 pues el campo magnético, ¿qué 1020 00:46:43,409 --> 00:46:45,570 ocurre? Que te genera corrientes 1021 00:46:45,570 --> 00:46:47,409 de EDI, ¿vale? Te genera ahí corrientes 1022 00:46:47,409 --> 00:46:49,429 y esas corrientes hacen que 1023 00:46:49,429 --> 00:46:51,369 se pierda el campo magnético, entonces la 1024 00:46:51,369 --> 00:46:53,309 tarjeta no es capaz de leerlo. Para 1025 00:46:53,309 --> 00:46:55,329 editar esto, cuando tú compras las tarjetas, 1026 00:46:55,429 --> 00:46:57,369 si tú las tienes destinadas a 1027 00:46:57,369 --> 00:46:59,449 pegarlas sobre algo que sea magnético, 1028 00:47:00,010 --> 00:47:01,389 lo que tienes que hacer es pedirlas con 1029 00:47:01,389 --> 00:47:03,389 una capa de material ferromagnético, que es esto 1030 00:47:03,389 --> 00:47:05,349 que veis aquí de color negro, ¿vale? 1031 00:47:05,369 --> 00:47:06,889 te ponen ahí una capita 1032 00:47:06,889 --> 00:47:08,929 de material ferromagnético 1033 00:47:08,929 --> 00:47:10,010 que lo que hace 1034 00:47:10,010 --> 00:47:10,730 es impedir 1035 00:47:10,730 --> 00:47:11,409 que se generen 1036 00:47:11,409 --> 00:47:12,530 esas corrientes de EDI 1037 00:47:12,530 --> 00:47:13,929 que podrían interferir 1038 00:47:13,929 --> 00:47:14,809 en las comunicaciones 1039 00:47:14,809 --> 00:47:15,309 ¿vale? 1040 00:47:15,730 --> 00:47:16,170 entonces 1041 00:47:16,170 --> 00:47:17,190 esto es como un detalle 1042 00:47:17,190 --> 00:47:18,030 pero por si alguna vez 1043 00:47:18,030 --> 00:47:18,389 os pasa 1044 00:47:18,389 --> 00:47:19,210 que pegáis algo 1045 00:47:19,210 --> 00:47:19,829 y dices 1046 00:47:19,829 --> 00:47:21,730 es imposible leer esta tarjeta 1047 00:47:21,730 --> 00:47:22,389 pues probablemente 1048 00:47:22,389 --> 00:47:23,190 es porque la habéis pegado 1049 00:47:23,190 --> 00:47:24,269 en una superficie metálica 1050 00:47:24,269 --> 00:47:25,710 y esa tarjeta 1051 00:47:25,710 --> 00:47:26,269 no traía 1052 00:47:26,269 --> 00:47:28,010 la hoja de material 1053 00:47:28,010 --> 00:47:28,710 ferromagnético 1054 00:47:28,710 --> 00:47:29,309 de ferrita 1055 00:47:29,309 --> 00:47:31,050 luego 1056 00:47:31,050 --> 00:47:32,050 el estándar 1057 00:47:32,050 --> 00:47:32,429 te dice 1058 00:47:32,429 --> 00:47:33,250 cómo tienen que ser 1059 00:47:33,250 --> 00:47:33,969 las antenas 1060 00:47:33,969 --> 00:47:34,510 ¿vale? 1061 00:47:35,389 --> 00:47:39,510 Entonces, la clase 1 es la de tarjeta europea, ¿vale? 1062 00:47:39,510 --> 00:47:42,909 Las tarjetas de crédito nuestras, pues en esas son clase 1. 1063 00:47:43,429 --> 00:47:49,130 Y esas son las que te proporcionan mejor rendimiento, es decir, mejor alcance, ¿vale? 1064 00:47:49,630 --> 00:47:52,550 No obstante, el estándar te permite utilizar otros tamaños. 1065 00:47:53,010 --> 00:47:58,289 Pero claro, ten en cuenta que si vas reduciendo el tamaño, va a ser peor el rendimiento, ¿vale? 1066 00:47:58,289 --> 00:48:03,710 Entonces, por ejemplo, veis aquí que las tenemos de 18 milímetros, de 24 milímetros, de 32 milímetros. 1067 00:48:03,710 --> 00:48:06,130 el rendimiento va a ser peor, de hecho lo vais a ver 1068 00:48:06,130 --> 00:48:07,750 porque con el ejemplo que voy a hacer yo hoy 1069 00:48:07,750 --> 00:48:10,070 voy a usar una antena muy pequeñita y vais a ver 1070 00:48:10,070 --> 00:48:12,429 que tengo que pegar prácticamente el móvil 1071 00:48:12,429 --> 00:48:13,909 a la 1072 00:48:13,909 --> 00:48:15,349 tarjeta 1073 00:48:15,349 --> 00:48:18,230 voy a mirar si ha terminado ya Arduino 1074 00:48:18,230 --> 00:48:22,190 si, vale, está diciendo mi pantalla 1075 00:48:22,190 --> 00:48:22,389 ¿no? 1076 00:48:25,420 --> 00:48:27,940 si, veis que me ha dado un error 1077 00:48:27,940 --> 00:48:30,119 ¿por qué me ha dado un error? 1078 00:48:30,239 --> 00:48:32,159 porque resulta que el stack de matter 1079 00:48:32,159 --> 00:48:34,320 es tan grande que no cabe 1080 00:48:34,320 --> 00:48:35,619 en la memoria normal 1081 00:48:35,619 --> 00:48:37,880 de un SP32 1082 00:48:37,880 --> 00:48:40,440 un SP32 tiene típicamente 4 megas 1083 00:48:40,440 --> 00:48:41,659 que es lo que veis aquí 1084 00:48:41,659 --> 00:48:43,420 tiene un tamaño de memoria flash 1085 00:48:43,420 --> 00:48:44,760 de 4 megas 1086 00:48:44,760 --> 00:48:47,360 pero que ocurre, que esas 4 megas 1087 00:48:47,360 --> 00:48:48,739 se organizan en particiones 1088 00:48:48,739 --> 00:48:50,219 que es lo que estáis viendo aquí debajo 1089 00:48:50,219 --> 00:48:53,159 entonces me alegro de que haya salido este error 1090 00:48:53,159 --> 00:48:54,739 porque así os puedo contar esto 1091 00:48:54,739 --> 00:48:56,719 si no se me hubiera olvidado completamente contarlo 1092 00:48:56,719 --> 00:48:58,880 veis que de esas 4 megas 1093 00:48:58,880 --> 00:49:02,019 yo tengo ahora puesto un esquema de particiones 1094 00:49:02,019 --> 00:49:03,239 en las que utilizo 1095 00:49:03,239 --> 00:49:05,780 1,2 megas para la aplicación 1096 00:49:05,780 --> 00:49:06,820 y ahí no ha cabido 1097 00:49:06,820 --> 00:49:10,019 el stack de matter ocupa más de 1,2 megas 1098 00:49:10,019 --> 00:49:11,559 y por eso me ha dado este error tan raro 1099 00:49:11,559 --> 00:49:13,159 y luego estoy utilizando 1100 00:49:13,159 --> 00:49:15,300 1,5 megas como 1101 00:49:15,300 --> 00:49:16,559 partición de archivos 1102 00:49:16,559 --> 00:49:19,340 ¿esto qué es? pues imaginaos que yo quiero usar 1103 00:49:19,340 --> 00:49:21,639 el SP32 como un servidor 1104 00:49:21,639 --> 00:49:23,380 de páginas web, pues aquí 1105 00:49:23,380 --> 00:49:25,639 en los 1,2 megas tendría el servidor 1106 00:49:25,639 --> 00:49:27,219 web, la lógica del servidor web 1107 00:49:27,219 --> 00:49:29,260 y aquí en las 1,5 megas 1108 00:49:29,260 --> 00:49:30,880 tendría el código HTML 1109 00:49:30,880 --> 00:49:32,880 las imágenes de esas páginas web 1110 00:49:32,880 --> 00:49:34,659 y demás, yo en este caso 1111 00:49:34,659 --> 00:49:36,760 como no quiero utilizar 1112 00:49:36,760 --> 00:49:38,460 archivos, no los necesito 1113 00:49:38,460 --> 00:49:40,460 me puedo venir a utilizar 1114 00:49:40,460 --> 00:49:42,699 otro formato de partición, voy a usar 1115 00:49:42,699 --> 00:49:43,920 por ejemplo este de aquí 1116 00:49:43,920 --> 00:49:46,519 FugApp, es decir, una 1117 00:49:46,519 --> 00:49:48,519 aplicación enorme de 3 megas 1118 00:49:48,519 --> 00:49:50,500 y solo un mega para 1119 00:49:50,500 --> 00:49:52,699 el espacio de archivos, fijaos 1120 00:49:52,699 --> 00:49:54,320 que todo tiene un precio, vale 1121 00:49:54,320 --> 00:49:57,000 si yo me voy a una aplicación 1122 00:49:57,000 --> 00:49:58,699 de 3 megas, tengo que 1123 00:49:58,699 --> 00:50:00,639 renunciar al OTA, el OTA 1124 00:50:00,639 --> 00:50:02,579 que es, el otra es la posibilidad 1125 00:50:02,579 --> 00:50:04,539 de actualizar el firmware 1126 00:50:04,539 --> 00:50:06,420 over the air, es decir, yo podría 1127 00:50:06,420 --> 00:50:08,739 actualizar el firmware sin tenerlo 1128 00:50:08,739 --> 00:50:10,639 conectado por el puerto USB 1129 00:50:10,639 --> 00:50:12,900 sino directamente lo podría 1130 00:50:12,900 --> 00:50:14,659 actualizar a través de 1131 00:50:14,659 --> 00:50:16,199 la red wifi, ¿vale? 1132 00:50:16,460 --> 00:50:18,539 Entonces, en este caso, tengo que 1133 00:50:18,539 --> 00:50:20,599 renunciar a esa funcionalidad, elijo aquí 1134 00:50:20,599 --> 00:50:25,050 esto, y 1135 00:50:25,050 --> 00:50:27,269 lo cargo, ¿vale? 1136 00:50:27,289 --> 00:50:29,369 Lo vuelvo a cargar, lo dejo ahí cargando, que echará otro 1137 00:50:29,369 --> 00:50:30,889 rato, y sigo con NFC. 1138 00:50:31,489 --> 00:50:32,969 ¿Vale? ¿Para qué se usa NFC? 1139 00:50:32,969 --> 00:50:50,869 Se utiliza principalmente para pagos, para acceder a direcciones web, para arrancar el coche, para abrir puertas, para verificar la autenticidad, es decir, para ver que un bolso realmente es de la marca que vosotros creéis que es. 1140 00:50:50,869 --> 00:51:05,329 ¿Vale? Habéis comprado un bolso de marca y queréis saber que realmente es de esa marca, pues directamente escaneas la etiqueta NFC que viene en el bolso y sabéis que es un bolso genuino. 1141 00:51:05,329 --> 00:51:08,409 también para, por ejemplo 1142 00:51:08,409 --> 00:51:10,030 esto ya ha pasado un poco de moda 1143 00:51:10,030 --> 00:51:11,389 pero hubo un tiempo que estaba muy de moda 1144 00:51:11,389 --> 00:51:13,989 en los paquetes de algún, por ejemplo, de lavavajillas 1145 00:51:13,989 --> 00:51:15,789 tenía una etiqueta NFC 1146 00:51:15,789 --> 00:51:18,329 para que tú directamente, cuando se te estaba acabando 1147 00:51:18,329 --> 00:51:20,170 el detergente, pudieras hacer un pedido 1148 00:51:20,170 --> 00:51:21,570 automáticamente, ¿vale? 1149 00:51:21,809 --> 00:51:24,090 y ahora yo he empezado a verlo, que esto es muy interesante 1150 00:51:24,090 --> 00:51:25,989 con la información de reciclaje, ¿vale? 1151 00:51:25,989 --> 00:51:27,110 en algunos dispositivos 1152 00:51:27,110 --> 00:51:29,510 normalmente de gama media o gama alta 1153 00:51:29,510 --> 00:51:31,510 incluyen una etiqueta NFC 1154 00:51:31,510 --> 00:51:33,989 que tú la puedes escanear y te dice exactamente 1155 00:51:33,989 --> 00:51:35,949 cómo tienes que reciclar ese dispositivo 1156 00:51:35,949 --> 00:51:38,309 la carcasa va al contenedor 1157 00:51:38,309 --> 00:51:40,469 amarillo, los componentes electrónicos 1158 00:51:40,469 --> 00:51:42,110 a tal sitio, las baterías 1159 00:51:42,110 --> 00:51:43,989 a este otro sitio y así 1160 00:51:43,989 --> 00:51:46,269 ¿vale? entonces este es uno de los casos 1161 00:51:46,269 --> 00:51:48,230 de uso más curiosos que he visto 1162 00:51:48,230 --> 00:51:50,469 últimamente y luego por supuesto el de siempre 1163 00:51:50,469 --> 00:51:51,510 este es súper útil 1164 00:51:51,510 --> 00:51:53,909 que es el de provisionar dispositivos IOT 1165 00:51:53,909 --> 00:51:56,369 por ejemplo si tú tienes una mota 1166 00:51:56,369 --> 00:51:58,210 Lora, esa mota Lora 1167 00:51:58,210 --> 00:52:00,329 necesita unas credenciales 1168 00:52:00,329 --> 00:52:01,889 para unirse a la red ¿vale? 1169 00:52:02,309 --> 00:52:04,610 Entonces, ¿qué ocurre con esas credenciales? 1170 00:52:05,150 --> 00:52:07,570 Pues que de alguna forma se las tengo que meter en la mota. 1171 00:52:07,809 --> 00:52:08,730 ¿Cómo se las puedo meter? 1172 00:52:08,869 --> 00:52:12,349 En el propio programa, pero claro, eso no es asequible para un usuario normal, 1173 00:52:12,469 --> 00:52:16,889 para un usuario de calle, sino que tengo que darle un método alternativo. 1174 00:52:17,010 --> 00:52:18,349 ¿Cuáles son los métodos alternativos? 1175 00:52:18,349 --> 00:52:21,769 Pues una forma muy cómoda es que directamente desde su teléfono móvil 1176 00:52:21,769 --> 00:52:27,889 pueda él actualizar mediante NFC las credenciales que necesita esa mota. 1177 00:52:28,769 --> 00:52:30,630 Bueno, cuando he dicho aquí la autenticidad, 1178 00:52:30,630 --> 00:52:32,389 me he ido directamente al caso del bolso 1179 00:52:32,389 --> 00:52:34,170 pero este por ejemplo es un caso 1180 00:52:34,170 --> 00:52:36,590 de STM que permite 1181 00:52:36,590 --> 00:52:38,710 embeber, están embebidas 1182 00:52:38,710 --> 00:52:40,489 directamente las etiquetas 1183 00:52:40,489 --> 00:52:42,829 NFC en las jeringas 1184 00:52:42,829 --> 00:52:44,510 en las que se distribuyen las vacunas 1185 00:52:44,510 --> 00:52:46,849 no sé si recordáis que cuando el COVID 1186 00:52:46,849 --> 00:52:48,510 hubo bastante polémica 1187 00:52:48,510 --> 00:52:50,710 sobre si las vacunas eran genuinas 1188 00:52:50,710 --> 00:52:51,869 o eran falsas y demás 1189 00:52:51,869 --> 00:52:54,650 pues esto es uno de los casos de uso que ofrece 1190 00:52:54,650 --> 00:52:55,269 NFC 1191 00:52:55,269 --> 00:52:58,710 bueno, tipo de tarjeta, pues bienvenidos a la pesadilla 1192 00:52:59,389 --> 00:52:59,630 ¿vale? 1193 00:52:59,630 --> 00:53:14,070 Esto, como veis, como os he contado antes, viene de lejos. Entonces tenemos un montón de estándares distintos. Tenemos tipos de tarjetas diferentes, modos de funcionamiento de las tarjetas diferentes y tecnologías de señales y protocolos también diferentes. 1194 00:53:14,070 --> 00:53:15,989 ¿vale? entonces si me fijo 1195 00:53:15,989 --> 00:53:17,489 en esta última parte de aquí 1196 00:53:17,489 --> 00:53:19,949 que son los protocolos, pues tengo 1197 00:53:19,949 --> 00:53:22,170 NFC A, B, F 1198 00:53:22,170 --> 00:53:23,150 y V ¿vale? 1199 00:53:23,849 --> 00:53:26,050 ¿el F qué es? pues el F es el 1200 00:53:26,050 --> 00:53:27,769 de Celica, el de Sony ¿vale? 1201 00:53:28,269 --> 00:53:29,849 el A es el que usa el Miller 1202 00:53:29,849 --> 00:53:32,070 modificado y el B es el que usa Manchester 1203 00:53:32,070 --> 00:53:33,769 por eso antes os he dado 1204 00:53:33,769 --> 00:53:36,030 se está fastidiando ahí con los métodos de colorificación 1205 00:53:36,030 --> 00:53:37,949 ¿vale? para que entendáis esto 1206 00:53:37,949 --> 00:53:40,030 para que entendáis que una NFC A 1207 00:53:40,030 --> 00:53:41,849 utiliza Miller modificado 1208 00:53:41,849 --> 00:53:43,829 una NFC B utiliza 1209 00:53:43,829 --> 00:53:45,769 Manchester, una F 1210 00:53:45,769 --> 00:53:47,909 usa Félica, que Félica es Manchester 1211 00:53:47,909 --> 00:53:49,949 y luego las últimas que han salido 1212 00:53:49,949 --> 00:53:51,730 son las NFC5 1213 00:53:51,730 --> 00:53:53,829 estas utilizan 1214 00:53:53,829 --> 00:53:55,289 el método 1 out of 4 1215 00:53:55,289 --> 00:53:57,670 y esta es por ejemplo la que vamos a usar aquí hoy 1216 00:53:57,670 --> 00:53:59,449 que es la ST25 1217 00:53:59,449 --> 00:54:01,550 estas son las últimas que han surgido 1218 00:54:01,550 --> 00:54:03,829 estos son los protocolos de comunicaciones 1219 00:54:04,349 --> 00:54:06,030 o si lo queréis 1220 00:54:06,030 --> 00:54:06,690 ver de otra forma 1221 00:54:06,690 --> 00:54:09,730 cómo se codifica la información 1222 00:54:09,730 --> 00:54:11,690 es esta última columna 1223 00:54:11,690 --> 00:54:13,730 que tengo aquí, pero aparte de eso 1224 00:54:13,730 --> 00:54:16,010 como os digo, tenemos tipos de tarjetas 1225 00:54:16,010 --> 00:54:17,929 las tarjetas pueden ser de tipo 1, 2 1226 00:54:17,929 --> 00:54:19,869 3 o 4, y luego tenemos 1227 00:54:19,869 --> 00:54:21,909 también modos de operación, es decir 1228 00:54:21,909 --> 00:54:23,730 podemos tener un modo de operación en el que 1229 00:54:23,730 --> 00:54:25,289 tenemos un lector escritor 1230 00:54:25,289 --> 00:54:27,650 que podría ser por ejemplo vuestro teléfono móvil 1231 00:54:27,650 --> 00:54:30,010 y una tarjeta 1232 00:54:30,010 --> 00:54:32,269 o bien simplemente un iniciador 1233 00:54:32,269 --> 00:54:34,010 y una tarjeta 1234 00:54:34,550 --> 00:54:36,130 pues esos son los modos de operación 1235 00:54:36,130 --> 00:54:37,150 que tenemos en NFF 1236 00:54:37,150 --> 00:54:39,690 las 1 1237 00:54:39,690 --> 00:54:41,530 que son las classic 1238 00:54:41,530 --> 00:54:43,369 este tipo de tarjetas 1239 00:54:43,369 --> 00:54:45,170 ese tipo de tarjetas 1240 00:54:45,170 --> 00:54:46,630 han generado mucha polémica 1241 00:54:46,630 --> 00:54:47,909 porque hay un montón de gente por ahí 1242 00:54:47,909 --> 00:54:50,170 diciendo que puede clonar tarjetas 1243 00:54:50,170 --> 00:54:51,170 NFC 1244 00:54:51,170 --> 00:54:53,730 si es verdad que se pueden clonar 1245 00:54:53,730 --> 00:54:55,530 pero son solamente las tarjetas estas 1246 00:54:55,530 --> 00:54:56,309 las de tipo 1 1247 00:54:56,309 --> 00:54:57,829 las clásicas 1248 00:54:57,829 --> 00:55:00,429 ¿qué ha ocurrido con esas tarjetas? 1249 00:55:00,530 --> 00:55:01,309 pues lo que ha ocurrido 1250 00:55:01,309 --> 00:55:02,630 es que el algoritmo de encriptación 1251 00:55:02,630 --> 00:55:03,369 que utilizan 1252 00:55:03,369 --> 00:55:06,429 pues se ha filtrado 1253 00:55:06,429 --> 00:55:07,829 y como se ha filtrado 1254 00:55:07,829 --> 00:55:09,250 ya cualquiera puede decodificar 1255 00:55:09,250 --> 00:55:10,130 esas tarjetas 1256 00:55:10,130 --> 00:55:11,469 y como son equipos 1257 00:55:11,469 --> 00:55:13,349 que no se pueden actualizar 1258 00:55:13,349 --> 00:55:16,329 pues ahora mismo cualquiera puede clonar una tarjeta 1259 00:55:16,329 --> 00:55:18,050 de tipo Classic 1260 00:55:18,050 --> 00:55:20,869 una Mi Fire Classic 1261 00:55:20,869 --> 00:55:22,510 se puede clonar 1262 00:55:22,510 --> 00:55:23,230 sin ningún problema 1263 00:55:23,230 --> 00:55:26,510 básicamente lo que tenemos son dos estándares ISO 1264 00:55:26,510 --> 00:55:28,550 el 14443 1265 00:55:28,550 --> 00:55:30,070 y el 15693 1266 00:55:30,070 --> 00:55:31,190 entonces 1267 00:55:31,190 --> 00:55:33,530 está también el de Felica 1268 00:55:33,530 --> 00:55:35,570 que es este de aquí que tiene su propio estándar 1269 00:55:35,570 --> 00:55:37,110 el GIS este X 1270 00:55:37,110 --> 00:55:38,829 pero el resto de tarjetas son 1271 00:55:38,829 --> 00:55:40,630 o 14443 1272 00:55:40,630 --> 00:55:43,289 que son las de tipo 1, tipo 2 y tipo 4 1273 00:55:43,289 --> 00:55:48,409 o las de 15693, que son las nuevas, que son las de tipo 5, ¿vale? 1274 00:55:48,409 --> 00:55:54,090 Lo que voy a utilizar yo hoy aquí es de tipo 5, que es el fabricante SNXP, ¿vale? 1275 00:55:54,090 --> 00:55:56,329 Que desarrolla ese protocolo. 1276 00:55:56,869 --> 00:55:59,030 Entonces, las diferencias, pues las podéis ver aquí. 1277 00:55:59,150 --> 00:56:01,030 Hay diferencias en todos los sentidos. 1278 00:56:01,150 --> 00:56:05,289 Pues el tamaño de la memoria que tienen, pues veis, las primeras tenían muy poca memoria, 1279 00:56:05,730 --> 00:56:07,329 solo 96 bytes, ¿vale? 1280 00:56:07,329 --> 00:56:11,369 No perdáis de vista que una tarjeta NFC en realidad es una memoria EEPROM 1281 00:56:11,369 --> 00:56:13,809 que podemos leer mediante radio, ¿vale? 1282 00:56:13,989 --> 00:56:15,769 Entonces, ¿qué tamaño tenía esa memoria EEPROM? 1283 00:56:15,829 --> 00:56:17,349 96 bytes, ¿vale? 1284 00:56:18,130 --> 00:56:20,030 Incluso algunas tenían menos, 48. 1285 00:56:20,590 --> 00:56:23,630 Por eso, precisamente, Felica trató de diferenciarse 1286 00:56:23,630 --> 00:56:25,989 creando las suyas que tenían hasta 2K. 1287 00:56:26,550 --> 00:56:28,710 Eso ha cambiado bastante, ¿vale? 1288 00:56:28,710 --> 00:56:30,230 Y ahora ya las tenemos de 32K, 1289 00:56:30,329 --> 00:56:33,389 o la que voy a usar yo hoy aquí, pues de 64K. 1290 00:56:33,690 --> 00:56:36,710 Por ejemplo, si vosotros escaneáis vuestro DNI 1291 00:56:36,710 --> 00:56:40,809 con el móvil, pues vais a ver que os dice 1292 00:56:40,809 --> 00:56:42,329 qué tipo de tarjeta es 1293 00:56:42,329 --> 00:56:44,030 no sé si tengo yo aquí 1294 00:56:44,030 --> 00:56:46,010 si tengo tarjetas 1295 00:56:46,010 --> 00:56:50,360 estáis viendo todavía mi teléfono móvil 1296 00:56:50,360 --> 00:56:50,679 ¿verdad? 1297 00:56:52,099 --> 00:56:53,119 o me estáis viendo a mí 1298 00:56:53,119 --> 00:56:55,280 chiquitito, el teléfono móvil 1299 00:56:55,280 --> 00:56:57,980 vale, pues entonces 1300 00:56:57,980 --> 00:57:00,280 lo que voy a hacer es abrir 1301 00:57:00,280 --> 00:57:02,119 esto lo podéis vosotros instalar también 1302 00:57:02,119 --> 00:57:03,820 hay aplicaciones para el teléfono móvil 1303 00:57:03,820 --> 00:57:06,420 hay una muy famosa que es NFC Tools 1304 00:57:06,420 --> 00:57:08,079 y yo con esa 1305 00:57:08,079 --> 00:57:10,239 lo que puedo hacer es leerme una tarjeta 1306 00:57:10,239 --> 00:57:12,260 entonces tengo aquí una tarjeta 1307 00:57:12,380 --> 00:57:17,300 esta que voy a usar es precisamente las tarjetas que se usan para clonar vale no vale cualquier 1308 00:57:17,300 --> 00:57:23,719 tarjeta para para clonar hace falta unas tarjetas especiales que se llaman magic cards es esta como 1309 00:57:23,719 --> 00:57:32,440 veis es imposible distinguir de una normal y si yo la leo me dice bueno no veréis nada pero me dice 1310 00:57:32,440 --> 00:57:39,980 que ha detectado una nueva tarjeta me dice que esa tarjeta es una 14.443 y utiliza tecnología 1311 00:57:39,980 --> 00:57:41,960 MFCA, ¿vale? 1312 00:57:41,960 --> 00:57:44,019 Es de tipo A. Me dice el número de serie, 1313 00:57:44,159 --> 00:57:45,940 el fabricante, la información 1314 00:57:45,940 --> 00:57:47,820 de la memoria, pues tiene un CAD de memoria, 1315 00:57:48,199 --> 00:57:49,880 el formato de los datos, esta es una 1316 00:57:49,880 --> 00:57:51,980 MIFAR Classic, así es que esta se puede 1317 00:57:51,980 --> 00:57:53,940 clonar sin ningún problema. De hecho, ¿veis? 1318 00:57:54,000 --> 00:57:55,860 Me dice a mí que es de escritura 1319 00:57:55,860 --> 00:57:57,880 posible, ¿vale? Y de hecho aquí 1320 00:57:57,880 --> 00:58:00,000 ya he guardado algo, ya he guardado yo algo, he guardado 1321 00:58:00,000 --> 00:58:01,739 la página web de Google, ¿vale? 1322 00:58:02,079 --> 00:58:03,980 Pues esto es una típica tarjeta 1323 00:58:03,980 --> 00:58:05,980 Magic, que es una tarjeta que me 1324 00:58:05,980 --> 00:58:07,860 permite clonar cualquier otra 1325 00:58:07,860 --> 00:58:09,780 tarjeta que sea Classic, 1326 00:58:09,980 --> 00:58:11,739 ¿Vale? Entonces, ¿qué tarjetas 1327 00:58:11,739 --> 00:58:13,539 Classic hay? Pues no hay muchas. 1328 00:58:13,860 --> 00:58:15,679 ¿Vale? Ya, por fortuna, se han ido 1329 00:58:15,679 --> 00:58:17,900 quitando del mercado y apenas quedan. 1330 00:58:18,099 --> 00:58:19,699 No penséis que vais a poder clonar 1331 00:58:19,699 --> 00:58:21,980 vuestro DNI, ni vais a poder clonar 1332 00:58:21,980 --> 00:58:23,900 la tarjeta 1333 00:58:23,900 --> 00:58:25,579 de la biblioteca. 1334 00:58:26,179 --> 00:58:27,619 Me parece que de las pocas que quedan 1335 00:58:27,619 --> 00:58:29,659 son las de Renfe. Las tarjetas estas de Renfe 1336 00:58:29,659 --> 00:58:31,760 de cartón, creo que son Mifal Classic 1337 00:58:31,760 --> 00:58:33,739 todavía. Y bueno, probablemente también 1338 00:58:33,739 --> 00:58:35,719 si tenéis este tipo de tarjetas para acceder 1339 00:58:35,719 --> 00:58:37,500 a vuestra urbanización, 1340 00:58:38,039 --> 00:58:39,639 probablemente también sean Classic. 1341 00:58:39,639 --> 00:58:41,719 ¿vale? o al gimnasio, pues probablemente 1342 00:58:41,719 --> 00:58:43,440 también lo seré, y esas como os digo 1343 00:58:43,440 --> 00:58:45,079 se pueden clonar sin ningún problema 1344 00:58:45,079 --> 00:58:47,719 ¿qué modos de funcionamiento tenemos en NCC? 1345 00:58:48,440 --> 00:58:49,900 pues en lector-escritor 1346 00:58:49,900 --> 00:58:51,920 ¿vale? que es simplemente un dispositivo 1347 00:58:51,920 --> 00:58:53,760 que sería por ejemplo cuando vais 1348 00:58:53,760 --> 00:58:55,900 a Decathlon y metéis los 1349 00:58:55,900 --> 00:58:57,599 lo que habéis comprado lo metéis 1350 00:58:57,599 --> 00:58:59,699 dentro del cajón y os lo va detectando 1351 00:58:59,699 --> 00:59:01,699 directamente ¿vale? pues eso tiene 1352 00:59:01,699 --> 00:59:03,539 un algoritmo de anticolisión 1353 00:59:03,539 --> 00:59:05,559 que eso es muy interesante, porque vosotros 1354 00:59:05,559 --> 00:59:06,940 metéis todos los productos allí 1355 00:59:06,940 --> 00:59:08,659 del tirón en el cajón 1356 00:59:08,659 --> 00:59:10,579 y él poco a poco los va detectando 1357 00:59:10,579 --> 00:59:12,440 sabéis que hay otros sitios, otros comercios 1358 00:59:12,440 --> 00:59:14,960 en los que no te dejan poner los productos 1359 00:59:14,960 --> 00:59:16,840 todos a la vez, hay que irlos poniendo 1360 00:59:16,840 --> 00:59:18,159 de uno en uno, ¿por qué es? 1361 00:59:18,400 --> 00:59:20,519 porque están utilizando un protocolo que no incluye 1362 00:59:20,519 --> 00:59:22,280 anticolisión 1363 00:59:22,280 --> 00:59:24,719 luego otro detalle muy interesante 1364 00:59:24,719 --> 00:59:26,880 es el de emulación de tarjeta 1365 00:59:26,880 --> 00:59:28,880 ese es justo el que estáis usando cada vez que vais 1366 00:59:28,880 --> 00:59:30,300 a pagar con el teléfono móvil 1367 00:59:30,300 --> 00:59:32,840 cuando estáis pagando, lo que estáis haciendo realmente 1368 00:59:32,840 --> 00:59:34,579 es emular con vuestro teléfono móvil 1369 00:59:34,579 --> 00:59:36,739 vuestra tarjeta NFC 1370 00:59:36,739 --> 00:59:39,960 de crédito, ¿vale? Vuestro teléfono móvil está emulando 1371 00:59:39,960 --> 00:59:42,679 a vuestra tarjeta de crédito. Luego 1372 00:59:42,679 --> 00:59:45,659 el modo peer-to-peer de igual a igual, que ahí tenemos dos 1373 00:59:45,659 --> 00:59:47,679 dispositivos activos, ¿vale? 1374 00:59:48,539 --> 00:59:51,880 Y luego hay un modo que no es para transmitir datos 1375 00:59:51,880 --> 00:59:54,179 sino que es simplemente para cargar dispositivos. 1376 00:59:54,840 --> 00:59:57,500 Tú puedes cargar, por ejemplo, un dispositivo que 1377 00:59:57,500 --> 01:00:00,159 consuma muy poco, una muñequera o algo parecido, 1378 01:00:00,579 --> 01:00:03,760 lo puedes cargar directamente desde el teléfono móvil. 1379 01:00:04,280 --> 01:00:04,360 ¿Vale? 1380 01:00:06,739 --> 01:00:08,400 lo que os decía, protocolos 1381 01:00:08,400 --> 01:00:10,480 daos cuenta, volvemos a esta diapositiva 1382 01:00:10,480 --> 01:00:12,460 hemos dicho, protocolos 1383 01:00:12,460 --> 01:00:14,760 A, B y F, tipos de tarjetas 1384 01:00:14,760 --> 01:00:16,880 a la izquierda, 1, 2, 3, 4 y 5 1385 01:00:16,880 --> 01:00:18,780 ¿vale? que serían los que tenemos 1386 01:00:18,780 --> 01:00:20,420 aquí, 1, 2, 3, 4 y 5 1387 01:00:20,420 --> 01:00:22,619 ahora voy a los protocolos, pues resulta 1388 01:00:22,619 --> 01:00:24,900 que los protocolos están vinculados 1389 01:00:24,900 --> 01:00:26,579 a los tipos de tarjeta, o sea, no puedes 1390 01:00:26,579 --> 01:00:28,940 usar cualquier protocolo en cualquier tarjeta 1391 01:00:28,940 --> 01:00:30,639 sino que dependiendo de la tarjeta 1392 01:00:30,639 --> 01:00:32,639 que tengas, por ejemplo, si tengo una tarjeta 1 1393 01:00:32,639 --> 01:00:34,639 puedo usar el tipo A 1394 01:00:34,639 --> 01:00:36,440 con anticolisión, ¿vale? 1395 01:00:36,440 --> 01:00:39,159 y no puedo usar otra cosa, si tengo el tipo 2 1396 01:00:39,159 --> 01:00:42,340 o el tipo 4, sin embargo, puedo utilizar con el tipo 4 1397 01:00:42,340 --> 01:00:45,099 tanto el tipo A como el tipo B, y las de Felica 1398 01:00:45,099 --> 01:00:47,900 que son las japonesas, esas van a su bola 1399 01:00:47,900 --> 01:00:51,199 esas son las de Sony, y esas van con tarjetas tipo 3 1400 01:00:51,199 --> 01:00:54,559 y en el tipo F, solamente podemos usar 1401 01:00:54,559 --> 01:00:57,639 el protocolo tipo F, bien, pues esas son 1402 01:00:57,639 --> 01:01:00,539 como os digo, la relación que existe entre los protocolos 1403 01:01:00,539 --> 01:01:03,199 NFC y los tipos de tarjeta, entonces 1404 01:01:03,199 --> 01:01:06,000 en función del tipo de tarjeta que tú tengas 1405 01:01:06,000 --> 01:01:19,099 No lo habréis visto, pero cuando he leído aquí con el móvil, me está diciendo que esta es una NXP MiFar Classic. Es decir, mi tarjeta es esta de aquí. Es una de tipo 1. Eso es lo que me está diciendo aquí, ¿vale? 1406 01:01:19,539 --> 01:01:31,300 Bueno, los protocolos, pues igual, aquí tenemos varios detalles de cómo funcionan, no tiene mayor interés, un poco lo que os he estado contando, cómo funciona el lector y cómo funciona la tarjeta, abajo, ¿vale? 1407 01:01:31,420 --> 01:01:45,900 Veis que el lector siempre va a 13,56 MHz y sin embargo la tarjeta crea una subportadora, ¿vale? Esa subportadora es la que es de una 16-saba parte, ¿vale? O en el caso de las felicas, de las japonesas, una 32-saba parte. 1408 01:01:45,900 --> 01:01:47,619 bueno, esto no tiene mayor interés 1409 01:01:47,619 --> 01:01:50,139 salvo entender que existe 1410 01:01:50,139 --> 01:01:52,000 y lo que pretendo con esto 1411 01:01:52,000 --> 01:01:53,960 es dejar muy claro que es que existen muchos tipos 1412 01:01:53,960 --> 01:01:56,079 de tarjetas NFC, que no son todas 1413 01:01:56,079 --> 01:01:57,579 iguales, entonces si vais a 1414 01:01:57,579 --> 01:01:59,900 comprar tarjetas NFC 1415 01:01:59,900 --> 01:02:01,960 tened cuidado, ¿vale? porque tenéis 1416 01:02:01,960 --> 01:02:03,559 que saber muy bien lo que estáis comprando 1417 01:02:03,559 --> 01:02:05,900 entonces, por ejemplo, aquí tenéis el modelo 1418 01:02:05,900 --> 01:02:07,639 que está basado en una arquitectura OSI 1419 01:02:07,639 --> 01:02:09,900 entonces veis que la capa superior 1420 01:02:09,900 --> 01:02:11,699 es la que a mí más me interesa 1421 01:02:11,699 --> 01:02:13,820 es una capa de aplicación, esto es lo que nos 1422 01:02:13,820 --> 01:02:15,679 trajo el foro NFC 1423 01:02:15,679 --> 01:02:41,639 El foro NFC lo que dijo es, estamos hasta las narices de tantas tecnologías de tarjetas, vamos a unificarlas para que todas ellas, sea la tarjeta que sea, puedan almacenar información en un formato específico que se llama NDF. Este de aquí, no sé si lo estaréis viendo porque se ve muy pequeñito, en NDF. Y eso vale para las 443, para la Félica, para cualquiera, como estáis viendo aquí. 1424 01:02:41,639 --> 01:02:44,320 bien, pues eso es lo que interesa entender de esto 1425 01:02:44,320 --> 01:02:46,400 aquí os he puesto otra imagen para que veáis 1426 01:02:46,400 --> 01:02:48,239 un poco cómo funciona la parte de la seguridad 1427 01:02:48,239 --> 01:02:50,239 la seguridad está garantizada 1428 01:02:50,239 --> 01:02:52,260 las tarjetas, tú puedes 1429 01:02:52,260 --> 01:02:54,460 escribir algo y que solamente se pueda 1430 01:02:54,460 --> 01:02:56,079 leer si conoces la contraseña 1431 01:02:56,079 --> 01:02:58,519 puedes impedir que se pueda escribir 1432 01:02:58,519 --> 01:03:00,280 si no se sabe la contraseña, es decir 1433 01:03:00,280 --> 01:03:02,460 es una memoria, como os decía antes, es simplemente 1434 01:03:02,460 --> 01:03:04,320 una memoria en la que tú puedes 1435 01:03:04,320 --> 01:03:06,260 poner contraseñas tanto para leer 1436 01:03:06,260 --> 01:03:08,300 como para escribir, o no poner 1437 01:03:08,300 --> 01:03:10,400 contraseñas y permitir que se pueda leer 1438 01:03:10,400 --> 01:03:12,960 y escribir libremente 1439 01:03:12,960 --> 01:03:14,599 ¿vale? entonces bueno 1440 01:03:14,599 --> 01:03:16,679 aquí os he puesto unas cuantas de estas 1441 01:03:16,679 --> 01:03:18,820 diapositivas, aquí veis como funciona esto 1442 01:03:18,820 --> 01:03:21,059 pues tenemos las capas más bajas 1443 01:03:21,059 --> 01:03:23,019 ¿vale? esas capas 1444 01:03:23,019 --> 01:03:25,119 más bajas, esto sería el SP32 1445 01:03:25,119 --> 01:03:26,619 por ejemplo, lo que tenemos aquí abajo 1446 01:03:26,619 --> 01:03:28,820 ¿vale? el SP32 1447 01:03:28,820 --> 01:03:30,940 ¿qué tiene? pues tiene comunicaciones 1448 01:03:30,940 --> 01:03:33,159 I2C y esas comunicaciones 1449 01:03:33,159 --> 01:03:34,699 I2C ¿para qué las voy a usar? 1450 01:03:34,940 --> 01:03:36,619 para conectarme con un 1451 01:03:36,619 --> 01:03:38,780 ST25 ¿vale? el ST25 1452 01:03:38,780 --> 01:03:39,960 es el circuito de radio 1453 01:03:39,960 --> 01:03:42,940 y entonces lo que va a ocurrir es que está en la parte 1454 01:03:42,940 --> 01:03:44,960 por así decirlo, la parte de hardware 1455 01:03:44,960 --> 01:03:47,119 luego, por encima de eso 1456 01:03:47,119 --> 01:03:48,699 tengo el stack TCP y IP 1457 01:03:48,699 --> 01:03:50,860 que es esto de aquí arriba, perdón, el stack 1458 01:03:50,860 --> 01:03:52,440 el stack NFC 1459 01:03:52,440 --> 01:03:54,699 ¿vale? que es esto de arriba, que esto ya es 1460 01:03:54,699 --> 01:03:56,599 por así decirlo, software, más parte 1461 01:03:56,599 --> 01:03:58,739 de software, y como ves 1462 01:03:58,739 --> 01:04:00,460 aquí, pues lo que se hace es que 1463 01:04:00,460 --> 01:04:02,920 se empaquetan los datos, luego dependiendo 1464 01:04:02,920 --> 01:04:04,739 del tipo de protocolo que se utilice 1465 01:04:04,739 --> 01:04:06,039 y del tipo de tarjeta 1466 01:04:06,039 --> 01:04:08,639 eso ya me da exactamente igual, porque tengo 1467 01:04:08,639 --> 01:04:10,719 una capa por encima, que es la capa de usuario 1468 01:04:10,719 --> 01:04:12,659 en la que yo creo esos registros 1469 01:04:12,659 --> 01:04:14,699 NDF. Yo puedo tener varios 1470 01:04:14,699 --> 01:04:16,300 registros. ¿Un registro qué es? 1471 01:04:16,519 --> 01:04:18,400 Pues un texto. Imaginaos que yo quiero 1472 01:04:18,400 --> 01:04:20,360 clavar en una tarjeta 1473 01:04:20,360 --> 01:04:22,699 NFC, pues yo 1474 01:04:22,699 --> 01:04:24,719 qué sé, como hemos visto antes, hasta 64 1475 01:04:24,719 --> 01:04:26,440 K de texto puedo guardar ahí. 1476 01:04:26,880 --> 01:04:28,719 ¿Vale? O puede ser una dirección 1477 01:04:28,719 --> 01:04:30,619 URL. Esto creo que no lo hice 1478 01:04:30,619 --> 01:04:32,420 en clase, pero yo podía pasar la etiqueta 1479 01:04:32,420 --> 01:04:34,340 NFC para que vosotros 1480 01:04:34,340 --> 01:04:36,340 os descargaseis un documento que yo tengo 1481 01:04:36,340 --> 01:04:38,500 guardado en esa tarjeta NFC. Podría 1482 01:04:38,500 --> 01:04:43,619 ser un vídeo podría ser una posición gps podría ser prácticamente cualquier dato que se os pase 1483 01:04:43,619 --> 01:04:50,820 por la cabeza eso está en la especificación vale entonces por ejemplo esta es la aplicación que no 1484 01:04:50,820 --> 01:04:56,460 habréis visto desde la webcam pero afortunadamente la tenemos aquí más en grande esta es la aplicación 1485 01:04:56,460 --> 01:05:03,099 está en fc tours que está disponible para android y para ellos y veis cuando yo escaneo una tarjeta 1486 01:05:03,099 --> 01:05:07,619 pues me está esta es la tarjeta de la bono transporte concretamente vale la tarjeta transporte 1487 01:05:07,619 --> 01:05:09,639 de la Comunidad de Madrid. Pues me está diciendo 1488 01:05:09,639 --> 01:05:11,659 qué tipo de tarjeta es. ¿Veis? Me dice 1489 01:05:11,659 --> 01:05:13,880 que es una 14443. 1490 01:05:14,219 --> 01:05:16,099 Ya no es una MIFAR Classic. 1491 01:05:16,400 --> 01:05:17,619 ¿Veis? Aquí no pone Classic, pone 1492 01:05:17,619 --> 01:05:19,659 Bestfire. Eso quiere decir que no la voy a poder 1493 01:05:19,659 --> 01:05:21,559 clonar. Si aquí pusiera MIFAR Classic 1494 01:05:21,559 --> 01:05:23,079 sí que la podría clonar. 1495 01:05:23,940 --> 01:05:24,980 Luego me está diciendo aquí 1496 01:05:24,980 --> 01:05:27,639 qué tecnologías utiliza. ¿Vale? Pues 1497 01:05:27,639 --> 01:05:29,860 el NFCA, el NDF, 1498 01:05:30,079 --> 01:05:31,760 que es esta que os estoy diciendo de 1499 01:05:31,760 --> 01:05:35,320 de los registros NDF, 1500 01:05:35,480 --> 01:05:37,099 y aparte tiene su ISODEP, 1501 01:05:37,099 --> 01:05:39,179 que es un sistema encriptado 1502 01:05:39,179 --> 01:05:41,539 ahí viene el número de serie de mi abono de transportes 1503 01:05:41,539 --> 01:05:42,980 el fabricante y demás 1504 01:05:42,980 --> 01:05:46,000 estas tarjetas como os digo no se pueden clonar 1505 01:05:46,000 --> 01:05:47,300 pero si que las podemos leer 1506 01:05:47,300 --> 01:05:49,260 y las podemos investigar y es muy interesante 1507 01:05:49,260 --> 01:05:51,260 yo aquí lo he hecho con NFC Tools 1508 01:05:51,260 --> 01:05:52,940 hay otra aplicación que se llama 1509 01:05:52,940 --> 01:05:55,300 NFC Taginfo que sirve para prácticamente 1510 01:05:55,300 --> 01:05:55,860 lo mismo 1511 01:05:55,860 --> 01:05:58,679 entonces ya me voy a centrar solamente 1512 01:05:58,679 --> 01:06:00,900 en esto, en NDEF 1513 01:06:00,900 --> 01:06:03,179 NDEF son estos registros 1514 01:06:03,179 --> 01:06:04,079 que os estaba diciendo 1515 01:06:04,079 --> 01:06:06,980 y esos registros pues pueden ser principalmente 1516 01:06:06,980 --> 01:06:09,659 textos, cualquier URL 1517 01:06:09,659 --> 01:06:10,980 puede ser un póster 1518 01:06:10,980 --> 01:06:13,119 un SmartPoster 1519 01:06:13,119 --> 01:06:14,559 no me refiero a un póster 1520 01:06:14,559 --> 01:06:18,039 de un grupo de música 1521 01:06:18,039 --> 01:06:19,159 o de un equipo de fútbol 1522 01:06:19,159 --> 01:06:20,800 no me refiero a un póster 1523 01:06:20,800 --> 01:06:24,139 un póster en el que si alguien pone 1524 01:06:24,139 --> 01:06:26,039 el teléfono móvil pues le da por ejemplo 1525 01:06:26,039 --> 01:06:27,940 el horario de los autobuses que van a pasar 1526 01:06:27,940 --> 01:06:28,739 por ese póster 1527 01:06:28,739 --> 01:06:31,420 puede ser también una firma 1528 01:06:31,420 --> 01:06:33,739 esto es lo que os decía antes para identificar 1529 01:06:33,739 --> 01:06:36,159 precisamente que el bolso que te has comprado 1530 01:06:36,159 --> 01:06:37,940 o que la vacuna es una vacuna 1531 01:06:37,940 --> 01:06:39,880 genuina. O puede ser que esto 1532 01:06:39,880 --> 01:06:42,199 es muy interesante, las credenciales 1533 01:06:42,199 --> 01:06:43,900 para conectarte con una 1534 01:06:43,900 --> 01:06:45,760 red Bluetooth o una red Wi-Fi o 1535 01:06:45,760 --> 01:06:47,980 una red Thread, lo que estábamos hablando antes. 1536 01:06:48,179 --> 01:06:49,840 Yo puedo crear aquí un Hangover 1537 01:06:49,840 --> 01:06:51,460 de tal forma que un usuario 1538 01:06:51,460 --> 01:06:53,719 escanea la etiqueta NFC de una 1539 01:06:53,719 --> 01:06:55,739 mota y automáticamente esa mota 1540 01:06:55,739 --> 01:06:57,320 ya se da de alta por Thread 1541 01:06:57,320 --> 01:06:58,739 en ese controlador. 1542 01:06:59,519 --> 01:07:01,800 Bueno, aquí tenéis todas las 1543 01:07:01,800 --> 01:07:03,679 opciones, veis que pueden ser vídeos, pueden ser 1544 01:07:03,679 --> 01:07:05,719 archivos, tú puedes guardar lo que quieras, direcciones 1545 01:07:05,719 --> 01:07:07,739 de correo electrónico, entonces es una 1546 01:07:07,739 --> 01:07:09,920 forma muy cómoda de intercambiarse 1547 01:07:09,920 --> 01:07:11,840 de intercambiarse información 1548 01:07:11,840 --> 01:07:13,679 probablemente lo hayáis hecho 1549 01:07:13,679 --> 01:07:15,940 alguna vez, otras veces nos pasábamos las tarjetas 1550 01:07:15,940 --> 01:07:17,880 de contacto, tarjetas impresas 1551 01:07:17,880 --> 01:07:19,340 en cartulina con nuestros nombres 1552 01:07:19,340 --> 01:07:21,739 los nombres de nuestras empresas, el cargo que 1553 01:07:21,739 --> 01:07:23,820 ostentábamos, el teléfono y demás 1554 01:07:23,820 --> 01:07:25,760 pues ahora eso mismo se hace con el teléfono 1555 01:07:25,760 --> 01:07:27,599 móvil y es gracias a este formato 1556 01:07:27,599 --> 01:07:28,980 al formato NDF 1557 01:07:28,980 --> 01:07:31,500 en una misma tarjeta 1558 01:07:31,500 --> 01:07:33,000 NFC 1559 01:07:33,000 --> 01:07:35,280 tú puedes tener varios registros 1560 01:07:35,280 --> 01:07:36,420 NDF, ¿vale? 1561 01:07:36,659 --> 01:07:39,139 pero esto es un poquito lioso 1562 01:07:39,139 --> 01:07:41,039 ¿por qué? porque tú tienes que 1563 01:07:41,039 --> 01:07:42,920 indicar cuándo empieza 1564 01:07:42,920 --> 01:07:44,980 el mensaje y cuándo termina el 1565 01:07:44,980 --> 01:07:46,960 mensaje, ¿vale? entonces vais a ver en el ejemplo 1566 01:07:46,960 --> 01:07:48,840 que voy a hacer después, vais a ver que 1567 01:07:48,840 --> 01:07:50,400 si yo guardo varios registros 1568 01:07:50,400 --> 01:07:52,920 el primer registro lo tengo que marcar como 1569 01:07:52,920 --> 01:07:54,940 registro inicial y el último 1570 01:07:54,940 --> 01:07:57,039 registro lo tengo que marcar como registro 1571 01:07:57,039 --> 01:07:59,119 final y el registro del medio lo tengo 1572 01:07:59,119 --> 01:08:01,099 que marcar como que no es ni inicial 1573 01:08:01,099 --> 01:08:02,099 ni final 1574 01:08:02,099 --> 01:08:05,960 entonces bueno, eso lo vais a ver más claro en el ejemplo 1575 01:08:05,960 --> 01:08:08,980 entonces esto es un ejercicio sencillo 1576 01:08:08,980 --> 01:08:11,780 lo que voy a hacer es guardar en una etiqueta NFC 1577 01:08:11,780 --> 01:08:14,360 un registro, voy a mandar por ejemplo 1578 01:08:14,360 --> 01:08:17,359 una dirección web, bueno voy a ver 1579 01:08:17,359 --> 01:08:19,640 porque igual ahora no tengo aquí ninguna tarjeta 1580 01:08:19,640 --> 01:08:21,939 bueno 1581 01:08:21,939 --> 01:08:24,520 pues creo que no las tengo 1582 01:08:24,520 --> 01:08:30,020 estas son las de generación 2 1583 01:08:30,020 --> 01:08:31,760 y 1584 01:08:31,760 --> 01:08:34,180 estas son 1585 01:08:34,180 --> 01:08:35,720 las syntax normales 1586 01:08:35,720 --> 01:08:38,300 voy a poner ahora debajo del móvil 1587 01:08:38,300 --> 01:08:39,260 una tarjeta normal 1588 01:08:39,260 --> 01:09:06,590 vale, entonces 1589 01:09:06,590 --> 01:09:09,170 con la 1590 01:09:09,170 --> 01:09:10,810 aplicación esta que os estaba diciendo 1591 01:09:10,810 --> 01:09:12,149 con el NFC Tools 1592 01:09:12,149 --> 01:09:14,890 vale, pongo ahí 1593 01:09:14,890 --> 01:09:16,829 la tarjeta, coloco el teléfono 1594 01:09:16,829 --> 01:09:18,949 móvil encima y veis que lo ha actualizado 1595 01:09:18,949 --> 01:09:20,710 me dice que en este caso 1596 01:09:20,710 --> 01:09:22,609 tengo una tarjeta 1597 01:09:22,609 --> 01:09:25,029 Ultralight, NFCA, 1598 01:09:25,590 --> 01:09:26,329 lo que sea, ¿vale? 1599 01:09:26,550 --> 01:09:28,590 Voy aquí, no sé si lo estaréis viendo, 1600 01:09:28,810 --> 01:09:29,810 donde pone escribir, 1601 01:09:30,949 --> 01:09:32,090 voy a empezar a ponerlo más alto, 1602 01:09:32,550 --> 01:09:34,510 y digo que quiero añadir un registro, ¿veis? 1603 01:09:34,930 --> 01:09:36,850 Y los registros pueden ser 1604 01:09:36,850 --> 01:09:38,569 de un montón de tipos. Pueden ser textos, 1605 01:09:39,109 --> 01:09:40,630 pueden ser URLs, ¿vale? 1606 01:09:40,750 --> 01:09:42,090 URLs personalizadas, 1607 01:09:42,750 --> 01:09:45,069 vídeos, archivos, correos electrónicos, 1608 01:09:45,590 --> 01:09:46,789 para enviar 1609 01:09:46,789 --> 01:09:48,750 un SNS directamente a una dirección, 1610 01:09:48,750 --> 01:09:50,229 ¿vale? Pueden ser unas coordenadas, 1611 01:09:50,229 --> 01:09:52,470 una llamada de emergencia para que llamen 1612 01:09:52,470 --> 01:09:54,130 si os pase algo, puede ser 1613 01:09:54,130 --> 01:09:56,449 vuestra dirección de bitcoin 1614 01:09:56,449 --> 01:09:58,029 si usáis bitcoin, lo que sea 1615 01:09:58,029 --> 01:10:00,189 puede ser un hangover, como veis abajo 1616 01:10:00,189 --> 01:10:02,310 de bluetooth o de wifi, entonces yo aquí 1617 01:10:02,310 --> 01:10:04,390 voy a hacer algo sencillo que es guardar un url 1618 01:10:04,390 --> 01:10:06,489 entonces veis que por defecto 1619 01:10:06,489 --> 01:10:07,949 no sé si veis algo, espero que sí 1620 01:10:07,949 --> 01:10:10,369 podéis poner el protocolo 1621 01:10:10,369 --> 01:10:12,390 que queréis usar, imaginaos que yo quiero guardar 1622 01:10:12,390 --> 01:10:14,449 aquí la página 1623 01:10:14,449 --> 01:10:15,949 web de Duca Madrid, pues yo pongo 1624 01:10:15,949 --> 01:10:17,710 https y pongo aquí 1625 01:10:17,710 --> 01:10:27,590 www.educa.madrid.org 1626 01:10:27,590 --> 01:10:31,750 y aquí le digo validar 1627 01:10:31,750 --> 01:10:37,340 ahora le doy a escribir 1628 01:10:37,340 --> 01:10:38,539 aquí veis que pone escribir 1629 01:10:38,539 --> 01:10:39,239 no sé si lo veréis 1630 01:10:39,239 --> 01:10:39,939 pone escribir 1631 01:10:39,939 --> 01:10:42,539 me dice acerque a la tarjeta 1632 01:10:42,539 --> 01:10:43,760 lo acerco a la tarjeta 1633 01:10:43,760 --> 01:10:45,380 y veis ya me dice que lo ha escrito 1634 01:10:45,380 --> 01:10:47,039 entonces si yo ahora 1635 01:10:47,039 --> 01:10:49,439 le pasase esta tarjeta a cualquier persona 1636 01:10:49,439 --> 01:10:51,380 esa persona podría venir 1637 01:10:51,380 --> 01:10:52,899 leerla con su móvil 1638 01:10:52,899 --> 01:10:54,760 y directamente 1639 01:10:54,760 --> 01:10:57,220 accedería a la página web 1640 01:10:57,220 --> 01:10:58,760 de EducaMadrid 1641 01:10:58,760 --> 01:11:01,600 quiero muy rápido 1642 01:11:01,600 --> 01:11:03,060 la coloco 1643 01:11:03,060 --> 01:11:06,899 le digo que quiero abrir con 1644 01:11:06,899 --> 01:11:08,659 Firefox y veis me sale 1645 01:11:08,659 --> 01:11:11,000 directamente la página web de EducaMadrid 1646 01:11:11,000 --> 01:11:13,100 bueno, pues igual que he hecho esto 1647 01:11:13,100 --> 01:11:14,680 igual que he grabado una dirección 1648 01:11:14,680 --> 01:11:17,159 podría haber grabado cualquier otra cosa 1649 01:11:17,159 --> 01:11:17,659 ¿vale? 1650 01:11:18,479 --> 01:11:20,619 un vídeo o cualquier otra cosa que hubiera querido 1651 01:11:20,619 --> 01:11:45,119 Y el funcionamiento es tan simple como el que estáis viendo aquí, ¿vale? Simplemente, pues eso, decir lo que quieres grabar y grabarlo. Un ejercicio curioso, si queréis hacerlo esto con los alumnos, es que ellos intenten identificar dónde está esa información, ¿vale? Si yo ahora leyera esa tarjeta, bueno, no lo voy a leer porque tardo más, lo muestro aquí, ¿vale? Si la leyera, me diría que tiene esta información, ¿vale? 1652 01:11:45,119 --> 01:12:05,979 Entonces es curioso ver con ellos como en la especificación, que os la he puesto aquí, ¿vale? Para que la podáis descargar, la tenéis aquí la especificación. En la especificación dice que el tipo 55 es el que hoy corresponde a una URL, ¿vale? Y lo que estamos viendo a continuación es justo en este caso, yo creo que había grabado aquí ibm.com. 1653 01:12:05,979 --> 01:12:19,920 Entonces, lo que estamos viendo es precisamente IBM en ASRI, ¿vale? En ASRI en esa decimal, ibm.com, ¿vale? Pues es un ejercicio que está bien para hacerlo con los alumnos, para que ellos vean cómo funcionan estos protocolos. 1654 01:12:19,920 --> 01:12:22,739 bueno, el sistema de anticolisión 1655 01:12:22,739 --> 01:12:24,819 el sistema de anticolisión es muy 1656 01:12:24,819 --> 01:12:26,859 es muy curioso 1657 01:12:26,859 --> 01:12:28,699 porque lo que ocurre 1658 01:12:28,699 --> 01:12:30,319 es que 1659 01:12:30,319 --> 01:12:32,819 el lector dice 1660 01:12:32,819 --> 01:12:34,479 ¿quién hay ahí? ¿vale? pregunta 1661 01:12:34,479 --> 01:12:36,640 a las etiquetas quienes están ahí 1662 01:12:36,640 --> 01:12:38,640 entonces las etiquetas empiezan a 1663 01:12:38,640 --> 01:12:40,619 identificarse, entonces claro 1664 01:12:40,619 --> 01:12:42,699 si mientras la 1665 01:12:42,699 --> 01:12:44,720 identificación de las etiquetas es igual 1666 01:12:44,720 --> 01:12:46,579 no hay ninguna colisión ¿vale? porque 1667 01:12:46,579 --> 01:12:47,960 todas están transmitiendo lo mismo 1668 01:12:47,960 --> 01:12:49,819 pero en el primer bit 1669 01:12:49,819 --> 01:12:51,880 en el que se diferencian las direcciones 1670 01:12:51,880 --> 01:12:53,920 de dos etiquetas se produce una interferencia 1671 01:12:53,920 --> 01:12:56,000 el lector detecta esa interferencia 1672 01:12:56,000 --> 01:12:57,439 y dice, oye por favor 1673 01:12:57,439 --> 01:12:59,500 no me digáis todas las que estáis ahí 1674 01:12:59,500 --> 01:13:01,460 solamente decidme quienes estáis ahí 1675 01:13:01,460 --> 01:13:04,039 que empezáis por esta cabecera 1676 01:13:04,039 --> 01:13:05,840 y el siguiente bit es un 1 1677 01:13:05,840 --> 01:13:07,939 y así va haciendo varias peticiones 1678 01:13:07,939 --> 01:13:09,819 hasta que consigue identificar 1679 01:13:09,819 --> 01:13:12,340 a todos los dispositivos 1680 01:13:12,340 --> 01:13:14,000 que hay ahí, a todas las tarjetas que hay ahí 1681 01:13:14,000 --> 01:13:15,579 metidas, ¿vale? pero claro 1682 01:13:15,579 --> 01:13:17,680 tener en cuenta que hay veces que 1683 01:13:17,680 --> 01:13:19,800 la anticolisión es un problema, de hecho 1684 01:13:19,800 --> 01:13:21,939 está prohibida, ¿vale? En las tarjetas 1685 01:13:21,939 --> 01:13:23,880 que son de crédito, está prohibido utilizar 1686 01:13:23,880 --> 01:13:25,720 anticolisión, porque eso podría 1687 01:13:25,720 --> 01:13:27,359 provocar que alguien 1688 01:13:27,359 --> 01:13:29,819 acercara dos tarjetas al datáfono 1689 01:13:29,819 --> 01:13:30,979 ¿vale? 1690 01:13:31,760 --> 01:13:33,619 Entonces, eso no lo podemos permitir 1691 01:13:33,619 --> 01:13:35,800 Entonces, lo que os digo, si alguien 1692 01:13:35,800 --> 01:13:37,880 intenta, si intentáis esto hacer, bueno, se habrá pasado 1693 01:13:37,880 --> 01:13:39,800 si acercáis directamente la cartera 1694 01:13:39,800 --> 01:13:41,720 y lleváis varias tarjetas, te sale un 1695 01:13:41,720 --> 01:13:43,600 aviso de que estás intentando 1696 01:13:43,600 --> 01:13:45,659 pasar más de una tarjeta de crédito, ¿vale? 1697 01:13:46,340 --> 01:13:48,840 Bueno, pues eso es como funciona el sistema de anticolisión. 1698 01:13:50,039 --> 01:13:54,140 ¿Problemas que tienes con la tecnología NFC? 1699 01:13:54,779 --> 01:13:58,520 Pues los problemas principales son que te la clonen, 1700 01:13:59,220 --> 01:14:02,619 que te hagan spoofing, que te hagan jamming, ¿vale? 1701 01:14:02,619 --> 01:14:05,100 Que te hagan airdropping o que te hagan skimming. 1702 01:14:05,800 --> 01:14:09,819 Entonces, como veis, tenemos aquí un montón de términos muy interesantes, ¿vale? 1703 01:14:10,000 --> 01:14:10,920 ¿Qué significa? 1704 01:14:11,319 --> 01:14:14,500 Bueno, el de clonar, imagino que lo conocéis de sobra. 1705 01:14:14,500 --> 01:14:17,159 clonar es simplemente duplicar 1706 01:14:17,159 --> 01:14:17,859 ¿vale? 1707 01:14:18,680 --> 01:14:20,119 es duplicar vuestra tarjeta 1708 01:14:20,119 --> 01:14:22,460 eso con las primeras, con las classic 1709 01:14:22,460 --> 01:14:24,739 era muy fácil, simplemente tú llevas la tarjeta 1710 01:14:24,739 --> 01:14:26,579 de identificación del trabajo en la cartera 1711 01:14:26,579 --> 01:14:28,380 y en el metro o en el autobús 1712 01:14:28,380 --> 01:14:30,739 se te acercaba alguien y te la clonaba directamente 1713 01:14:30,739 --> 01:14:32,100 sin contacto, ¿vale? 1714 01:14:32,119 --> 01:14:34,779 por eso en algunas empresas empezaron a pedir a los empleados 1715 01:14:34,779 --> 01:14:36,960 que llevasen sus tarjetas de identificación 1716 01:14:36,960 --> 01:14:38,260 en unos sobrecitos 1717 01:14:38,260 --> 01:14:40,819 de aluminio, ¿vale? para que no se los pudieran leer 1718 01:14:40,819 --> 01:14:43,000 eso es el clonado 1719 01:14:43,000 --> 01:14:45,079 el spoofing 1720 01:14:45,079 --> 01:14:46,300 es que 1721 01:14:46,300 --> 01:14:48,579 alguien puede 1722 01:14:48,579 --> 01:14:51,539 hacerse pasar por un tercero 1723 01:14:51,539 --> 01:14:52,920 eso es hacer spoofing 1724 01:14:52,920 --> 01:14:55,119 hacer jamming es impedir 1725 01:14:55,119 --> 01:14:56,260 que la tarjeta funcione 1726 01:14:56,260 --> 01:14:57,680 es obstruirla 1727 01:14:57,680 --> 01:15:00,659 hacer droping es mirar por encima 1728 01:15:00,659 --> 01:15:02,239 del hombro, es decir 1729 01:15:02,239 --> 01:15:04,859 que haya aquí un sistema 1730 01:15:04,859 --> 01:15:06,300 legítimo comunicándose 1731 01:15:06,300 --> 01:15:08,680 y que a su vez tengamos 1732 01:15:08,680 --> 01:15:10,600 otro ilegítimo que está escuchando 1733 01:15:10,600 --> 01:15:11,699 toda esa comunicación 1734 01:15:11,699 --> 01:15:13,920 y por último tenemos el de skimming 1735 01:15:13,920 --> 01:15:15,260 que es el que más miedo da 1736 01:15:15,260 --> 01:15:16,819 que es este tipo de 1737 01:15:16,819 --> 01:15:19,819 de artilugios 1738 01:15:19,819 --> 01:15:21,640 que instalan en los cajeros automáticos 1739 01:15:21,640 --> 01:15:23,439 o también en los datófonos de alguna tienda 1740 01:15:23,439 --> 01:15:25,279 para clonarte la tarjeta 1741 01:15:25,279 --> 01:15:27,140 tú no te das cuenta, metes aquí la tarjeta 1742 01:15:27,140 --> 01:15:28,920 ves que es prácticamente idéntico a la original 1743 01:15:28,920 --> 01:15:31,859 y lo que está ocurriendo, para ti todo funciona normalmente 1744 01:15:31,859 --> 01:15:33,659 o sea, la tarjeta está funcionando normalmente 1745 01:15:33,659 --> 01:15:35,619 pero además tu tarjeta 1746 01:15:35,619 --> 01:15:37,300 ha quedado clonada aquí 1747 01:15:37,300 --> 01:15:39,500 ¿vale? entonces bueno 1748 01:15:39,500 --> 01:15:40,819 esos son los distintos 1749 01:15:40,819 --> 01:15:42,880 tipos de ataque 1750 01:15:42,880 --> 01:15:44,640 que tiene esta tecnología 1751 01:15:44,640 --> 01:15:46,979 ¿es fácil? no es fácil 1752 01:15:46,979 --> 01:15:48,619 ¿vale? esto aunque sale 1753 01:15:48,619 --> 01:15:50,600 muchas veces en televisión y tal 1754 01:15:50,600 --> 01:15:52,199 pues no es fácil, porque por ejemplo 1755 01:15:52,199 --> 01:15:54,600 en las tarjetas de crédito, es verdad 1756 01:15:54,600 --> 01:15:56,880 tú tienes que clonar la tarjeta 1757 01:15:56,880 --> 01:15:58,840 pero además tienes que conseguir el pin 1758 01:15:58,840 --> 01:16:00,640 entonces o pones aquí una cámara 1759 01:16:00,640 --> 01:16:02,680 o también clonas el teclado 1760 01:16:02,680 --> 01:16:04,739 hay algunos que también te hacen skimming 1761 01:16:04,739 --> 01:16:06,600 del teclado, ¿vale? porque necesitan 1762 01:16:06,600 --> 01:16:08,680 los dos factores para poder clonar 1763 01:16:08,680 --> 01:16:10,659 la tarjeta, bueno, estas son 1764 01:16:10,659 --> 01:16:12,420 las clases, que son las que os digo, estas son 1765 01:16:12,420 --> 01:16:14,479 las más famosas, se usan mucho, estas son 1766 01:16:14,479 --> 01:16:15,359 baratísimas 1767 01:16:15,359 --> 01:16:18,460 pero estas tienen el inconveniente que os decía 1768 01:16:18,460 --> 01:16:19,579 que no son muy seguras 1769 01:16:19,579 --> 01:16:22,159 y estas ya 1770 01:16:22,159 --> 01:16:24,579 bueno, aquí tenéis todo el formato de cómo 1771 01:16:24,579 --> 01:16:26,579 funciona, en esto no voy a 1772 01:16:26,579 --> 01:16:28,340 entrar porque no tiene mucho 1773 01:16:28,340 --> 01:16:30,500 interés, pero sí que lo que 1774 01:16:30,500 --> 01:16:32,420 tiene interés es que veáis que nosotros 1775 01:16:32,420 --> 01:16:33,960 tenemos varios bloques 1776 01:16:33,960 --> 01:16:36,319 y para acceder a esos bloques podemos 1777 01:16:36,319 --> 01:16:38,260 poner distintas contraseñas 1778 01:16:38,260 --> 01:16:40,399 contraseña de lectura y contraseña 1779 01:16:40,399 --> 01:16:42,300 de escritura y cada bloque puede 1780 01:16:42,300 --> 01:16:43,659 tener su propia contraseña 1781 01:16:43,659 --> 01:16:46,739 entonces tú puedes grabar mucha información 1782 01:16:46,739 --> 01:16:48,520 hasta un K en este caso 1783 01:16:48,520 --> 01:16:50,359 en una tarjeta y que solamente 1784 01:16:50,359 --> 01:16:52,699 las personas que tengan las contraseñas 1785 01:16:52,699 --> 01:16:54,539 oportunas puedan acceder 1786 01:16:54,539 --> 01:16:55,800 a distintas secciones 1787 01:16:55,800 --> 01:16:58,199 de esas tarjetas 1788 01:16:58,199 --> 01:16:59,760 de esa tarjeta 1789 01:16:59,760 --> 01:17:02,100 bueno, pues esto en cuanto al MiFar Classic 1790 01:17:02,100 --> 01:17:03,739 esto es lo que os decía 1791 01:17:03,739 --> 01:17:05,880 que el problema que había con estas tarjetas 1792 01:17:05,880 --> 01:17:07,960 es que usaban un algoritmo que se llama Crypto1 1793 01:17:07,960 --> 01:17:09,800 y ese empezaron a romperlo 1794 01:17:09,800 --> 01:17:11,720 en 2007 y luego ya directamente 1795 01:17:11,720 --> 01:17:13,460 lo rompieron del todo 1796 01:17:13,460 --> 01:17:15,960 con lo cual si tú tienes ahora mismo un ProSmart 3 1797 01:17:15,960 --> 01:17:17,819 un ProSmart 3 es un dispositivo 1798 01:17:17,819 --> 01:17:19,039 que se compra pues 1799 01:17:19,039 --> 01:17:21,439 no sé, por 40 o 50 euros 1800 01:17:21,439 --> 01:17:23,560 pues directamente esas tarjetas 1801 01:17:23,560 --> 01:17:24,520 las clonas sin más 1802 01:17:24,520 --> 01:17:27,760 entonces tú extraes directamente 1803 01:17:27,760 --> 01:17:29,760 las claves y por fuerza bruta 1804 01:17:29,760 --> 01:17:32,079 puedes sacar las contraseñas de escritura 1805 01:17:32,079 --> 01:17:33,100 y de 1806 01:17:33,100 --> 01:17:35,039 lectura 1807 01:17:35,039 --> 01:17:37,420 y esto es lo último que yo he sabido 1808 01:17:37,420 --> 01:17:39,819 sobre el problema 1809 01:17:39,819 --> 01:17:41,800 de las MiFlight Classic, que fue en septiembre 1810 01:17:41,800 --> 01:17:42,699 de 2024 1811 01:17:42,699 --> 01:17:45,340 que salió 1812 01:17:45,340 --> 01:17:46,880 otro ataque 1813 01:17:46,880 --> 01:17:49,520 con lo cual ya se considera muy 1814 01:17:49,520 --> 01:17:51,800 muy vulnerable, no se recomienda 1815 01:17:51,800 --> 01:17:52,920 el uso de estas tarjetas 1816 01:17:52,920 --> 01:17:55,699 la seguridad, pues bueno, lo que os decía 1817 01:17:55,699 --> 01:17:57,680 pues la seguridad va a depender del protocolo 1818 01:17:57,680 --> 01:17:58,779 que nosotros utilicemos 1819 01:17:58,779 --> 01:18:01,659 entonces aquí os he puesto una ST25 1820 01:18:01,659 --> 01:18:03,520 que es una de las tarjetas 1821 01:18:03,520 --> 01:18:04,979 más actuales que existen 1822 01:18:04,979 --> 01:18:07,220 y como veis pues tiene ahí todas las 1823 01:18:07,420 --> 01:18:09,520 pléitora de formas de seguridad 1824 01:18:09,520 --> 01:18:11,319 que se te pueda ocurrir, ¿vale? 1825 01:18:11,319 --> 01:18:12,640 Tiene un montón de ellas. 1826 01:18:13,060 --> 01:18:15,479 Pues nada. ¿Qué herramientas 1827 01:18:15,479 --> 01:18:17,020 tenemos para hacer nosotros research, 1828 01:18:17,500 --> 01:18:19,119 investigación de tarjetas NFC? 1829 01:18:19,680 --> 01:18:21,579 Pues el PROSMAR, ¿vale? Que el PROSMAR 1830 01:18:21,579 --> 01:18:22,899 es este de aquí, el de la derecha. 1831 01:18:23,640 --> 01:18:24,800 Este es un modelo muy nuevo 1832 01:18:24,800 --> 01:18:27,500 que es bastante caro, 1833 01:18:27,500 --> 01:18:29,319 pero el PROSMAR de código abierto, 1834 01:18:29,439 --> 01:18:31,239 el de hardware abierto, es bastante barato. 1835 01:18:31,380 --> 01:18:33,079 Son unos 40 euros o algo así. 1836 01:18:33,939 --> 01:18:35,539 Luego el Flipper 0, que es este 1837 01:18:35,539 --> 01:18:37,340 de la izquierda, que se ha puesto muy de moda, ¿vale? 1838 01:18:37,420 --> 01:18:39,779 Y como se ha puesto de moda, pues se ha disparado el precio. 1839 01:18:40,500 --> 01:18:42,079 Al principio no sé lo que costaba. 1840 01:18:42,199 --> 01:18:44,840 Me parece que eran, no sé si 70, 80 euros. 1841 01:18:45,520 --> 01:18:46,220 Y ahora no lo sé. 1842 01:18:46,399 --> 01:18:49,319 Anda por ahí por 200 euros o algo así, ¿vale? 1843 01:18:49,960 --> 01:18:54,619 Y luego tenemos la Capybara 0, que es un Flipper 0, pero de hardware abierto. 1844 01:18:54,800 --> 01:18:58,000 Es esto que veis aquí, que te lo construyes tú mismo, ¿vale? 1845 01:18:58,399 --> 01:18:59,159 Entonces, ¿qué tiene? 1846 01:18:59,159 --> 01:19:01,260 Pues tiene un SP32 principalmente. 1847 01:19:02,000 --> 01:19:05,100 Tiene un módulo RFID que estáis viendo aquí, un lector de tarjetas. 1848 01:19:05,100 --> 01:19:07,539 y luego tienen también un módulo que puede ser 1849 01:19:07,539 --> 01:19:09,479 un módulo Lora, como el que tiene este 1850 01:19:09,479 --> 01:19:10,039 en este caso 1851 01:19:10,039 --> 01:19:11,680 bueno 1852 01:19:11,680 --> 01:19:15,319 en esto 1853 01:19:15,319 --> 01:19:17,500 no voy a entrar, básicamente 1854 01:19:17,500 --> 01:19:19,260 creo que entendéis como funciona 1855 01:19:19,260 --> 01:19:21,640 cuando vosotros pagáis con la tarjeta 1856 01:19:21,640 --> 01:19:23,739 lo que ocurre es que se genera un número 1857 01:19:23,739 --> 01:19:24,819 y ese número 1858 01:19:24,819 --> 01:19:27,560 está en vuestro banco, entonces el datáfono 1859 01:19:27,560 --> 01:19:29,500 contacta también con vuestro banco 1860 01:19:29,500 --> 01:19:30,920 para ver que el número es el mismo 1861 01:19:30,920 --> 01:19:33,039 que el número que le ha dado a tu tarjeta 1862 01:19:33,039 --> 01:19:35,359 es el mismo número que está viendo el datáfono 1863 01:19:35,359 --> 01:19:37,239 y así tiene la certeza de que no es 1864 01:19:37,239 --> 01:19:39,520 alguien haciéndose pasar por vosotros 1865 01:19:39,520 --> 01:19:41,399 entonces lo que tenemos ahora mismo 1866 01:19:41,399 --> 01:19:42,840 son dos tipos de tarjetas 1867 01:19:42,840 --> 01:19:45,079 voy a ver si ha terminado ya Arduino de compilar lo otro 1868 01:19:45,079 --> 01:19:47,220 vale, sí, parece que ha terminado de 1869 01:19:47,220 --> 01:19:48,920 compilar, de tal forma 1870 01:19:48,920 --> 01:19:50,920 vuelvo ahora, ahora estoy volviendo a lo de 1871 01:19:50,920 --> 01:19:52,079 MFC, vale 1872 01:19:52,079 --> 01:19:54,880 entonces me dice, veis que ya está 1873 01:19:54,880 --> 01:19:57,119 comisionado y listo para utilizar 1874 01:19:57,119 --> 01:19:59,239 entonces voy a ver si lo tengo aquí 1875 01:19:59,239 --> 01:20:04,500 voy a ver si tengo aquí 1876 01:20:04,500 --> 01:20:05,579 el dispositivo 1877 01:20:05,579 --> 01:20:35,079 A ver, sería en Alexa. Alexa. En este caso, como ya está comisionado, no sé si lo habré borrado, espero que no. A ver si lo tengo del otro día. Sería el segundo dispositivo. No, no sé. No, pues no lo tengo. No lo tengo. 1878 01:20:35,079 --> 01:20:38,319 vale, pues entonces 1879 01:20:38,319 --> 01:20:40,779 otro problema más, tendría que descomisionarlo 1880 01:20:40,779 --> 01:20:42,720 ¿cómo lo descomisiono? 1881 01:20:42,899 --> 01:20:44,159 pues es un poco complicado 1882 01:20:44,159 --> 01:20:47,100 entonces, hay dos formas de descomisionar 1883 01:20:47,100 --> 01:20:48,819 una es en los propios ejemplos 1884 01:20:48,819 --> 01:20:49,340 de Matter 1885 01:20:49,340 --> 01:20:52,239 que viene un ejemplo para 1886 01:20:52,239 --> 01:20:54,159 decomisionar, a ver si lo veo 1887 01:20:54,159 --> 01:20:57,159 comision, comision, comision 1888 01:20:57,159 --> 01:20:57,939 comision 1889 01:20:57,939 --> 01:21:04,260 o lo tendrán aquí a lo mejor 1890 01:21:04,260 --> 01:21:06,680 en el propio de comisionado 1891 01:21:06,680 --> 01:21:09,079 si mantengo el botón pulsado 1892 01:21:09,079 --> 01:21:10,619 a ver, voy a ver cuál es el botón 1893 01:21:10,619 --> 01:21:13,140 parece que está aquí en el mismo código 1894 01:21:13,140 --> 01:21:14,579 no sé si estáis viendo mi pantalla 1895 01:21:14,579 --> 01:21:16,819 dice que si mantengo el botón pulsado 1896 01:21:16,819 --> 01:21:18,140 por más de 5 segundos 1897 01:21:18,140 --> 01:21:20,619 que entrará en modo de comisionado 1898 01:21:20,619 --> 01:21:22,060 entonces voy a intentar pulsarlo 1899 01:21:22,060 --> 01:21:23,199 más de 5 segundos 1900 01:21:23,199 --> 01:21:31,989 suelto 1901 01:21:31,989 --> 01:21:34,529 y que me dice 1902 01:21:34,529 --> 01:21:38,770 me dice que no está comisionado 1903 01:21:38,770 --> 01:21:39,609 vale, menos mal 1904 01:21:39,609 --> 01:21:40,609 pues por aquí vamos bien 1905 01:21:40,609 --> 01:21:43,189 me dice que está esperando a comisionarse 1906 01:21:43,189 --> 01:21:44,789 vale, entonces yo ahora 1907 01:21:44,789 --> 01:21:47,449 a Alexa le digo que quiero añadir 1908 01:21:47,449 --> 01:21:48,310 un dispositivo 1909 01:21:48,310 --> 01:21:50,810 de tipo 8 1910 01:21:50,810 --> 01:21:52,930 de tipo Matter 1911 01:21:52,930 --> 01:21:55,250 si tiene la etiqueta 1912 01:21:55,250 --> 01:21:56,010 le digo que sí 1913 01:21:56,010 --> 01:21:58,510 si está conectado le digo que sí 1914 01:21:58,510 --> 01:21:59,310 vale 1915 01:21:59,310 --> 01:22:01,210 y ahora 1916 01:22:01,210 --> 01:22:04,210 me dice que 1917 01:22:04,210 --> 01:22:07,310 si quiero escanear el código QR 1918 01:22:07,310 --> 01:22:09,270 entonces no sé por qué 1919 01:22:09,270 --> 01:22:11,149 no estoy viendo aquí el código QR 1920 01:22:11,149 --> 01:22:15,449 que está aquí arriba, el código QR 1921 01:22:15,449 --> 01:22:17,489 es este, vale, a ver si para 1922 01:22:17,489 --> 01:22:19,270 esto lo voy a parar, para poder 1923 01:22:19,270 --> 01:22:21,489 coger el código QR, es esta dirección 1924 01:22:21,489 --> 01:22:25,779 entonces eso lo abro 1925 01:22:25,779 --> 01:22:27,100 en una página web cualquiera 1926 01:22:27,100 --> 01:22:33,640 y directamente lo que voy a hacer con mi 1927 01:22:33,640 --> 01:22:34,899 teléfono móvil, lo recojo 1928 01:22:34,899 --> 01:22:36,640 extraño el código QR 1929 01:22:36,640 --> 01:22:39,500 ahora está buscando el dispositivo 1930 01:22:39,500 --> 01:22:45,260 ¿quieres 1931 01:22:45,260 --> 01:22:47,020 configurar el dispositivo? sí 1932 01:22:47,020 --> 01:22:49,060 estableciendo conexión 1933 01:22:49,060 --> 01:22:49,920 con el dispositivo 1934 01:22:49,920 --> 01:22:53,100 recordad que ahora ya no estoy 1935 01:22:53,100 --> 01:22:54,960 usando Thread, ahora estoy 1936 01:22:54,960 --> 01:22:56,739 usando Wifi 1937 01:22:56,739 --> 01:22:58,600 con IPv6 y luego 1938 01:22:58,600 --> 01:23:00,880 me dice ahí salta tercera luz 1939 01:23:00,880 --> 01:23:02,420 le digo vale, pues actualizar nombre 1940 01:23:02,420 --> 01:23:04,140 tercera luz, me parece bien 1941 01:23:04,140 --> 01:23:06,720 aquí me dice que si lo quiero añadir al salón 1942 01:23:06,720 --> 01:23:08,539 a la cocina, le digo que omitir de momento 1943 01:23:08,539 --> 01:23:10,479 para no perder más tiempo y veis 1944 01:23:10,479 --> 01:23:12,859 ya estamos listos para poder utilizarlo 1945 01:23:12,859 --> 01:23:14,680 entonces si por ejemplo yo lo traigo 1946 01:23:14,680 --> 01:23:16,680 para acá, a ver donde se ha ido 1947 01:23:16,680 --> 01:23:22,140 y le digo 1948 01:23:22,140 --> 01:23:24,779 no sé si lo estáis viendo en la webcam 1949 01:23:24,779 --> 01:23:27,479 Alexa, apaga tercera luz 1950 01:23:27,479 --> 01:23:33,020 Alexa, enciende 1951 01:23:33,020 --> 01:23:33,739 tercera luz 1952 01:23:33,739 --> 01:23:36,899 ¿veis? cuando le digo que enciende 1953 01:23:36,899 --> 01:23:38,920 apaga, y sin embargo cuando le digo 1954 01:23:38,920 --> 01:23:40,680 Alexa, apaga tercera luz 1955 01:23:40,680 --> 01:23:46,010 Alexa, apaga tercera luz 1956 01:23:46,010 --> 01:23:47,970 lo enciende 1957 01:23:47,970 --> 01:23:50,149 ¿vale? ¿por qué? porque está en lógica inversa 1958 01:23:50,149 --> 01:23:51,329 el LED, ¿vale? por eso 1959 01:23:51,329 --> 01:23:54,449 bien 1960 01:23:54,449 --> 01:23:57,449 vale, pues entonces ya hemos visto todo lo de Matter 1961 01:23:57,449 --> 01:23:58,369 ya cierro esto 1962 01:23:58,369 --> 01:24:01,670 y sigo con NFC 1963 01:24:01,670 --> 01:24:10,810 seguimos con NFC 1964 01:24:10,810 --> 01:24:17,239 y ahora mismo hay dos 1965 01:24:17,239 --> 01:24:19,180 tipos de tags 1966 01:24:19,180 --> 01:24:21,739 los tags tácticos y los tags dinámicos 1967 01:24:21,739 --> 01:24:23,039 los tags tácticos 1968 01:24:23,039 --> 01:24:25,359 ¿cuáles son? pues la tarjeta que os he enseñado antes 1969 01:24:25,359 --> 01:24:27,100 ¿vale? es una tarjeta 1970 01:24:27,100 --> 01:24:29,039 es un tag en la que almacenamos 1971 01:24:29,039 --> 01:24:31,359 una información, pero esa información 1972 01:24:31,359 --> 01:24:33,000 para almacenarla hace falta 1973 01:24:33,000 --> 01:24:35,300 un lector escritor, hace falta el teléfono móvil 1974 01:24:35,300 --> 01:24:36,340 pues como habéis visto antes 1975 01:24:36,340 --> 01:24:37,739 que he guardado la dirección 1976 01:24:37,739 --> 01:24:38,920 de Duca Madrid 1977 01:24:38,920 --> 01:24:39,399 ahí 1978 01:24:39,399 --> 01:24:39,800 vale 1979 01:24:39,800 --> 01:24:41,600 pues necesitas un dispositivo 1980 01:24:41,600 --> 01:24:42,939 pero ahora lo bueno 1981 01:24:42,939 --> 01:24:43,840 es que tenemos 1982 01:24:43,840 --> 01:24:44,920 tarjetas dinámicas 1983 01:24:44,920 --> 01:24:46,020 estas de aquí a la derecha 1984 01:24:46,020 --> 01:24:46,319 vale 1985 01:24:46,319 --> 01:24:47,500 estas son por ejemplo 1986 01:24:47,500 --> 01:24:48,520 la ST25 1987 01:24:48,520 --> 01:24:49,300 que es la que hemos puesto 1988 01:24:49,300 --> 01:24:50,279 nosotros en la placa 1989 01:24:50,279 --> 01:24:51,600 entonces lo interesante 1990 01:24:51,600 --> 01:24:52,640 de estas tarjetas 1991 01:24:52,640 --> 01:24:53,420 es que yo 1992 01:24:53,420 --> 01:24:54,640 desde un microcontrolador 1993 01:24:54,640 --> 01:24:55,680 les puedo poner 1994 01:24:55,680 --> 01:24:56,939 la información 1995 01:24:56,939 --> 01:24:58,220 que quiero que transmitan 1996 01:24:58,220 --> 01:24:58,619 entonces 1997 01:24:58,619 --> 01:24:59,579 imaginaos que yo tengo 1998 01:24:59,579 --> 01:25:00,380 un microcontrolador 1999 01:25:00,380 --> 01:25:01,640 con un sensor de temperatura 2000 01:25:01,640 --> 01:25:03,520 pero que no le quiero poner 2001 01:25:03,520 --> 01:25:04,020 una pantalla 2002 01:25:04,020 --> 01:25:04,899 porque es muy cara 2003 01:25:04,899 --> 01:25:07,220 o porque temo que me la puedan vandalizar 2004 01:25:07,220 --> 01:25:08,699 o por el motivo que sea, ¿vale? 2005 01:25:08,899 --> 01:25:11,479 Tengo el sensor de temperatura, pero no tengo pantalla. 2006 01:25:12,020 --> 01:25:14,140 Entonces, ¿cómo puede leer el usuario la pantalla? 2007 01:25:14,640 --> 01:25:16,479 Pues directamente con su teléfono móvil 2008 01:25:16,479 --> 01:25:20,220 lo acerca al microcontrolador y lee la temperatura, ¿vale? 2009 01:25:20,260 --> 01:25:20,539 ¿Por qué? 2010 01:25:20,619 --> 01:25:24,560 Porque la temperatura la está escribiendo el microcontrolador 2011 01:25:24,560 --> 01:25:28,260 en la memoria EEPROM de la tarjeta NFC, 2012 01:25:28,380 --> 01:25:30,020 que es lo que estáis viendo aquí, ¿vale? 2013 01:25:30,859 --> 01:25:38,479 Bueno, pues eso es lo que tenemos respecto a tarjetas estáticas y tarjetas dinámicas. 2014 01:25:39,100 --> 01:25:44,979 Bueno, luego hay una diferencia entre lectores y controladores, ¿vale? 2015 01:25:46,460 --> 01:25:52,399 La principal diferencia es que el lector solamente envía y recibe datos, es decir, sirve para leer y escribir. 2016 01:25:53,000 --> 01:25:55,359 Y un controlador es un dispositivo más caro, ¿vale? 2017 01:25:55,359 --> 01:25:59,000 Es un dispositivo que ya puede ejecutar algoritmos, por ejemplo, de anticolisión. 2018 01:25:59,000 --> 01:26:01,180 entonces, siempre 2019 01:26:01,180 --> 01:26:03,100 que podamos, pues usaremos 2020 01:26:03,100 --> 01:26:04,960 un controller 2021 01:26:04,960 --> 01:26:06,800 ¿vale? ¿por qué? 2022 01:26:07,359 --> 01:26:09,359 porque toda la 2023 01:26:09,359 --> 01:26:10,420 funcionalidad 2024 01:26:10,420 --> 01:26:13,000 está en el propio hardware del controller 2025 01:26:13,000 --> 01:26:14,859 ¿vale? por ejemplo, la anticolisión 2026 01:26:14,859 --> 01:26:16,239 está en el controller 2027 01:26:16,239 --> 01:26:19,479 ¿vale? sin embargo, si yo utilizo un lector 2028 01:26:19,479 --> 01:26:21,279 el lector apenas tiene 2029 01:26:21,279 --> 01:26:23,060 capacidad por hardware 2030 01:26:23,060 --> 01:26:25,439 ¿vale? todo esto lo voy a tener que implementar 2031 01:26:25,439 --> 01:26:26,880 por software, y eso va a ser 2032 01:26:26,880 --> 01:26:28,359 complicado 2033 01:26:28,359 --> 01:26:30,500 claro, entonces en la medida de lo posible 2034 01:26:30,500 --> 01:26:32,359 nosotros compraremos controladores 2035 01:26:32,359 --> 01:26:34,479 ¿qué es un controlador? pues por ejemplo 2036 01:26:34,479 --> 01:26:35,600 el ST25 2037 01:26:35,600 --> 01:26:38,220 existe en formato de controlador, yo podría 2038 01:26:38,220 --> 01:26:40,279 comprarme un ST25 2039 01:26:40,279 --> 01:26:42,279 controlador, vale, bueno 2040 01:26:42,279 --> 01:26:44,340 pues aquí tenía dos ejercicios, voy a hacer 2041 01:26:44,340 --> 01:26:46,020 solamente uno de ellos para ganar tiempo 2042 01:26:46,020 --> 01:26:48,460 tenía uno, que lo tenéis 2043 01:26:48,460 --> 01:26:50,340 aquí en la presentación, es interesante 2044 01:26:50,340 --> 01:26:52,479 es con el PN532 2045 01:26:52,479 --> 01:26:53,600 que esto es un 2046 01:26:53,600 --> 01:26:55,680 esto es un 2047 01:26:55,680 --> 01:26:56,680 un reader 2048 01:26:56,680 --> 01:27:00,079 que son muy económicos 2049 01:27:00,079 --> 01:27:01,539 no sé lo que costarán 2050 01:27:01,539 --> 01:27:03,319 no quiero meter la pata 2051 01:27:03,319 --> 01:27:05,579 pero apostaría que no cuestan más de 5 euros 2052 01:27:05,579 --> 01:27:07,760 pues con esto podéis leer 2053 01:27:07,760 --> 01:27:09,060 y escribir tarjetas 2054 01:27:09,060 --> 01:27:11,439 NFC mediante un Arduino 2055 01:27:11,439 --> 01:27:13,500 entonces la librería está aquí 2056 01:27:13,500 --> 01:27:15,439 y bueno, aquí tenéis un ejemplo 2057 01:27:15,439 --> 01:27:16,619 que simplemente lo que hace 2058 01:27:16,619 --> 01:27:19,119 es encender y apagar un LED 2059 01:27:19,119 --> 01:27:21,300 con una tarjeta, acercas la tarjeta 2060 01:27:21,300 --> 01:27:23,199 se enciende, acercas otra tarjeta 2061 01:27:23,199 --> 01:27:24,640 distinta y se apaga 2062 01:27:24,640 --> 01:27:26,800 pues esto por ejemplo estuvo de moda un tiempo 2063 01:27:26,800 --> 01:27:28,979 para la música, acercabas una tarjeta 2064 01:27:28,979 --> 01:27:31,279 y sonaba una canción, acercabas otra tarjeta 2065 01:27:31,279 --> 01:27:33,119 y sonaba otra canción distinta 2066 01:27:33,119 --> 01:27:35,079 ¿vale? el ejemplo que yo voy a hacer 2067 01:27:35,079 --> 01:27:36,680 es este, que es un poquito más avanzado 2068 01:27:36,680 --> 01:27:38,800 que es con la ST25 2069 01:27:38,800 --> 01:27:40,819 la ST25 es esta 2070 01:27:40,819 --> 01:27:43,060 este controlador que os digo 2071 01:27:43,060 --> 01:27:45,119 de STM 2072 01:27:45,119 --> 01:27:46,800 que ya es NFC 2073 01:27:46,800 --> 01:27:48,840 tipo 5 y que 2074 01:27:48,840 --> 01:27:50,659 lo interesante que tiene es que lleva 2075 01:27:50,659 --> 01:27:52,500 dos interfaces, ¿vale? 2076 01:27:52,500 --> 01:27:54,279 tiene por un lado la interfaz de radio 2077 01:27:54,279 --> 01:27:56,479 NFC y por otro lado una interfaz 2078 01:27:56,479 --> 01:27:58,539 I2C mediante la que yo puedo 2079 01:27:58,539 --> 01:28:00,560 controlarlo mediante cualquier microcontrolador 2080 01:28:00,560 --> 01:28:02,340 yo lo voy a hacer aquí con un SP32 2081 01:28:02,340 --> 01:28:04,779 pero podría ser perfectamente 2082 01:28:04,779 --> 01:28:06,460 un Arduino normal 2083 01:28:06,460 --> 01:28:07,359 y corriente ¿vale? 2084 01:28:08,659 --> 01:28:10,479 entonces aquí os he puesto una 2085 01:28:10,479 --> 01:28:11,500 tarjeta de evaluación 2086 01:28:11,500 --> 01:28:14,479 para que veáis lo que vienen estas 2087 01:28:14,479 --> 01:28:15,760 tarjetas de evaluación 2088 01:28:15,760 --> 01:28:18,000 del ST25 ¿vale? 2089 01:28:18,260 --> 01:28:19,560 del ST25 perdón 2090 01:28:19,560 --> 01:28:21,500 aparte del ST25 2091 01:28:21,500 --> 01:28:24,520 trae el regulador de tensión 2092 01:28:24,520 --> 01:28:27,000 porque puede funcionar con batería o sin batería 2093 01:28:27,000 --> 01:28:30,319 bueno, se ve aquí, está para la batería de tipo botón 2094 01:28:30,319 --> 01:28:33,579 tiene un secure element para comunicaciones seguras 2095 01:28:33,579 --> 01:28:36,119 un reloj de tiempo real, dos botones 2096 01:28:36,119 --> 01:28:39,140 un segundo microcontrolador 2097 01:28:39,140 --> 01:28:41,899 un acelerómetro, otro acelerómetro 2098 01:28:41,899 --> 01:28:44,460 un giróscopo, un sensor de luz ambiental 2099 01:28:44,460 --> 01:28:48,380 un sensor de temperatura por contacto 2100 01:28:48,380 --> 01:28:51,039 y un sensor de presión ambiental 2101 01:28:51,039 --> 01:29:18,279 Vale, pues lo más interesante de todo eso es que puede funcionar incluso sin batería. ¿Cómo? Pues fijaos, aquí está la antena en esta tarjeta, pues la antena es capaz de que aunque esto no tenga batería, extraer energía suficiente del campo que genera el lector para con esa energía alimentar el microcontrolador STM que va a leer los sensores y va a escribir la lectura de esos sensores en el ST25. 2102 01:29:18,279 --> 01:29:42,680 De tal forma que el lector, el móvil en este caso, lo va a poder leer por NFC, ¿vale? Pues esto es para que veáis a qué nivel está esto de NFC, ¿vale? Que ya podemos hacer Energy Harvesting ya no sólo para las propias comunicaciones, sino incluso para alimentar terceros sensores, ¿vale? Para alimentar estos sensores y poder enviar esos datos por NFC. 2103 01:29:42,680 --> 01:29:44,800 bueno, entonces 2104 01:29:44,800 --> 01:29:47,300 la tarjeta que yo me han dado fabricar 2105 01:29:47,300 --> 01:29:49,539 es una tarjeta que es muy sencilla 2106 01:29:49,539 --> 01:29:51,000 de fabricar porque 2107 01:29:51,000 --> 01:29:53,180 no tengo que hacer la antena 2108 01:29:53,180 --> 01:29:55,119 lo problemático de estas tarjetas 2109 01:29:55,119 --> 01:29:56,920 es el diseño de la antena 2110 01:29:56,920 --> 01:29:59,399 porque el diseño de la antena depende de un montón de factores 2111 01:29:59,399 --> 01:30:01,539 depende del tipo de 2112 01:30:01,539 --> 01:30:03,500 fibra de vidrio, depende del grosor 2113 01:30:03,500 --> 01:30:05,359 de la placa, depende de todos 2114 01:30:05,359 --> 01:30:07,140 los componentes que haya por aquí en medio 2115 01:30:07,140 --> 01:30:08,380 que pueden interferir 2116 01:30:08,380 --> 01:30:11,420 entonces para evitar eso, yo lo que he usado 2117 01:30:11,420 --> 01:30:18,619 es utilizar una antena externa ¿vale? ¿qué antena externa? pues estoy usando directamente una bobina 2118 01:30:18,619 --> 01:30:26,659 estoy usando una bobina de este estilo como antena ¿vale? entonces en el datasheet del ST25 2119 01:30:26,659 --> 01:30:33,159 te dice que tú puedes poner aquí una bobina y que luego le tienes que poner aquí un condensador 2120 01:30:33,159 --> 01:30:41,979 en paralelo para conseguir que la capacidad equivalente sean 28,5 picofaradios. 2121 01:30:41,979 --> 01:30:46,699 Bueno, pues de la fórmula de los inductores capacitores, que es esta que veis aquí, 2122 01:30:47,539 --> 01:30:57,260 pues se obtiene que para una frecuencia de 13,56 MHz, la frecuencia que yo necesito, 2123 01:30:57,579 --> 01:31:02,920 la capacidad que tengo es 4,83 microfaradios. 2124 01:31:03,159 --> 01:31:20,970 Bueno, pues nada. No, perdón. Microendrios. Esto está mal, ¿vale? Aquí he puesto microfaradios. Esto es microendrios. Lo voy a corregir ahora mismo. Microendrios. Eso es. Bien. 2125 01:31:20,970 --> 01:31:28,100 vale, bueno, pues aquí 2126 01:31:28,100 --> 01:31:29,180 de la forma 2127 01:31:29,180 --> 01:31:32,220 se obtiene una inductancia de 4,83 2128 01:31:32,220 --> 01:31:34,039 microfaradios, vale, lo he puesto mal todas las unidades 2129 01:31:34,039 --> 01:31:36,239 luego lo corregiré, bien, entonces 2130 01:31:36,239 --> 01:31:37,859 lo que ocurre es que tú tienes que elegir 2131 01:31:37,859 --> 01:31:39,479 qué condensador vas a poner aquí 2132 01:31:39,479 --> 01:31:41,939 y el condensador que vamos a poner 2133 01:31:41,939 --> 01:31:44,079 haciendo los cálculos, pues te sale 2134 01:31:44,079 --> 01:31:46,239 que hay que poner un condensador de 0,8 2135 01:31:46,239 --> 01:31:48,220 picofaradios, vale, ¿por qué? 2136 01:31:48,300 --> 01:31:49,560 porque la bobina de 2137 01:31:49,560 --> 01:31:52,100 4,7 microhenrios 2138 01:31:52,100 --> 01:31:54,039 resulta que tiene una capacidad 2139 01:31:54,039 --> 01:31:56,079 de 29,3 picofaradios 2140 01:31:56,079 --> 01:31:58,539 como yo necesitaba 28,5 2141 01:31:58,539 --> 01:31:59,979 lo que tengo que hacer es 2142 01:31:59,979 --> 01:32:01,020 recordad que 2143 01:32:01,020 --> 01:32:04,479 puestos en serie los condensadores se suman 2144 01:32:04,479 --> 01:32:06,180 lo que tengo que poner es el de 2145 01:32:06,180 --> 01:32:07,939 28,5, ¿cuánto me falta? 2146 01:32:08,399 --> 01:32:09,899 0,8 picofaradios 2147 01:32:09,899 --> 01:32:12,159 por eso hay que poner ahí uno de 0,8 2148 01:32:12,159 --> 01:32:13,119 picofaradios 2149 01:32:13,119 --> 01:32:16,500 dicho esto, pues aquí tenéis la bobina 2150 01:32:16,500 --> 01:32:18,399 ¿vale? veis que usar este sistema 2151 01:32:18,399 --> 01:32:20,260 es un poco caro, porque lo que 2152 01:32:20,260 --> 01:32:22,079 es caro aquí es precisamente la antena 2153 01:32:22,079 --> 01:32:23,500 la antena esta de Word 2154 01:32:23,500 --> 01:32:26,579 que si yo me hiciera la antena en el circuito impreso 2155 01:32:26,579 --> 01:32:27,640 pues me salía gratis 2156 01:32:27,640 --> 01:32:30,539 pero claro, me va a tocar hacer probablemente 2157 01:32:30,539 --> 01:32:31,819 dos o tres iteraciones 2158 01:32:31,819 --> 01:32:34,060 hasta que sintonice bien la antena 2159 01:32:34,060 --> 01:32:35,239 mientras que de esta forma 2160 01:32:35,239 --> 01:32:38,279 aquí está bien puesto 2161 01:32:38,279 --> 01:32:39,680 el 4.7 micro androids 2162 01:32:39,680 --> 01:32:41,159 lo tengo correctamente 2163 01:32:41,159 --> 01:32:43,840 correctamente sintonizado 2164 01:32:43,840 --> 01:32:45,479 entonces lo que he hecho es simplemente 2165 01:32:45,479 --> 01:32:47,720 una tarjeta 2166 01:32:47,720 --> 01:32:49,800 con keycard, pues lo que he hecho es 2167 01:32:49,800 --> 01:32:51,739 directamente aquí se ve 2168 01:32:52,079 --> 01:33:00,319 es poner el ST25, el condensador de 0,8 picofaradios y esa bobina de 4,7 microhenrios. 2169 01:33:00,680 --> 01:33:08,420 Y por el otro lado tengo el puerto I2C, ¿vale? Tengo el puerto I2C y lo que voy a hacer, que lo tengo aquí preparado todo, 2170 01:33:08,420 --> 01:33:20,090 no sé ni cómo os lo voy a enseñar, a ver si puedo llevarlo para allá para que lo veáis, si se ve, porque tengo un montón de cosas aquí colgando. 2171 01:33:20,090 --> 01:33:22,909 bueno, no sé si se verá algo 2172 01:33:22,909 --> 01:33:24,470 pero aquí tengo el SP32 2173 01:33:24,470 --> 01:33:29,310 aquí tengo precisamente lo que os estoy enseñando 2174 01:33:29,310 --> 01:33:32,270 el ST25 y la antena está de WURF 2175 01:33:32,270 --> 01:33:35,010 ahí no se verá pero en medio está el condensador 2176 01:33:35,010 --> 01:33:38,329 de 0,8 pF y esto está conectado 2177 01:33:38,329 --> 01:33:41,529 por I2C al SP32 2178 01:33:41,529 --> 01:33:43,689 eso quiere decir que desde el SP32 2179 01:33:43,689 --> 01:33:47,489 yo ahora mismo podría controlar este chip 2180 01:33:47,489 --> 01:33:50,369 NFC para mostrar la información que yo quisiera 2181 01:33:50,369 --> 01:33:53,449 a través de él, ¿vale? De hecho, fijaos, ahora mismo no está 2182 01:33:53,449 --> 01:33:56,390 alimentado y yo podría leerlo con mi teléfono 2183 01:33:56,390 --> 01:33:59,470 móvil. Lo voy a intentar. A ver, voy a coger el teléfono 2184 01:33:59,470 --> 01:34:04,819 móvil y hay una aplicación 2185 01:34:04,819 --> 01:34:07,579 precisamente de ST que es para el ST25 2186 01:34:07,579 --> 01:34:10,800 ¿Vale? Es esta aplicación, no sé si se verá, la ST25 2187 01:34:10,800 --> 01:34:13,619 ¿Vale? Y voy a intentar leer la 2188 01:34:13,619 --> 01:34:16,659 etiqueta. ¿Veis que pone? Por favor, tab 2189 01:34:16,659 --> 01:34:19,079 de NFC. Haga tab sobre el NFC. 2190 01:34:19,079 --> 01:34:21,579 entonces yo sé que la antena de mi móvil más o menos 2191 01:34:21,579 --> 01:34:23,439 está por esta zona, entonces 2192 01:34:23,439 --> 01:34:24,819 voy a acercar la antena ahí 2193 01:34:24,819 --> 01:34:28,909 y veis que ya la ha leído, no sé si estaréis 2194 01:34:28,909 --> 01:34:30,430 viendo algo, la ha leído 2195 01:34:30,430 --> 01:34:33,050 y si ahora voy a NDEF, recordad 2196 01:34:33,050 --> 01:34:34,909 los registros NDEF que hemos visto antes 2197 01:34:34,909 --> 01:34:36,890 para guardar la dirección de Duca Madrid 2198 01:34:36,890 --> 01:34:39,069 pues también sirven para guardar un texto 2199 01:34:39,069 --> 01:34:40,770 veis aquí tengo un registro de tipo 2200 01:34:40,770 --> 01:34:42,869 texto y si entro a ver ese registro 2201 01:34:42,869 --> 01:34:44,729 que me dice que la temperatura 2202 01:34:44,729 --> 01:34:46,170 es 24,95 2203 01:34:46,170 --> 01:34:48,710 lo que estoy leyendo es el 2204 01:34:48,710 --> 01:34:49,909 valor de 2205 01:34:49,909 --> 01:34:52,630 la última medición que se hizo con 2206 01:34:52,630 --> 01:34:54,689 este sensor de temperatura y humedad morado 2207 01:34:54,689 --> 01:34:56,630 que tengo aquí, que tampoco sé si veréis, espero 2208 01:34:56,630 --> 01:34:58,550 que sí, que es un HTU 2209 01:34:58,550 --> 01:35:00,609 21D. Entonces, este 2210 01:35:00,609 --> 01:35:02,590 sensor lo tengo 2211 01:35:02,590 --> 01:35:04,649 también conectado por I2C al 2212 01:35:04,649 --> 01:35:06,729 SP32. Es decir, lo que yo tengo aquí 2213 01:35:06,729 --> 01:35:07,710 es un SP32 2214 01:35:07,710 --> 01:35:10,789 que está conectado por I2C a un sensor 2215 01:35:10,789 --> 01:35:13,010 de temperatura y humedad. Va a leer 2216 01:35:13,010 --> 01:35:14,829 el valor de la temperatura y la 2217 01:35:14,829 --> 01:35:17,010 humedad y ese valor lo va a escribir 2218 01:35:17,010 --> 01:35:20,250 no en una pantalla, sino que lo va a escribir en el chip 2219 01:35:20,250 --> 01:35:22,909 NFC, de tal forma que nosotros vamos a poder 2220 01:35:22,909 --> 01:35:25,770 leerlo directamente con nuestro teléfono móvil 2221 01:35:25,770 --> 01:35:26,970 sin necesidad de pantalla 2222 01:35:26,970 --> 01:35:32,390 dicho esto, vamos a hacer la demostración 2223 01:35:32,390 --> 01:35:35,550 a ver si funciona, tengo por aquí un cable 2224 01:35:35,550 --> 01:35:38,409 voy a desconectar ya el equipo Matter 2225 01:35:38,409 --> 01:35:40,010 que con eso ya hemos terminado 2226 01:35:40,010 --> 01:35:45,920 y ahora voy a conectar el SP32 2227 01:35:46,479 --> 01:35:50,079 bueno, no lo voy a conectar todavía 2228 01:35:50,079 --> 01:35:52,340 voy a contaros primero un poquito 2229 01:35:52,340 --> 01:35:53,600 sobre el software 2230 01:35:53,600 --> 01:35:55,539 y luego lo cuento 2231 01:35:55,539 --> 01:35:58,319 la tarjeta ST25 como os decía 2232 01:35:58,319 --> 01:36:00,260 al principio tiene 8K de memoria 2233 01:36:00,260 --> 01:36:02,359 tiene 4 áreas de memoria 2234 01:36:02,359 --> 01:36:03,420 el área 1 2235 01:36:03,420 --> 01:36:05,520 siempre es legible 2236 01:36:05,520 --> 01:36:08,119 y las áreas del 2 al 4 2237 01:36:08,119 --> 01:36:10,199 se pueden proteger en lectura 2238 01:36:10,199 --> 01:36:12,300 y o escritura, pero el área 1 2239 01:36:12,300 --> 01:36:14,460 siempre tiene que ser legible, es obligatorio 2240 01:36:14,460 --> 01:36:16,180 y para utilizar 2241 01:36:16,180 --> 01:36:18,079 estas etiquetas se recomienda utilizar 2242 01:36:18,079 --> 01:36:19,840 la aplicación esta que yo os estaba enseñando 2243 01:36:19,840 --> 01:36:22,840 la de ST25 porque funciona un poco mejor 2244 01:36:22,840 --> 01:36:25,359 que el NFC Tools que os he enseñado antes 2245 01:36:25,359 --> 01:36:28,699 entonces afortunadamente para usar esta etiqueta 2246 01:36:28,699 --> 01:36:31,659 como para utilizar cualquier otro circuito integrado 2247 01:36:31,659 --> 01:36:34,439 hoy por hoy pues existe una biblioteca 2248 01:36:34,439 --> 01:36:37,359 esa biblioteca la ha hecho Sparfan, es esta que veis aquí 2249 01:36:37,359 --> 01:36:39,539 entonces me ofrece dos clases 2250 01:36:39,539 --> 01:36:43,939 una primera clase que es para leer y escribir en la memoria EEPROM 2251 01:36:43,939 --> 01:36:46,979 y otra que es para crear esos registros 2252 01:36:46,979 --> 01:36:49,039 NDF, las URLs 2253 01:36:49,039 --> 01:36:50,739 los textos, los 2254 01:36:50,739 --> 01:36:52,260 Hangover Wifi, lo que sea 2255 01:36:52,260 --> 01:36:54,979 entonces, ¿cómo se utiliza esto? 2256 01:36:55,100 --> 01:36:56,640 pues muy sencillo, tú pones 2257 01:36:56,640 --> 01:36:58,739 Tag Begging y dices que quieres 2258 01:36:58,739 --> 01:37:01,039 utilizar esa etiqueta por I2C 2259 01:37:01,039 --> 01:37:03,100 Wire quiere decir I2C 2260 01:37:03,100 --> 01:37:04,880 ¿vale? y luego por ejemplo 2261 01:37:04,880 --> 01:37:07,020 que quiero obtener el identificador 2262 01:37:07,020 --> 01:37:08,720 único de la tarjeta, pues pongo 2263 01:37:08,720 --> 01:37:10,619 Get Device UID, ¿vale? 2264 01:37:10,659 --> 01:37:12,279 que quiero leer una versión de la memoria 2265 01:37:12,279 --> 01:37:14,859 Recepron, la dirección que 2266 01:37:14,859 --> 01:37:16,760 quiero leer, pues aquí por ejemplo estaría leyendo 2267 01:37:16,760 --> 01:37:19,239 16, estoy leyendo porque 2268 01:37:19,239 --> 01:37:21,119 pongo aquí tag read, leer 2269 01:37:21,119 --> 01:37:22,779 16 bytes 2270 01:37:22,779 --> 01:37:24,979 a partir de la posición 0 2271 01:37:24,979 --> 01:37:27,119 hay otra rata, he puesto bytes con i 2272 01:37:27,119 --> 01:37:28,619 y dejamos 2273 01:37:28,619 --> 01:37:34,970 ¿cómo se escribe? 2274 01:37:35,590 --> 01:37:37,710 tenías URI puesto en el URL me parece 2275 01:37:37,710 --> 01:37:39,029 si, es que es URI 2276 01:37:39,029 --> 01:37:41,430 es el localizador 2277 01:37:41,430 --> 01:37:43,970 de sitios web 2278 01:37:43,970 --> 01:37:46,409 y URI es el localizador genérico 2279 01:37:46,409 --> 01:37:47,529 genérico, perdón 2280 01:37:47,529 --> 01:37:51,609 ah, para escribir 2281 01:37:51,609 --> 01:38:14,970 Pues igual, ¿vale? Para escribir, pues ya te lo puedes imaginar. En vez de readEpron, writeEpron. Pues aquí estoy escribiendo 16 bytes a partir de la posición 0, ¿vale? ¿Qué estoy escribiendo? Lo que yo tenga en el array tagWrite, ¿vale? Igual aquí yo había creado un array tagRead que lo había creado vacío, todo con ceros, ¿vale? Y después de ejecutar este método, pues me lo va a leer y ya está, ¿vale? 2282 01:38:14,970 --> 01:38:29,409 Entonces, para poder utilizar los métodos NDF, ¿vale? Estos que os he mostrado aquí son simplemente para escribir y leer en bruto, ¿vale? Son para escribir y leer una memoria EEPROM. Ahí lo que hacemos es escribir bytes, sin más. 2283 01:38:29,409 --> 01:38:51,789 Pero si yo lo que quiero es leer y escribir registros NDF, lo que tengo que hacer es crear un objeto de esta clase que estáis viendo aquí, ¿vale? Aparte del tag, que es lo que hemos creado aquí, ¿vale? Esta tag, pues aparte de ese tag, voy a crearme la tag como un objeto de la clase NDF, ¿vale? 2284 01:38:51,789 --> 01:39:14,810 Y para poder utilizar NDF, lo primero que tenemos que escribir aquí en bruto, lo que tendríamos que escribir es un paquete que puede ser de 8 o de 4 bytes que se llama el Capability Container. Eso es obligatorio. Si no escribes esto, no va a ser reconocida la tarjeta como una tarjeta NDF. ¿Eso cómo se escribe? Pues tan simple como este comando, tag brightcc file 8 byte. 2285 01:39:14,810 --> 01:39:31,569 Y una vez que ya tengamos eso escrito, solo hay que escribirlo una vez, ya puedes crear todos los registros que tú quieras y del tipo que tú quieras. Pero claro, le tienes que decir en qué posición de memoria lo quieres guardar. Tened en cuenta que una tarjeta NFC, lo repito ya por tercera o cuarta vez, es simplemente una memoria EEPROM. 2286 01:39:31,569 --> 01:39:48,229 Entonces, si yo, por ejemplo, le digo, oye, quiero escribir un registro NDF de tipo URI, ¿vale? Que tenga este contenido, ¿vale? Aquí le estoy diciendo el tipo, que es HTTPS World Wide Web. 2287 01:39:48,229 --> 01:39:49,869 pero luego le tengo que decir 2288 01:39:49,869 --> 01:39:51,729 en qué posición de memoria 2289 01:39:51,729 --> 01:39:53,369 lo quiero guardar 2290 01:39:53,369 --> 01:39:55,449 ¿y en qué posición de memoria tiene que ir? 2291 01:39:55,710 --> 01:39:56,869 pues tiene que ir justo 2292 01:39:56,869 --> 01:39:59,510 a continuación del capability container 2293 01:39:59,510 --> 01:40:01,909 entonces yo para obtener esa posición 2294 01:40:01,909 --> 01:40:03,189 de memoria lo que hago es 2295 01:40:03,189 --> 01:40:05,409 llamar a este método que tenéis aquí 2296 01:40:05,409 --> 01:40:07,689 que ese método me da la posición 2297 01:40:07,689 --> 01:40:09,909 de memoria inmediatamente posterior 2298 01:40:09,909 --> 01:40:11,590 al capability container 2299 01:40:11,590 --> 01:40:13,909 pues eso lo tengo ya almacenado en la variable 2300 01:40:13,909 --> 01:40:15,930 memory location y directamente 2301 01:40:15,930 --> 01:40:17,409 se la paso al método write 2302 01:40:17,409 --> 01:40:20,689 de esta forma ya habré escrito 2303 01:40:20,689 --> 01:40:21,970 este primer registro 2304 01:40:21,970 --> 01:40:24,609 y fijaos que interesante, aquí le tengo que decir 2305 01:40:24,609 --> 01:40:26,670 que es el comienzo del mensaje 2306 01:40:26,670 --> 01:40:28,930 pero no es el final del mensaje 2307 01:40:28,930 --> 01:40:30,430 veis un true y un false 2308 01:40:30,430 --> 01:40:32,590 imaginaos que yo quiero escribir 2309 01:40:32,590 --> 01:40:33,949 ahora un segundo registro 2310 01:40:33,949 --> 01:40:36,710 en este segundo registro también es de tipo URI 2311 01:40:36,710 --> 01:40:38,810 pues igual, toda la primera parte igual 2312 01:40:38,810 --> 01:40:40,970 pero ahora llego aquí a memory location 2313 01:40:40,970 --> 01:40:42,090 y diría, cuidado 2314 01:40:42,090 --> 01:40:44,810 aquí tienes que poner el memory location 2315 01:40:44,810 --> 01:40:46,729 original más el tamaño 2316 01:40:46,729 --> 01:40:48,810 de este MemoryLocation que ya has ocupado 2317 01:40:48,810 --> 01:40:50,010 con Sparkfun.com 2318 01:40:50,010 --> 01:40:52,010 pues no te tienes que preocupar 2319 01:40:52,010 --> 01:40:54,850 porque precisamente el método write ya se preocupa 2320 01:40:54,850 --> 01:40:57,149 por ti de eso y él solo va a actualizar 2321 01:40:57,149 --> 01:40:58,489 en la variable MemoryLocation 2322 01:40:58,489 --> 01:41:00,189 la siguiente posición 2323 01:41:00,189 --> 01:41:01,970 entonces no tienes que hacer nada 2324 01:41:01,970 --> 01:41:03,789 tú puedes escribir aquí lo que te dé la gana 2325 01:41:03,789 --> 01:41:06,869 y él va haciendo una contabilidad interna 2326 01:41:06,869 --> 01:41:08,930 para ir manteniendo MemoryLocation 2327 01:41:08,930 --> 01:41:11,189 siempre en el siguiente byte 2328 01:41:11,189 --> 01:41:12,289 en el que puedes escribir 2329 01:41:12,289 --> 01:41:14,829 en este caso, como luego voy a escribir 2330 01:41:14,829 --> 01:41:16,869 un tercero registro, veis que aquí 2331 01:41:16,869 --> 01:41:18,829 le digo que no es el principio 2332 01:41:18,829 --> 01:41:20,890 del mensaje, ni es el 2333 01:41:20,890 --> 01:41:22,989 final del mensaje, y luego 2334 01:41:22,989 --> 01:41:24,869 ya cuando hago el tercero, en este 2335 01:41:24,869 --> 01:41:27,050 caso sí le digo que no es el principio 2336 01:41:27,050 --> 01:41:28,970 del mensaje, pero que sí 2337 01:41:28,970 --> 01:41:30,670 que es el final de un mensaje 2338 01:41:30,670 --> 01:41:32,949 ¿vale? bueno, pues 2339 01:41:32,949 --> 01:41:34,869 este sería el sistema 2340 01:41:34,869 --> 01:41:35,970 que tendríamos para 2341 01:41:35,970 --> 01:41:38,789 escribir un registro, aquí veis 2342 01:41:38,789 --> 01:41:40,869 un ejemplo más claro, ¿vale? simplemente 2343 01:41:40,869 --> 01:41:42,930 grabo el capability container 2344 01:41:42,930 --> 01:41:46,289 y averiguo en qué posición de memoria ha terminado 2345 01:41:46,289 --> 01:41:48,430 y a continuación escribo 2346 01:41:48,430 --> 01:41:51,609 un mensaje en esa posición 2347 01:41:51,609 --> 01:41:54,970 diciéndole que es un principio de mensaje pero que no es 2348 01:41:54,970 --> 01:41:57,750 un final de mensaje, true, false, y luego 2349 01:41:57,750 --> 01:42:00,949 escribo unos segundos, en este caso son de texto, no de URI 2350 01:42:00,949 --> 01:42:04,069 como antes, y en este caso le digo que no es 2351 01:42:04,069 --> 01:42:06,590 un principio de mensaje pero sí es un final de mensaje 2352 01:42:06,590 --> 01:42:09,909 así de fácil, y si yo quisiera leer un registro 2353 01:42:09,909 --> 01:42:12,170 en vez de escribirlo, pues nada, le digo 2354 01:42:12,170 --> 01:42:14,789 que quiero leer un registro 2355 01:42:14,789 --> 01:42:16,170 ¿cuántos bytes 2356 01:42:16,170 --> 01:42:17,449 tiene ese registro? 2357 01:42:18,109 --> 01:42:19,569 y así de sencillo 2358 01:42:19,569 --> 01:42:21,050 pues aquí está el código 2359 01:42:21,050 --> 01:42:23,149 lo que voy a hacer es este código 2360 01:42:23,149 --> 01:42:26,170 lo voy a meter en Arduino y vamos a ver cómo funciona 2361 01:42:26,170 --> 01:42:28,470 me acerco un poco al código para que veáis 2362 01:42:28,470 --> 01:42:29,890 que no tiene nada excepcional 2363 01:42:29,890 --> 01:42:32,289 aquí lo que, de hecho es un código sacado 2364 01:42:32,289 --> 01:42:34,029 de los ejemplos, como siempre 2365 01:42:34,029 --> 01:42:36,289 lo he modificado un poco para poder leer 2366 01:42:36,289 --> 01:42:37,949 el sensor 2367 01:42:37,949 --> 01:42:40,170 HTU21D de temperatura y humedad 2368 01:42:40,170 --> 01:42:41,930 pero es un ejemplo sencillo 2369 01:42:42,170 --> 01:43:10,649 Aquí lo que hago es añadir la librería. Como ya os adelantaba, creo TAG como un objeto de la clase NDF para poder crear registros NDF. Esta es la dirección de esclavo del sensor de temperatura y humedad, del HTU21D. Luego lo que hago aquí dentro es simplemente arrancar el puerto serie y comprobar si el SP32 tiene conexión con el ST25. 2370 01:43:10,649 --> 01:43:13,550 si no la tiene, se queda ahí ya parado para siempre 2371 01:43:13,550 --> 01:43:14,970 ¿vale? pero si la tiene 2372 01:43:14,970 --> 01:43:17,409 lo primero que hace, como veis aquí 2373 01:43:17,409 --> 01:43:19,630 es escribir el capability container 2374 01:43:19,630 --> 01:43:21,390 ¿vale? ya lo tengo escrito 2375 01:43:21,390 --> 01:43:23,529 y luego, cuando llegamos al loop 2376 01:43:23,529 --> 01:43:25,510 bueno, pues lo primero que hace 2377 01:43:25,510 --> 01:43:26,470 cuando llegamos al loop 2378 01:43:26,470 --> 01:43:29,130 es resetear el 2379 01:43:29,130 --> 01:43:31,590 HTU21D, ¿vale? lo reseteo 2380 01:43:31,590 --> 01:43:32,909 lo hago un reseteo suave 2381 01:43:32,909 --> 01:43:35,050 luego ya que lo he reseteado 2382 01:43:35,050 --> 01:43:36,289 lo que hago es 2383 01:43:36,289 --> 01:43:38,789 iniciar la medición de la temperatura 2384 01:43:38,789 --> 01:43:40,609 que es con este comando, ¿vale? 2385 01:43:40,649 --> 01:43:58,149 A ese, mandamos este comando a esa dirección de esclavo y él va a empezar a medir la temperatura. Y luego lo que hago es que realizo hasta 10 intentos para medir la temperatura. ¿Esto por qué es? Porque me puede dar algún fallo, a lo mejor en la lectura o lo que sea, ¿vale? 2386 01:43:58,149 --> 01:44:14,590 Entonces veis que le digo aquí, mientras que no haya conseguido una recepción correcta y siempre que el contador sea menor que 10, pues estoy leyendo las temperaturas que me está mandando el HTU21D. 2387 01:44:15,590 --> 01:44:24,590 El HTU21D utiliza su propio formato, que son 3 bytes, ¿vale? Y para extraer la temperatura tienes que usar esta fórmula que veis aquí tan rarísima, ¿vale? 2388 01:44:24,590 --> 01:44:26,550 pues esta fórmula ¿de dónde ha salido? 2389 01:44:26,689 --> 01:44:28,890 de la hoja de datos del HTU21D 2390 01:44:28,890 --> 01:44:30,369 ¿vale? no tiene más misterio 2391 01:44:30,369 --> 01:44:32,930 esto es lo que os decía en una de las primeras clases 2392 01:44:32,930 --> 01:44:35,090 que todos los sensores son analógicos 2393 01:44:35,090 --> 01:44:37,050 y normalmente pues nos van a dar 2394 01:44:37,050 --> 01:44:38,869 una resistencia o nos van a dar una 2395 01:44:38,869 --> 01:44:40,529 tensión o nos van a dar una corriente 2396 01:44:40,529 --> 01:44:42,670 pues para pasar de esa resistencia 2397 01:44:42,670 --> 01:44:44,090 esa tensión o esa corriente 2398 01:44:44,090 --> 01:44:46,789 al valor, a la magnitud que nosotros nos 2399 01:44:46,789 --> 01:44:48,649 interesa medir, en este caso una temperatura 2400 01:44:48,649 --> 01:44:50,890 vamos a tener que utilizar pues típicamente 2401 01:44:50,890 --> 01:44:53,029 un polinomio de ajuste o bien una tabla 2402 01:44:53,029 --> 01:44:54,789 en este caso es esta fórmula 2403 01:44:54,789 --> 01:44:55,970 que es una fórmula sencilla 2404 01:44:55,970 --> 01:44:59,109 pues simplemente con los 3 bytes que hemos leído 2405 01:44:59,109 --> 01:45:00,710 calculamos la temperatura 2406 01:45:00,710 --> 01:45:02,270 pues ya tenemos la temperatura 2407 01:45:02,270 --> 01:45:04,489 y una vez que hemos medido la temperatura 2408 01:45:04,489 --> 01:45:06,750 lo que hacemos es que 2409 01:45:06,750 --> 01:45:09,210 esa temperatura la escribimos 2410 01:45:09,210 --> 01:45:10,930 como un registro NDF 2411 01:45:10,930 --> 01:45:12,670 en el ST25 2412 01:45:12,670 --> 01:45:14,149 que es justo lo que estoy haciendo aquí 2413 01:45:14,149 --> 01:45:16,989 veis que aquí le estoy diciendo que quiero escribir 2414 01:45:16,989 --> 01:45:18,789 en el NDF 2415 01:45:18,789 --> 01:45:21,409 un texto 2416 01:45:21,409 --> 01:45:22,050 en este caso 2417 01:45:22,050 --> 01:45:24,350 ¿qué texto? pues el mensaje que he construido 2418 01:45:24,350 --> 01:45:26,069 aquí arriba, la temperatura 2419 01:45:26,069 --> 01:45:28,149 con su parte entera y su parte 2420 01:45:28,149 --> 01:45:29,829 decimal, y le digo que es 2421 01:45:29,829 --> 01:45:32,470 un inicio de mensaje y un final de mensaje 2422 01:45:32,470 --> 01:45:34,430 porque no voy a añadir aquí nada más 2423 01:45:34,430 --> 01:45:36,510 ¿vale? pues una vez visto el código 2424 01:45:36,510 --> 01:45:38,289 lo voy a 2425 01:45:38,289 --> 01:45:40,270 lo tenía ya preparado por aquí 2426 01:45:40,270 --> 01:45:41,449 para no perder tiempo 2427 01:45:41,449 --> 01:45:44,250 ¿vale? lo tengo aquí 2428 01:45:44,250 --> 01:45:45,949 lo copio 2429 01:45:45,949 --> 01:45:47,289 me voy a Arduino 2430 01:45:47,289 --> 01:45:55,850 archivo 2431 01:45:55,850 --> 01:45:57,210 nuevo sketch 2432 01:45:57,210 --> 01:46:00,170 voy ya conectando el SP32 2433 01:46:00,170 --> 01:46:22,989 a ver, perdonadme 2434 01:46:22,989 --> 01:46:24,569 pero cada vez que conecto algo 2435 01:46:24,569 --> 01:46:26,670 me parece que se desconecta la webcam 2436 01:46:26,670 --> 01:46:28,109 o algo así, no sé qué está pasando 2437 01:46:28,109 --> 01:46:30,789 no sé si 2438 01:46:30,789 --> 01:46:32,090 ahora me estáis viendo o no 2439 01:46:32,090 --> 01:46:34,729 sí, creo que ahora sí, vale, justo 2440 01:46:34,729 --> 01:46:36,569 bien, pues entonces 2441 01:46:36,569 --> 01:46:37,930 pego aquí el código 2442 01:46:37,930 --> 01:46:44,000 veis que me ha metido aquí unos caracteres 2443 01:46:44,000 --> 01:46:45,180 raros, los voy a quitar 2444 01:46:45,180 --> 01:46:55,850 y los voy a reemplazar por nada 2445 01:46:55,850 --> 01:46:57,989 reemplazar 2446 01:46:57,989 --> 01:47:00,069 vale, ya está 2447 01:47:00,069 --> 01:47:03,170 vale, es el mismo código que habéis visto ahí 2448 01:47:03,170 --> 01:47:04,109 exactamente igual 2449 01:47:04,109 --> 01:47:06,430 y lo que voy a hacer es cargarlo 2450 01:47:06,430 --> 01:47:08,310 para ello le tengo que decir en qué puerto 2451 01:47:08,310 --> 01:47:10,590 que está en el puerto 24, correcto 2452 01:47:10,590 --> 01:47:11,529 lo cargo 2453 01:47:11,529 --> 01:47:15,430 y ahora estamos metiendo ese programa en el SP32 2454 01:47:15,430 --> 01:47:16,770 con lo cual el SP32 2455 01:47:16,770 --> 01:47:18,109 va a leer 2456 01:47:18,109 --> 01:47:20,010 cada cuánto tiempo lo he puesto 2457 01:47:20,010 --> 01:47:23,069 cada 60 segundos, cada minuto 2458 01:47:23,069 --> 01:47:25,350 va a leer el sensor de temperatura 2459 01:47:25,350 --> 01:47:26,729 HTU21D 2460 01:47:26,729 --> 01:47:41,210 Y la temperatura, en vez de mostrármela por una pantalla, me la va a mostrar por el monitor serie y la va a grabar también en la etiqueta ST25, con lo cual yo voy a poder ir a la etiqueta ST25 con mi teléfono móvil y leer la temperatura de este sensor. 2461 01:47:41,210 --> 01:48:00,289 Como veis, eso es muy potente. La posibilidad de hacer esto supone de pronto que tú puedes tener información que cualquiera puede leer con su teléfono móvil o incluso información que solamente puede leer con su teléfono móvil quien conoce las contraseñas de esa etiqueta ST25. 2462 01:48:00,289 --> 01:48:03,819 ¿vale? Vamos a ver 2463 01:48:03,819 --> 01:48:06,119 Perdón, ahora que lo mencionas, pero cuando 2464 01:48:06,119 --> 01:48:08,119 tienes contraseña, ¿cómo funciona eso? 2465 01:48:08,199 --> 01:48:10,260 Tú lees del teléfono y luego en el teléfono 2466 01:48:10,260 --> 01:48:12,539 tú metes ahí una contraseña y con la contraseña 2467 01:48:12,539 --> 01:48:14,119 esa decodifica la información 2468 01:48:14,119 --> 01:48:16,140 ¿o cómo lo haces? Exacto, tú 2469 01:48:16,140 --> 01:48:18,220 en tu teléfono móvil le tienes que 2470 01:48:18,220 --> 01:48:20,159 dar a la aplicación cuál es la contraseña de 2471 01:48:20,159 --> 01:48:22,319 esa tarjeta, entonces cuando 2472 01:48:22,319 --> 01:48:24,199 el teléfono móvil se conecta a la tarjeta 2473 01:48:24,199 --> 01:48:25,479 le envía la contraseña 2474 01:48:25,479 --> 01:48:28,300 ¿vale? No se descifra 2475 01:48:28,300 --> 01:48:30,539 a posteriori, no se desencrista a posteriori 2476 01:48:30,539 --> 01:48:32,279 directamente para acceder a la 2477 01:48:32,279 --> 01:48:34,619 información, el teléfono móvil tiene que pasar la contraseña. 2478 01:48:35,039 --> 01:48:35,979 Si no, en la tarjeta no 2479 01:48:35,979 --> 01:48:38,140 se va a dejar leer. O peor, 2480 01:48:38,380 --> 01:48:40,439 se puede dejar leer y mandarte información 2481 01:48:40,439 --> 01:48:42,359 ofuscada, ¿vale? Información que no tiene 2482 01:48:42,359 --> 01:48:42,800 nada que ver. 2483 01:48:43,979 --> 01:48:46,079 Vale. Gracias. 2484 01:48:47,140 --> 01:48:48,340 A ver si este 2485 01:48:48,340 --> 01:48:50,079 debería tardar menos porque es un ejemplo 2486 01:48:50,079 --> 01:48:51,720 más sencillo. 2487 01:48:52,539 --> 01:48:54,159 Y otra cosa, mientras compila 2488 01:48:54,159 --> 01:48:56,119 eso. Has dicho que 2489 01:48:56,119 --> 01:48:57,880 esto es una Apple, ¿no? 2490 01:48:57,939 --> 01:48:59,300 Pero también has hablado de que 2491 01:48:59,300 --> 01:49:02,220 has enseñado ahí un modelo 2492 01:49:02,220 --> 01:49:08,439 en el que la antena era capaz de alimentar también un microchip, ¿no? 2493 01:49:08,439 --> 01:49:09,199 Que llevaba, ¿no? 2494 01:49:09,279 --> 01:49:12,319 O sea, que en el modelo puede haber dos cosas, ¿no? 2495 01:49:12,319 --> 01:49:13,779 La EEPROM y el microchip, ¿no? 2496 01:49:14,479 --> 01:49:14,939 No, no. 2497 01:49:15,239 --> 01:49:17,100 El ST25 es este, ¿vale? 2498 01:49:17,680 --> 01:49:18,000 Sí. 2499 01:49:18,699 --> 01:49:21,199 Pues el ST25 es una EEPROM. 2500 01:49:22,140 --> 01:49:25,079 Pero claro, además lleva la conexión a la antena, ¿vale? 2501 01:49:25,619 --> 01:49:30,819 Entonces, lo que hace el ST25 es que él recolecta energía a través de la antena 2502 01:49:30,819 --> 01:49:32,739 y la que le sobra 2503 01:49:32,739 --> 01:49:34,699 la pone a disposición a través 2504 01:49:34,699 --> 01:49:36,859 de un pin del microcontrolador 2505 01:49:36,859 --> 01:49:38,640 principal de esta placa, que es este otro 2506 01:49:38,640 --> 01:49:40,260 de aquí, creo que no sería mi puntero ahora 2507 01:49:40,260 --> 01:49:42,579 es el que tengo más o menos centrado ahora 2508 01:49:42,579 --> 01:49:42,779 ¿vale? 2509 01:49:44,560 --> 01:49:46,539 entonces lo que está haciendo es que 2510 01:49:46,539 --> 01:49:48,939 la energía que a ella le sobra, que al ST25 2511 01:49:48,939 --> 01:49:50,579 se la pasa al resto del 2512 01:49:50,579 --> 01:49:52,399 circuito, a ver 2513 01:49:52,399 --> 01:49:53,539 esto no 2514 01:49:53,539 --> 01:49:55,739 no os engaño ¿vale? 2515 01:49:56,100 --> 01:49:58,560 la demostración que hace STM en el 2516 01:49:58,560 --> 01:50:00,159 webinario no funciona 2517 01:50:00,159 --> 01:50:03,060 como un móvil, al final tienen que usar un lector profesional 2518 01:50:03,060 --> 01:50:06,380 que manda bastante más energía que el móvil para poder alimentar 2519 01:50:06,380 --> 01:50:09,020 todo este circuito, pero bueno 2520 01:50:09,020 --> 01:50:10,760 es una opción que está ahí interesante 2521 01:50:10,760 --> 01:50:14,840 y lo que has dicho ahí de la tarjeta bancaria 2522 01:50:14,840 --> 01:50:16,779 que cuando la acercas ahí al 2523 01:50:16,779 --> 01:50:21,020 datáfono y envía ahí unas contraseñas 2524 01:50:21,020 --> 01:50:24,000 perdona, que envía un número 2525 01:50:24,000 --> 01:50:24,859 al banco 2526 01:50:24,859 --> 01:50:30,020 pero ese número que es una lista 2527 01:50:30,020 --> 01:50:31,680 que lleva ahí grabada la tarjeta 2528 01:50:31,680 --> 01:50:33,819 o le da 2529 01:50:33,819 --> 01:50:35,979 algo para que el datáfono genere 2530 01:50:35,979 --> 01:50:37,600 ese número en su nombre o como 2531 01:50:37,600 --> 01:50:39,819 Mira, tú 2532 01:50:39,819 --> 01:50:42,359 Es pasivo, ¿no? Lo que lleva la tarjeta 2533 01:50:42,359 --> 01:50:43,899 lo que lleva 2534 01:50:43,899 --> 01:50:45,539 la tarjeta, la visa 2535 01:50:45,539 --> 01:50:47,600 eso es también, hay una cosa pasiva, ¿no? 2536 01:50:49,420 --> 01:50:49,819 No 2537 01:50:49,819 --> 01:50:51,699 te entiendo, Germán, lo que quieres decir con pasivo 2538 01:50:51,699 --> 01:50:52,460 Si quieres yo te cuento 2539 01:50:52,460 --> 01:50:54,760 Que es una EPROM, que eso lo puedes leer, ¿no? 2540 01:50:55,560 --> 01:50:57,479 No, no, no, es más complicado que eso 2541 01:50:57,479 --> 01:51:03,100 Tú, por ejemplo, cuando has metido la tarjeta en tu teléfono móvil, te has tenido que instalar una aplicación de pago. 2542 01:51:03,720 --> 01:51:08,180 Al instalarte esa aplicación de pago, tú has dado de alta tu tarjeta, que tiene un número, el número que sea. 2543 01:51:09,000 --> 01:51:19,239 Sí, no digo de la tarjeta metida en el móvil, yo te hablo de la tarjeta física que acercas al dataflow, la visa física. 2544 01:51:20,220 --> 01:51:22,180 ¿Me estás hablando en este caso de skimming? 2545 01:51:22,180 --> 01:51:24,260 no sé, no sé 2546 01:51:24,260 --> 01:51:26,500 en general el funcionamiento 2547 01:51:26,500 --> 01:51:28,319 tú de la tarjeta visa física 2548 01:51:28,319 --> 01:51:29,119 sí 2549 01:51:29,119 --> 01:51:32,159 esa la acercas al datáfono, ¿no? 2550 01:51:32,600 --> 01:51:33,939 sí, para pagar 2551 01:51:33,939 --> 01:51:35,819 sí, y ahí 2552 01:51:35,819 --> 01:51:38,180 el datáfono que está leyendo datos 2553 01:51:38,180 --> 01:51:39,619 que lleva ahí tu tarjeta, pero 2554 01:51:39,619 --> 01:51:42,199 estarán de alguna manera cifrados o alguna 2555 01:51:42,199 --> 01:51:43,760 cosa de esas, o cómo está eso 2556 01:51:43,760 --> 01:51:46,000 sí, está cifrado, está el ID 2557 01:51:46,000 --> 01:51:48,180 que el ID no está cifrado, ¿vale? 2558 01:51:48,500 --> 01:51:50,199 y luego está el PIN, que ese 2559 01:51:50,199 --> 01:51:52,159 sí que está cifrado, ¿vale? el PIN de tu 2560 01:51:52,159 --> 01:51:54,829 tarjeta 2561 01:51:54,829 --> 01:51:57,430 sí, sí, sí, claro 2562 01:51:57,430 --> 01:51:59,529 ahí está, entonces 2563 01:51:59,529 --> 01:52:01,409 es lo único que hay en el 2564 01:52:01,409 --> 01:52:03,409 datáfono, simplemente lo único que está pasando 2565 01:52:03,409 --> 01:52:05,350 es el número de la tarjeta, ya está 2566 01:52:05,350 --> 01:52:07,449 el ID, pasa el ID 2567 01:52:07,449 --> 01:52:09,069 de forma no encriptada 2568 01:52:09,069 --> 01:52:11,569 y luego cuando tú en el datáfono escribes el PIN 2569 01:52:11,569 --> 01:52:13,449 el PIN se manda a la tarjeta 2570 01:52:14,229 --> 01:52:15,670 y la tarjeta verifica 2571 01:52:15,670 --> 01:52:17,350 si el PIN que llega del datáfono 2572 01:52:17,350 --> 01:52:19,289 coincide con el PIN que está almacenado en la propia 2573 01:52:19,289 --> 01:52:21,409 tarjeta y si coincide autoriza 2574 01:52:21,409 --> 01:52:23,170 la operación, vale 2575 01:52:23,170 --> 01:52:25,350 y en ese caso el datáfono ya conecta con el banco 2576 01:52:25,350 --> 01:52:27,510 y te hace el cargo, si no, no te hace el cargo 2577 01:52:27,510 --> 01:52:31,590 Sí, sí, pero ahí la tarjeta 2578 01:52:31,590 --> 01:52:33,489 siendo algo pasivo 2579 01:52:33,489 --> 01:52:35,289 es capaz de autorizar la 2580 01:52:35,289 --> 01:52:37,449 Sí, sí, ten 2581 01:52:37,449 --> 01:52:39,329 en cuenta lo que te he dicho, esto es 2582 01:52:39,329 --> 01:52:41,210 NFC, aunque sea pasivo, se 2583 01:52:41,210 --> 01:52:43,449 alimenta y puede transmitir datos 2584 01:52:43,449 --> 01:52:44,069 al datáfono 2585 01:52:44,069 --> 01:52:47,289 o sea, ¿qué ocurre? tú acercas 2586 01:52:47,289 --> 01:52:49,289 la tarjeta al datáfono, entonces lo primero que 2587 01:52:49,289 --> 01:52:51,390 hace la tarjeta es transmitir su ID 2588 01:52:51,390 --> 01:52:53,149 al datáfono, ¿vale? 2589 01:52:53,170 --> 01:52:54,729 que ese ID es fijo, ese no cabe 2590 01:52:54,729 --> 01:52:57,449 ¿el ID que te refieres, el número de tarjeta? 2591 01:52:57,649 --> 01:52:59,430 sí, no es exactamente el número de tarjeta 2592 01:52:59,430 --> 01:53:01,029 es un identificador que utilizan, ¿vale? 2593 01:53:02,050 --> 01:53:02,449 luego 2594 01:53:02,449 --> 01:53:05,050 escribes el PIN en el datáfono 2595 01:53:05,050 --> 01:53:07,170 entonces el datáfono transmite ese PIN 2596 01:53:07,170 --> 01:53:09,090 a tu tarjeta 2597 01:53:09,090 --> 01:53:11,430 y le pregunta a la tarjeta, ¿es este PIN válido? 2598 01:53:12,270 --> 01:53:13,609 y la tarjeta lo verifica 2599 01:53:13,609 --> 01:53:15,109 porque lleva un microcontrolador dentro 2600 01:53:15,109 --> 01:53:17,029 para verificarlo, y si es correcto 2601 01:53:17,029 --> 01:53:19,170 le contesta al datáfono si es válido 2602 01:53:19,170 --> 01:53:20,170 y entonces el datáfono 2603 01:53:20,170 --> 01:53:21,869 te hace el cargo 2604 01:53:21,869 --> 01:53:25,449 pero si lleva ahí un microcontrolador 2605 01:53:25,449 --> 01:53:29,289 ese sí se está alimentando también 2606 01:53:29,289 --> 01:53:31,689 exacto, sí, sí, es como este caso 2607 01:53:31,689 --> 01:53:33,510 que estaba enseñando aquí 2608 01:53:33,510 --> 01:53:38,109 pues ahí es una EEPROM 2609 01:53:38,109 --> 01:53:40,170 con microcontrolador, que era lo que te decía 2610 01:53:40,170 --> 01:53:44,550 ah, vale, no te estaba entendiendo, sí, sí, ahí lo que tenemos en la tarjeta 2611 01:53:44,550 --> 01:53:46,430 es una EEPROM con un pequeño microcontrolador 2612 01:53:46,430 --> 01:53:48,550 es como las tarjetas SIM de los teléfonos 2613 01:53:48,550 --> 01:53:50,609 también son básicamente una memoria 2614 01:53:50,609 --> 01:53:52,869 pero también lleva un pequeño microcontrolador muy básico 2615 01:53:52,869 --> 01:53:54,869 no es en realidad un microcontrolador 2616 01:53:54,869 --> 01:53:56,149 es un sistema hardware 2617 01:53:56,149 --> 01:53:58,670 no podríamos llamarlo microcontrolador 2618 01:53:58,670 --> 01:53:59,729 porque no es programable 2619 01:53:59,729 --> 01:54:02,970 solamente sirve para verificar que el pin es correcto 2620 01:54:02,970 --> 01:54:04,029 no hace otra cosa 2621 01:54:04,029 --> 01:54:05,869 bueno, lleva una lógica 2622 01:54:05,869 --> 01:54:08,329 lleva una lógica, exacto, eso es 2623 01:54:08,329 --> 01:54:10,390 vale, bueno 2624 01:54:10,390 --> 01:54:12,069 pues esperad a ver si ha terminado ya esto 2625 01:54:12,069 --> 01:54:13,470 ya ha terminado, fenomenal 2626 01:54:13,470 --> 01:54:15,590 entonces si voy aquí al monitor serie 2627 01:54:15,590 --> 01:54:19,329 veremos que cada minuto aproximadamente 2628 01:54:19,329 --> 01:54:21,270 bueno, lo voy a arrancar de cero para que veáis 2629 01:54:21,270 --> 01:54:22,869 la comunicación desde cero 2630 01:54:22,869 --> 01:54:24,310 lo reseteo 2631 01:54:24,310 --> 01:54:26,989 entonces aquí lo que me está diciendo 2632 01:54:26,989 --> 01:54:29,569 es ST25 2633 01:54:29,569 --> 01:54:30,409 conectado 2634 01:54:30,409 --> 01:54:33,869 ha leído la temperatura que son 25.78 2635 01:54:33,869 --> 01:54:35,149 y la ha actualizado 2636 01:54:35,149 --> 01:54:37,289 correctamente en la tarjeta ST25 2637 01:54:37,289 --> 01:54:39,170 con lo cual si yo ahora cojo 2638 01:54:39,170 --> 01:54:41,390 mi móvil y con la aplicación 2639 01:54:41,390 --> 01:54:42,750 del ST25 2640 01:54:42,750 --> 01:54:44,569 me vengo aquí 2641 01:54:44,569 --> 01:54:46,949 y tengo un poco de suerte 2642 01:54:46,949 --> 01:54:49,109 para ponerle la tarjeta 2643 01:54:49,109 --> 01:54:50,609 ¿veis? 2644 01:54:50,750 --> 01:54:51,329 la he leído 2645 01:54:51,329 --> 01:54:54,569 y cuando voy a los registros NDF 2646 01:54:54,569 --> 01:54:56,710 me dice que la temperatura es 2647 01:54:56,710 --> 01:54:59,090 justo la que tengo ahí, 25,78 2648 01:54:59,090 --> 01:55:00,569 no sé si lo veréis 2649 01:55:00,569 --> 01:55:03,170 pero bueno, ahí lo veis 2650 01:55:03,170 --> 01:55:04,789 medio se ve, sí 2651 01:55:04,789 --> 01:55:06,890 ¿vale? pues ahí tenéis 2652 01:55:06,890 --> 01:55:08,109 un caso de uso 2653 01:55:08,109 --> 01:55:10,789 de esta tecnología, de la tecnología 2654 01:55:10,789 --> 01:55:13,050 NFC, a mí particularmente 2655 01:55:13,050 --> 01:55:14,569 es una tecnología que me gusta mucho 2656 01:55:14,569 --> 01:55:17,250 porque es razonablemente económica 2657 01:55:17,250 --> 01:55:19,430 ¿vale? en este caso con el ST25 2658 01:55:19,430 --> 01:55:21,109 usando la antena esta 2659 01:55:21,109 --> 01:55:23,090 de GUR no es barato por el precio de la 2660 01:55:23,090 --> 01:55:24,649 antena, que solo la antena son 2 euros 2661 01:55:24,649 --> 01:55:27,029 ¿vale? pero si tú te haces tu propia 2662 01:55:27,029 --> 01:55:28,949 antena, realmente es una 2663 01:55:28,949 --> 01:55:31,069 tecnología muy barata para comunicaciones 2664 01:55:31,069 --> 01:55:33,170 pues eso, para comisionar dispositivos 2665 01:55:33,170 --> 01:55:34,789 o lo que sea ¿vale? 2666 01:55:35,130 --> 01:55:37,229 y luego ya, lo que os decía, esta otra tecnología 2667 01:55:37,229 --> 01:55:39,250 esto no tiene nada que ver con lo que he contado hasta ahora 2668 01:55:39,250 --> 01:55:40,770 ¿eh? ahora ya doy un salto 2669 01:55:40,770 --> 01:55:42,869 al NFC 2670 01:55:42,869 --> 01:55:44,930 de ultra alta frecuencia 2671 01:55:44,930 --> 01:55:46,670 este es el que os digo que se llama 2672 01:55:46,670 --> 01:55:47,770 RINE RFID 2673 01:55:47,770 --> 01:55:50,550 ese ya no funciona en 13,56 2674 01:55:50,550 --> 01:55:52,850 sino que va en 865 MHz 2675 01:55:52,850 --> 01:55:54,930 y ahí lo que 2676 01:55:54,930 --> 01:55:56,850 tenemos es un alcance del orden de metros 2677 01:55:56,850 --> 01:55:58,989 ¿de qué va a depender el alcance? 2678 01:55:59,329 --> 01:56:01,149 pues del tamaño de la antena 2679 01:56:01,149 --> 01:56:02,869 aquí veis distintos modelos 2680 01:56:02,869 --> 01:56:04,590 que se pueden comprar por Aliexpress 2681 01:56:04,590 --> 01:56:06,550 por ejemplo, con precios muy 2682 01:56:06,550 --> 01:56:08,850 económicos, la tarjeta 2683 01:56:08,850 --> 01:56:10,649 es muy económica, el lector es 2684 01:56:10,649 --> 01:56:13,029 muy caro, estas tarjetas 2685 01:56:13,029 --> 01:56:14,670 no sé lo que costarán, no me atrevo a decir nada 2686 01:56:14,670 --> 01:56:16,649 pero los lectores son del orden de 2687 01:56:16,649 --> 01:56:17,770 1000 euros o por ahí 2688 01:56:17,770 --> 01:56:20,670 y pues 2689 01:56:20,670 --> 01:56:22,710 esto es principalmente para hacer inventariado 2690 01:56:22,710 --> 01:56:24,569 entonces bueno 2691 01:56:24,569 --> 01:56:26,390 la que tiene aquí más alcance 2692 01:56:26,390 --> 01:56:28,590 que es esta que veis que ya es grandecita 2693 01:56:28,590 --> 01:56:30,850 son 8 centímetros por 12 centímetros 2694 01:56:30,850 --> 01:56:32,430 pues tiene un alcance de 2695 01:56:32,430 --> 01:56:34,090 aproximadamente 5 metros 2696 01:56:34,090 --> 01:56:36,569 y no sé si tenía algo más 2697 01:56:36,569 --> 01:56:38,670 aquí, no, bueno pues esto 2698 01:56:38,670 --> 01:56:39,750 es todo lo que tenemos 2699 01:56:39,750 --> 01:56:43,760 de NFC 2700 01:56:43,760 --> 01:56:46,020 bueno, se llama 2701 01:56:46,020 --> 01:56:47,579 REN o también EPC Global 2702 01:56:47,579 --> 01:56:49,779 Generación 2, que es este estándar 2703 01:56:49,779 --> 01:56:50,920 el estándar 18000 2704 01:56:50,920 --> 01:56:53,659 vale, pues esto está visto 2705 01:56:53,659 --> 01:57:00,770 también, a ver cuánto tiempo 2706 01:57:00,770 --> 01:57:02,710 me queda, a ver que me da tiempo a contar 2707 01:57:02,710 --> 01:57:04,890 bueno, voy a ir 2708 01:57:04,890 --> 01:57:06,289 por la parte de Bluetooth 2709 01:57:06,289 --> 01:57:12,760 que creo que ahí hay algo que os puede 2710 01:57:12,760 --> 01:57:14,600 resultar interesante también 2711 01:57:14,600 --> 01:57:18,279 vale, aquí, Bluetooth 2712 01:57:18,279 --> 01:57:40,869 Bueno, aquí en Bluetooth ya os estuve comentando en clase cuando hablamos de la IN100, por eso voy a ir un poco rápido, que hay varios tipos de Bluetooth. 2713 01:57:40,869 --> 01:57:51,850 El último que tenemos es el Bluetooth 5, que en este, por ejemplo, lo que tenía de interesante respecto al Bluetooth 4 es que tenía una versión de largo alcance, que en teoría tiene un alcance de hasta un kilómetro. 2714 01:57:51,850 --> 01:57:54,109 ¿para qué era este bluetooth? pues principalmente 2715 01:57:54,109 --> 01:57:56,310 para controlar drones, por ejemplo 2716 01:57:56,310 --> 01:57:58,130 ¿vale? para eso servía, esta gente 2717 01:57:58,130 --> 01:57:59,949 que utiliza los sistemas fly per view 2718 01:57:59,949 --> 01:58:02,329 que vuelan los drones mediante unas gafas 2719 01:58:02,329 --> 01:58:04,270 pues algunos de esos drones 2720 01:58:04,270 --> 01:58:06,050 funcionan con esta tecnología de bluetooth 2721 01:58:06,050 --> 01:58:08,029 long range, pero no hay magia, o sea 2722 01:58:08,029 --> 01:58:10,170 los reyes magos, ya lo hemos dicho muchas veces 2723 01:58:10,170 --> 01:58:12,029 le podemos pedir bajo consumo 2724 01:58:12,029 --> 01:58:14,069 largo alcance y velocidad, pero 2725 01:58:14,069 --> 01:58:15,850 si priorizamos una, tenemos que 2726 01:58:15,850 --> 01:58:18,050 reducir de la otra, y aquí lo que 2727 01:58:18,050 --> 01:58:19,750 se reducía es la tasa de transferencia 2728 01:58:19,750 --> 01:58:31,609 La tasa de transferencia típica de un sistema Bluetooth Low Energy es un megabit, pues aquí para conseguir un megabit por segundo, aquí para conseguir este alcance lo que hacían es que lo reducían a una cuarta parte. 2729 01:58:31,609 --> 01:58:33,850 luego vino el Bluetooth 5.1 2730 01:58:33,850 --> 01:58:36,529 con el ángulo de llegada y el ángulo de partida 2731 01:58:36,529 --> 01:58:38,210 para poder geolocalizar objetos 2732 01:58:38,210 --> 01:58:40,670 luego el 5.2 con el AuraCast 2733 01:58:40,670 --> 01:58:42,649 que es la tecnología de los audífonos 2734 01:58:42,649 --> 01:58:44,390 luego vino una versión intermedia 2735 01:58:44,390 --> 01:58:45,770 que era simplemente de optimización 2736 01:58:45,770 --> 01:58:48,890 y ahora la última versión es la 5.4 2737 01:58:48,890 --> 01:58:50,789 que tiene un sistema muy interesante 2738 01:58:50,789 --> 01:58:51,729 que es 2739 01:58:51,729 --> 01:58:54,710 advertising periódico con respuesta 2740 01:58:54,710 --> 01:58:56,149 ¿y esto para qué sirve? 2741 01:58:56,229 --> 01:58:58,270 pues sirve para actualizar etiquetas electrónicas 2742 01:58:58,270 --> 01:58:59,810 las etiquetas de los precios 2743 01:58:59,810 --> 01:59:01,670 pues sirve principalmente para eso 2744 01:59:01,670 --> 01:59:03,010 ya os conté que 2745 01:59:03,010 --> 01:59:05,189 el grupo de interés Bluetooth 2746 01:59:05,189 --> 01:59:07,729 el SIG, cuando encuentra 2747 01:59:07,729 --> 01:59:09,729 un nicho de negocio lo que hace es que crea un estándar 2748 01:59:09,729 --> 01:59:11,369 nuevo para cubrir ese nicho de negocio 2749 01:59:11,369 --> 01:59:14,109 y ahora lo que nos viene con el Bluetooth 6 2750 01:59:14,109 --> 01:59:15,750 es como 2751 01:59:15,750 --> 01:59:17,989 esto del ángulo de llegada y el ángulo de partida 2752 01:59:17,989 --> 01:59:19,609 no tuvo mucho éxito porque 2753 01:59:19,609 --> 01:59:21,590 las antenas eran complicadas, eran grandes 2754 01:59:21,590 --> 01:59:23,789 y eran caras, ahora lo que están haciendo 2755 01:59:23,789 --> 01:59:25,369 es implementar una tecnología 2756 01:59:25,369 --> 01:59:27,109 similar a la de Ultra Wideband 2757 01:59:27,109 --> 01:59:29,609 entonces nos va a permitir saber a qué distancia 2758 01:59:29,609 --> 01:59:33,750 están los objetos, simplemente midiendo el tiempo que tardan las señales 2759 01:59:33,750 --> 01:59:37,630 en ir y venir, eso se llama RTT, o bien el desfase 2760 01:59:37,630 --> 01:59:40,630 que se produce en las 2761 01:59:40,630 --> 01:59:44,890 señales al transmitirlas y recibirlas, un cambio de fase 2762 01:59:44,890 --> 01:59:49,470 el Bluetooth, como os comentaba, hasta la versión 4 2763 01:59:49,470 --> 01:59:53,789 era lo que se llamaba Bluetooth Classic, y con la versión 2764 01:59:53,789 --> 01:59:57,569 4 se crea el Bluetooth Logo Energy, el SIG no 2765 01:59:57,569 --> 01:59:59,409 quiere que lo llamemos así, 2766 01:59:59,510 --> 02:00:01,449 Bluetooth Classic y BLE. Ellos 2767 02:00:01,449 --> 02:00:03,390 dicen que existe un único Bluetooth 2768 02:00:03,390 --> 02:00:05,050 y que ese Bluetooth 2769 02:00:05,050 --> 02:00:07,470 incluye cuatro tecnologías, que son 2770 02:00:07,470 --> 02:00:09,630 las que veis aquí. El Bassid Rate, 2771 02:00:09,750 --> 02:00:11,430 el Enhanced Data Rate, uno 2772 02:00:11,430 --> 02:00:13,390 que es rarísimo, que es una combinación 2773 02:00:13,390 --> 02:00:15,689 de Bluetooth y Wi-Fi, y el Low Energy, 2774 02:00:15,810 --> 02:00:17,529 que es el BLE. Bueno, pues muy 2775 02:00:17,529 --> 02:00:19,430 bien. Si ellos lo quieren así, pues así lo hacemos. 2776 02:00:20,289 --> 02:00:21,369 Entonces, el problema 2777 02:00:21,369 --> 02:00:23,010 que hay es que si tú compras modems 2778 02:00:23,010 --> 02:00:25,369 de Bluetooth 4, tienes 2779 02:00:25,369 --> 02:00:27,069 un problema, porque puede ser que Bluetooth 2780 02:00:27,069 --> 02:00:30,130 el modem solo sea VR o Enhanced Data Rate 2781 02:00:30,130 --> 02:00:31,630 puede ser que solo sea 2782 02:00:31,630 --> 02:00:33,489 BLE o bien puede ser que 2783 02:00:33,489 --> 02:00:35,369 incluya los cuatro modos de tecnología 2784 02:00:35,369 --> 02:00:37,390 bueno, principalmente los tres, porque ya os digo que 2785 02:00:37,390 --> 02:00:39,630 SDA-MP es muy raro 2786 02:00:39,630 --> 02:00:41,449 ¿vale? entonces hay que tener 2787 02:00:41,449 --> 02:00:42,829 cuidado al comprar el modem 2788 02:00:42,829 --> 02:00:45,390 porque tú a veces que vas y compras un modem Bluetooth 2789 02:00:45,390 --> 02:00:46,909 y dices, pues ya está, bandera para todo 2790 02:00:46,909 --> 02:00:49,569 pues no, a lo mejor solo vale para BLE 2791 02:00:49,569 --> 02:00:51,409 o a lo mejor solo vale para VR 2792 02:00:51,409 --> 02:00:53,010 o EDR, ¿vale? 2793 02:00:53,090 --> 02:00:55,250 el ESP32 por ejemplo no hay ningún problema 2794 02:00:55,250 --> 02:00:57,750 porque te permite utilizar los dos modos. 2795 02:00:57,930 --> 02:00:59,569 Entonces, no te tienes que preocupar. 2796 02:01:00,090 --> 02:01:08,010 Bueno, ¿cuál es la diferencia entre estos dos modos de funcionamiento? 2797 02:01:08,130 --> 02:01:11,510 Pues aquí a la izquierda tenéis el Low Energy y a la derecha el Classic. 2798 02:01:11,989 --> 02:01:14,250 La principal diferencia es el número de canales. 2799 02:01:14,550 --> 02:01:19,250 En el Low Energy hay 40 canales y en el Classic hay 79 canales. 2800 02:01:20,090 --> 02:01:24,229 Entonces, en el Low Energy hay tres de esos canales que se usan solo para advertising. 2801 02:01:24,229 --> 02:01:42,909 Es decir, para decir que estoy aquí, oye, que estoy aquí, ¿vale? Pero por lo demás son muy similares. El tipo de modulación que utilizan es parecido, ¿vale? La tasa de transferencia son realmente muy parecidas, los alcances también son muy parecidos, pero el otro cambio importante que tienen es el consumo. 2802 02:01:42,909 --> 02:02:05,250 El Bluetooth Low Energy, como emite paquetes de información breves, ¿vale? Cortitos, pues resulta que consiga consumos muy inferiores a los que consigue el Bluetooth Classic. Entonces, esa es la principal diferencia. Aparte luego de las topologías, ¿vale? En Bluetooth Classic, pues ya sabéis que siempre tenéis una conexión uno a uno. Un dispositivo se conecta con otro. 2803 02:02:05,250 --> 02:02:08,550 pero en Bluetooth Low Energy ya hay muchas posibilidades 2804 02:02:08,550 --> 02:02:10,130 por supuesto está esa de uno a uno 2805 02:02:10,130 --> 02:02:11,850 pero también está la de Broadcast 2806 02:02:11,850 --> 02:02:16,069 es decir que un dispositivo mande la misma información a muchos dispositivos 2807 02:02:16,069 --> 02:02:17,789 esto es lo que pasa por ejemplo en AuraCast 2808 02:02:17,789 --> 02:02:20,569 existe también la posibilidad de crear redes malladas 2809 02:02:20,569 --> 02:02:22,409 por ejemplo la que os enseñé de Wirepass 2810 02:02:22,409 --> 02:02:25,590 hay en clase una tecnología de nicho, una tecnología propietaria 2811 02:02:25,590 --> 02:02:29,729 que utiliza Bluetooth Low Energy para crear redes malladas 2812 02:02:29,729 --> 02:02:32,770 entonces en las redes malladas 2813 02:02:32,770 --> 02:02:35,430 los modos que tenemos de funcionamiento 2814 02:02:35,430 --> 02:02:37,189 son el modo normal 2815 02:02:37,189 --> 02:02:39,810 el modo 1 megabit por segundo 2816 02:02:39,810 --> 02:02:41,569 ese es el modo de funcionamiento 2817 02:02:41,569 --> 02:02:43,470 normal, o bien tenemos 2818 02:02:43,470 --> 02:02:45,770 modos de codificación física 2819 02:02:45,770 --> 02:02:46,909 de coded file 2820 02:02:46,909 --> 02:02:49,729 esos modos que ocurren 2821 02:02:49,729 --> 02:02:51,010 pues lo que ocurre es que 2822 02:02:51,010 --> 02:02:53,409 dedican parte de este ancho de banda 2823 02:02:53,409 --> 02:02:55,750 a enviar información de corrección 2824 02:02:55,750 --> 02:02:57,430 de errores, con lo cual 2825 02:02:57,430 --> 02:02:59,050 la carga de pago se reduce 2826 02:02:59,050 --> 02:03:01,270 porque estamos utilizando 2827 02:03:01,270 --> 02:03:04,050 un ancho de banda mayor para la corrección 2828 02:03:04,050 --> 02:03:05,510 de errores, pero claro 2829 02:03:05,510 --> 02:03:07,689 reducimos la carga de pago 2830 02:03:07,689 --> 02:03:09,829 pero como tenemos más información redundante 2831 02:03:09,829 --> 02:03:11,810 sobre errores, conseguimos mayor 2832 02:03:11,810 --> 02:03:13,789 alcance, esta es la diferencia 2833 02:03:13,789 --> 02:03:15,289 entre el modo normal 2834 02:03:15,289 --> 02:03:17,670 y los modos codificados, entonces 2835 02:03:17,670 --> 02:03:20,109 veis que tenemos el codificado 2836 02:03:20,109 --> 02:03:21,750 de 500 kilobits y el 2837 02:03:21,750 --> 02:03:23,689 codificado de 125 kilobits 2838 02:03:23,689 --> 02:03:25,590 este sería el que 2839 02:03:25,590 --> 02:03:27,850 permitiría llegar a un kilómetro de distancia 2840 02:03:27,850 --> 02:03:29,989 que os decía al principio de la presentación 2841 02:03:29,989 --> 02:03:32,729 el LCODED con S8 2842 02:03:32,729 --> 02:03:35,170 hay también uno más raro 2843 02:03:35,170 --> 02:03:37,189 que permite duplicar la velocidad 2844 02:03:37,189 --> 02:03:38,630 es decir, justo lo contrario 2845 02:03:38,630 --> 02:03:41,449 en vez de utilizar más información 2846 02:03:41,449 --> 02:03:42,449 de corrección de errores 2847 02:03:42,449 --> 02:03:45,630 utilizamos casi ninguna corrección de errores 2848 02:03:45,630 --> 02:03:47,489 y así conseguimos aumentar 2849 02:03:47,489 --> 02:03:48,250 el alcance 2850 02:03:48,250 --> 02:03:50,949 ¿cuánto se aumenta el alcance? 2851 02:03:51,069 --> 02:03:53,409 como veis aquí, si el alcance normal 2852 02:03:53,409 --> 02:03:54,810 es 1, pues 2853 02:03:54,810 --> 02:03:56,649 si aumenta 2 Mbps 2854 02:03:56,649 --> 02:03:58,609 voy a llegar a 0,8 2855 02:03:58,609 --> 02:04:01,069 y si reduzco a 125 kilobits 2856 02:04:01,069 --> 02:04:02,510 voy a llegar prácticamente 2857 02:04:02,510 --> 02:04:04,930 a cuatro veces el alcance normal 2858 02:04:04,930 --> 02:04:06,270 ¿vale? bueno, pues eso 2859 02:04:06,270 --> 02:04:08,550 es teoría, luego 2860 02:04:08,550 --> 02:04:10,710 ¿cómo funciona el bluetooth? ¿vale? 2861 02:04:10,810 --> 02:04:12,829 la arquitectura general 2862 02:04:12,829 --> 02:04:14,789 pues aquí hay como dos partes 2863 02:04:14,789 --> 02:04:16,029 hay una parte 2864 02:04:16,029 --> 02:04:18,689 que es el host, ¿vale? que es 2865 02:04:18,689 --> 02:04:20,930 la parte que estamos viendo aquí arriba 2866 02:04:20,930 --> 02:04:22,810 y luego 2867 02:04:22,810 --> 02:04:24,529 hay otra parte que es la parte física 2868 02:04:24,529 --> 02:04:26,569 la parte más de radio que estamos 2869 02:04:26,569 --> 02:04:28,529 viendo aquí abajo, ¿vale? entonces 2870 02:04:28,529 --> 02:04:30,050 veis que por ejemplo aquí tengo un modem 2871 02:04:30,050 --> 02:04:32,149 que tiene las dos tecnologías 2872 02:04:32,149 --> 02:04:34,409 el basic rake y el low energy 2873 02:04:34,409 --> 02:04:36,409 ¿vale? y esta es la parte 2874 02:04:36,409 --> 02:04:38,390 por así decirlo de hardware y aquí 2875 02:04:38,390 --> 02:04:40,489 arriba tendríamos el controlador 2876 02:04:40,489 --> 02:04:42,510 ¿vale? que esto podría ser el sistema operativo 2877 02:04:42,510 --> 02:04:44,710 de tu teléfono móvil o el SP32 2878 02:04:44,710 --> 02:04:46,689 ¿vale? aquí es donde tenemos el stack 2879 02:04:46,689 --> 02:04:48,489 de bluetooth y esto está dentro 2880 02:04:48,489 --> 02:04:49,890 del modem de radio bluetooth 2881 02:04:49,890 --> 02:04:52,470 es decir, nosotros de aquí no nos tenemos que preocupar 2882 02:04:52,470 --> 02:04:54,109 de nada, esto funciona ello solo 2883 02:04:54,109 --> 02:04:56,229 nosotros lo que vamos a tener que hacer es 2884 02:04:56,229 --> 02:04:57,649 mandar instrucciones 2885 02:04:57,649 --> 02:04:59,329 desde el controlador 2886 02:04:59,329 --> 02:05:01,449 al sistema de radio 2887 02:05:01,449 --> 02:05:04,130 y eso lo hacemos a través de una capa intermedia 2888 02:05:04,130 --> 02:05:05,949 que es esta que veis aquí, que es el HCI 2889 02:05:05,949 --> 02:05:07,789 el Host Controller Interface 2890 02:05:07,789 --> 02:05:08,430 ¿vale? 2891 02:05:09,810 --> 02:05:11,710 aquí hay muchísima teoría 2892 02:05:11,710 --> 02:05:13,670 pero resumiendola es la que estáis viendo aquí 2893 02:05:13,670 --> 02:05:16,029 la capa física y la capa de enlace 2894 02:05:16,029 --> 02:05:18,090 ¿vale? que está en el controlador 2895 02:05:18,090 --> 02:05:20,010 en la parte de abajo y luego tenemos 2896 02:05:20,010 --> 02:05:21,710 el Host Controller Interface 2897 02:05:21,710 --> 02:05:23,689 el host en la parte de arriba 2898 02:05:23,689 --> 02:05:25,229 creo que lo he dicho al revés aquí ¿no? 2899 02:05:25,229 --> 02:05:28,229 aquí os he dicho que esto era el host, no, esto es el controlador 2900 02:05:28,229 --> 02:05:29,989 ¿vale? y esto es el host 2901 02:05:29,989 --> 02:05:32,250 no sé si lo he dicho al revés o no 2902 02:05:32,250 --> 02:05:34,130 pero ahora al verlo aquí me ha parecido que lo he dicho al revés 2903 02:05:34,130 --> 02:05:36,250 entonces, este es el host 2904 02:05:36,250 --> 02:05:37,869 que es la parte del stack bluetooth 2905 02:05:37,869 --> 02:05:39,869 y ahí lo que tenemos son 2906 02:05:39,869 --> 02:05:41,810 distintos perfiles, ¿vale? 2907 02:05:41,829 --> 02:05:43,510 veis que tenemos aquí un perfil que se llama 2908 02:05:43,510 --> 02:05:45,689 que es la capa de control, este de aquí 2909 02:05:45,689 --> 02:05:47,930 tenemos perfiles de seguridad, perfiles 2910 02:05:47,930 --> 02:05:49,149 de atributos, ¿vale? 2911 02:05:49,829 --> 02:05:51,670 tenemos un montón de perfiles posibles 2912 02:05:51,670 --> 02:05:53,909 pero dos de los más famosos son 2913 02:05:53,909 --> 02:05:55,869 estos que veis aquí, el GAT 2914 02:05:55,869 --> 02:05:57,850 y el GAP, ¿vale? 2915 02:05:57,850 --> 02:05:59,850 que los vamos a usar mucho, estos son 2916 02:05:59,850 --> 02:06:01,789 un perfil genérico de 2917 02:06:01,789 --> 02:06:03,930 atributos y un perfil 2918 02:06:03,930 --> 02:06:05,670 genérico de acceso 2919 02:06:05,670 --> 02:06:07,810 ¿vale? bueno 2920 02:06:07,810 --> 02:06:09,430 ¿esto qué quiere decir? pues esto quiere decir 2921 02:06:09,430 --> 02:06:11,729 básicamente que yo puedo tener por ejemplo 2922 02:06:11,729 --> 02:06:13,829 un SP32 que se 2923 02:06:13,829 --> 02:06:16,010 anuncie con unos determinados 2924 02:06:16,010 --> 02:06:18,069 servicios GAT, ¿qué servicios 2925 02:06:18,069 --> 02:06:19,310 GAT? pues por ejemplo puedo decir 2926 02:06:19,310 --> 02:06:21,430 oye yo soy un sensor de temperatura 2927 02:06:21,430 --> 02:06:23,529 ¿vale? eso sería un servicio GAT 2928 02:06:23,529 --> 02:06:25,390 y entonces a través del gap 2929 02:06:25,390 --> 02:06:26,989 podríamos leer esa temperatura 2930 02:06:26,989 --> 02:06:28,029 con el teléfono móvil 2931 02:06:28,029 --> 02:06:30,029 o con cualquier otro dispositivo bluetooth 2932 02:06:30,029 --> 02:06:32,029 porque esto como ocurría en Matter 2933 02:06:32,029 --> 02:06:34,010 está también estandarizado 2934 02:06:34,010 --> 02:06:36,390 es decir, existen colecciones de atributos 2935 02:06:36,390 --> 02:06:38,010 que están estandarizadas 2936 02:06:38,010 --> 02:06:40,210 ¿cuál es el problema que tenemos 2937 02:06:40,210 --> 02:06:41,329 con los paquetes BLE? 2938 02:06:41,829 --> 02:06:42,750 pues el problema que tenemos 2939 02:06:42,750 --> 02:06:43,789 es que la carga de pago 2940 02:06:43,789 --> 02:06:44,930 es muy pequeñita 2941 02:06:44,930 --> 02:06:46,689 como mucho 31 bytes 2942 02:06:46,689 --> 02:06:47,810 y este es el problema 2943 02:06:47,810 --> 02:06:48,970 que teníamos con la IN100 2944 02:06:48,970 --> 02:06:50,130 que si a la IN100 2945 02:06:50,130 --> 02:06:51,470 le poníamos un nombre muy largo 2946 02:06:51,470 --> 02:06:54,189 pues luego apenas nos quedaba espacio para almacenar 2947 02:06:54,189 --> 02:06:56,350 información adicional, para poner la temperatura 2948 02:06:56,350 --> 02:06:57,569 lo que quisiéramos enviar 2949 02:06:57,569 --> 02:06:59,970 ¿vale? pues esto 2950 02:06:59,970 --> 02:07:02,250 es así, es una limitación 2951 02:07:02,250 --> 02:07:03,970 con la que tenemos que vivir, como mucho 2952 02:07:03,970 --> 02:07:05,909 en un paquete BLE, como os digo 2953 02:07:05,909 --> 02:07:08,590 podemos mandar 31 bytes 2954 02:07:08,590 --> 02:07:09,789 no podemos mandar más 2955 02:07:09,789 --> 02:07:12,069 ¿vale? bien, lo que ocurrió 2956 02:07:12,069 --> 02:07:13,770 es que como esto era una limitación muy grande 2957 02:07:13,770 --> 02:07:15,989 pues en la versión PUTZO 4.2 2958 02:07:15,989 --> 02:07:18,069 se añadió una característica 2959 02:07:18,069 --> 02:07:19,390 de paquete extendido 2960 02:07:19,390 --> 02:07:22,329 que permite llegar hasta 251 bytes 2961 02:07:22,329 --> 02:07:24,670 pero esto no todos los dispositivos 2962 02:07:24,670 --> 02:07:26,390 son compatibles con ellos 2963 02:07:26,390 --> 02:07:28,710 por ejemplo la IN100 no es compatible 2964 02:07:28,710 --> 02:07:30,270 entonces esto 2965 02:07:30,270 --> 02:07:32,550 existe pero en unos 2966 02:07:32,550 --> 02:07:34,189 poquitos dispositivos, no en todos 2967 02:07:34,189 --> 02:07:36,609 entonces aquí lo que estáis viendo es la capa 2968 02:07:36,609 --> 02:07:38,630 de enlace para Bluetooth 4 y 4.1 2969 02:07:38,630 --> 02:07:40,810 que son hasta 27 bytes 2970 02:07:40,810 --> 02:07:42,409 y la de 4 2971 02:07:42,409 --> 02:07:44,789 o 4.2 y 5 en adelante 2972 02:07:44,789 --> 02:07:47,550 que puede llegar hasta 251 bytes 2973 02:07:47,550 --> 02:07:49,270 entonces 2974 02:07:49,270 --> 02:07:51,369 ¿cómo se transmite la información 2975 02:07:51,369 --> 02:07:53,670 en Bluetooth? fijaos que ahora no hablo 2976 02:07:53,670 --> 02:07:55,670 de Bluetooth Low Energy, estoy hablando 2977 02:07:55,670 --> 02:07:57,109 en general de Bluetooth 2978 02:07:57,109 --> 02:07:58,670 pues hay varias formas 2979 02:07:58,670 --> 02:08:01,829 la más habitual es utilizar lo que se llama 2980 02:08:01,829 --> 02:08:02,989 ACL 2981 02:08:02,989 --> 02:08:05,869 ACL permite a varias aplicaciones 2982 02:08:05,869 --> 02:08:07,229 compartir un mismo enlace 2983 02:08:07,229 --> 02:08:09,470 ¿eso qué quiere decir? que yo puedo tener 2984 02:08:09,470 --> 02:08:11,970 en el host varias aplicaciones 2985 02:08:11,970 --> 02:08:13,569 que a través del 2986 02:08:13,569 --> 02:08:14,109 HCI 2987 02:08:14,109 --> 02:08:17,829 que a través de una sola conexión del HCI 2988 02:08:17,829 --> 02:08:19,930 se comunican con el modem, ¿vale? 2989 02:08:20,229 --> 02:08:22,130 Pues ese es uno de los modos 2990 02:08:22,130 --> 02:08:24,050 de transporte que tenemos. Otro es 2991 02:08:24,050 --> 02:08:25,909 el modo síncrono, ¿vale? 2992 02:08:25,949 --> 02:08:28,149 ¿El modo síncrono para qué sirve? Para los manos 2993 02:08:28,149 --> 02:08:30,050 libres. Se utiliza 2994 02:08:30,050 --> 02:08:31,770 para transmitir audio 2995 02:08:31,770 --> 02:08:34,069 de baja calidad. Claro, si tú 2996 02:08:34,069 --> 02:08:35,909 tienes sus manos libres, tienes que 2997 02:08:35,909 --> 02:08:37,970 garantizarte que lo que dices 2998 02:08:37,970 --> 02:08:40,210 y lo que escuchas está sincronizado 2999 02:08:40,210 --> 02:08:42,069 porque si no hay un desfase y te vuelves 3000 02:08:42,069 --> 02:08:43,850 loco, ¿vale? Por eso se utiliza 3001 02:08:43,850 --> 02:08:46,109 ese protocolo de transporte síncrono. 3002 02:08:46,109 --> 02:09:00,689 Y luego tenemos otro protocolo de transporte que es el isócrono, ¿vale? Que este se utiliza en los auriculares cuando tú quieres mandar a un auricular el canal izquierdo y al otro el canal derecho y tienen que estar sincronizados entre sí. 3003 02:09:00,689 --> 02:09:20,829 Claro, obviamente no puede haber desfase entre el canal izquierdo y el derecho porque te pasa lo mismo, te volverías loco, ¿vale? Bueno, luego, dentro de todo esto, el Bluetooth tiene un capítulo aparte para el audio, ¿vale? Entonces, en las versiones clásicas de Bluetooth, el audio se transmitía de una forma, ¿vale? 3004 02:09:20,829 --> 02:09:45,310 Pero afortunadamente, en las versiones low power, ¿vale? En esas se va a transmitir utilizando otro códec distinto, que es el códec, este que veis aquí, que se llama LCE. Y este códec tiene muchísimas virtudes. Por ejemplo, tiene la virtud de hacer multi-stream. Es decir, mandarte una misma grabación en varios idiomas, por ejemplo. 3005 02:09:45,310 --> 02:09:47,289 tiene la posibilidad de hacer broadcast 3006 02:09:47,289 --> 02:09:49,010 mandar una misma locución 3007 02:09:49,010 --> 02:09:51,550 a varios usuarios, tiene la posibilidad 3008 02:09:51,550 --> 02:09:53,609 de sincronizarse con audífonos 3009 02:09:53,609 --> 02:09:55,130 ¿vale? pues claro, todo esto 3010 02:09:55,130 --> 02:09:57,710 es muy interesante, pero esto solo como os digo 3011 02:09:57,710 --> 02:09:59,130 está disponible 3012 02:09:59,130 --> 02:10:01,369 en el Low Energy ¿vale? 3013 02:10:01,829 --> 02:10:03,750 fijaos, aquí se ve, quizás lo entendáis 3014 02:10:03,750 --> 02:10:05,250 un poco mejor con este gráfico de abajo 3015 02:10:05,250 --> 02:10:07,750 cuando tú tenías unos auriculares 3016 02:10:07,750 --> 02:10:08,909 de 3017 02:10:08,909 --> 02:10:11,250 Bluetooth Classic 3018 02:10:11,250 --> 02:10:13,770 lo que ocurría es que tu teléfono 3019 02:10:13,770 --> 02:10:16,050 móvil se conectaba a uno de esos auriculares 3020 02:10:16,050 --> 02:10:17,689 y el otro auricular se 3021 02:10:17,689 --> 02:10:19,069 conectaba al segundo auricular 3022 02:10:19,069 --> 02:10:21,529 no era el móvil que mandaba 3023 02:10:21,529 --> 02:10:23,489 información distinta a cada auricular 3024 02:10:23,489 --> 02:10:25,670 sino que mandaba toda la información al 3025 02:10:25,670 --> 02:10:27,489 primer auricular, ese auricular 3026 02:10:27,489 --> 02:10:29,090 se quedaba con el canal izquierdo 3027 02:10:29,090 --> 02:10:31,789 y el canal derecho se lo pasaba al otro 3028 02:10:31,789 --> 02:10:33,550 ¿vale? sin embargo 3029 02:10:33,550 --> 02:10:35,430 en los nuevos auriculares, en los auriculares 3030 02:10:35,430 --> 02:10:37,510 de Low Energy, el teléfono móvil 3031 02:10:37,510 --> 02:10:39,550 envía dos strings distintos 3032 02:10:39,550 --> 02:10:41,510 uno a cada auricular 3033 02:10:41,510 --> 02:10:43,369 ¿vale? esa es la principal diferencia 3034 02:10:43,369 --> 02:10:52,890 Incluso podría haber uno aquí si fueran auriculares con micrófono para enviar la voz. Tenemos varios canales por la posibilidad de enviar información por varios canales. 3035 02:10:52,890 --> 02:11:15,590 Bueno, pues en Bluetooth se utiliza el concepto de central y periférico. Normalmente el central es el cliente y el periférico es el servidor. Un central puede mantener varias conexiones a la vez. Sin embargo, los periféricos suelen tener capacidades reducidas. 3036 02:11:15,590 --> 02:11:36,170 Puede ser, por ejemplo, lo que os decía, un auricular y típicamente no puede mantener más de una conexión activa a la vez. Por ejemplo, si tenéis una Fitbit, la Fitbit sería el periférico y vuestro móvil sería el central. Si tenemos un sensor, ese sensor sería el periférico y el gateway al que se conecta sería el central. 3037 02:11:36,170 --> 02:11:38,090 si tenemos una baliza 3038 02:11:38,090 --> 02:11:40,310 pues esa baliza sería el periférico 3039 02:11:40,310 --> 02:11:42,470 y el móvil sería el central 3040 02:11:42,470 --> 02:11:44,590 ¿vale? ¿para qué sirven 3041 02:11:44,590 --> 02:11:46,310 las balizas? pues ya lo vimos con el 3042 02:11:46,310 --> 02:11:48,109 IN100, había balizas 3043 02:11:48,109 --> 02:11:49,930 IBICOM que no valen para nada 3044 02:11:49,930 --> 02:11:51,890 ¿vale? que son las de Apple 3045 02:11:51,890 --> 02:11:54,350 balizas Edison que son las 3046 02:11:54,350 --> 02:11:56,250 de Android que tienen 3047 02:11:56,250 --> 02:11:58,569 un poco más de capacidad, pueden enviar telemetrías 3048 02:11:58,569 --> 02:12:00,390 pero ahora las balizas se están 3049 02:12:00,390 --> 02:12:02,090 renaciendo otra vez porque 3050 02:12:02,090 --> 02:12:04,189 nos podemos crear balizas personalizadas 3051 02:12:04,189 --> 02:12:06,109 es decir, balizas que transmitan 3052 02:12:06,109 --> 02:12:08,069 cualquier información que nosotros queramos 3053 02:12:08,069 --> 02:12:10,250 ¿vale? el dispositivo 3054 02:12:10,250 --> 02:12:11,529 central, en este caso 3055 02:12:11,529 --> 02:12:13,710 vuestro teléfono móvil 3056 02:12:13,710 --> 02:12:16,250 es el que genera la señal de reloj 3057 02:12:16,250 --> 02:12:18,130 ¿vale? y también le dice al 3058 02:12:18,130 --> 02:12:20,109 periférico por qué 3059 02:12:20,109 --> 02:12:22,270 frecuencias tiene que transmitir la información 3060 02:12:22,270 --> 02:12:24,109 recordad que de las primeras 3061 02:12:24,109 --> 02:12:25,989 diapositivas, el modelo de 3062 02:12:25,989 --> 02:12:27,729 transmisión que utiliza Bluetooth 3063 02:12:27,729 --> 02:12:30,069 es Frequency Hopping, ¿vale? va dando saltos 3064 02:12:30,069 --> 02:12:31,670 constantemente entre 3065 02:12:31,670 --> 02:12:32,909 distintas 3066 02:12:32,909 --> 02:12:35,970 frecuencias, ¿vale? pues 3067 02:12:35,970 --> 02:12:39,449 Entonces, lo que tenemos en Bluetooth son dos conceptos. 3068 02:12:39,890 --> 02:12:45,689 Un concepto que es el concepto de Piconet y otro concepto que es el concepto de Scatternet, ¿vale? 3069 02:12:46,010 --> 02:12:54,390 Una Piconet son todos los dispositivos que comparten el mismo reloj y el mismo patrón de Frequency Hopping, ¿vale? 3070 02:12:54,789 --> 02:12:55,729 Eso es una Piconet. 3071 02:12:56,970 --> 02:13:01,029 Entonces, una Piconet pueden ser dos dispositivos o pueden ser más dispositivos. 3072 02:13:01,029 --> 02:13:04,189 y luego puede ocurrir que hubiera un dispositivo 3073 02:13:04,189 --> 02:13:05,810 que formase a la vez 3074 02:13:05,810 --> 02:13:08,069 parte de dos Piconets 3075 02:13:08,069 --> 02:13:09,770 ¿vale? y entonces se dice 3076 02:13:09,770 --> 02:13:10,850 que ese dispositivo 3077 02:13:10,850 --> 02:13:13,649 conforma una Scatternet 3078 02:13:13,649 --> 02:13:15,909 ¿vale? entonces bueno, eso es un poco 3079 02:13:15,909 --> 02:13:17,710 lo que intenta representar este gráfico 3080 02:13:17,710 --> 02:13:19,750 que veis aquí, para el Bluetooth Classic 3081 02:13:19,750 --> 02:13:21,829 ¿vale? para el Bluetooth con Basic Rate 3082 02:13:21,829 --> 02:13:22,909 y Enhanced Data Rate 3083 02:13:22,909 --> 02:13:25,510 y entonces aquí lo que vemos son distintos casos 3084 02:13:25,510 --> 02:13:27,789 por ejemplo, aquí tenemos una Piconet 3085 02:13:27,789 --> 02:13:30,010 la Piconet A 3086 02:13:30,010 --> 02:13:32,109 que utiliza dos canales 3087 02:13:32,109 --> 02:13:34,050 para hablar con los dispositivos 3088 02:13:34,050 --> 02:13:35,270 D y E 3089 02:13:35,270 --> 02:13:37,909 sin embargo E, como veis, está en dos 3090 02:13:37,909 --> 02:13:39,670 piconets, la piconet roja 3091 02:13:39,670 --> 02:13:41,789 y en la morada, por eso se dice 3092 02:13:41,789 --> 02:13:44,270 que E está involucrada 3093 02:13:44,270 --> 02:13:45,770 en una scatternet 3094 02:13:45,770 --> 02:13:48,029 ¿vale? y luego bueno, hay una 3095 02:13:48,029 --> 02:13:50,170 cosa que se llama el adaptive frequency 3096 02:13:50,170 --> 02:13:51,710 hopping, ¿vale? que es esto de aquí 3097 02:13:51,710 --> 02:13:53,949 que reduce el número de canales 3098 02:13:53,949 --> 02:13:55,689 que se utiliza en una piconet para evitar 3099 02:13:55,689 --> 02:13:58,310 interferencias, pero no todos los dispositivos 3100 02:13:58,310 --> 02:13:59,529 son compatibles con eso 3101 02:13:59,529 --> 02:14:21,229 ¿Vale? Entonces, por ejemplo, aquí tenemos D, que D admite a FH, ¿vale? Pero J, imaginaos que no, ¿vale? Entonces, lo que han hecho es crearse su propio canal. D en esta piconet, en estas piconet, porque forma parte de varias, usa FH y, sin embargo, en esta otra es capaz de conectarse con J que no usa FH. 3102 02:14:21,229 --> 02:14:38,890 Pues esto, como veis, es muy flexible. Tenemos muchas posibilidades aquí. El Low Energy se reduce. Aquí en Low Energy lo que tenemos es que cada periférico conforma una piconet con el central. Es decir, una piconet van a ser siempre dos dispositivos, el central y el periférico. 3103 02:14:38,890 --> 02:14:41,210 y luego vamos a tener también 3104 02:14:41,210 --> 02:14:43,229 scatter net, por ejemplo aquí tenemos el K 3105 02:14:43,229 --> 02:14:44,390 el K 3106 02:14:44,390 --> 02:14:46,270 está funcionando 3107 02:14:46,270 --> 02:14:49,149 en dos piconets, vale, la L 3108 02:14:49,149 --> 02:14:51,149 y en la M y por eso se dice que está 3109 02:14:51,149 --> 02:14:52,989 en una scatter net, vale 3110 02:14:52,989 --> 02:14:55,010 ¿qué más tenemos por aquí? 3111 02:14:55,329 --> 02:14:57,109 igual, o en este caso 3112 02:14:57,109 --> 02:14:59,409 es periférico en dos piconets 3113 02:14:59,409 --> 02:15:01,149 en estas dos piconets de aquí, vale 3114 02:15:01,149 --> 02:15:03,229 bueno, pues esa es la diferencia 3115 02:15:03,229 --> 02:15:04,729 vale, ¿qué? 3116 02:15:05,270 --> 02:15:07,149 ¿cómo se identifica un dispositivo 3117 02:15:07,149 --> 02:15:13,630 bluetooth pues un dispositivo bluetooth va a tener típicamente una dirección de dispositivo pública 3118 02:15:13,630 --> 02:15:20,050 vale que hay que registrarla y tienes que pagar para registrarla vale yo no puedo tener una 3119 02:15:20,050 --> 02:15:27,310 dirección bluetooth para un dispositivo si no pago esa dirección está compuesta de dos partes vale 3120 02:15:27,310 --> 02:15:35,630 la parte baja por así decirlo y la parte que identifica a la organización entonces esta parte 3121 02:15:35,630 --> 02:15:41,729 baja son 3 bytes, es decir, podemos tener hasta 16 millones de dispositivos en cada 3122 02:15:41,729 --> 02:15:47,109 organización, ¿vale? Yo soy, por ejemplo, Philips, pues Philips tiene su identificador 3123 02:15:47,109 --> 02:15:52,550 de organización y Philips puede fabricar hasta 16 millones de dispositivos con ese 3124 02:15:52,550 --> 02:15:57,310 identificador de organización, ¿vale? El identificador de organización a su vez se 3125 02:15:57,310 --> 02:16:02,529 divide en dos partes, ¿vale? Una parte que es la parte superior y otra que es la parte 3126 02:16:02,529 --> 02:16:04,750 no significativa. ¿Para qué sirve 3127 02:16:04,750 --> 02:16:06,789 esto? Pues principalmente como Sevilla 3128 02:16:06,789 --> 02:16:08,590 para los algoritmos de encriptación. 3129 02:16:09,210 --> 02:16:09,289 ¿Vale? 3130 02:16:10,689 --> 02:16:12,489 Pues nada, eso es lo que tenemos aquí. 3131 02:16:12,569 --> 02:16:14,789 Aquí tenéis una publicadrez 3132 02:16:14,789 --> 02:16:16,310 típica de 48 bits. 3133 02:16:16,930 --> 02:16:18,010 ¿Vale? Y ahí tenéis la parte 3134 02:16:18,010 --> 02:16:20,550 que es la parte del dispositivo 3135 02:16:20,550 --> 02:16:22,529 y la parte de la organización, esta 3136 02:16:22,529 --> 02:16:24,689 de la derecha. Esto existe un registro 3137 02:16:24,689 --> 02:16:26,189 que tú puedes ir a ese registro, 3138 02:16:26,750 --> 02:16:28,510 ¿vale? Que es este que veis aquí, y 3139 02:16:28,510 --> 02:16:30,590 consultar en ese registro si un dispositivo 3140 02:16:30,590 --> 02:16:31,970 que tú tienes es genuino o no. 3141 02:16:32,530 --> 02:16:36,770 Entonces yo, qué sé, pues yo por ejemplo aquí, vamos a correr este ejemplo en un momento, ¿vale? 3142 02:16:37,309 --> 02:16:47,149 Me voy a ir a Arduino un momento, y en el SP32 que lo tengo aquí, en ejemplos, en Bluetooth Serial, 3143 02:16:47,149 --> 02:16:55,030 tengo aquí, creo que es este, el de GetLocalMath, ¿no? 3144 02:16:56,090 --> 02:17:00,670 Sí, ese es. Vale, pues a ver si se abre, y lo cargo, ¿vale? 3145 02:17:00,670 --> 02:17:02,670 y lo dejamos ahí cargando para que luego podáis ver 3146 02:17:02,670 --> 02:17:04,829 cómo es esa dirección MAC 3147 02:17:04,829 --> 02:17:06,170 y si yo voy a esta 3148 02:17:06,170 --> 02:17:08,690 dirección, comprobaría ahí 3149 02:17:08,690 --> 02:17:10,889 que esa MAC corresponde a Expressive 3150 02:17:10,889 --> 02:17:12,010 entonces yo sé que tengo 3151 02:17:12,010 --> 02:17:14,430 un SP32 genuino, ¿vale? 3152 02:17:14,450 --> 02:17:15,510 que no es una falsificación 3153 02:17:15,510 --> 02:17:17,649 a ver si ha cargado ya esto 3154 02:17:17,649 --> 02:17:23,879 está aquí, el penúltimo 3155 02:17:23,879 --> 02:17:27,139 ahí, lo voy a cargar 3156 02:17:27,139 --> 02:17:28,920 a ver que tenga el puerto bien elegido 3157 02:17:28,920 --> 02:17:31,059 ¿sí? vale, pues lo cargo 3158 02:17:31,059 --> 02:17:33,000 voy a cerrar ya este que hemos 3159 02:17:33,000 --> 02:17:33,879 hecho de 3160 02:17:33,879 --> 02:17:36,920 NFC para que no me genere problemas 3161 02:17:36,920 --> 02:17:38,299 vale 3162 02:17:38,299 --> 02:17:39,879 dime 3163 02:17:39,879 --> 02:17:42,600 ¿qué pasa si cuando Express 3164 02:17:42,600 --> 02:17:44,280 venda 16 millones 3165 02:17:44,280 --> 02:17:46,399 pide otro OUI? 3166 02:17:47,319 --> 02:17:47,540 ok 3167 02:17:47,540 --> 02:17:51,120 de hecho muchas empresas tienen un montón de OUIs 3168 02:17:51,120 --> 02:17:51,379 ¿vale? 3169 02:17:52,520 --> 02:17:54,780 entonces eso directamente cuando se te agota uno 3170 02:17:54,780 --> 02:17:56,579 pides otro o de hecho muchas empresas 3171 02:17:56,579 --> 02:17:59,040 tienen un OUI para cada línea de productos 3172 02:17:59,040 --> 02:17:59,920 que tienen ¿vale? 3173 02:18:00,520 --> 02:18:02,680 eso es obligatorio ¿vale? tú tienes que tener 3174 02:18:02,680 --> 02:18:04,520 una dirección pública de dispositivo 3175 02:18:04,520 --> 02:18:05,899 pero es que luego adicionalmente 3176 02:18:05,899 --> 02:18:08,639 puedes tener otras direcciones 3177 02:18:08,639 --> 02:18:09,159 ¿vale? 3178 02:18:10,100 --> 02:18:12,540 y una de ellas es obligatoria, una de las dos 3179 02:18:12,540 --> 02:18:13,819 no puedes ir sin dirección 3180 02:18:13,819 --> 02:18:16,840 en el mundo Bluetooth no te permiten ir sin dirección 3181 02:18:16,840 --> 02:18:18,899 ¿vale? tú puedes usar tu public address 3182 02:18:18,899 --> 02:18:20,399 ¿vale? la que 3183 02:18:20,399 --> 02:18:21,819 os he dicho antes, esta 3184 02:18:21,819 --> 02:18:24,299 o bien, si no la tienes 3185 02:18:24,299 --> 02:18:26,760 puedes utilizar una dirección 3186 02:18:26,760 --> 02:18:28,100 aleatoria 3187 02:18:28,100 --> 02:18:30,840 ¿vale? esa dirección 3188 02:18:30,840 --> 02:18:32,299 aleatoria puede ser fija 3189 02:18:32,299 --> 02:18:37,719 es decir, siempre la misma, o bien que cambie con cada arranque del dispositivo, ¿vale? 3190 02:18:37,719 --> 02:18:40,479 Lo bueno que tiene es que esto no tienes que pagar por ello. 3191 02:18:41,100 --> 02:18:45,579 Tú, si no tienes una dirección pública, dices, pues no hay problema, voy a usar direcciones aleatorias 3192 02:18:45,579 --> 02:18:49,040 y lo único es que todas esas direcciones empiezan por 1-1, ¿vale? 3193 02:18:49,079 --> 02:18:51,459 Para distinguirlas de las que son públicas. 3194 02:18:51,819 --> 02:18:54,600 Estas son estáticas aleatorias, ¿vale? 3195 02:18:55,239 --> 02:18:58,760 Luego, aparte, como veis aquí, ¿vale? 3196 02:18:58,799 --> 02:19:01,600 Puede ser pública o puede ser aleatoria, ¿vale? 3197 02:19:01,600 --> 02:19:04,059 además de la aleatoria 3198 02:19:04,059 --> 02:19:04,840 puedes tener 3199 02:19:04,840 --> 02:19:07,520 pueden ser en este caso de dos tipos 3200 02:19:07,520 --> 02:19:09,399 pueden ser estáticas 3201 02:19:09,399 --> 02:19:10,940 que era la que os estaba diciendo antes 3202 02:19:10,940 --> 02:19:12,959 o bien pueden ser privadas 3203 02:19:12,959 --> 02:19:15,000 ¿vale? 3204 02:19:15,420 --> 02:19:16,899 la privada es muy interesante 3205 02:19:16,899 --> 02:19:19,959 porque cambia, como os decía, con cada arranque 3206 02:19:19,959 --> 02:19:21,299 ¿vale? no es siempre la misma 3207 02:19:21,299 --> 02:19:22,500 sino que va cambiando 3208 02:19:22,500 --> 02:19:25,360 pero puede cambiar de forma resolvible 3209 02:19:25,360 --> 02:19:26,479 o no resolvible 3210 02:19:26,479 --> 02:19:29,200 ¿vale? no resolvible ¿qué quiere decir? 3211 02:19:29,479 --> 02:19:31,180 que a ti no te va a poder identificar nadie 3212 02:19:31,940 --> 02:19:35,879 Cada vez que tu dispositivo se identifique, yo voy con mi teléfono móvil, 3213 02:19:36,360 --> 02:19:41,120 entro a un centro comercial, después voy a la comisaría de policía y después voy al instituto 3214 02:19:41,120 --> 02:19:47,059 y si hay ahí gente esnifando direcciones Bluetooth, no van a saber que yo soy la misma persona. 3215 02:19:47,639 --> 02:19:54,219 ¿Por qué? Porque estoy usando direcciones aleatorias, privadas, no estáticas y no resolvibles. 3216 02:19:54,219 --> 02:19:59,600 Es decir, nadie podría identificarme. Esas direcciones empiezan todas por 00. 3217 02:19:59,600 --> 02:20:15,680 O bien podrían ser resolvibles. Esto que quería decir, que sí que me van a poder rastrear, pero solamente me va a poder rastrear quien yo quiera, es decir, aquella persona con la que yo haya compartido mi clave IRQ, ¿vale? Y esas empiezan por 01. 3218 02:20:15,680 --> 02:20:18,459 entonces tú puedes crear dispositivos 3219 02:20:18,459 --> 02:20:19,979 con dirección pública 3220 02:20:19,979 --> 02:20:21,500 como es siempre la misma 3221 02:20:21,500 --> 02:20:23,899 te pueden rastrear 3222 02:20:23,899 --> 02:20:25,120 entonces muchas veces 3223 02:20:25,120 --> 02:20:27,920 incluso aunque el dispositivo tenga una dirección pública 3224 02:20:27,920 --> 02:20:30,000 usa una dirección aleatoria 3225 02:20:30,000 --> 02:20:31,520 esa dirección aleatoria 3226 02:20:31,520 --> 02:20:33,260 puede ser fija, estática, perdón 3227 02:20:33,260 --> 02:20:35,299 en cuyo caso empieza por 1,1 3228 02:20:35,299 --> 02:20:36,780 y también te pueden rastrear 3229 02:20:36,780 --> 02:20:37,819 porque es siempre la misma 3230 02:20:37,819 --> 02:20:40,540 o más comúnmente va a ser privada 3231 02:20:40,540 --> 02:20:43,159 y entonces puede ser privada, resolvible 3232 02:20:43,159 --> 02:20:44,360 que va a empezar por 0,1 3233 02:20:44,360 --> 02:20:46,600 o no resolvible que va a ser por 00 3234 02:20:46,600 --> 02:20:48,840 no resolvible, no te puede 3235 02:20:48,840 --> 02:20:49,899 trackear nadie 3236 02:20:49,899 --> 02:20:52,959 resolvible, te puede trackear quien tú quieras 3237 02:20:52,959 --> 02:20:54,180 ¿vale? 3238 02:20:54,959 --> 02:20:56,860 pues bueno, luego respecto a las 3239 02:20:56,860 --> 02:20:58,760 características de seguridad, pues bueno 3240 02:20:58,760 --> 02:21:00,899 principalmente ya sabéis que los dispositivos 3241 02:21:00,899 --> 02:21:02,680 bluetooth hay que parearlos 3242 02:21:02,680 --> 02:21:05,120 ¿vale? luego una vez que está pareado 3243 02:21:05,120 --> 02:21:07,159 ya queda almacenado en tu teléfono 3244 02:21:07,159 --> 02:21:08,819 móvil, por ejemplo, si tú tus auriculares 3245 02:21:08,819 --> 02:21:11,040 los pareas con el teléfono 3246 02:21:11,040 --> 02:21:12,639 móvil, se dice que han hecho 3247 02:21:12,639 --> 02:21:14,899 bonding, eso quiere decir que las claves 3248 02:21:14,899 --> 02:21:16,739 ya están almacenadas ahí y la siguiente 3249 02:21:16,739 --> 02:21:18,920 vez que entren en contacto no tienes que parearlos 3250 02:21:18,920 --> 02:21:20,700 otra vez, porque ya tienen 3251 02:21:20,700 --> 02:21:22,579 esas claves, no tienen que intercambiar las claves 3252 02:21:22,579 --> 02:21:24,659 de pareado, y luego 3253 02:21:24,659 --> 02:21:26,700 hay otra parte que es como se autentican 3254 02:21:26,700 --> 02:21:28,700 los dispositivos, y esto 3255 02:21:28,700 --> 02:21:30,700 hay muchas formas, sabéis que los primeros había que 3256 02:21:30,700 --> 02:21:32,420 poner la clave física que era 3257 02:21:32,420 --> 02:21:34,780 0000, ahora hay algunos 3258 02:21:34,780 --> 02:21:36,700 que te sacan un número aleatorio y tienes que 3259 02:21:36,700 --> 02:21:38,799 copiarlo en el otro dispositivo, o que 3260 02:21:38,799 --> 02:21:40,739 cada uno te da un número y tienes que copiar en el otro 3261 02:21:40,739 --> 02:21:42,260 dispositivo el número que te da el otro 3262 02:21:42,260 --> 02:21:45,959 hay muchas formas, luego los mensajes van encriptados 3263 02:21:45,959 --> 02:21:50,360 y por supuesto no se pueden manipular los mensajes 3264 02:21:50,360 --> 02:21:53,860 de forma inadvertida, esas son las formas que tenemos 3265 02:21:53,860 --> 02:21:58,479 de seguridad, aquí no voy a entrar porque esto ya lo habéis hecho todos 3266 02:21:58,479 --> 02:22:01,659 habéis pareado dispositivos tanto en modo legacy 3267 02:22:01,659 --> 02:22:06,420 como en modo SSP, los legacy son estos que os decía que había que poner un número 3268 02:22:06,420 --> 02:22:09,260 que era siempre el mismo, era un código a veces de 4 pines 3269 02:22:09,260 --> 02:22:11,520 la mayoría de las veces, eso se considera 3270 02:22:11,520 --> 02:22:12,319 que está obsoleto 3271 02:22:12,319 --> 02:22:14,899 y ahora lo que tenemos son los sistemas 3272 02:22:14,899 --> 02:22:17,000 SEPT, Secure Simple Pairing 3273 02:22:17,000 --> 02:22:19,239 que esos ya utilizan sistemas 3274 02:22:19,239 --> 02:22:21,340 de pareado más complejos, en los que hay que escribir 3275 02:22:21,340 --> 02:22:22,860 un número más largo 3276 02:22:22,860 --> 02:22:25,579 o que se autoautentican ellos mismos 3277 02:22:25,579 --> 02:22:27,299 entonces bueno, ahí hay 3278 02:22:27,299 --> 02:22:28,219 un montón de opciones 3279 02:22:28,219 --> 02:22:31,180 ¿de qué depende de que se use uno u otro? 3280 02:22:31,299 --> 02:22:33,520 pues principalmente de las capacidades de entrada y salida 3281 02:22:33,520 --> 02:22:34,579 que tenga el dispositivo 3282 02:22:34,579 --> 02:22:37,379 si tú tienes un auricular, el auricular 3283 02:22:37,379 --> 02:22:39,139 ni tiene pantalla ni tiene teclado 3284 02:22:39,780 --> 02:22:41,719 Entonces, ¿cómo se podría parear? 3285 02:22:42,120 --> 02:22:43,799 Pues si no tiene ni entrada ni salida, 3286 02:22:44,540 --> 02:22:47,799 solamente se puede parear con un sistema que se llama JustWorks, 3287 02:22:47,860 --> 02:22:50,799 que es sin autenticación, que son los que veis aquí, 3288 02:22:51,180 --> 02:22:52,180 pues no se puede autenticar. 3289 02:22:54,520 --> 02:22:57,899 Pues, por ejemplo, si tú tienes una pantalla, 3290 02:22:57,899 --> 02:23:00,340 pero que solo admite botones sí o no, 3291 02:23:01,159 --> 02:23:03,459 pues, por ejemplo, si te vas a parear con un dispositivo 3292 02:23:03,459 --> 02:23:05,059 que también tiene botones sí o no, 3293 02:23:05,680 --> 02:23:08,500 puedes utilizar JustWorks, que es sin autenticar, 3294 02:23:08,500 --> 02:23:11,840 o bien podrías usar una comparación numérica 3295 02:23:11,840 --> 02:23:14,159 eso que es, que un dispositivo te va a decir 3296 02:23:14,159 --> 02:23:17,520 oye, el número que está haciendo en el otro dispositivo es este 3297 02:23:17,520 --> 02:23:19,860 sí o no, y contestas sí o no, y ya está 3298 02:23:19,860 --> 02:23:22,100 bueno, pues esa es la diferencia 3299 02:23:22,100 --> 02:23:24,959 aquí del tema de seguridad hay muchísimo 3300 02:23:24,959 --> 02:23:28,540 por ejemplo hay un modo de seguridad que se llama OB 3301 02:23:28,540 --> 02:23:31,940 que ese no usa bluetooth para hacer 3302 02:23:31,940 --> 02:23:33,979 el intercambio de claves, el pairing 3303 02:23:33,979 --> 02:23:36,000 sino que usa una etiqueta NFC 3304 02:23:36,000 --> 02:23:38,340 y esto engancha con lo que os estaba contando antes 3305 02:23:38,340 --> 02:23:40,379 que se combinan a la vez 3306 02:23:40,379 --> 02:23:42,520 NFC y Bluetooth 3307 02:23:42,520 --> 02:23:43,479 vale 3308 02:23:43,479 --> 02:23:46,600 entonces, cuando usamos 3309 02:23:46,600 --> 02:23:48,440 JazzWorks, que es este de aquí 3310 02:23:48,440 --> 02:23:50,540 que no está autenticado, todos los que veis aquí 3311 02:23:50,540 --> 02:23:52,340 de JazzWorks, pues claro 3312 02:23:52,340 --> 02:23:54,620 son con dispositivos que están muy limitados 3313 02:23:54,620 --> 02:23:56,159 pues cuando usamos eso 3314 02:23:56,159 --> 02:23:58,020 tenemos el problema de que podemos 3315 02:23:58,020 --> 02:24:00,540 sufrir un ataque de hombre 3316 02:24:00,540 --> 02:24:01,000 en el medio 3317 02:24:01,000 --> 02:24:04,340 ¿esto qué es? que yo tengo mi ordenador 3318 02:24:04,340 --> 02:24:06,440 le quiero conectar un teclado externo 3319 02:24:06,440 --> 02:24:09,399 y lo que tengo es alguien entre medias 3320 02:24:09,399 --> 02:24:11,000 con un SP32 por ejemplo 3321 02:24:11,000 --> 02:24:14,420 que se presenta al teclado como si fuera el ordenador 3322 02:24:14,420 --> 02:24:16,860 y que se presenta al ordenador como si fuera el teclado 3323 02:24:16,860 --> 02:24:19,639 con lo cual el teclado se parea con el SP32 3324 02:24:19,639 --> 02:24:23,180 pensando que se está pareando con el ordenador 3325 02:24:23,180 --> 02:24:25,180 el móvil se parea con el SP32 3326 02:24:25,180 --> 02:24:27,799 pensando que está funcionando con el teclado 3327 02:24:27,799 --> 02:24:30,760 todo funciona perfectamente, tú escribes en el teclado 3328 02:24:30,760 --> 02:24:33,219 y aparece en el ordenador y crees que todo está bien 3329 02:24:33,219 --> 02:24:34,899 pero hay un tipo en el medio 3330 02:24:34,899 --> 02:24:37,280 que está interceptando todos esos datos 3331 02:24:37,280 --> 02:24:39,420 ¿vale? entonces 3332 02:24:39,420 --> 02:24:41,260 se pueden ver comprometidos 3333 02:24:41,260 --> 02:24:43,440 esto es un riesgo enorme, por eso 3334 02:24:43,440 --> 02:24:44,860 se intentan utilizar 3335 02:24:44,860 --> 02:24:46,319 este modo de 3336 02:24:46,319 --> 02:24:48,879 acreditación, el Just Work 3337 02:24:48,879 --> 02:24:51,219 se intenta utilizar siempre uno de los otros 3338 02:24:51,219 --> 02:24:52,760 ¿vale? porque esto es inevitable 3339 02:24:52,760 --> 02:24:55,319 este modo de ataque es un riesgo 3340 02:24:55,319 --> 02:24:56,819 que lo vas a tener siempre 3341 02:24:56,819 --> 02:24:58,100 en Just Work 3342 02:24:58,100 --> 02:25:00,840 esto lo paso 3343 02:25:00,840 --> 02:25:03,040 porque ya estuvimos viendo un poco como funcionaba 3344 02:25:03,040 --> 02:25:05,639 esto de los sistemas de clave asimétrica 3345 02:25:05,639 --> 02:25:07,219 lo estuvimos viendo por el caso 3346 02:25:07,219 --> 02:25:08,280 de Amazon Web Services 3347 02:25:08,280 --> 02:25:11,520 y aquí se usa lo mismo, aquí se usan claves asimétricas 3348 02:25:11,520 --> 02:25:13,579 después del pareado 3349 02:25:13,579 --> 02:25:15,139 se generan esas claves 3350 02:25:15,139 --> 02:25:17,479 y con esas claves asimétricas 3351 02:25:17,479 --> 02:25:19,780 se intercambian unas claves simétricas 3352 02:25:19,780 --> 02:25:21,479 que son las que realmente se usan 3353 02:25:21,479 --> 02:25:22,200 para encriptar 3354 02:25:22,200 --> 02:25:25,680 no se usa criptografía asimétrica para encriptar 3355 02:25:25,680 --> 02:25:27,479 porque la criptografía asimétrica 3356 02:25:27,479 --> 02:25:29,819 es muy pesada, implica mucho cálculo 3357 02:25:29,819 --> 02:25:31,340 entonces lo que se hace 3358 02:25:31,340 --> 02:25:35,680 es que se usa criptografía simétrica para intercambiar las claves simétricas 3359 02:25:35,680 --> 02:25:41,520 y luego las claves simétricas se usan, como digo, para encriptar el resto de la información. 3360 02:25:42,100 --> 02:25:45,219 Bueno, voy a ver si he acabado ya de cargar el programa. 3361 02:25:46,340 --> 02:25:48,260 La verdad es que no me acuerdo siquiera si le he dado a cargar. 3362 02:25:49,260 --> 02:25:49,500 A ver. 3363 02:25:53,840 --> 02:25:55,620 No, está todavía cargando la anterior. 3364 02:25:55,760 --> 02:25:57,360 Bueno, pues le doy a cargar y luego lo vemos. 3365 02:25:58,040 --> 02:26:00,700 Bien, entonces, bueno, aquí hay una serie de ejemplos 3366 02:26:00,700 --> 02:26:02,860 que vosotros podéis cargar en un SF32 3367 02:26:02,860 --> 02:26:06,360 para ver cómo funciona todo esto del Pairing SSP, ¿vale? 3368 02:26:06,860 --> 02:26:09,200 Entonces, pues tenemos el Serial2VP, 3369 02:26:09,340 --> 02:26:12,120 tenemos el JazzWord, tenemos el Passkey Entry, ¿vale? 3370 02:26:12,500 --> 02:26:13,379 O el Input y Output. 3371 02:26:13,479 --> 02:26:16,819 Pues, por ejemplo, aquí tenemos un caso que es de PIN, ¿vale? 3372 02:26:16,840 --> 02:26:18,840 Pero este no es el PIN Legacy, ¿vale? 3373 02:26:18,840 --> 02:26:19,959 Este no es siempre el mismo. 3374 02:26:20,500 --> 02:26:21,739 Este es un PIN que va variando. 3375 02:26:21,860 --> 02:26:23,000 Y veis que te dice, 3376 02:26:23,559 --> 02:26:25,600 si es el mismo que se muestra en el otro dispositivo, 3377 02:26:25,700 --> 02:26:26,959 escriba sí, ¿vale? 3378 02:26:27,219 --> 02:26:29,059 Y si no, pues escribes no y ya está. 3379 02:26:29,059 --> 02:26:31,500 y esta es la forma que tienen de parearse 3380 02:26:31,500 --> 02:26:33,399 bueno, ¿para qué utilizamos 3381 02:26:33,399 --> 02:26:35,360 nosotros Bluetooth en el mundo de los sistemas 3382 02:26:35,360 --> 02:26:37,319 embebidos? pues principalmente 3383 02:26:37,319 --> 02:26:39,100 los usamos para puertos serie 3384 02:26:39,100 --> 02:26:41,260 ¿vale? el puerto serie está muy 3385 02:26:41,260 --> 02:26:43,360 extendido, se utiliza para un montón de 3386 02:26:43,360 --> 02:26:45,319 cosas, ¿vale? pues resulta que hay un 3387 02:26:45,319 --> 02:26:46,920 perfil de Bluetooth 3388 02:26:46,920 --> 02:26:49,219 que es el perfil de puertos serie 3389 02:26:49,219 --> 02:26:51,379 entonces yo puedo emular 3390 02:26:51,379 --> 02:26:53,079 sobre Bluetooth 3391 02:26:53,079 --> 02:26:55,379 un puerto serie, ¿vale? y esto es 3392 02:26:55,379 --> 02:26:57,319 súper cómodo, porque yo 3393 02:26:57,319 --> 02:26:58,700 me puedo comunicar de pronto 3394 02:26:58,700 --> 02:27:00,840 como si estuviera usando un puerto serie 3395 02:27:00,840 --> 02:27:02,819 pero no tengo que tender cables 3396 02:27:02,819 --> 02:27:04,719 directamente con un móvil que tenga 3397 02:27:04,719 --> 02:27:07,079 bluetooth, puedo acceder 3398 02:27:07,079 --> 02:27:09,319 entonces por ejemplo, aquí os ponía 3399 02:27:09,319 --> 02:27:11,139 un ejemplo de aplicaciones 3400 02:27:11,139 --> 02:27:12,540 para Android y para IOS 3401 02:27:12,540 --> 02:27:14,479 que son terminales bluetooth 3402 02:27:14,479 --> 02:27:15,760 esta que tenéis aquí 3403 02:27:15,760 --> 02:27:19,299 es la interfaz, es la aplicación para Android 3404 02:27:19,299 --> 02:27:21,059 que lo que hago 3405 02:27:21,059 --> 02:27:22,959 es que digo, a ver, escanea 3406 02:27:22,959 --> 02:27:24,940 me conecto al SP32 3407 02:27:24,940 --> 02:27:26,860 y lo que ocurre en ese momento 3408 02:27:26,860 --> 02:27:29,079 si he cargado en el SP32 este ejemplo 3409 02:27:29,079 --> 02:27:29,920 serial to serial 3410 02:27:29,920 --> 02:27:32,760 es que lo que tengo ahí es una comunicación serie 3411 02:27:32,760 --> 02:27:34,479 entre esos dos dispositivos 3412 02:27:34,479 --> 02:27:36,500 es una comunicación serie 3413 02:27:36,500 --> 02:27:38,860 pero que en lugar de ir por cables 3414 02:27:38,860 --> 02:27:39,879 va por bluetooth 3415 02:27:39,879 --> 02:27:42,120 entonces esto es súper cómodo 3416 02:27:42,120 --> 02:27:45,040 de hecho es una de las aplicaciones más habituales que tiene el bluetooth 3417 02:27:45,040 --> 02:27:47,520 el puerto serie 3418 02:27:47,520 --> 02:27:48,540 bueno 3419 02:27:48,540 --> 02:27:50,680 entonces aquí yo hacía 3420 02:27:50,680 --> 02:27:52,459 una serie de ejemplos 3421 02:27:52,459 --> 02:27:54,879 de bluetooth classic 3422 02:27:54,879 --> 02:27:56,079 que aquí no los voy a contar 3423 02:27:56,079 --> 02:28:11,790 Porque el Bluetooth Classic, ya os digo, el ejemplo más importante es este, el del Serial Profile, ¿vale? Y hay otros periféricos, por supuesto, para transmitir archivos, para transmitir audio, ¿vale? Para el que usa los altavoces y tal. 3424 02:28:12,010 --> 02:28:23,250 Pero bueno, yo ahora lo que quería centrarme es en el stack de Low Energy, que creo que es el más interesante para encarnar de las cosas, ¿vale? Y aquí tengo que volver otra vez a lo que os he enseñado antes. 3425 02:28:23,250 --> 02:28:52,329 A la parte del modem, que es el controlador, a la parte de la pila, o sea, del microcontrolador, que es el host, y al elemento intermedio, al host controller interface. ¿Vale? Bien. Pues aquí tenemos que podemos utilizar distintos modos de comunicación. ¿Vale? Un sistema de comunicación, por ejemplo, broadcasting. Un sistema de comunicación de advertiser y scanner. ¿Vale? Pues estos serían, por ejemplo, las balizas. Bueno, pues estos son distintos sistemas. 3426 02:28:52,329 --> 02:29:12,510 Y aquí podemos tener, por ejemplo, un broadcaster y un observador, que sería este caso que veis aquí arriba. Uno haciendo broadcasting y dos observadores que están recibiendo la información de ese broadcaster. O bien tenemos periféricos y centrales. Por ejemplo, yo puedo tener aquí varios periféricos que se comunican con un mismo central. 3427 02:29:12,510 --> 02:29:25,670 Pues, por ejemplo, podrían ser varios sensores de temperatura en una casa que se conectan con un SP32 central que recibe por BLE las temperaturas de todos esos sensores. 3428 02:29:26,530 --> 02:29:34,510 Entonces, a nivel de GATT, ¿qué roles tenemos? Pues el rol de servidor y el rol de cliente. 3429 02:29:34,510 --> 02:29:40,750 cliente. Entonces, el servidor es el que contiene los datos que se desean 3430 02:29:40,750 --> 02:29:46,250 monitorizar. Por ejemplo, el sensor de temperatura sería el servidor. Esto 3431 02:29:46,250 --> 02:29:50,610 choca un poco al principio. El sensor es el servidor y el cliente es tu 3432 02:29:50,610 --> 02:29:55,209 teléfono móvil. El cliente es el que le pide al sensor, oye, sírveme tus datos 3433 02:29:55,209 --> 02:30:01,209 de temperatura. ¿Y esto cómo funciona? Pues funciona mediante servicios GAT, 3434 02:30:01,209 --> 02:30:23,250 Servicios de atributos, como os decía. Por ejemplo, yo tengo aquí un sensor, que es un BM70, que tiene dos servicios. Un servicio público y un servicio privado. Cada servicio tiene un identificador único. Aquí tengo un identificador único de 16 bits y aquí tengo un identificador privado de 128 bits. 3435 02:30:23,250 --> 02:30:26,270 y luego lo que tengo dentro de los servicios son características 3436 02:30:26,270 --> 02:30:27,989 ¿qué características podrían ser esto? 3437 02:30:28,069 --> 02:30:30,590 la temperatura, la humedad, la calibración 3438 02:30:30,590 --> 02:30:31,770 ¿vale? lo que fuera 3439 02:30:31,770 --> 02:30:33,709 y aquí tendría el teléfono móvil 3440 02:30:33,709 --> 02:30:36,049 que le solicita al servidor 3441 02:30:36,049 --> 02:30:37,389 que en este caso es el sensor 3442 02:30:37,389 --> 02:30:40,110 le dice, oye, ¿cuál es el valor de tu 3443 02:30:40,110 --> 02:30:42,170 característica identificada por 3444 02:30:42,170 --> 02:30:44,049 este identificador único? ¿qué es la temperatura? 3445 02:30:44,489 --> 02:30:46,110 y él le contesta, y así sabemos 3446 02:30:46,110 --> 02:30:46,909 cuál es la temperatura 3447 02:30:46,909 --> 02:30:49,909 ¿vale? y luego por encima de esto 3448 02:30:49,909 --> 02:30:51,389 está el 3449 02:30:51,389 --> 02:30:53,430 protocolo de acceso genérico 3450 02:30:53,430 --> 02:30:54,430 el GAP 3451 02:30:54,430 --> 02:30:57,670 que este aquí lo que tenemos es para 3452 02:30:57,670 --> 02:30:59,850 ahorrar energía, lo que ocurre 3453 02:30:59,850 --> 02:31:01,549 es que el periférico 3454 02:31:01,549 --> 02:31:03,729 está la mayor parte del tiempo dormido 3455 02:31:03,729 --> 02:31:05,909 esta raya vertical es cuando está despierto 3456 02:31:05,909 --> 02:31:07,770 y el resto del tiempo está 3457 02:31:07,770 --> 02:31:09,829 dormido, y sin embargo el central 3458 02:31:09,829 --> 02:31:11,530 que tiene menos problemas de batería 3459 02:31:11,530 --> 02:31:13,889 pues lo que tiene que hacer es despertar 3460 02:31:13,889 --> 02:31:15,790 a un intervalo 3461 02:31:15,790 --> 02:31:17,850 de tal forma que en algún modo se solape 3462 02:31:17,850 --> 02:31:19,309 con el otro, veis que aquí 3463 02:31:19,309 --> 02:31:21,909 en este primero no ha sido posible la comunicación 3464 02:31:21,909 --> 02:31:23,670 en este segundo tampoco ha sido 3465 02:31:23,670 --> 02:31:25,850 posible la comunicación, pero aquí 3466 02:31:25,850 --> 02:31:27,649 sí que ha sido posible la comunicación 3467 02:31:27,649 --> 02:31:29,690 ¿vale? entonces lo que tenemos es un 3468 02:31:29,690 --> 02:31:31,530 periférico que está casi siempre dormido 3469 02:31:31,530 --> 02:31:33,629 y un central que 3470 02:31:33,629 --> 02:31:35,969 establece un tiempo de dormido 3471 02:31:35,969 --> 02:31:37,469 y luego tiene que estar un tiempo 3472 02:31:37,469 --> 02:31:38,969 mucho más amplio despierto 3473 02:31:38,969 --> 02:31:41,430 para poder garantizarse que en algún momento 3474 02:31:41,430 --> 02:31:43,450 va a poder comunicarse con ese dispositivo 3475 02:31:43,450 --> 02:31:45,190 bluetooth, y este es el problema 3476 02:31:45,190 --> 02:31:47,170 por el que los dispositivos bluetooth son a veces 3477 02:31:47,170 --> 02:31:50,969 tan lentos, porque hay que dejar pasar varias de estas ventanas 3478 02:31:50,969 --> 02:31:54,590 veis que estas ventanas son de 4 segundos, de más de 4 segundos 3479 02:31:54,590 --> 02:31:58,770 hay que dejar pasar varias de estas ventanas para 3480 02:31:58,770 --> 02:32:03,170 conseguir una comunicación eficiente, en IOS 3481 02:32:03,170 --> 02:32:06,889 aunque no lo tienen publicado, no se sabe con certeza porque el código es cerrado 3482 02:32:06,889 --> 02:32:10,790 normalmente los dispositivos funcionan mejor y se cree que es porque 3483 02:32:10,790 --> 02:32:14,950 utilizan valores de 40 y de 30 milisegundos, en vez de 3 segundos 3484 02:32:14,950 --> 02:32:17,170 y un segundo ocupan 40 3485 02:32:17,170 --> 02:32:18,909 y usan 40 y 30 3486 02:32:18,909 --> 02:32:21,010 no se sabe con certeza, pero bueno 3487 02:32:21,010 --> 02:32:23,030 ahí lo dejo, esa es la 3488 02:32:23,030 --> 02:32:25,209 explicación de que funcionen mejor 3489 02:32:25,209 --> 02:32:27,030 los dispositivos iPhone 3490 02:32:27,030 --> 02:32:28,549 los dispositivos Apple 3491 02:32:28,549 --> 02:32:30,930 que los Android, vale, bueno 3492 02:32:30,930 --> 02:32:33,170 pues aquí tenemos entonces la clave de todo esto 3493 02:32:33,170 --> 02:32:34,909 nosotros vamos a tener perfiles 3494 02:32:34,909 --> 02:32:37,209 dentro de los perfiles vamos a tener servicios 3495 02:32:37,209 --> 02:32:39,049 y dentro de los servicios vamos a tener 3496 02:32:39,049 --> 02:32:41,149 características, que a su vez van a estar compuestas 3497 02:32:41,149 --> 02:32:42,729 por propiedades 3498 02:32:42,729 --> 02:32:44,610 valores y descriptores 3499 02:32:44,610 --> 02:33:02,590 Pues lo interesante es que cada uno de estos, cada servicio y cada característica y cada descriptor tiene un identificador único. Esos identificadores están compuestos por 16 bytes y no están asignados, no están reservados, los puede usar cualquiera. 3500 02:33:02,590 --> 02:33:04,110 de hecho hay generadores por ahí 3501 02:33:04,110 --> 02:33:06,030 de UIDs 3502 02:33:06,030 --> 02:33:09,069 pero hay otros que son abreviados 3503 02:33:09,069 --> 02:33:11,010 que son los de 2 y los de 4 bytes 3504 02:33:11,010 --> 02:33:12,950 que esos sí que están registrados 3505 02:33:12,950 --> 02:33:15,090 por el SIG, por el Special Group Interest 3506 02:33:15,090 --> 02:33:15,909 de Bluetooth 3507 02:33:15,909 --> 02:33:18,790 entonces esos no los puedes usar libremente 3508 02:33:18,790 --> 02:33:20,649 tú puedes usar uno de 16 bytes 3509 02:33:20,649 --> 02:33:23,270 sin problemas, pero de 2 o de 4 bytes 3510 02:33:23,270 --> 02:33:24,090 no puedes 3511 02:33:24,090 --> 02:33:26,809 entonces bueno, esto ya lo hemos visto 3512 02:33:26,809 --> 02:33:27,690 que es lo de antes 3513 02:33:27,690 --> 02:33:30,450 el sistema de descubrimiento 3514 02:33:30,450 --> 02:33:33,010 que aquí tenéis los servicios que están predefinidos 3515 02:33:33,010 --> 02:33:34,729 por ejemplo aquí tenemos los de 2 bytes 3516 02:33:34,729 --> 02:33:36,329 pues de 2 bytes 3517 02:33:36,329 --> 02:33:37,989 un 1852 3518 02:33:37,989 --> 02:33:41,069 es un sistema de anuncios por audio 3519 02:33:41,069 --> 02:33:42,129 vale 3520 02:33:42,129 --> 02:33:44,989 yo que sé, un 1843 3521 02:33:44,989 --> 02:33:46,909 es un dispositivo de 3522 02:33:46,909 --> 02:33:49,129 entrada de audio, vale, todo esto 3523 02:33:49,129 --> 02:33:50,290 está 3524 02:33:50,290 --> 02:33:52,989 registrado, vale, por la 3525 02:33:52,989 --> 02:33:54,690 SIG, entonces si yo necesito 3526 02:33:54,690 --> 02:33:56,850 crearme mi propio UID 3527 02:33:56,850 --> 02:33:58,629 pues simplemente me vengo aquí 3528 02:33:58,629 --> 02:34:01,010 a una dirección como esta, uidgenerator 3529 02:34:01,010 --> 02:34:02,709 voy a ir por ejemplo 3530 02:34:02,709 --> 02:34:06,959 para que lo veáis un momento, aquí 3531 02:34:06,959 --> 02:34:09,979 uidgenerator.net 3532 02:34:09,979 --> 02:34:12,879 y ahí le digo que me genere 3533 02:34:12,879 --> 02:34:14,739 una, que me genere 3534 02:34:14,739 --> 02:34:16,040 directamente un uid 3535 02:34:16,040 --> 02:34:18,719 y yo ese uid lo podría usar 3536 02:34:18,719 --> 02:34:20,840 para un servicio, lo podría 3537 02:34:20,840 --> 02:34:22,659 usar para una característica, para lo que yo 3538 02:34:22,659 --> 02:34:25,059 necesitará, nosotros lo usaremos principalmente 3539 02:34:25,059 --> 02:34:26,600 para los servicios 3540 02:34:26,600 --> 02:34:28,879 vale, entonces 3541 02:34:28,879 --> 02:34:30,639 en las características que tenemos 3542 02:34:30,639 --> 02:34:32,760 pues el valor, ¿vale? ¿El valor qué es? Pues si es una 3543 02:34:32,760 --> 02:34:34,860 característica de temperatura, pues el valor 3544 02:34:34,860 --> 02:34:36,879 sería 23 grados. Luego 3545 02:34:36,879 --> 02:34:38,920 tener propiedades. Las propiedades 3546 02:34:38,920 --> 02:34:40,819 determinan qué se puede hacer con 3547 02:34:40,819 --> 02:34:42,559 ese valor. Si se puede leer, 3548 02:34:42,879 --> 02:34:44,760 si se puede escribir, si se puede notificar, 3549 02:34:45,120 --> 02:34:46,819 ya veremos luego qué es esto de la notificación, 3550 02:34:47,040 --> 02:34:49,079 ¿vale? Y el descriptor son simplemente 3551 02:34:49,079 --> 02:34:50,840 metadatos, ¿vale? Es información que tú 3552 02:34:50,840 --> 02:34:52,680 puedes poner ahí, es decir, esto es un 3553 02:34:52,680 --> 02:34:54,219 sensor de temperatura de tipo 3554 02:34:54,219 --> 02:34:56,659 pues NTP, o es una 3555 02:34:56,659 --> 02:34:58,780 sonda, de lo que sea, ¿vale? 3556 02:34:58,799 --> 02:35:00,479 Son simplemente información adicional. 3557 02:35:00,639 --> 02:35:03,340 entonces, resulta que tenemos ya características 3558 02:35:03,340 --> 02:35:05,239 también predefinidas por el SIG 3559 02:35:05,239 --> 02:35:07,159 ¿vale? que son estas que veis aquí 3560 02:35:07,159 --> 02:35:08,819 pues por ejemplo, si yo tengo 3561 02:35:08,819 --> 02:35:10,920 una edad 3562 02:35:10,920 --> 02:35:13,159 pues una edad la tengo que meter 3563 02:35:13,159 --> 02:35:14,579 en una característica que sea 3564 02:35:14,579 --> 02:35:17,819 que utilice el UID 2A80 3565 02:35:17,819 --> 02:35:19,120 ¿vale? 3566 02:35:19,139 --> 02:35:21,219 un nivel de alerta, pues en un 2A06 3567 02:35:21,219 --> 02:35:23,260 ¿vale? hay muchísimas más 3568 02:35:23,260 --> 02:35:24,620 podéis ir a estas direcciones 3569 02:35:24,620 --> 02:35:26,840 ¿vale? y hay miles de páginas 3570 02:35:26,840 --> 02:35:28,920 de números de estos 3571 02:35:28,920 --> 02:35:30,420 ya asignados 3572 02:35:30,420 --> 02:35:33,799 y ahora bien 3573 02:35:33,799 --> 02:35:35,139 ahora ya decimos, vale, muy bien 3574 02:35:35,139 --> 02:35:37,059 hemos contado aquí un mundo maravilloso 3575 02:35:37,059 --> 02:35:39,420 y ahora esto en realidad, ¿cómo podemos usarlo? 3576 02:35:39,540 --> 02:35:40,959 bueno, pues por ejemplo 3577 02:35:40,959 --> 02:35:42,379 en el caso del SP32 3578 02:35:42,379 --> 02:35:45,319 aquí os cuento un poquillo que podéis utilizar 3579 02:35:45,319 --> 02:35:47,920 entonces resulta que para el SP32 3580 02:35:47,920 --> 02:35:49,540 hay varias librerías 3581 02:35:49,540 --> 02:35:51,120 la librería Nimble 3582 02:35:51,120 --> 02:35:52,620 la librería BluDroid 3583 02:35:52,620 --> 02:35:54,020 o el SP Controller 3584 02:35:54,020 --> 02:35:57,299 y según la que elijáis, podéis usar una cosa u otra 3585 02:35:57,299 --> 02:35:58,959 pero podéis ver claramente 3586 02:35:58,959 --> 02:36:00,680 que en cuanto pasamos a la versión 5 3587 02:36:00,680 --> 02:36:02,540 prácticamente no podemos hacer nada 3588 02:36:02,540 --> 02:36:05,000 ¿vale? hasta la versión 4 3589 02:36:05,000 --> 02:36:06,780 pues más o menos podemos hacer 3590 02:36:06,780 --> 02:36:08,239 lo mismo en todas ¿vale? 3591 02:36:08,319 --> 02:36:10,180 que es básicamente conexiones LE 3592 02:36:10,180 --> 02:36:12,579 pero cualquier otra posibilidad como esta 3593 02:36:12,579 --> 02:36:14,639 que yo os decía de largo alcance que estáis viendo 3594 02:36:14,639 --> 02:36:16,239 aquí ¿vale? o 3595 02:36:16,239 --> 02:36:18,719 el paquete 3596 02:36:18,719 --> 02:36:20,559 extendido no lo podemos usar 3597 02:36:20,559 --> 02:36:23,040 en ninguna de las librerías que existen para el SP32 3598 02:36:23,040 --> 02:36:24,579 o sea que estamos bastante 3599 02:36:24,579 --> 02:36:26,540 bastante limitados 3600 02:36:26,540 --> 02:36:27,680 bueno 3601 02:36:27,680 --> 02:36:32,420 ¿cuál es el problema que tenemos realmente 3602 02:36:32,420 --> 02:36:34,399 en Bluetooth? pues el problema 3603 02:36:34,399 --> 02:36:36,000 que tenemos no es la encriptación 3604 02:36:36,000 --> 02:36:38,219 la encriptación de los datos está bien resuelta 3605 02:36:38,219 --> 02:36:40,379 el problema es la autenticación 3606 02:36:40,379 --> 02:36:42,360 es decir, ¿cómo sé yo que estoy 3607 02:36:42,360 --> 02:36:44,399 hablando con quien yo creo que estoy 3608 02:36:44,399 --> 02:36:45,739 hablando? ¿vale? 3609 02:36:46,100 --> 02:36:48,319 eso es un problema, y eso no son 3610 02:36:48,319 --> 02:36:49,700 capaces de resolverlo bien 3611 02:36:49,700 --> 02:36:51,799 en Bluetooth, en BLE 3612 02:36:51,799 --> 02:36:54,360 ¿vale? por eso muchas veces se recurre 3613 02:36:54,360 --> 02:36:55,399 a este sistema OV 3614 02:36:55,399 --> 02:36:57,479 que es el que os digo que hace uso 3615 02:36:57,479 --> 02:37:00,319 de un sistema externo que usa NFC 3616 02:37:00,319 --> 02:37:02,280 o otra tecnología para poder 3617 02:37:02,280 --> 02:37:03,159 hacer el pareado 3618 02:37:03,159 --> 02:37:06,100 entonces bueno, eso es un problema 3619 02:37:06,100 --> 02:37:07,780 que está todavía sin resolver 3620 02:37:07,780 --> 02:37:10,319 y aquí si queréis probar por ejemplo 3621 02:37:10,319 --> 02:37:12,040 ver cuantos dispositivos BLE 3622 02:37:12,040 --> 02:37:13,579 hay en vuestro alrededor 3623 02:37:13,579 --> 02:37:16,040 yo creo que esto ya se habrá cargado, ahora ya si 3624 02:37:16,040 --> 02:37:17,920 a ver, lo voy a arrancar 3625 02:37:17,920 --> 02:37:26,090 y veis que aquí me está dando la MAC 3626 02:37:26,090 --> 02:37:28,030 este es el 3627 02:37:28,030 --> 02:37:29,729 identificador de 3628 02:37:29,729 --> 02:37:32,010 mi SP32, del controlador 3629 02:37:32,010 --> 02:37:34,450 el controlador bluetooth 3630 02:37:34,450 --> 02:37:36,209 de mi SP32 3631 02:37:36,209 --> 02:37:38,110 y si ahora ejecuto 3632 02:37:38,110 --> 02:37:39,590 este ejemplo 3633 02:37:39,590 --> 02:37:41,469 de escáner 3634 02:37:41,469 --> 02:37:44,309 si me voy aquí a ejemplos 3635 02:37:45,690 --> 02:37:46,469 de BL 3636 02:37:46,469 --> 02:37:47,270 escáner 3637 02:37:47,270 --> 02:37:50,590 no esté 3638 02:37:50,590 --> 02:37:51,690 con escáner 3639 02:37:51,690 --> 02:37:53,709 scan, este 3640 02:37:53,709 --> 02:37:56,090 vale, lo voy a poner ahí a cargar 3641 02:37:56,090 --> 02:37:58,309 tardará un rato, espero poderlo enseñar 3642 02:37:58,309 --> 02:37:59,649 antes de acabar la clase 3643 02:37:59,649 --> 02:38:40,750 Lo que vamos a ver ahí es todos los dispositivos que tengo a mi alrededor de tipo BL, ¿vale? A ver si acaba de cargar. Vale, pues ya está aquí, le doy a cargar, ¿vale? Mientras esto se carga, voy a dar un salto mortal, ¿vale? Porque quiero contaros una cosa que creo que os va a interesar, que es esto de las notificaciones y las indicaciones. 3644 02:38:40,750 --> 02:38:43,989 resulta que tú dentro de los servicios 3645 02:38:43,989 --> 02:38:45,110 que te puedes crear 3646 02:38:45,110 --> 02:38:46,530 de las propiedades 3647 02:38:46,530 --> 02:38:48,770 recuerdo en este gráfico 3648 02:38:48,770 --> 02:38:51,170 aquí 3649 02:38:51,170 --> 02:38:52,729 recordad, tenemos servicios 3650 02:38:52,729 --> 02:38:54,569 que tienen características 3651 02:38:54,569 --> 02:38:57,010 y esas características tienen valores 3652 02:38:57,010 --> 02:38:58,590 y tienen propiedades 3653 02:38:58,590 --> 02:39:00,790 por ejemplo, si esto es una característica de temperatura 3654 02:39:00,790 --> 02:39:03,549 el valor sería 25 grados 3655 02:39:03,549 --> 02:39:04,969 y dentro de las propiedades 3656 02:39:04,969 --> 02:39:07,149 es lo que tú puedes hacer con la característica 3657 02:39:07,149 --> 02:39:08,870 puedes leerla, puedes escribirla 3658 02:39:08,870 --> 02:39:10,149 o muy importante 3659 02:39:10,149 --> 02:39:12,590 puedes notificarla 3660 02:39:12,590 --> 02:39:13,090 ¿vale? 3661 02:39:13,790 --> 02:39:16,530 que es esta parte del salto mortal que os estaba diciendo 3662 02:39:16,530 --> 02:39:18,090 notificarla 3663 02:39:18,090 --> 02:39:19,809 ¿notificarla qué quiere decir? 3664 02:39:21,030 --> 02:39:22,010 eso quiere decir 3665 02:39:22,010 --> 02:39:23,530 que es directamente el sensor 3666 02:39:23,530 --> 02:39:25,209 el que envía la información 3667 02:39:25,209 --> 02:39:28,190 al cliente, es decir, es como si el cliente 3668 02:39:28,190 --> 02:39:29,569 se quedase suscrito 3669 02:39:29,569 --> 02:39:31,450 a cualquier cambio de temperatura 3670 02:39:31,450 --> 02:39:34,069 y el cliente no le tiene que preguntar al sensor 3671 02:39:34,069 --> 02:39:35,270 oye, dime la temperatura 3672 02:39:35,270 --> 02:39:37,750 es el sensor el que le dice al cliente 3673 02:39:37,750 --> 02:39:39,530 la temperatura ha cambiado 3674 02:39:39,530 --> 02:39:41,370 eso es una notificación 3675 02:39:41,370 --> 02:39:43,610 y eso es muy interesante 3676 02:39:43,610 --> 02:39:45,549 porque de pronto tenemos comunicación 3677 02:39:45,549 --> 02:39:46,569 en sentido contrario 3678 02:39:46,569 --> 02:39:48,989 recordad que el servidor era el sensor 3679 02:39:48,989 --> 02:39:50,709 y el cliente es el móvil 3680 02:39:50,709 --> 02:39:53,190 entonces el cliente le tenía que preguntar al sensor 3681 02:39:53,190 --> 02:39:54,950 oye por favor dime la temperatura 3682 02:39:54,950 --> 02:39:56,329 y él le contestaba 3683 02:39:56,329 --> 02:39:58,290 pero gracias a las notificaciones 3684 02:39:58,290 --> 02:40:00,889 lo que podemos hacer es que sea el propio sensor 3685 02:40:00,889 --> 02:40:03,149 el que notifique al cliente 3686 02:40:03,149 --> 02:40:04,389 que ha cambiado la temperatura 3687 02:40:04,389 --> 02:40:06,690 sin que el cliente se lo solicite 3688 02:40:06,690 --> 02:40:08,629 eso es una notificación 3689 02:40:08,629 --> 02:40:10,649 como os digo, y hay otro tipo de 3690 02:40:10,649 --> 02:40:12,969 notificaciones que se llaman indicaciones 3691 02:40:12,969 --> 02:40:14,649 ¿y en qué se diferencian 3692 02:40:14,649 --> 02:40:15,569 de las notificaciones? 3693 02:40:15,930 --> 02:40:18,329 en el que el cliente confirma 3694 02:40:18,329 --> 02:40:19,690 que ha recibido esa notificación 3695 02:40:19,690 --> 02:40:21,870 simplemente esa es la diferencia 3696 02:40:21,870 --> 02:40:24,069 las indicaciones son notificaciones 3697 02:40:24,069 --> 02:40:26,270 pero en las que el cliente confirma 3698 02:40:26,270 --> 02:40:27,950 que ha recibido la información 3699 02:40:27,950 --> 02:40:29,770 entonces bueno, aquí 3700 02:40:29,770 --> 02:40:31,850 en la presentación tenéis 3701 02:40:31,850 --> 02:40:33,190 ejemplos de notificaciones 3702 02:40:33,190 --> 02:40:35,750 pero lo más interesante que tiene esto para mí 3703 02:40:35,750 --> 02:40:38,030 es que tú te puedes crear aplicaciones 3704 02:40:38,030 --> 02:40:39,110 en tu teléfono móvil 3705 02:40:39,110 --> 02:40:41,049 que utilicen BLE 3706 02:40:41,049 --> 02:40:44,049 y entonces te vas a poder conectar 3707 02:40:44,049 --> 02:40:45,569 o sea, tú puedes crear una app 3708 02:40:45,569 --> 02:40:47,430 y esa app 3709 02:40:47,430 --> 02:40:49,729 te va a permitir conectarte a los sensores 3710 02:40:49,729 --> 02:40:51,750 que tú quieras, entonces un problema 3711 02:40:51,750 --> 02:40:53,610 grave que tenemos para crear aplicaciones 3712 02:40:53,610 --> 02:40:55,430 es que no es fácil, podemos utilizar 3713 02:40:55,430 --> 02:40:57,350 frameworks que facilitan un poco las cosas 3714 02:40:57,350 --> 02:40:58,909 podemos hacerlo en Java 3715 02:40:58,909 --> 02:41:01,670 pero lo bueno que tiene es que lo podemos 3716 02:41:01,670 --> 02:41:03,010 hacer incluso en App Inventor 3717 02:41:03,010 --> 02:41:04,049 que esto está 3718 02:41:04,049 --> 02:41:07,409 disponible para cualquiera 3719 02:41:07,409 --> 02:41:09,549 entonces os quería enseñar aquí 3720 02:41:09,549 --> 02:41:11,430 un pequeño ejemplo que he preparado 3721 02:41:11,430 --> 02:41:13,129 que lo tenéis aquí todo en la presentación 3722 02:41:13,129 --> 02:41:15,049 entonces fijaos 3723 02:41:15,049 --> 02:41:17,290 ahora os lo enseño, lo tengo ya cargado en 3724 02:41:17,290 --> 02:41:18,610 App Inventor para que lo veáis 3725 02:41:18,610 --> 02:41:21,370 pero para aterrizar todo esto que os he estado 3726 02:41:21,370 --> 02:41:23,409 contando, lo que yo tengo 3727 02:41:23,409 --> 02:41:23,709 aquí 3728 02:41:23,709 --> 02:41:26,809 lo que tengo aquí 3729 02:41:26,809 --> 02:41:29,629 es un identificador 3730 02:41:29,629 --> 02:41:31,290 de servicio y un 3731 02:41:31,290 --> 02:41:32,930 identificador de características 3732 02:41:32,930 --> 02:41:35,370 esos identificadores los he 3733 02:41:35,370 --> 02:41:37,270 generado con el generador de 3734 02:41:37,270 --> 02:41:39,430 UIDs que os he enseñado antes, ¿vale? 3735 02:41:39,770 --> 02:41:41,229 Y luego he creado un botón 3736 02:41:41,229 --> 02:41:43,409 en... Bueno, la aplicación es esta. 3737 02:41:43,510 --> 02:41:44,909 ¿Veis que tiene un botón para escanear? 3738 02:41:46,350 --> 02:41:47,510 ¿Vale? Otro botón 3739 02:41:47,510 --> 02:41:48,690 para parar el escaneo. 3740 02:41:49,549 --> 02:41:51,530 Y luego eliges el dispositivo que tú quieras 3741 02:41:51,530 --> 02:41:53,170 y te conectas a él o te 3742 02:41:53,170 --> 02:41:55,469 desconectas de él, ¿vale? Entonces, ¿eso cómo se hace? 3743 02:41:55,989 --> 02:41:57,250 Pues fijaos. Es este 3744 02:41:57,250 --> 02:41:59,489 programilla que he hecho aquí. Tengo un botón 3745 02:41:59,489 --> 02:42:00,790 que es el botón de escanear 3746 02:42:00,790 --> 02:42:02,590 que lo que hace es que llama 3747 02:42:02,590 --> 02:42:05,190 al objeto Bluetooth LE 3748 02:42:05,190 --> 02:42:08,190 inicia el escaneo, otro que es para el escaneo 3749 02:42:08,190 --> 02:42:11,030 otro que es cuando encuentra un dispositivo 3750 02:42:11,030 --> 02:42:14,250 lo añade a la lista, es decir, lo voy aquí a ver 3751 02:42:14,250 --> 02:42:17,149 en esta lista, ¿vale? otra vez que cuando le doy 3752 02:42:17,149 --> 02:42:20,049 al botón conectar, se conecta con ese dispositivo 3753 02:42:20,049 --> 02:42:23,110 y claro, si yo me conecto con ese dispositivo que puede ser 3754 02:42:23,110 --> 02:42:26,329 un SP32, por ejemplo, ya podría intercambiar 3755 02:42:26,329 --> 02:42:29,190 información entre mi teléfono móvil con una 3756 02:42:29,190 --> 02:42:31,829 aplicación que yo me crease, ¿vale? imaginaos que esto es 3757 02:42:31,829 --> 02:42:34,729 pues por ejemplo, un gráfico de vuestra casa 3758 02:42:34,729 --> 02:42:37,430 y que queréis leer aquí las temperaturas de vuestra casa 3759 02:42:37,430 --> 02:42:39,389 o que esto es un mando para controlar 3760 02:42:39,389 --> 02:42:41,010 una grúa, lo que vosotros queráis 3761 02:42:41,010 --> 02:42:42,870 te puedes quedar en la aplicación que tú quieras aquí 3762 02:42:42,870 --> 02:42:45,350 y por Low Energy enviar 3763 02:42:45,350 --> 02:42:46,250 esa información 3764 02:42:46,250 --> 02:42:49,389 entonces, ¿cómo funciona 3765 02:42:49,389 --> 02:42:51,489 todo esto? pues bueno, lo tengo aquí abierto 3766 02:42:51,489 --> 02:42:52,569 en App Inventor 3767 02:42:52,569 --> 02:42:55,409 a ver si lo tengo por aquí 3768 02:42:55,409 --> 02:42:57,809 esto es el generador 3769 02:42:57,809 --> 02:43:00,850 es que tengo 3770 02:43:00,850 --> 02:43:03,290 una cosa ahí arriba y no puedo ver 3771 02:43:03,290 --> 02:43:04,809 mmm 3772 02:43:04,809 --> 02:43:07,209 no sé si lo tengo ahí 3773 02:43:07,209 --> 02:43:08,049 o lo tengo en Chrome 3774 02:43:08,049 --> 02:43:10,790 a ver dónde lo he abierto 3775 02:43:10,790 --> 02:43:16,069 vale, voy a abrir una 3776 02:43:16,069 --> 02:43:18,590 página de App Inventor 3777 02:43:18,590 --> 02:43:23,069 App Inventor 3778 02:43:26,069 --> 02:43:41,049 me apredito 3779 02:43:41,049 --> 02:43:58,620 veis, si tengo ya aquí una 3780 02:43:58,620 --> 02:44:00,680 una aplicación creada 3781 02:44:00,680 --> 02:44:07,290 es esa que os estaba enseñando 3782 02:44:07,290 --> 02:44:07,870 ¿vale? 3783 02:44:07,870 --> 02:44:30,709 Y lo más interesante que tiene es esto de aquí. Veis que tiene un módulo que es el Bluetooth Low Energy. Ese módulo no viene por defecto en App Inventor. Lo tienes que añadir como una extensión. Tienes que ir aquí a importar extensión y ahí en esa extensión tienes que importarla. ¿Cómo la importas? Pues os lo he dejado ahí puesto en la presentación. 3784 02:44:30,709 --> 02:44:33,809 tienes que 3785 02:44:33,809 --> 02:44:36,350 usar esta dirección para poder 3786 02:44:36,350 --> 02:44:38,409 importarla, ¿vale? y el código fuente está ahí 3787 02:44:38,409 --> 02:44:39,110 si lo queréis ver 3788 02:44:39,110 --> 02:44:42,829 bueno, pues una vez que la tienes importada 3789 02:44:42,829 --> 02:44:44,149 como la tengo yo 3790 02:44:44,149 --> 02:44:45,409 la he añadido aquí 3791 02:44:45,409 --> 02:44:47,969 y eso quiere decir que ya puedo utilizar 3792 02:44:47,969 --> 02:44:50,450 el modem bluetooth de mi teléfono 3793 02:44:50,450 --> 02:44:52,409 móvil en esta aplicación, ¿vale? entonces yo he 3794 02:44:52,409 --> 02:44:54,590 creado aquí una cosa sencilla como os estaba enseñando 3795 02:44:54,590 --> 02:44:56,350 y ahora si voy aquí a ver 3796 02:44:56,350 --> 02:44:56,969 los bloques 3797 02:44:56,969 --> 02:44:59,530 pues veis que tengo aquí 3798 02:44:59,530 --> 02:45:02,329 los bloques que os he enseñado a vosotros 3799 02:45:02,329 --> 02:45:04,110 que tenía el bloque del servicio 3800 02:45:04,110 --> 02:45:06,350 pero en este caso he añadido una segunda 3801 02:45:06,350 --> 02:45:08,829 característica, tengo la primera característica 3802 02:45:08,829 --> 02:45:10,250 ¿vale? y otra 3803 02:45:10,250 --> 02:45:12,450 segunda característica, ¿por qué he hecho 3804 02:45:12,450 --> 02:45:14,350 eso? porque en este ejemplo 3805 02:45:14,350 --> 02:45:15,809 lo que hacemos 3806 02:45:15,809 --> 02:45:18,510 es que utilizamos esas características 3807 02:45:18,510 --> 02:45:20,709 como se ve aquí a la derecha 3808 02:45:20,709 --> 02:45:22,229 para encender 3809 02:45:22,229 --> 02:45:23,829 y apagar un LED ¿vale? 3810 02:45:24,270 --> 02:45:26,370 si tú me mandas desde el teléfono móvil 3811 02:45:26,370 --> 02:45:27,909 el valor LEDON 3812 02:45:27,909 --> 02:45:29,950 yo lo voy a recibir aquí 3813 02:45:29,950 --> 02:45:34,030 y el SP32 va a encender el LED 3814 02:45:34,030 --> 02:45:37,170 y sin embargo si tú pulsas 3815 02:45:37,170 --> 02:45:40,290 el botón apagar LED 3816 02:45:40,290 --> 02:45:43,370 me va a mandar a esta característica 3817 02:45:43,370 --> 02:45:45,690 el valor LED OFF 3818 02:45:45,690 --> 02:45:49,049 y entonces el LED del SP32 se va a apagar 3819 02:45:49,049 --> 02:45:51,909 eso respecto a la característica 2 3820 02:45:51,909 --> 02:45:54,569 y veis que la característica 1 3821 02:45:54,569 --> 02:45:56,209 es para poder leer botones 3822 02:45:56,209 --> 02:45:57,370 es justo lo contrario 3823 02:45:57,370 --> 02:46:16,489 Y esto funciona por notificaciones, ¿vale? Si yo pulso un botón en el SP32, en mi aplicación del teléfono móvil voy a ver inmediatamente que se ha pulsado ese botón. ¿Por qué? Porque estoy usando el sistema de notificaciones. Y aquí, sin embargo, estoy usando el sistema normal, ¿vale? El de escribir y leer. 3824 02:46:16,489 --> 02:46:21,719 vale 3825 02:46:21,719 --> 02:46:24,280 pues bueno, yo creo que 3826 02:46:24,280 --> 02:46:25,780 lo vamos a tener que dejar por aquí 3827 02:46:25,780 --> 02:46:28,159 sé que es mucha 3828 02:46:28,159 --> 02:46:29,920 información y mucho más que hay 3829 02:46:29,920 --> 02:46:31,780 esto es un mundo inacabable 3830 02:46:31,780 --> 02:46:34,239 pero no quiero 3831 02:46:34,239 --> 02:46:35,940 que dejaros con la idea esa 3832 02:46:35,940 --> 02:46:37,979 de que esto es imposible, al revés 3833 02:46:37,979 --> 02:46:39,959 tenéis aquí como veis un montón 3834 02:46:39,959 --> 02:46:41,659 de información que está 3835 02:46:41,659 --> 02:46:43,780 todo aquí, no oculto nada 3836 02:46:43,780 --> 02:46:46,020 está todo aquí para poder hacer este ejemplo 3837 02:46:46,020 --> 02:46:47,940 por ejemplo que os estaba enseñando 3838 02:46:47,940 --> 02:46:49,920 de los botones ¿vale? está todo aquí 3839 02:46:49,920 --> 02:46:51,639 las soluciones de los ejercicios y todo 3840 02:46:51,639 --> 02:46:53,780 entonces la idea 3841 02:46:53,780 --> 02:46:55,959 es que 3842 02:46:55,959 --> 02:46:57,959 vosotros veáis 3843 02:46:57,959 --> 02:47:00,139 todas las comunicaciones que hemos usado 3844 02:47:00,139 --> 02:47:01,879 en este curso ¿vale? hemos usado un montón de 3845 02:47:01,879 --> 02:47:03,920 comunicaciones y veáis que unas 3846 02:47:03,920 --> 02:47:05,899 tienen puntos fuertes y 3847 02:47:05,899 --> 02:47:07,319 puntos débiles y que hay veces 3848 02:47:07,319 --> 02:47:09,180 que no tenemos más remedio 3849 02:47:09,180 --> 02:47:12,040 que combinar varias de esas comunicaciones 3850 02:47:12,040 --> 02:47:14,079 ¿qué se me ha quedado en el tintero? 3851 02:47:14,299 --> 02:47:15,860 pues principalmente 3852 02:47:15,860 --> 02:47:20,280 se me ha quedado en el tintero la parte de NB-IoT, ¿vale? Os he subido también la presentación 3853 02:47:20,280 --> 02:47:23,280 y nada, voy a dar unas nociones 3854 02:47:23,280 --> 02:47:27,760 para que sepáis un poco lo que vais a encontrar en esa presentación, ¿vale? 3855 02:47:28,059 --> 02:47:31,579 El NB-IoT ya es un protocolo celular, 3856 02:47:32,020 --> 02:47:35,739 es decir, es un protocolo ya que no usa bandas ISM, usa bandas 3857 02:47:35,739 --> 02:47:39,420 con licencia. Entonces, para utilizarlo, yo necesito una SIM, 3858 02:47:39,420 --> 02:47:43,360 que era el otro ejemplo que tenía aquí preparado, pero que no me va a dar tiempo 3859 02:47:43,360 --> 02:47:49,540 a contar. Entonces, tú necesitas una SIM y luego necesitas un modem celular, que es 3860 02:47:49,540 --> 02:47:54,600 este que estoy señalando ahora con el dedo en la web, ¿vale? Este curso yo tenía preparado 3861 02:47:54,600 --> 02:47:59,920 hacerlo con la SIMGY91, que es un módulo de Nordic bastante complicado de utilizar 3862 02:47:59,920 --> 02:48:06,739 y un módulo más asequible, que es el SIM7080, ¿vale? Entonces, me voy directamente a este 3863 02:48:06,739 --> 02:48:12,719 SIM7080 contándoos que tenéis que tener en cuenta que estos dispositivos, estos modems 3864 02:48:12,719 --> 02:48:15,379 celulares, tienen una SIM como se estaba diciendo 3865 02:48:15,379 --> 02:48:18,639 y que lo primero que tienen que hacer es cuando tú 3866 02:48:18,639 --> 02:48:20,959 metes la SIM y arrancas el modem 3867 02:48:20,959 --> 02:48:25,000 lo que hace el modem es conectarse al router de tu proveedor 3868 02:48:25,000 --> 02:48:27,379 ¿vale? de Orange o de quien sea 3869 02:48:27,379 --> 02:48:30,819 entonces ese router es lo que se llama el APN 3870 02:48:30,819 --> 02:48:33,719 que seguramente recordéis que alguna vez habéis tenido 3871 02:48:33,719 --> 02:48:36,459 que configurarlo en vuestro teléfono móvil, en los teléfonos móviles 3872 02:48:36,459 --> 02:48:39,659 más antiguos para poder tener datos había que 3873 02:48:39,659 --> 02:48:42,540 configurar el APN, en los más nuevos ya se configura 3874 02:48:42,540 --> 02:48:43,959 automáticamente, ¿vale? 3875 02:48:44,399 --> 02:48:46,459 Entonces, una vez que ya se ha configurado 3876 02:48:46,459 --> 02:48:48,180 ese router, ese router lo que hace 3877 02:48:48,180 --> 02:48:50,459 es de intercambio entre 3878 02:48:50,459 --> 02:48:52,540 la red celular y la red 3879 02:48:52,540 --> 02:48:54,360 internet, ¿vale? 3880 02:48:54,860 --> 02:48:56,459 Entonces, en NB-IoT podemos 3881 02:48:56,459 --> 02:48:58,100 usar dos tipos de protocolo. 3882 02:48:58,420 --> 02:49:00,459 El protocolo UDP, que os sonará, que es 3883 02:49:00,459 --> 02:49:02,120 un protocolo del stack TCP-IP, 3884 02:49:02,540 --> 02:49:04,000 o sea, que usa direcciones IP, 3885 02:49:04,840 --> 02:49:06,040 y otro que es el protocolo 3886 02:49:06,040 --> 02:49:07,780 no IP, ¿vale? 3887 02:49:08,139 --> 02:49:09,739 ¿Por qué usaríamos protocolos 3888 02:49:09,739 --> 02:49:11,420 no IP? Porque son menos verbosos. 3889 02:49:11,420 --> 02:49:29,340 Cuando queremos ahorrar en datos y en energía, utilizamos protocolos no IP y así nos ahorramos los 60 bytes del encabezado UDP. Daos cuenta que en Internet de las Cosas los datos que nosotros transmitimos, a veces es un byte, 6 bytes. Pues para transmitir 6 bytes, tener que usar un encabezado de 60 bytes parece una locura. 3890 02:49:29,340 --> 02:49:31,040 ¿vale? pero esto tiene un problema 3891 02:49:31,040 --> 02:49:33,700 si yo uso un APN 3892 02:49:33,700 --> 02:49:35,479 no IP ¿vale? si uso 3893 02:49:35,479 --> 02:49:37,420 un APN de estos que no es un APN UDP 3894 02:49:37,420 --> 02:49:39,399 sino que es un APN no IP 3895 02:49:39,399 --> 02:49:41,860 los datos no me van a llegar a mi directamente 3896 02:49:41,860 --> 02:49:43,659 voy a tener que ir yo a recogerlos 3897 02:49:43,659 --> 02:49:45,500 al proveedor ¿vale? 3898 02:49:46,000 --> 02:49:47,120 voy a tener que ir a Orange 3899 02:49:47,120 --> 02:49:49,579 y a través de una API voy a tener que recoger yo 3900 02:49:49,579 --> 02:49:51,639 esos datos ¿por qué? porque esos datos 3901 02:49:51,639 --> 02:49:53,479 no están vinculados a una dirección IP 3902 02:49:53,479 --> 02:49:55,639 están vinculados a un nombre 3903 02:49:55,639 --> 02:49:57,680 de dispositivo entonces yo tendré que ir 3904 02:49:57,680 --> 02:49:59,459 a ese proveedor o a través de esa API 3905 02:49:59,459 --> 02:50:01,940 y descargar los datos, sin embargo 3906 02:50:01,940 --> 02:50:03,739 si uso CoAP, que es un protocolo 3907 02:50:03,739 --> 02:50:05,620 sobre UDP, yo directamente 3908 02:50:05,620 --> 02:50:07,520 desde mi sensor, desde mi mota 3909 02:50:07,520 --> 02:50:09,680 podré mandar los datos, por ejemplo, a 3910 02:50:09,680 --> 02:50:11,379 Thingsboard, que es un servicio en la nube 3911 02:50:11,379 --> 02:50:13,659 ¿vale? sin embargo, con los servicios no IP 3912 02:50:13,659 --> 02:50:14,719 no podría 3913 02:50:14,719 --> 02:50:17,940 y simplemente, aquí hay muchísima 3914 02:50:17,940 --> 02:50:20,040 información, ¿vale? una importante 3915 02:50:20,040 --> 02:50:21,620 es cómo conseguir las tarjetas 3916 02:50:21,620 --> 02:50:23,819 yo, por ejemplo, las compro en OneCE 3917 02:50:23,819 --> 02:50:25,139 ¿vale? que es esta empresa 3918 02:50:25,139 --> 02:50:27,280 que tengo por aquí 3919 02:50:27,280 --> 02:50:30,719 una, es esta 3920 02:50:30,719 --> 02:50:32,680 One C, que me parece que 3921 02:50:32,680 --> 02:50:34,260 cuesta la tarjeta 3922 02:50:34,260 --> 02:50:36,659 10 euros por 10 años 3923 02:50:36,659 --> 02:50:38,600 ¿vale? entonces 3924 02:50:38,600 --> 02:50:41,079 el módulo que yo estoy usando 3925 02:50:41,079 --> 02:50:42,459 es este módulo 3926 02:50:42,459 --> 02:50:43,639 el SIM7080 3927 02:50:43,639 --> 02:50:46,959 y este es muy fácil de utilizar porque se usa por comandos 3928 02:50:46,959 --> 02:50:48,620 AT, así es que tú 3929 02:50:48,620 --> 02:50:50,420 directamente te conectas a él 3930 02:50:50,420 --> 02:50:52,739 ¿vale? voy a conectar un momento 3931 02:50:52,739 --> 02:50:54,360 para que al menos lo veáis funcionando 3932 02:50:54,360 --> 02:50:56,680 me conecto 3933 02:50:56,680 --> 02:51:04,219 y al conectarlo 3934 02:51:04,219 --> 02:51:20,760 a ver, ¿dónde está la mesa 3935 02:51:20,760 --> 02:51:22,079 de dispositivos? 3936 02:51:24,370 --> 02:51:26,290 ¿Este servicio lo ofrecen todos los 3937 02:51:26,290 --> 02:51:28,049 operadores o solo algunos? 3938 02:51:28,549 --> 02:51:30,049 No, solo algunos, ¿vale? 3939 02:51:30,229 --> 02:51:32,409 Todos ofrecen el co-app, eso te lo ofrecen 3940 02:51:32,409 --> 02:51:34,450 todos. El Noipet solo te lo 3941 02:51:34,450 --> 02:51:36,129 ofrece algunos operadores, ¿vale? 3942 02:51:37,049 --> 02:51:38,250 Entonces, aquí 3943 02:51:38,250 --> 02:51:40,309 ahora lo acabo de conectar y ahora 3944 02:51:40,309 --> 02:51:42,590 lo tengo que arrancar, ¿vale? Que para arrancarlo 3945 02:51:42,590 --> 02:51:44,690 tiene un pin que lo tienes que poner en alto 3946 02:51:44,690 --> 02:51:47,989 luego en bajo, un segundo 3947 02:51:47,989 --> 02:51:50,370 y luego 3948 02:51:50,370 --> 02:51:52,049 desconectarlo, ¿vale? 3949 02:51:52,530 --> 02:51:54,229 Como veis, tienen sus cosillas, estos 3950 02:51:54,229 --> 02:51:56,450 modems, ¿vale? Y una vez que he hecho 3951 02:51:56,450 --> 02:51:58,430 eso, ya 3952 02:51:58,430 --> 02:52:00,510 me está generando aquí los tres puertos, 3953 02:52:00,750 --> 02:52:02,530 ¿vale? Y uno de esos 3954 02:52:02,530 --> 02:52:04,489 puertos, ¿veis que pone comandos AT? 3955 02:52:05,010 --> 02:52:06,649 Pues ese es el puerto que yo tendría que usar 3956 02:52:06,649 --> 02:52:08,690 para comunicarme con este dispositivo. 3957 02:52:08,770 --> 02:52:10,329 En este caso es el puerto 25. 3958 02:52:11,129 --> 02:52:12,829 Tengo yo aquí abierto el hiperterminal 3959 02:52:12,829 --> 02:52:14,250 que he estado probando antes, ¿vale? 3960 02:52:14,750 --> 02:52:16,510 Entonces le digo aquí que me quiero conectar 3961 02:52:16,510 --> 02:52:17,510 al puerto 25 3962 02:52:17,510 --> 02:52:19,729 clear, open 3963 02:52:19,729 --> 02:52:22,549 ¿vale? y en principio ya estoy 3964 02:52:22,549 --> 02:52:24,389 conectado, entonces si yo le mando un comando 3965 02:52:24,389 --> 02:52:26,409 por aquí, por ejemplo le llamo, le mando 3966 02:52:26,409 --> 02:52:30,780 AT, me contesta ok 3967 02:52:30,780 --> 02:52:32,620 ¿vale? y luego ya simplemente 3968 02:52:32,620 --> 02:52:34,780 cuestión de ir mandando comandos 3969 02:52:34,780 --> 02:52:36,659 según lo que quieras hacer, pues por ejemplo 3970 02:52:36,659 --> 02:52:38,100 yo quiero saber que dirección IP 3971 02:52:38,100 --> 02:52:40,200 me han asignado 3972 02:52:40,200 --> 02:52:42,440 pues sería este comando de aquí 3973 02:52:42,440 --> 02:52:49,219 lo pego aquí por ejemplo 3974 02:52:49,219 --> 02:52:50,739 lo envío 3975 02:52:50,739 --> 02:52:53,399 ¿vale? y de momento no tengo dirección IP 3976 02:52:53,399 --> 02:52:57,459 porque voy a ver si está conectado 3977 02:52:57,459 --> 02:53:06,090 a la red. Me está dando error, algo le está pasando. 3978 02:53:07,069 --> 02:53:11,110 Voy a ver si tengo ya operador. Esta tarjeta aquí en España funciona con 3979 02:53:11,110 --> 02:53:16,809 Orange. No, no tengo operador. Si no me tenía que salir ahí la información 3980 02:53:16,809 --> 02:53:20,569 del operador. Ah, claro, no tengo operador porque está la tarjeta 3981 02:53:20,569 --> 02:53:23,790 sin aquí fuera. Acabo de ver que ha salido la tarjeta sin. 3982 02:53:25,209 --> 02:53:27,030 Sería cuestión de meter la tarjeta sin 3983 02:53:27,030 --> 02:53:30,989 y veríais que con estos 3984 02:53:30,989 --> 02:53:32,809 comandos AT, pues directamente 3985 02:53:32,809 --> 02:53:34,649 ya puedes hacer comunicaciones co-app 3986 02:53:34,649 --> 02:53:36,870 ¿vale? o comunicaciones 3987 02:53:36,870 --> 02:53:38,090 directamente por UDP 3988 02:53:38,090 --> 02:53:40,930 ¿y esto qué es lo interesante? pues lo interesante es que 3989 02:53:40,930 --> 02:53:42,569 tú puedes ir a la página de 3990 02:53:42,569 --> 02:53:45,069 WANS, que no la tengo 3991 02:53:45,069 --> 02:53:46,889 por aquí abierta, me parece, o sí 3992 02:53:46,889 --> 02:53:48,870 sí 3993 02:53:48,870 --> 02:53:50,930 ¿vale? y yo te la hago un portal en el que 3994 02:53:50,930 --> 02:53:52,870 veis, yo tengo dos tarjetas, una 3995 02:53:52,870 --> 02:53:54,649 está conectada y otra desconectada 3996 02:53:54,649 --> 02:53:56,770 y luego en cada una de estas tarjetas yo 3997 02:53:56,770 --> 02:53:59,790 podría entrar, bueno ya me hace desacreditado 3998 02:53:59,790 --> 02:54:03,129 pero podría entrar y ver la información que estoy intercambiando 3999 02:54:03,129 --> 02:54:06,270 con esa tarjeta, pues así funciona esto de NB-IoT 4000 02:54:06,270 --> 02:54:08,809 y entonces claro, quedó pendiente la parte de 4001 02:54:08,809 --> 02:54:12,129 comunicaciones por satélite, pero es que la parte de comunicaciones por satélite 4002 02:54:12,129 --> 02:54:15,069 ahora mismo es así, es direct to cell, directamente a celda 4003 02:54:15,069 --> 02:54:17,969 es decir, funciona con NB-IoT, lo que pasa es que 4004 02:54:17,969 --> 02:54:20,549 en vez de conectarnos con estaciones base en tierra 4005 02:54:20,549 --> 02:54:23,950 nos conectamos con satélite, así es que hay operadores 4006 02:54:23,950 --> 02:54:25,590 WANCE no es uno de ellos 4007 02:54:25,590 --> 02:54:28,090 pero hay otros operadores que ya te permiten utilizar 4008 02:54:28,090 --> 02:54:30,030 directamente por comunicaciones por satélite 4009 02:54:30,030 --> 02:54:32,389 y para ti es completamente transparente 4010 02:54:32,389 --> 02:54:33,690 o sea, tú no ves la diferencia 4011 02:54:33,690 --> 02:54:35,469 entre estar usando NB-IoT 4012 02:54:35,469 --> 02:54:38,209 por estaciones base terrestre o por estaciones 4013 02:54:38,209 --> 02:54:39,229 por satélite 4014 02:54:39,229 --> 02:54:41,350 bueno, lo vamos a dejar aquí 4015 02:54:41,350 --> 02:54:44,030 siento que no me haya dado tiempo 4016 02:54:44,030 --> 02:54:45,469 a contar más, pero es que es igual 4017 02:54:45,469 --> 02:54:46,809 si no hubiera dado tiempo a contar más 4018 02:54:46,809 --> 02:54:48,709 me hubieran quedado más cosas por contar 4019 02:54:48,709 --> 02:54:50,610 entonces nada 4020 02:54:50,610 --> 02:54:53,270 me despido de vosotros, ya sabéis que estoy 4021 02:54:53,270 --> 02:54:55,190 a vuestra disposición para dudas cuando vosotros 4022 02:54:55,190 --> 02:54:57,209 queráis, acordaremos 4023 02:54:57,209 --> 02:54:59,510 esa sesión para soldar las placas 4024 02:54:59,510 --> 02:55:01,270 y nada más, creo que 4025 02:55:01,270 --> 02:55:02,250 no se me olvida nada, Jesús 4026 02:55:02,250 --> 02:55:06,709 Al final, la sesión para 4027 02:55:06,709 --> 02:55:07,989 lo de soldar las placas 4028 02:55:07,989 --> 02:55:10,530 me gustaría saber un poco 4029 02:55:10,530 --> 02:55:12,450 porque hablamos la semana que viene, no 4030 02:55:12,450 --> 02:55:13,530 la siguiente, ¿verdad? 4031 02:55:15,409 --> 02:55:17,069 A mí me da igual, cuando la pongáis 4032 02:55:17,069 --> 02:55:18,569 Sí, sí, es mejor 4033 02:55:18,569 --> 02:55:19,930 que tenemos evaluaciones 4034 02:55:19,930 --> 02:55:22,870 Lo digo por consultarlo 4035 02:55:22,870 --> 02:55:24,530 Vale, pues yo lo consulto 4036 02:55:24,530 --> 02:55:26,370 y os pongo un correo 4037 02:55:26,370 --> 02:55:27,670 para la semana del 4038 02:55:27,670 --> 02:55:29,750 las siguientes 4039 02:55:29,750 --> 02:55:32,409 del 10 al 14, no, para la semana del 4040 02:55:32,409 --> 02:55:33,409 17 al 21 4041 02:55:33,409 --> 02:55:36,010 si, ok 4042 02:55:36,010 --> 02:55:38,850 lo consulto y os pongo un correo 4043 02:55:38,850 --> 02:55:40,950 ¿y dónde sería? ¿en el ISMIE o dónde? 4044 02:55:41,909 --> 02:55:42,829 yo lo voy a consultar 4045 02:55:42,829 --> 02:55:44,250 aquí en el ISMIE, a ver si nos dejan 4046 02:55:44,250 --> 02:55:45,770 la misma sala donde estuvimos 4047 02:55:45,770 --> 02:55:47,030 ¿un martes o un jueves? 4048 02:55:47,569 --> 02:55:48,129 exacto 4049 02:55:48,129 --> 02:55:51,190 preferiblemente martes 4050 02:55:51,190 --> 02:55:53,829 para no trastocar un poco los días 4051 02:55:53,829 --> 02:55:59,549 no olvidarlo de la encuesta 4052 02:55:59,549 --> 02:56:00,069 por favor 4053 02:56:00,069 --> 02:56:01,250 no te preocupes 4054 02:56:01,250 --> 02:56:04,149 muchas gracias a todos 4055 02:56:04,149 --> 02:56:08,829 muchas gracias 4056 02:56:08,829 --> 02:56:10,950 a vosotros 4057 02:56:10,950 --> 02:56:13,149 chao, nos vemos