Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Javascript meets Hardware - HTML 5 Spain

Javascript meets Hardware - HTML 5 Spain

¿Alguna vez te has planteado poder interactuar con dispositivos hardware mediante el uso de Javascript? Descubre qué frameworks, APIs, plataformas hardware puedes emplear para alcanzar dicho fin.

D0d62e96926cd2a798ee588350330ded?s=128

Julio Galarón

February 14, 2013
Tweet

More Decks by Julio Galarón

Other Decks in Technology

Transcript

  1. meets hardware Julio Galarón Touriño @jgalaron

  2. Prototyping Rule #1: Find the quickest path to experience

  3. Arduino leonardo

  4. Arduino Shields

  5. None
  6. Arduino Esplora

  7. Arduino Esplora

  8. Arduino Mega

  9. Arduino Due

  10. Arduino Lilypad

  11. Arduino Lottie Lemon

  12. Repositorio sobre Arduino: http://www.freeduino.org/ Web plataforma Arduino: http://arduino.cc/ Podcast de

    Alfredo Prado (@radikalbytes) en We Developers sobre microcontroladores: http://wedevelopers.com/2012/12/28/we-developers-014-arduino/ Blog sobre construcción de distintos proyectos electrónicos de forma sencilla: http://txapuzas.blogspot.com.es/ Blog en español sobre robótica y microcontroladores: http://webdelcire.com/wordpress/ Asociación de robótica educativa Complubot: http://complubot.educa.madrid.org/ Documentación relacionada: Lenguaje de programación que emplea la plataforma: C/C++
  13. Ejemplos de pequeños desarrollos de con Arduino, Raspberry Pi,...: http://learn.adafruit.com/

    30 projects of Arduino for evil Genius: https://www.box.com/s/3147cbda8067c022f396 Arduino pinput diagrams: http://arduino.cc/forum/index.php/topic,146315.0.html
  14. Vinciduino

  15. Web de plataforma Vinciduino: http://vinciduino.com/esp/ Entrada en foro de Arduino

    sobre el desarrollo de la placa Vinciduino: http://arduino.cc/forum/index.php?topic=78781.0 Documentación relacionada: Lenguaje de programación que emplea la plataforma: C/C++
  16. Teensy Teensy 3.0

  17. Web plataforma Teensy 3.0: http://www.pjrc.com/teensy/ Documentación y ejemplos de desarrollo

    con Teensy 3.0: http://www.pjrc.com/store/teensy3.html Documentación relacionada: Lenguaje de programación que emplea la plataforma: C/C++
  18. chipKit Max32 & chipKit Uno32

  19. Web de la plataforma ChipKit: http://www.microchip.com/pagehandler/en-us/chipKIT-Development-Platform.html Review en español de

    la plataforma chipKit: http://www.neoteo.com/chipkit-el-arduino-de-microchip Documentación relacionada: Lenguaje de programación que emplea la plataforma: C/C++
  20. LaunchPad msp430

  21. Review en español sobre la plataforma Launchpad y el IDE

    Energía: http://webdelcire.com/wordpress/archives/2127 Proyecto LaunchPad Energía: https://github.com/energia/Energia/wiki/Getting-Started Web de la plataforma LaunchPad en TI: http://www.ti.com/ww/en/launchpad/msp430_head.html Wiki de la plataforma Launchpad MSP430: http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_%28MSP-EXP430G2%29 Documentación relacionada: Lenguaje de programación que emplea la plataforma: C/C++
  22. Netduino

  23. Web de la plataforma Netduino: http://netduino.com/ Documentación relacionada: Lenguaje de

    programación que emplea la plataforma: C# (.NET Micro Framework)
  24. Fez Panda 2

  25. Wiki sobre desarrollo con la plataforma Fez: http://wiki.tinyclr.com/index.php?title=Main_Page Web de

    la plataforma Fez Panda: http://www.ghielectronics.com/catalog/product/256 Documentación relacionada: Lenguaje de programación que emplea la plataforma: C# (.NET Micro Framework)
  26. Electric Imp

  27. Electric Imp & budweiser

  28. Web de la plataforma Electric Imp: http://electricimp.com/ Lenguaje Squirrel: http://www.squirrel-lang.org/

    Proyecto de Budweiser empleando Electric Imp: http://www.wired.com/design/2013/02/budweiser-red-light/ Documentación relacionada: Lenguaje de programación que emplea la plataforma: Squirrel
  29. Plataformas ARM linux

  30. Raspberry Pi

  31. Olinuxino A13

  32. Cubieboard

  33. Odroid-X

  34. Web de la plataforma Cubierboard: http://cubieboard.org/ Web de la plataforma

    Odroid-X: http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G133999328931# Web de la plataforma Olinuxino A13: https://www.olimex.com/Products/OLinuXino/A13/A13-OLinuXino-WIFI-DEV/ Web de la plataforma Raspberry: http://www.raspberrypi.org/ Trasparencias sobre la plataforma Raspberry: https://speakerdeck.com/jgalaron/raspberry-pi-oshwcon-2012 Documentación relacionada:
  35. Prototyping Rule #2 Doing is the best kind of thinking

  36. Prototyping Rule #3 Use materials that move at the speed

    of thought to maximize your rate of learning
  37. Otras herramientas e IDEs de programación para AVR/Arduino: MariaMole, an

    Arduino IDE for “advanced” developers: http://dalpix.com/mariamole s4a (Scratch for Arduino): http://seaside.citilab.eu/scratch/arduino http://www.arduteka.com/tag/s4a/ Eclipse, AVR and Arduino: http://playground.arduino.cc/code/eclipse http://horrorcoding.altervista.org/arduino-development-with-eclipse-a-step-by-step-tutorial-to-the-basic- setup/ A Practical Arduino Debugger - Simple, Flexible and Very Powerful: http://www.visualmicro.com/post/2012/05/05/Debug-Arduino-Overview.aspx Arduino 1.x for Visual Studio 2012 [and still 2010 and 2008]: http://channel9.msdn.com/coding4fun/blog/Arduino-1x-for-Visual-Studio-2012-and-still-2010-and-2008
  38. Librerías y frameworks: WebSocket en Node.js: http://socket.io/ http://einaros.github.com/ws/ Frameworks para

    control de placas Arduino mediante Javascript: Johnny-Five : https://github.com/rwldrn/johnny-five Breakoutjs : http://breakoutjs.com/ Nododuino : http://semu.github.com/noduino/ Comunicación mediante puerto serie con Node.js: https://github.com/voodootikigod/node-serialport
  39. Ejemplos de interacción con hardware mediante Javascript

  40. Ejemplo de transmisión de datos mediante AFSK

  41. Android, Arduino, and the Headphone Jack: http://www.slideshare.net/wolfpaulus/android-arduino-and-the-headphone-jack Información sobre modulación

    por desplazamiento de frecuencia (FSK): http://en.wikipedia.org/wiki/Frequency-shift_keying Comunicación vía jack de audio, AFSK y HTML5 Audio API: SoftModem interface board: http://translate.google.com/translate?hl=es&sl=auto&tl=en&u=http%3A%2F%2Fcode.google.com %2Fp%2Farms22%2Fwiki%2FSoftModemBreakoutBoard Librería javascript para modulación de audio en FSK: https://github.com/NeoCat/FSK-Serial-Generator-in-JavaScript
  42. Ejemplo de comunicación con máquina CNC mediante nodeJS

  43. LXJS 2012 - Elijah Insua - Hardware with Javascript and

    CNC's http://www.youtube.com/watch?v=XbXcdhYwR8I Manejo de máquina CNC mediante nodeJS:
  44. Comunicación con AR.Drone mediante nodeJS

  45. nodeJS en AR.Drone para ampliar su funcionalidad

  46. var arDrone = require('ar-drone'); var client = arDrone.createClient(); client.takeoff(); client.after(5000,

    function() { this.clockwise(0.5); }).after(3000, function() { this.stop(); this.land(); }); Ejemplo de comunicación con AR.Drone mediante Node.js:
  47. Documentación relacionada: Librería para el control de AR.Drone 2.0 mediante

    nodeJS: https://github.com/felixge/node-ar-drone NodeJS en AR.Drone: https://gist.github.com/maxogden/4152815 LXJS 2012 - Felix Geisendörfer - Programming flying robots with Node.js: http://www.youtube.com/watch?v=jl5v3bsMH_E Flying robots & node.js: http://nodecopter.com/ RC Helicopter, Arduino and of course, the Kinect: http://channel9.msdn.com/coding4fun/kinect/RC-Helicopter-Arduino-and-of-course-the-Kinect
  48. Lanzador de misiles USB controlado mediante Node.js y librería node-usb

  49. Documentación relacionada: Librería para control desde Node.js: https://github.com/tristil/usb-rocket-launcher-node Linux Joysticks

    and Other System Devices in NodeJS: http://nodebits.org/linux-joystick
  50. HTML5 Gamepad API: Documentación: http://www.html5rocks.com/en/tutorials/doodles/gamepad/?redirect_from_locale=es https://wiki.mozilla.org/GamepadAPI http://www.gamepadjs.com/ Prototipado rápido de

    joysticks: Plataforma Arduino Uno (unojoy): http://code.google.com/p/unojoy/wiki/GettingStarted Plataforma Arduino Leonardo/Vinciduino: http://www.imaginaryindustries.com/blog/?p=80 Plataforma Teensy: http://www.pjrc.com/teensy/td_joystick.html Plataforma mbed: http://mbed.org/users/AdamGreen/notebook/joystickusbmouse/ Ejemplos de interacción: http://www.youtube.com/user/alanchatham/videos
  51. Instalación: apt-get install nodejs npm http://www.raspberrypi.org/phpBB3/viewtopic.php?f=34&t=18775 http://blog.tomg.co/post/21322413373/how-to-install-node-js-on-your-raspberry-pi Versión precompilada de

    NodeJS 08.16: https://dl.dropbox.com/s/sh3f72vtqcpekv9/index.html Control de puertos: NodeJS: https://github.com/EnotionZ/GpiO Python : https://projects.drogon.net/raspberry-pi/wiringpi/ NodeJS en Raspberry Pi:
  52. Plataformas para IOT y envío y visualización de datos

  53. None
  54. None
  55. None
  56. None
  57. Carriots: http://carriots.com Ducksboard: http://ducksboard.com/ https://github.com/iloire/ducksnode Cosm: https://cosm.com/ https://github.com/cosm/cosm-arduino If this

    then that: https://ifttt.com/wtf Documentación relacionada: