Archivo de la categoría: ESP8266

Dispositivos Hardware IoT

En este curso vamos a usar Arduino u otras placas compatible como HW de sensorización y actuación en IoT, pero existen otros microcontroladores o PLCs que haría la misma funcionalidad.

Dispositivos Hardware, son los dispositivos que van a medir y los que van a interactuar con el exterior. El elemento HW programable capaz de interactuar con estos dispositivos es el microcontrolador o el microprocesador.

Hay tres clases de dispositivos IoT:

  • Los dispositivos más pequeños son los controladores embedded de 8 bits System-On-Chip (SOC). Un buen ejemplo de este Open Source hardware es Arduino. Por ejemplo: Arduino Uno platform, este tipo de HW no suelen llevar sistema operativo (SO).
  • El siguiente nivel son los dispositivos con una arquitectura de 32 bits como los chips de Atheros y ARM. Normalmente estos dispositivos se basan en plataformas de Linux embedded, cómo OpenWRT u otros sistemas operativos embedded (Muchas veces incluyen pequeños routers domésticos y derivados de estos). En algunos casos, no corren ningún SO. Por ejemplo: Arduino Zero o Arduino Yun.
  • Las plataformas IoT con más capacidad son los sistemas completos de 32 y 64 bits, también se les denomina Single-Board-Computer (SBC). Estos sistemas, como Raspberry Pi o BeagleBone, pueden correr varios SO como Linux o Android. En muchos casos, estos son Smartphone o algún tipo de dispositivo basado en tecnologías móviles. Estos dispositivos pueden comportarse como Gateways o puentes para dispositivos más pequeños. Por ejemplo: un wearable que se conecta vía Bluetooth a un Smartphone o a una Raspberry Pi, es típicamente un puente para conectarse a Internet.

Además a esta lista de dispositivos podemos añadir los Microcontroladores Industriales o PLCs, softPLCs o cualquier dispositivo que pueda conectar a internet y del que pueda obtener datos como un power meter como http://circutor.com/en/products/metering o un dispositivo con interfaz SNMP.

Otro tipo de HW IoT son los Gateway. Un Gateway IoT es un dispositivo físico o un programa de software que sirve como punto de conexión entre la nube y los controladores, sensores y dispositivos inteligentes. Todos los datos que se mueven a la nube, o viceversa, pasan por el gateway, que puede ser un dispositivo de hardware dedicado o un programa de software. Un gateway IoT también puede denominarse pasarela inteligente o nivel de control.

A estos dispositivos o nos nodos sensores se les lama también motes (short for remote) https://en.wikipedia.org/wiki/Sensor_node

Este es el primer elemento, es que está más cerca de las “cosas” es el HW que se encarga de medir e interactuar con las “cosas” y procesar esos datos. Este dispositivo puede tener conectado otros hardware como:

Programación de los dispositivos IoT

Un sistema operativo IoT es un sistema operativo diseñado para funcionar dentro de las restricciones propias de los dispositivos de Internet of Things, incluidas las restricciones de memoria, tamaño, potencia y capacidad de procesamiento. Los sistemas operativos de IO son un tipo de sistema operativo integrado, pero por definición están diseñados para permitir la transferencia de datos a través de Internet.

ARM Mbed es una plataforma y un sistema operativo para dispositivos conectados a Internet basado en microcontroladores ARM Cortex-M de 32 bits. Estos dispositivos también se conocen como dispositivos de Internet of Things. El proyecto es desarrollado en colaboración por Arm y sus socios tecnológicos.

RTOS sistemas operativos en Tiempo real para sistemas embebidos, generalmente basados en linux.

Buen resumen de lo necesario para saber sobre sistemas embebidos para IoT a nivel de HW http://so-unlam.com.ar/wiki/index.php/PUBLICO:Sistemas_embebidos_e_Internet_de_las_Cosas

Guia para elegir el mejor HW IoT: https://www.ibm.com/developerworks/library/iot-lp101-best-hardware-devices-iot-project/index.html

Hardware IoT

El HW libre por excelencia es Arduino como microcontrolador y Raspberry Pi como microprocesador, con menor potencia física pero mayor potencia de cálculo.

Dentro del HW libre no solo debemos quedarnos con Arduino, sino que existen otros dispositivos, incluso algunos son compatibles y se programan igual que Arduino:

Más HW IoT:

¿Conoces alguna más?

En el caso de HW libre, el siguiente paso es una personalización del HW mediante el diseño de HW como Eagle o Kicad

HW IoT Industrial

En el mundo industrial se está incorporando el IoT con la denominación IIoT (Industrial Internet of Things) ya sea con dispositivos basados en HW libre o los fabricantes de Autómatas están incorporando comunicaciones más abiertas a sus dispositivos.

PLC basado en Arduino: https://www.industrialshields.com/

Artículo de Industrial Shields sobre Arduino como aplicación de PLC: http://blog.industrialshields.com/es/iot-in-industry-improves-reliability-equipment/

PLCs basados en Arduino: https://industruino.com/

PLC basado en Arduino: http://www.winkhel.com/

Carcasa para Arduino y Raspberry Pi en la industria: Arduibox: http://www.hwhardsoft.de/english/webshop/raspibox/#cc-m-product-10145780397

SIMATIC IOT2020: gateway de Siemens basado en Arduino para futuras aplicaciones industriales: http://es.rs-online.com/web/p/kit-de-desarrollo-de-iot/1244037/ y aplicaciones https://www.rs-online.com/designspark/simatic-iot2020.

Simatic IoT 2040: https://w3.siemens.com/mcms/pc-based-automation/en/industrial-iot/Documents/simatic-ioc2040-flyer-en.pdf

Los otros PLCs SBC (Single Board Computer): http://www.infoplc.net/blogs-automatizacion/item/102505-plc-single-board-computer

OpenPLC Project: http://www.openplcproject.com/

Autómatas con MQTT: http://www.unitronics.com/ y modelo nistream https://unitronicsplc.com/unistream-series-unistream5/

ABB PM556, automata de ABB abierto: http://new.abb.com/drives/es/noticias-y-casos-de-exito/impulsa-el-internet-de-las-cosas-los-servicios-y-las-personas

Anuncios

Material Curso IoT

Para hacer las prácticas y simular un ecosistema de IoT disponemos de hardware barato y muy accesible para cualquiera para poder utilizar en una prueba de concepto.

El material es en préstamo y se firmará una hoja de entrega de material.

20x Arduino Starter Kit (https://www.arduino.cc/en/Main/ArduinoStarterKit) que contiene un Arduino Uno, una serie de sensores y actuadores y diversos elementos electrónicos necesarios para realizar las prácticas y proyectos. Componentes:

10x Kit XBee( http://www.digikey.es/product-detail/en/digi-international/XKB2-AT-WWG/602-1550-ND/5271212) para desarrollo de aplicaciones con XBee. Datasheet: https://media.digikey.com/pdf/Data%20Sheets/Digi%20International%20PDFs/XBee_Arduino_Compatible_Coding_Platform.pdf. Compuesto por:

  • Arduino Leonardo-compatible
  • XBee shield XBee 802.15.4 modules
  • XBee breadboard adapters
  • XBee USB adapter
  • One 2-axis joysticks
  • Six pushbuttons
  • Solderless breadboards
  • Breadboard power supplies
  • 18 LEDs
  • 10kΩ potentiometers
  • Package of 330Ω resistors
  • 9 V batteries and battery clips
  • Micro USB cable
  • Mini USB cable
  • Bundle – jumper wires

20x Kits Raspberry Pi compuestos por:

Kit Wemos D1 mini

Módulos de comunicación:

Otros módulos:

Arduino UNO, Nano y NodeMCU ESP8266 a buen precio

Una de las preguntas que me hacen con más frecuencia es donde comprar Arduinos a buen precio. Una de las opciones para comprar Arduinos es GearBest https://www.gearbest.com/

Aquí os dejo tres Arduinos que puedes usar en muchos proyectos y que en función del proyecto y sus necesidades doy pistas para optar por uno u otro.

Arduino UNO

Arduino UNO es el Arduino más popular y del que existe más documentación en Internet. Es el Arduino perfecto para iniciarse y al tener el factor de forma estándar de Arduino puedes ponerle alguno de los miles de shields disponibles en el mercado, aquí puedes ver algunos ejemplos https://www.gearbest.com/arduino-shields-_gear/

Un detalle de estos Arduinos es que es necesario instalarse el driver de conversor de puerto serial a USB. Este Arduino dispone de un chip CH340G como conversor serial a USB y por lo tanto deberemos usar el driver de este chip y que podemos encontrar su última versión en http://www.wch.cn/download/CH341SER_EXE.html. Enlaces de descarga:

En este enlace puedes comprarlo por alrededor de 4€ y con envío gratuito a España: https://www.gearbest.com/boards-shields/pp_228782.html?wid=1433363

Arduino Nano

Arduino Nano es el Arduino ideal para los proyectos donde es necesario un Arduino con el microcontrolador ATmega328P del Arduino UNO pero con un tamaño mucho más pequeño, menor consumo e incluso alimentar mediante batería.

Al igual que el Arduino UNO, este Arduino Nano dispone de un chip CH340G como conversor serial a USB y por lo tanto deberemos usar el driver de este chip y que podemos encontrar su última versión en http://www.wch.cn/download/CH341SER_EXE.html. Enlaces de descarga:

En este enlace puedes comprarlo por alrededor de 4€ y con envío gratuito a España: https://www.gearbest.com/boards-shields/pp_265453.html?wid=1433363

NodeMCU ESP8266

Si quieres empezar a trabajar con ESP8266 o tu proyecto con Arduino necesita de conexión wifi, el módulo más adecuado es el NodeMCU ESP8266 por su facilidad de uso y pequeño tamaño.

Se trata de la versión de hardware v1.0, debe tenerse en cuenta porque las versiones anteriores cambian bastante los pines y los drivers a instalar.

Comparación entre versiones:

Para usar el NodeMCU es necesario instalar el driver del chip adaptador de serial a USB. Esta placa dispone de un chip CP2102 como conversor serial a USB y por lo tanto deberemos usar el driver de este chip y que podemos encontrar su última versión en https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.

En este enlace puedes comprarlo por alrededor de 4€ y con envío gratuito a España: https://www.gearbest.com/transmitters-receivers-module/pp_366523.html?wid=1433363

Si quieres más información sobre el uso del ESP8266 y del nodeMCU puedes ver estos artículos del curso avanzado de Arduino:

También hablo del nodeMCU en estos dos vídeos del curso de ESP8266:

Novedades Arduino

Desde el año 2015 ha habido varios cambios en la organización de Arduino como empresa que es interesante conocer por las consecuencias que puede tener en el desarrollo de las placas Arduino y en el software.

Arduino LLC fue la compañía creada por Massimo Banzi, David Cuartielles, David Mellis, Tom Igoe and Gianluca Martino en 2009 y era la propietaria de la marca Arduino. Las placas Arduino eran fabricadas por una spinoff llamada Smart Projects Srl creada por Gianluca Martino. En noviembre de 2014 cambiaron el nombre de la empresa que manufactura las placas Arduino de Smart Projects Srl a Arduino Srl y registraron el dominio arduino.org, esto fue el inicio de la división que se produjo poco después.

A principios de 2015 se produjo una división dentro de Arduino y desde entonces han aparecido bastante cambios para los usuarios de Arduino, la primera es que ha aparecido una nueva marca llamada “Genuino” asociada a arduino.cc y una nueva web oficial de Arduino www.arduino.org.

El 1 de octubre de 2016 durante el World Maker Faire de New York, Massimo Banzi and Federico Musto anunciaron las empresas Arduino LLC (arduino.cc) y ArduinoSRL (arduino.org) han firmado un acuerdo, cerrando las disputas iniciadas a principio de 2015. Anunciaron que el recién creado “Arduino Holding” será el punto único para la distribución de los productos Arduino actuales y futuros y continuará sacando al mercado nuevas innovaciones. Además, anunciaron la futura formación de la “Fundación Arduino” sin ánimo de lucro, que será la responsable de mantener el IDE Arduino open source y continuará fomentando el movimiento open source, pero que no se ha hecho realidad.

En el verano de 2017 donde se comunicó que BCMI, la empresa fundada por  Massimo Banzi, David Cuartielles, David Mellis and Tom Igoe, co-fundadores de Arduino ha adquirido el 100% de Arduino AG, la corporación que tenía todas las marcas registradas de Arduino. En el Comunicado Massimo Banzi dice que de esta forma se renueva el compromiso con el HW y SW open source con un crecimiento sostenible de la empresa. Su visión es permitir a cualquier innovar con la electrónica durante mucho tiempo y democratizar el IoT para los individuos, educadores, profesionales y negocios.

Enlaces con las noticias por orden cronológico:

A partir de la Nueva era Arduino

Adquisión de Arduino AG (empresa que tenía la marca Arduino en propiedad): https://blog.arduino.cc/2017/07/28/a-new-era-for-arduino-begins-today/

Nuevas placas Arduino IoT MKR WAN 1300 y MKR GSM 1400 en la Maker Faire New York 2017: https://blog.arduino.cc/2017/09/25/introducing-the-arduino-mkr-wan-1300-and-mkr-gsm-1400/

Asociación entre Arduino y ARM: https://blog.arduino.cc/2017/10/05/arduino-announces-arm-partnership/

Beta Arduino IDE: https://blog.arduino.cc/2017/10/11/be-among-the-first-to-try-arduino-ide-1-9-beta/

Soporte placas linux desde Arduino Create: https://blog.arduino.cc/2017/11/03/linux-support-comes-to-arduino-create/. Esto permite programar placas linux como si se trataran de Arduinos y que múltiples programas Arduino puedan ejecutarse en una placa y comunicarse entre ellos. Y pueden programarse remotamente,

De momento solo para placas Intel como ntel® NUC, Dell Wyse®, Gigabyte™ GB-BXT y las placas UP2 http://www.up-board.org/upsquared/

Nueva Arduino Reference: https://blog.arduino.cc/2017/12/14/new-search-engine-arduino-reference/. Cambio de aspecto https://www.arduino.cc/reference/en/, más rápida y ahora se puede colaborar en la documentación a través de https://github.com/arduino/reference-en y con un reference en español https://github.com/arduino/reference-es

Usar Arduino para programar dispositivos IoT Linux: https://blog.arduino.cc/2018/03/13/you-can-now-use-arduino-to-program-linux-iot-devices/. Se amplían los dispositivos soportados por Arduino Create para el desarrollo de IoT. Desde https://create.arduino.cc/getting-started es posible gestionar y programar muchas de las placas más populares basadas en Linux, incluyendo Raspberry Pi y BeagleBone

Arduino Yun rev 2, completamente open source y resolviendo algunos problemas de seguridad de la versión 1: https://blog.arduino.cc/2018/03/29/arduino-yun-rev-2-is-here/

Placa: https://store.arduino.cc/arduino-yun-rev-2

Nuevas placas en Arduino Day 2018: https://blog.arduino.cc/2018/05/12/the-mkr-family-gets-bigger-with-two-new-iot-boards/

MKR Wifi 1010 https://store.arduino.cc/arduino-mkr-wifi-1010, es una evolución de la placa MKR Wifi 1000 con menor consumo, equipada con un ESP32 y in firmware Wifi open source.

MKR NB 1500 https://store.arduino.cc/arduino-mkr-nb-1500, con conectividad de bajo consumo NB-IoT (narrowband IoT) que trabaja sobre redes LTE que usen NB-IoT, para España Vodafone.

Arduino engineering kit: https://blog.arduino.cc/2018/05/12/arduino-goes-to-college-with-the-new-arduino-engineering-kit/

Placas presentadas en el Maker Faire Bay Area 2018: https://blog.arduino.cc/2018/05/17/say-hello-to-the-next-generation-of-arduino-boards/

MKR Vidor 4000 https://store.arduino.cc/arduino-vidor-4000, primer Arduino basado en un chip FPGA, con WiFi y crypto chip para conexiones seguras.  

Arduino UNO Wifi Rev2 https://store.arduino.cc/arduino-uno-wiFi-rev2 con un nuevo microcontrolador ATmega4809 https://www.microchip.com/wwwproducts/en/ATMEGA4809, un módulo WiFi  u-blox Nina W102 y IMU integrada.

En la novedades sobre Arduinos no oficiales se han añadido nuevas placas al soporte del IDE Arduino: https://github.com/arduino/arduino/wiki/unofficial-list-of-3rd-party-boards-support-urls

Aunque los reyes de los procesadores no oficiales soportados por Arduino son el ESP8266 y el ESP32:

Entender Arduino

Arduino no solo es una placa azul muy popular con la que hacer semáforos, encender leds o usado en las impresoras 3D. Arduino va mucho más allá y vamos a verlo en este capítulo.

Primer Arduino:

Ya hemos visto anteriormente qué es Arduino: https://aprendiendoarduino.wordpress.com/2018/04/02/que-es-arduino-7/

A modo de resumen los tres componentes de Arduino son:

Arduino = HW + SW + Comunidad

Arduino simplifica el trabajo con microcontroladores y ofrece las siguientes ventajas: barato, multiplataforma, entorno de programación sencillo, software libre y extensible mediante librerías en C++, hardware libre y extensible.

Al trabajar con Arduino, se manejan conceptos de diferentes tecnologías que a priori no tienen nada que ver entre ellos pero que los unifica: electronica digital y analogica, electricidad, programación, microcontroladores, tratamiento de señales, protocolos de comunicación, arquitectura de procesadores, mecánica, motores, diseño de placas electrónicas etc…

Diez razones para usar Arduino: http://www.modulo0tutoriales.com/10-razones-para-usar-arduino/

Mitos sobre Arduino que todo el mundo cree y no son verdad: https://www.baldengineer.com/5-arduino-myths.html

HW Arduino

El HW de Arduino es básicamente una placa con un microcontrolador. Un microcontrolador (abreviado µC, UC o MCU) es un circuito integrado programable, capaz de ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica. Un microcontrolador incluye en su interior las tres principales unidades funcionales de una computadora: unidad central de procesamiento, memoria y periféricos de entrada/salida.

Características de un Microcontrolador:

  • Velocidad del reloj u oscilador
  • Tamaño de palabra
  • Memoria: SRAM, Flash, EEPROM, ROM, etc..
  • I/O Digitales
  • Entradas Analógicas
  • Salidas analógicas (PWM)
  • DAC (Digital to Analog Converter)
  • ADC (Analog to Digital Converter)
  • Buses
  • UART
  • Otras comunicaciones.

El hardware de Arduino usa microcontroladores generalmente Atmel AVR. Los microcontroladores más usados en las plataformas Arduino son el Atmega168, Atmega328, Atmega1280, ATmega8 por su sencillez, pero se está ampliando a microcontroladores Atmel con arquitectura ARM como el Atmel SAMD21 o los ST STM32, y también Intel.

Arduino dispone de una amplia variedad de placas y shields para usar dependiendo de nuestras necesidades.

Placas Arduino: https://aprendiendoarduino.wordpress.com/2017/06/19/placas-arduino-2/

Un shield es una placa compatible que se puede colocar en la parte superior de los arduinos y permite extender las capacidades del arduino.

Shields Arduino: https://aprendiendoarduino.wordpress.com/2017/06/20/shields-arduino-3/

HW Compatible Arduino

Además del HW oficial de Arduino tenemos infinidad de placas compatibles con Arduino.

Dentro del HW compatible con Arduino podemos distinguir tres tipos:

Listados de placas Arduino y compatibles:

Dentro del entorno Arduino, podemos encontrar placas basadas en el microcontrolador ESP8266 con wifi integrado y pila de protocolos TCP/IP que no sigue el factor de forma de Arduino. De este microcontrolador han salido muchas placas como las wemos https://www.wemos.cc/

Resultado de imagen de wemos.jpg

Placas de otros fabricantes de microcontroladores como Microchip o Mediatek con sus modelos ChipKit o LinkIt.

Documentación de la placa linkit one:

SW Arduino

El software de Arduino es un IDE, entorno de desarrollo integrado (siglas en inglés de Integrated Development Environment). Es un programa informático compuesto por un conjunto de herramientas de programación.

El IDE de Arduino es un entorno de programación que ha sido empaquetado como un programa de aplicación; es decir, consiste en un editor de código, un compilador, un depurador y un constructor de interfaz gráfica (GUI). Además incorpora las herramientas para cargar el programa ya compilado en la memoria flash del hardware.

Es destacable desde la aparición de la versión 1.6.2 la incorporación de la gestión de librerías y la gestión de placas muy mejoradas respecto a la versión anterior y los avisos de actualización de versiones de librerías y cores.

Todos lo cambios en la versiones pueden verse en: https://www.arduino.cc/en/Main/ReleaseNotes

Código fuente del IDE de Arduino está disponible en: https://github.com/arduino/Arduino/  y las instrucciones para construir el IDE desde código fuente pueden verse en: https://github.com/arduino/Arduino/wiki/Building-Arduino

Podemos también ver los problemas/bugs detectados de la versión actual y hacer un seguimiento de ellos: https://github.com/arduino/Arduino/issues y en http://forum.arduino.cc/index.php?board=2.0

En principio el IDE de arduino solo tenía soporte para las placas Arduino y los clones o forks con los mismos microcontroladores que los Arduinos oficiales. Desde la versión 1.6.2 del IDE de arduino.cc y gracias al gestor de placas, podemos añadir soporte a otros microcontroladores y placas al IDE de Arduino, como al ESP8266.

Listado de URLs para soporte de tarjetas no oficiales: https://github.com/arduino/Arduino/wiki/Unofficial-list-of-3rd-party-boards-support-urls

Arduino.cc tiene disponible un IDE on-line dentro del entorno Arduino Create https://create.arduino.cc/ que es una plataforma on-line integrada que permite escribir código, acceder a contenido, configurar placas y compartir proyectos, muy enfocado al Internet de las Cosas (IoT).

También existen otros IDEs alternativos como Atmel Studio http://www.atmel.com/Microsite/atmel-studio/ para microntroladores Atmel.

El software hecho para Arduino con el IDE es portable, es decir, el mismo firmware que hemos hecho para un Arduino/Microcontrolador, sirve para otras placas Arduino u otras placas compatibles Arduino como el ESP8266.

Comunidad Arduino

Un factor del éxito de Arduino ha sido la comunidad que está apoyando este proyecto y que día a día publica nuevo contenido, divulga y responde a las dudas.

En Internet hay disponible todo tipo de cursos, tutoriales, herramientas de consulta, proyectos, etc… que ayudan a que se pueda usar Arduino con facilidad.

El primer sitio donde empezar para trabajar con Arduino es http://www.arduino.cc/ y el segundo sitio el playground de Arduino http://playground.arduino.cc/

Arduino playground es un wiki donde todos los usuarios de Arduino pueden contribuir. Es el lugar donde publicar y compartir código, diagrama de circuitos, tutoriales, trucos, cursos, etc.. y sobretodo el lugar donde buscar cuando tengamos dudas, un problema, una librería adecuada para nuestro proyecto, etc… Esa la base de datos de conocimiento por excelencia de Arduino.

Arduino playground: http://playground.arduino.cc/

Algunos apartados importantes en playground.

Otro lugar donde la comunidad colabora, se puede buscar información y preguntar las dudas que tengamos, es el foro Arduino: http://forum.arduino.cc/.

También existen lugares no oficiales de Arduino donde resolver nuestras dudas:

Arduino en las redes sociales:

Otro lugar de encuentro de la comunidad son diversos portales donde se publican proyectos con Arduino:

Por último, también hay espacios locales para la comunidad, son los llamados hacklabs hackerspace, makerspace, etc.. que aunque hay ciertas diferencias entre unos y otros, se trata de un sitio físico donde gente con intereses en ciencia, nuevas tecnologías, y artes digitales o electrónicas se puede conocer, socializar y colaborar. Puede ser visto como un laboratorio de comunidad abierta, un espacio donde gente de diversos trasfondos puede unirse. Pone al alcance de aficionados y estudiantes de diferentes niveles la infraestructura y ambiente necesarios para desarrollar sus proyectos tecnológicos.

Hacklab: https://es.wikipedia.org/wiki/Hacklab

Mejores prácticas Hackerspaces: https://elplatt.com/new-hackerspace-design-patterns

Listado de Hackerspaces: https://hackerspaces.org/wiki/List_of_ALL_Hacker_Spaces

También hay otro espacio local algo diferente que son los fablabs: es un espacio de producción de objetos físicos a escala personal o local que agrupa máquinas controladas por ordenadores.

Fablab: https://es.wikipedia.org/wiki/Fab_lab

Qué es un fablab: http://fab.cba.mit.edu/about/charter/

Este podcast explica las diferencias entre estos espacios: http://make.cesargarciasaez.com/2016/02/01/la-hora-maker-010-fablabs-makespaces-hackerspaces-y-hacklabs/

Movimiento maker: https://en.wikipedia.org/wiki/Maker_culture

Más información sobre la comunidad, makerspaces y fablabs, ver los artículos:

Filosofía Arduino

Por último para entender bien lo que es Arduino, es recomendable ver el documental de Arduino de unos 30 minutos de duración. Arduino the Documentary: http://blog.arduino.cc/2011/01/07/arduino-the-documentary-now-online/

IoT Manifesto: https://create.arduino.cc/iot/manifesto/

We believe that the best way to grow this environment is to develop open source platforms and protocols to propose as an alternative to the myriad of proprietary hardware and software platforms each one of the big players are developing.
We believe in creating tools that make these technologies understandable to the most diverse set of people as possible, this is the only way to make sure innovation benefits most of humanity.
We propose that connected devices should be: Open, Sustainable and Fair.

We foresee a world with billions of connected smart objects. These smart objects will be composed and orchestrated, thus making the Internet of Things a reality. The IoT will be the eyes, noses, arms, legs, hands of a new, extended, cyber body. The nervous system of such a body will be the Internet, allowing the interaction with a distributed intelligence made of hardware processors and human minds, behaviors, software procedures, and services, shared in the Cloud.