Tabla de contenido:

Alternativa de $ 3 a Makey Makey: 4 pasos (con imágenes)
Alternativa de $ 3 a Makey Makey: 4 pasos (con imágenes)

Video: Alternativa de $ 3 a Makey Makey: 4 pasos (con imágenes)

Video: Alternativa de $ 3 a Makey Makey: 4 pasos (con imágenes)
Video: Sistema de riego con Scratch y Makey Makey 2024, Mes de julio
Anonim
$ 3 alternativa a Makey Makey
$ 3 alternativa a Makey Makey
$ 3 alternativa a Makey Makey
$ 3 alternativa a Makey Makey

El Makey Makey es un pequeño dispositivo que emula un teclado USB y te permite hacer teclas con cualquier cosa algo conductora (papel de aluminio, plátanos, plastilina, etc.), que luego se puede usar como controlador para juegos y proyectos educativos.. El Makey Makey tiene dos desventajas: (1) costo y (2) la necesidad de una conexión a tierra.

Este proyecto es una alternativa económica que utiliza una placa STM32F1 de $ 2 y detección capacitiva. Solo tiene 10 entradas a diferencia de las 12 del Makey Makey, pero tiene la ventaja de que además de emular un teclado, puede emular un controlador de gamepad USB (joystick digital).

Partes:

  • Tablero STM32F103c8 "píldora negra" ($ 1.90 en Aliexpress; más información aquí)
  • protoboard (menos de $ 1 en Aliexpress) y cables de puente; o solo un montón de conectores dupont hembra a macho ($ 0,70 en Aliexpress por un paquete de 40)
  • clips, pinzas de cocodrilo, etc.

Instrumentos:

  • computadora
  • Adaptador UART a USB para la programación inicial de la placa (un Arduino Uno o Mega hará el trabajo, al igual que una unidad CH340 barata)
  • soldador para soldar los cabezales a la placa (también puede usar un montón de clips de prueba sin soldar, pero a veces se caen)

El software es un boceto de ejemplo incluido con mi biblioteca ADCTouchSensor que permite la detección capacitiva con un solo pin en la placa STM32F1 por sensor (se basa en la biblioteca de martin2250 para AVR).

Advertencia: En clima seco, o donde la estática sea un problema (por ejemplo, en una alfombra), no toque los conectores de metal expuestos para que no cause daño electrostático a la placa STM32F1. Espero que la resistencia de las papas, plátanos, plastilina, etc. ayude a proteger la tabla, pero si usa papel de aluminio desnudo, es posible que tenga problemas. Por otro lado, la tabla cuesta solo $ 1.90.

Ideas de actividades educativas:

  • Experimente para descubrir qué elementos son conductores y pueden usarse como superficies de control. (Por ejemplo, mina de lápiz frente a crayón; plastilina frente a vela).
  • Escribe juegos de Scratch que utilicen un controlador casero.
  • Modifique el código Arduino que alimenta el proyecto para permitir el clic / movimiento del mouse, otras teclas, más de cuatro direcciones de joystick, etc.

Paso 1: Instale el cargador de arranque en la placa de desarrollo

Instalar el cargador de arranque en la placa de desarrollo
Instalar el cargador de arranque en la placa de desarrollo
Instalar el cargador de arranque en la placa de desarrollo
Instalar el cargador de arranque en la placa de desarrollo
Instalar el cargador de arranque en la placa de desarrollo
Instalar el cargador de arranque en la placa de desarrollo

Suelde los dos encabezados de tres pines en el medio del sistema de desarrollo Black Pill (B0- / center / B0 +; B1- / center / B1 +), y los encabezados largos a lo largo de los bordes (si tiene prisa o quiere para evitar pines innecesarios que pueden confundir a los niños, solo necesita pines para A0-A10 y G).

Necesita un puente UART a USB que sea compatible con dispositivos de 3.3v. Puedes pedir un ch340 en Aliexpress por $ 0,66, pero tenía una imitación de Arduino Mega y había un truco genial que encontré en línea. Si en un Arduino corto el pin de reinicio a tierra con un cable corto, entonces se convierte en un puente UART a USB, no se necesita boceto. El único truco es que el etiquetado RX y TX se invierte: el pin "RX" de Arduino transmite y su pin "TX" recibe. El Arduino funciona a 5v y el Black Pill a 3.3v, pero los pines PA9 y PA10 en el stm32f103 son tolerantes a 5V de acuerdo, por lo que no debería ser un problema.

En los encabezados que soldó, coloque un puente de B0 + al centro y de B1- al centro.

Realice las siguientes conexiones:

  • PA9 a UART bridge RX ("TX" si estás usando el truco Arduino)
  • PA10 a UART bridge TX ("RX" si está usando el truco de Arduino)
  • G al suelo del puente UART

Puede usar una placa de pruebas o puentes de macho a hembra, o si desea hacerlo antes de soldar los encabezados, puede usar clips de prueba (como en la foto).

Descarga el binario del gestor de arranque. Quieres generic_boot20_pb12.bin.

En Windows, instale Flash Loader Demonstrator de ST. En Linux (y tal vez OS X e incluso Windows si prefiere las herramientas de línea de comandos), use este script de Python en su lugar, pero mis instrucciones serán para Windows. Conecte su puente UART a su computadora.

Encienda el Black Pill a través de su puerto USB (si usa la computadora, es probable que se queje de un dispositivo USB no reconocido; ignórelo). Inicie la demostración de Flash Loader. Elija el puerto COM para su puente UART. Elija "Eliminar protección" si está disponible. Elija una versión flash de 64 kb en lugar de 128 kb. Y cargue el binario del gestor de arranque.

Desconecte todo y luego mueva el puente de B0 + / centro a B0- / centro. Ahora tiene un gestor de arranque que puede usar con el IDE de Arduino.

Paso 2: configurar Arduino IDE

Configurar Arduino IDE
Configurar Arduino IDE

Supongo que tiene instalado el último IDE de Arduino.

En Herramientas | Tableros | Boards Manager, instale el soporte para Arduino Zero (simplemente ponga Zero en la búsqueda, haga clic en la entrada encontrada y luego en Instalar). Sí, no está trabajando con Zero, pero esto instalará el compilador gcc correcto.

A continuación, descargue el núcleo stm32duino. En Windows, recomiendo descargar el archivo zip, ya que cuando revisé los archivos (ciertamente, con svn), tuve algunos problemas de permisos con los archivos en el directorio de herramientas de Windows que necesitaban ser reparados. Coloque la rama en Arduino / Hardware / Arduino_STM32 (por lo que tendrá carpetas como Arduino / Hardware / Arduino_STM32 / STM32F1, etc.) En Windows, instale los controladores ejecutando drivers / win / install_drivers.bat.

Paso 3: Instale CapacitiveController Sketch

Instalar CapacitiveController Sketch
Instalar CapacitiveController Sketch
Instalar CapacitiveController Sketch
Instalar CapacitiveController Sketch
Instalar CapacitiveController Sketch
Instalar CapacitiveController Sketch

En Arduino IDE, elija Sketch | Incluir biblioteca | Administrar bibliotecas. Busque "ADCTouchSensor" e instale la versión 0.0.6 o más reciente. Repita y busque "USBHID" e instale mi biblioteca USBHID_stm32f1.

Elija Archivo | Ejemplo | ADCTouchSensor | Controlador capacitivo.

Asegúrese de tener la siguiente configuración en Herramientas:

  • Tablero: Genérico STM32F103C8
  • Método de carga: cargador de arranque STM32duino

Conecte la placa a la computadora y haga clic en el botón "cargar" de la flecha derecha. Es posible que deba restablecer la placa (presione el botón de restablecimiento) una vez que aparezca el mensaje de carga en la consola.

Paso 4: Conexiones y botones

Conexiones y botones
Conexiones y botones
Conexiones y botones
Conexiones y botones
Conexiones y botones
Conexiones y botones

Con el dispositivo desenchufado, pase los cables desde los pines STM32F1 hasta las superficies de control. Conéctese con pinzas de cocodrilo, sujetapapeles o simplemente pegando puentes en objetos. Puede utilizar una placa de pruebas o puentes de mujer a hombre. Para Tetris en la computadora, usamos el modo de teclado y las teclas de flecha; para Pac Man en la tableta, usamos un cable USB OTG y un modo de joystick.

El esquema del controlador capacitivo calibra los sensores capacitivos cuando está encendido. Asegúrese de que mientras lo enciende, no toca las superficies de control, los cables o los pines. Y si modifica cualquier superficie de control, debe volver a calibrar desenchufando y volviendo a enchufar o presionando el botón de reinicio blanco en la placa.

La mayoría de las aplicaciones aquí funcionarán, así como muchas otras. También puede ver cuántos proyectos de Makey Makey puede adaptar.

Algunas buenas superficies de control:

  • frutas y vegetales
  • plastilina
  • papel de aluminio (excepto en condiciones de alta estática)
  • botones / conexiones con mucho lápiz en papel (las líneas de conexión no deben ser demasiado largas; en la foto, el botón de la parte inferior no funcionó)
  • ¡Experimenta con muchos más! (también puede intentar ajustar la línea de 25 in if (sensores -> read ()> 25) en el código fuente para algunas superficies)

Conexiones del modo de teclado:

  • Deje A10 desconectado
  • A0: espacio
  • A1: arriba
  • A2: izquierda
  • A3: abajo
  • A4: derecha
  • A5: w
  • A6: a
  • A7: s
  • B0: d
  • B1: f

Conexiones del modo Gamepad / Joystick:

  • Conecte A10 a tierra (G) para configurar el modo de joystick
  • A0: botón 1
  • A1: arriba
  • A2: izquierda
  • A3: abajo
  • A4: derecha
  • A5-A7, B0, B1: botones 2-6

Insinuación:

Si está utilizando puentes de macho a hembra, puede realizar la conexión a tierra del modo de joystick A10 insertando los extremos macho de dos puentes entre sí, formando así un puente de hembra a hembra.

Recomendado: