Tabla de contenido:

HackerBox 0050: 8 pasos
HackerBox 0050: 8 pasos

Video: HackerBox 0050: 8 pasos

Video: HackerBox 0050: 8 pasos
Video: Projects - July 2016 2024, Mes de julio
Anonim
HackerBox 0050
HackerBox 0050

¡Saludos a HackerBox Hackers de todo el mundo! Para HackerBox 0050, estamos ensamblando y programando la placa del procesador integrado HB50. El HB50 admite la experimentación con microcontroladores ESP32, WiFi IoT integrado, sonido bit bang, LED RGB, pantallas LCD TFT a todo color, entradas de pantalla táctil, Bluetooth y más. HackerBox 0050 también explora una pequeña solución de teclado para cualquier proyecto integrado, interfaces I2C, presupuesto de energía y autómatas celulares.

Esta guía contiene información para comenzar con HackerBox 0050, que se puede comprar aquí hasta agotar existencias. Si desea recibir un HackerBox como este en su buzón cada mes, suscríbase en HackerBoxes.com y únase a la revolución.

HackerBoxes es el servicio de caja de suscripción mensual para piratas informáticos de hardware y entusiastas de la electrónica y la tecnología informática. Únase a nosotros para vivir la HACK LIFE.

Paso 1: Lista de contenido para HackerBox 0050

  • Placa de circuito impreso exclusiva HB50
  • Módulo WiFi ESP-WROOM-32 de doble núcleo
  • Pantalla QVGA TFT LCD en color de 2,4 pulgadas
  • Pantalla táctil integrada con lápiz óptico
  • Seis LED RGB WS2812B
  • Seis botones táctiles de montaje en superficie
  • Zumbador Piezo 12mm SMD
  • AMS1117 Regulador lineal 3.3V SOT223
  • Encabezado separable de 40 pines en ángulo recto
  • Dos condensadores de tantalio de 22uF 1206 SMD
  • Dos resistencias de 10K ohmios 0805 SMD
  • Mini teclado CardKB
  • Cable de conexión Grove a hembra DuPont
  • Módulo serie USB CP2102
  • Jerséis DuPont Mujer-Mujer 10cm
  • Calcomanía para PCB de la Gran Ola de Hokusai
  • Adhesivo exclusivo de HackerBox WireHead
  • Moneda de desafío exclusiva de HackerBox 50

Algunas otras cosas que serán útiles:

  • Soldador, soldadura y herramientas de soldadura básicas
  • Computadora para ejecutar herramientas de software

Lo más importante es que necesitará sentido de la aventura, espíritu hacker, paciencia y curiosidad. Construir y experimentar con la electrónica, aunque es muy gratificante, puede ser complicado, desafiante e incluso frustrante en ocasiones. El objetivo es el progreso, no la perfección. Cuando persiste y disfruta de la aventura, se puede derivar una gran satisfacción de este pasatiempo. Dé cada paso lentamente, preste atención a los detalles y no tema pedir ayuda.

Hay una gran cantidad de información para miembros actuales y potenciales en las preguntas frecuentes de HackerBoxes. Casi todos los correos electrónicos de soporte no técnico que recibimos ya están respondidos allí, por lo que realmente agradecemos que se tome unos minutos para leer las preguntas frecuentes.

Paso 2: placa de circuito impreso HB50

Placa de circuito impreso HB50
Placa de circuito impreso HB50

Para conmemorar el número 0050 de HackerBox, hemos creado una versión actualizada de la placa de circuito HackerBox más popular por demanda popular. El kit de insignias HackerBox 0020 Summer Camp se agotó en DEF CON 25 en menos de dos horas. Desde entonces, los archivos de PCB se han solicitado con frecuencia. El tablero ha sido reimpreso al menos un par de veces por terceros. El diseño ha inspirado un puñado de otras insignias y proyectos de IoT integrados que conocemos y, con suerte, varios más de los que no somos conscientes.

Las actualizaciones que se encuentran en el nuevo kit de PCB HB50 incluyen el cambio del ESP-32 DEVkitC por el módulo ESP-WROOM-32 más compacto. Los cinco botones táctiles capacitivos se han reemplazado por botones táctiles mecánicos. Los cinco LED RGB WS2812 que estaban en paquetes blancos se han aumentado a seis y ahora están en paquetes negros. El zumbador piezoeléctrico ha sido reemplazado por una versión de montaje en superficie más compacta. La fuente de alimentación se ha simplificado. La pantalla TFT a color se ha aumentado de 2,2 pulgadas a 2,4 pulgadas. El PCB es más compacto e incluso tiene algunos pines IO rotos para su placer de pirateo. Desde la época de HackerBox 20, hay muchos más proyectos, ejemplos y código disponibles para el ESP32, así que preparémonos para retumbar …

Características:

  • Procesador ESP32 de doble núcleo a 160 MHz
  • Pantalla LCD TFT en color QVGA de 2,4 pulgadas
  • WiFi 802.11 b / g / n / d / e / i / k / r
  • Bluetooth LE 5.0
  • Cinco botones táctiles (+ uno para reiniciar)
  • Seis LED RGB WS2812
  • Zumbador piezoeléctrico
  • Regulador lineal de 3.3V
  • Encabezado de expansión

Al igual que con su predecesor, el HB50 se puede usar en un cordón, como dispositivo de mano, montado en una pared o desplegado prácticamente en cualquier lugar en innumerables aplicaciones inalámbricas y coloridas.

Paso 3: Abra la placa HB50

Abra la placa HB50
Abra la placa HB50

Para minimizar, o al menos aislar los errores, sugerimos comenzar el ensamblaje completando solo el mínimo de componentes en la PCB HB50 que se requieren para programar el ESP32. Este enfoque mínimo viable se describe en estos pasos:

  1. Mire este video sobre la soldadura de módulos almenado.
  2. Suelde el módulo ESP-WROOM-32 en la PCB. Tome su tiempo. No se preocupe por la almohadilla de tierra central debajo del módulo. Solo se puede soldar por reflujo y solo está allí para un acoplamiento térmico adicional.
  3. Utilice un multímetro para asegurarse de que no haya cortocircuitos entre 3V3 y GND. Si hay un corto, debe identificarse y eliminarse antes de aplicar energía al tablero o podría salir el monstruo de humo.
  4. Suelde las dos resistencias de 10K justo encima de los botones EN y IO0.
  5. Suelde los botones EN y IO0. Los otros cuatro botones se pueden dejar de lado por ahora.
  6. Rompa una tira de 16 pines del encabezado. Insértelo desde el lado de la CPU del PCB de manera que los pines apunten al borde más cercano del PCB. Luego suelde el cabezal en su lugar desde el lado del botón de la PCB.
  7. Verifique nuevamente que no haya cortocircuitos entre 3V3 y GND.
  8. Utilice cuatro cables de puente de DuPont para conectar el módulo CP2102 como se muestra. Tenga en cuenta que estamos utilizando temporalmente la fuente de alimentación 3V3 ya que el regulador lineal aún no está instalado en la PCB.
  9. Si su computadora aún no tiene el IDE de Arduino instalado, consígalo aquí.
  10. Configure el soporte de ESP32 dentro del IDE de Arduino usando esta guía.
  11. En el IDE, establezca herramientas> placa en "Módulo Wrover ESP32".
  12. Conecte el módulo CP2102 en un puerto USB de la computadora.
  13. En el IDE, configure herramientas> puerto en el puerto USB correcto para el CP2102.
  14. Si no aparece un nuevo puerto cuando se inserta el módulo CP2102, instale el controlador USB requerido de Silicon Labs.
  15. Coge el boceto button_demo.
  16. Compile y cargue el boceto.
  17. Cuando comience la carga, mantenga presionados los botones EN e IO0. EN es básicamente un botón de reinicio e IO0 es el alfiler para forzar la reprogramación del flash.
  18. Una vez que los puntos y guiones aparezcan en el IDE, suelte el botón EN (suelte el reinicio) pero continúe presionando el botón IO0 hasta que la programación flash comience para asegurarse de que el pasador de flejado se reconoce al arrancar.
  19. Cuando la programación esté completa, presione el botón EN nuevamente para reiniciar e iniciar el código recién parpadeado.
  20. Abra el monitor serial IDE de Arduino y configúrelo en 115200 baudios.
  21. Presionar el botón IO0 debería generar un mensaje en el monitor serial.

Paso 4: Botones, zumbadores y LED, ¡OH MI

Botones, zumbadores y LED, ¡OH MI!
Botones, zumbadores y LED, ¡OH MI!

MAS BOTONES

Una vez que el paso de programación inicial sea exitoso, apague la placa HB50 y suelde los cuatro botones restantes. El mismo boceto button_demo ahora debería informar los cinco botones (IO0, A, B, C y D) al monitor en serie cuando se presionan.

ZUMBADOR

Apague la placa HB50 y suelde el zumbador en sus almohadillas. Oriente el punto en el zumbador para que esté más cerca de la almohadilla "+" en la placa HB50. Programe el boceto buzzer_demo y reinicie (EN) la placa para que funcione. ¿Suena bien?

LED RGB WS2812B

Apague la placa HB50 y suelde los seis LED en sus almohadillas. Oriente la esquina marcada en blanco de cada LED para que corresponda con la esquina con pestañas como se muestra en la serigrafía de la PCB.

Desde las herramientas Arduino IDE> Administrar bibliotecas, instale la biblioteca FastLED.

Abra el boceto: Archivo> Ejemplos> FastLED> ColorPalette.

En el código de boceto, cambie LED_PIN a 13, NUM_LEDS a 6 y LED_TYPE a WS2812B.

Sube el boceto y reinicia (EN) la placa para que funcione. Disfrute de luces parpadeantes de todos los colores.

REGULADOR DE POTENCIA LINEAL

Con los LED en juego (y especialmente una vez que el transmisor WiFi está habilitado), el HB50 está consumiendo mucha corriente del suministro 3V3. Mejoremos la capacidad de potencia de 3.3V soldando el regulador lineal AMS1117 (paquete SOT 233) en su lugar. También llene los dos condensadores de filtro de 22uF al lado del regulador. Tenga en cuenta que un lado de cada serigrafía de condensador es rectangular y el otro lado es octogonal. Los condensadores deben estar orientados de modo que la línea oscura del paquete se alinee con el lado de la serigrafía octogonal. El regulador convertirá ahora parte del suministro de 5 V en 3,3 V y puede proporcionar mucha más corriente que el módulo CP2102 por sí mismo. Para suministrar ahora energía al HB50 a través de la fuente de 5V, mueva AMBOS EXTREMOS del puente DuPont 3V3 a 5V. Es decir, genere 5 V del módulo CP2102 en uno de los pines de entrada de 5 V en el encabezado HB50. Tenga en cuenta que el pin de 5 V se puede suministrar con cualquier voltaje de entre 3,5 V y 5 V.

Paso 5: Pantalla LCD TFT en color QVGA ILI9341

Pantalla LCD TFT en color QVGA ILI9341
Pantalla LCD TFT en color QVGA ILI9341

La pantalla MSP2402 (página lcdwiki) es un módulo de bus SPI basado en el chip ILI9341. El chip maneja una pantalla a color de 2.4 pulgadas que admite 65.000 colores y una resolución de 320X240 píxeles (QVGA).

El módulo también cuenta con entrada de pantalla táctil y una ranura para tarjeta SD.

PINES DE E / S DE PANTALLA DE PRUEBA PREVIA

Si ha tenido problemas con la soldadura de pines ESP-WROOM-32 hasta este punto, podría ser una buena idea probar previamente los pines de E / S del módulo de pantalla antes de soldar el módulo de pantalla en su lugar. Como se muestra a continuación y en el diagrama esquemático de la PCB, las E / S del ESP32 en juego son 19, 23, 18, 5, 22, 21 y 15. Tenga en cuenta que estos son los números de E / S y no los números de los pines. Los pines se pueden probar escribiendo un pequeño programa que establezca todos esos IO como salidas y luego recorra los IO encendiendo y apagando cada uno de ellos con un retraso de uno o dos segundos entre ellos. Se puede usar un LED simple con una resistencia limitadora de corriente adjunta como sonda para asegurarse de que cada pin IO asignado a los encabezados de la pantalla (vea el esquema) se encienda y apague correctamente y que ninguno de ellos esté acoplado.

Una vez que se verifican todos los pines, la pantalla TFT se puede soldar en su lugar utilizando los encabezados largos y cortos.

INSTALAR Y CONFIGURAR LA BIBLIOTECA TFT

Desde el IDE de Arduino: herramientas> Administrar bibliotecas, instale la biblioteca TFT_eSPI

Vaya a la carpeta Bibliotecas Arduino. Abra la carpeta TFT_eSPI y edite el archivo User_Setup.h para configurar el chip del controlador del módulo, la resolución de píxeles y los pines IO. Haga esto asegurándose de que las definiciones estén (des) comentadas como se muestra a continuación y establezca los valores como se muestra. Puede verificar que se correspondan con las conexiones en el esquema de la placa de circuito impreso.

// Sección 1.

#define ILI9341_DRIVER #define TFT_WIDTH 240 #define TFT_HEIGHT 320 // Sección 2. // Para placa de desarrollo ESP32 #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18 #define TFT_CS 5 #defineSTfine 21_ # 22 TFT_RST -1 // # define TFT_BL 32 #define TOUCH_CS 15

Abra y cargue el boceto:

Archivo> Ejemplos> TFT_eSPI> 320 x 240> Cellular_Automata

Este boceto es una demostración visual genial del Juego de la vida de Conway.

Un planeador pirata podría evolucionar a la existencia … ¡Esté atento!

MOSTRAR EL LOGOTIPO DE HACKERBOX EN TFT LCD

Pruebe el boceto de BitHeadDemo.

Paso 6: Entrada de usuario de la pantalla táctil

Entrada de usuario de pantalla táctil
Entrada de usuario de pantalla táctil

El siguiente esquema se puede utilizar para configurar y probar la funcionalidad de la pantalla táctil:

Archivo> Ejemplos> TFT_eSPI> 320 x 240> Teclado_240x320

El botón "enviar" transmite el número ingresado al monitor serial a 9600 baudios.

Paso 7: Teclado CardKB I2C

Teclado CardKB I2C
Teclado CardKB I2C

Esta pequeña placa implementa un teclado QWERTY con todas las funciones que se puede utilizar con prácticamente cualquiera de sus proyectos de microcontroladores. El teclado se comunica mediante un puerto GROVE A (interfaz I2C) en la dirección 0x5F. Las combinaciones de botones (Sym + Key, Shift + Key, Fn + Key) son compatibles para generar valores de clave enriquecidos.

Comience con el boceto CardKB_Serial de ejemplo simple, que se comunica con el teclado a través de GROVE I2C y hace eco de las pulsaciones de teclas en el Monitor serial. El boceto se puede ejecutar en ESP32 (como el HB50), Arduino UNO, Arduino Nano o cualquier plataforma que admita I2C.

Tenga en cuenta que hay dos llamadas Wire.begin diferentes para ESP32 y para UNO / Nano. Quite el comentario de la correspondiente de esas líneas para el host que está utilizando. Conecte los cables de conexión GROVE amarillo y blanco a los pines especificados en esa línea de código. Conecte el cable de conexión GROVE rojo a 5V y el cable GROVE negro a GND.

Página de documentación del fabricante. Tenga en cuenta que aunque el microcontrolador integrado CardKB viene preprogramado, la fuente de firmware está disponible si desea piratear el teclado.

Paso 8:

Imagen
Imagen

Esperamos que esté disfrutando de la aventura de HackerBox de este mes en la electrónica y la tecnología informática. Comuníquese y comparta su éxito en los comentarios a continuación o en el grupo de Facebook de HackerBoxes. Además, recuerde que puede enviar un correo electrónico a [email protected] en cualquier momento si tiene una pregunta o necesita ayuda.

¿Que sigue? Únete a la revolución. Vive la HackLife. Reciba una caja fresca de equipo pirateable directamente en su buzón de correo cada mes. Navegue a HackerBoxes.com y regístrese para obtener su suscripción mensual a HackerBox.

Recomendado: