Tabla de contenido:

TicTac Super Wifi Analyzer, ESP-12, ESP8266: 5 pasos (con imágenes)
TicTac Super Wifi Analyzer, ESP-12, ESP8266: 5 pasos (con imágenes)

Video: TicTac Super Wifi Analyzer, ESP-12, ESP8266: 5 pasos (con imágenes)

Video: TicTac Super Wifi Analyzer, ESP-12, ESP8266: 5 pasos (con imágenes)
Video: Unlock Door using BLE keychain,Earpods,Smart Watch etc.. | BLE Beacon | Smart Lock 2024, Noviembre
Anonim
Analizador TicTac Super Wifi, ESP-12, ESP8266
Analizador TicTac Super Wifi, ESP-12, ESP8266
Analizador TicTac Super Wifi, ESP-12, ESP8266
Analizador TicTac Super Wifi, ESP-12, ESP8266

Este proyecto se basa en el código original de Moononournation y en el concepto de utilizar una caja TicTac como recinto.

Sin embargo, en lugar de utilizar un botón para iniciar las lecturas, se utiliza el panel táctil que viene con una pantalla TFT SPI. El código se ha modificado para controlar mejor la retroiluminación LED y poner la pantalla en modo de suspensión (ya que el módulo de pantalla debe permanecer encendido para el chip táctil). La corriente de la unidad en reposo es lo suficientemente baja como para que una lipo de 1000 mah dure varios años. También hay carga de batería y protección de bajo voltaje en su lugar.

Vea el último paso para ver un video de cómo funciona.

Partes:

  • Caja TicTac de 48g
  • ESP12 (preferiblemente ESP-12F)
  • Pantalla SPI TFT de 2,4"
  • Módulo de carga de lipo
  • Transistor PNP
  • Regulador de voltaje de baja corriente de reposo de 3.3v
  • Resistencias y condensadores asociados (detalle más adelante)

Paso 1: desarrollo

Desarrollo
Desarrollo

Pensé en delinear la ruta de desarrollo de este proyecto. Puede omitir esta sección si desea comenzar directamente a hacer esto.

Este es uno de mis primeros proyectos ESP8266. Me cautivó el buen concepto de usar una caja TicTac como caja para el analizador Wifi y decidí hacer una. Gracias: Portable-WiFi-Analyzer. Decidí usar una pantalla más grande de 2.4”, que venía con un panel táctil y en una PCB con pines a los que sería más fácil conectar.

Cuando comencé a construir, exploré los arreglos que tendrían la antena ESP12 libre de componentes electrónicos. La única opción era que estuviera dentro de la gorra. También quería el módulo del cargador debajo del dispensador. La pregunta entonces era dónde ubicar el "botón de encendido". No quería hacer un agujero en la parte posterior de la caja. La tapa superior sería la mejor, pero no hay espacio si tengo los dos módulos allí.

Esto llevó a la idea de utilizar el panel táctil como botón de encendido. Noté que uno de los conectores de la pantalla estaba etiquetado como "T_IRQ", que parecía alentador. El chip táctil es un XPT2046. Y sí, para mi deleite, tiene un modo de suspensión automático y baja el T_IRQ si se toca el panel. Esto es ideal para reemplazar el interruptor de empuje y simplemente se puede conectar al reinicio del ESP12.

Debería haber mencionado que el código ejecuta varios escaneos de redes wifi y luego quita la energía a la pantalla y pone el ESP12 en un sueño profundo, que se despierta con una entrada de reinicio.

Entonces, con este concepto claro, lo conecté, usando un NodeMcu, ¡y no funcionó! Así que había un poco más de trabajo por hacer. También era consciente de que no podía verificar la corriente de reposo con el NodeMcu debido al chip USB integrado y al regulador de voltaje de corriente de alta inactividad. También quería un sistema para programar fácilmente los ESP12. Esto me llevó a hacer una placa de ruptura / sistema de desarrollo ESP12 que podría programarse tan fácilmente como el NodeMCU, pero usando un programador FTDI. De esta forma el regulador y el chip USB están separados. Consulte: Placa de conexión y programación ESP-12E y ESP-12F

Luego lo conecté usando mi nueva placa con un ESP-12F, y funcionó. El único cambio que hice fue poner en cortocircuito el regulador de voltaje en el módulo de pantalla para que todo funcionara a 3.3v. Comencé a hacer mis modificaciones de código, particularmente el código para poner el chip de pantalla (ILI9341) en modo de suspensión, ya que esto y el chip del panel táctil deberían encenderse (en modo de suspensión) cuando el módulo ESP también está en suspensión. Luego verifiqué la corriente del sueño. Esto fue 90uA. Entonces, una batería de 1000 mah duraría un año. Buen comienzo.

Luego quité el regulador de voltaje en el módulo de pantalla. Habría sido suficiente con levantar el pin de tierra. Ahora la corriente de reposo del sistema era de 32uA. Todavía tenía que agregar un regulador de 3.3v, pero conocía uno con solo 2uA de corriente de reposo. ¡Así que ahora estamos viendo 3 años de duración de la batería!

También quería montar los componentes tanto como fuera posible en una PCB para hacer el cableado más ordenado. Entonces, en este punto, seguí adelante con un diseño de PCB para la unidad. Me hubiera gustado haberme conectado directamente a los pines del módulo de visualización. Esto iba a ser bastante difícil, así que opté por cablear desde la PCB hasta el módulo de visualización.

Hice un poco más de retoques con el código. Agregué una notificación de suspensión: llenó la pantalla en negro e imprimí ZZZ antes de dormir. También retrasé el encendido de la retroiluminación LED hasta que se llenó la pantalla. Esto evita el destello blanco al comienzo del código original. Hice modificaciones similares al final, apagando los LED antes de poner la pantalla en suspensión.

Quizás se pregunte cómo medir uA. ¡Muerte facil! Ponga una resistencia de 1k en serie con el cable de alimentación positivo. Haga un cortocircuito con un cable de puente para que el sistema pueda funcionar. Luego, cuando esté en modo de suspensión, retire el cable de puente y mida la caída de voltaje en la resistencia. Con 1k de resistencia 100mv significa 100uA. Si la caída de voltaje es demasiado grande, utilizo una resistencia de menor valor. He usado este método para medir nA de una sola figura usando una resistencia de 1 m en otros sistemas con corrientes de reposo realmente bajas.

Paso 2: construcción

Imagen
Imagen
Imagen
Imagen

PCB o cable duro?

La unidad que construí aquí usa un PCB para sostener el ESP12F y los módulos del cargador y el regulador de voltaje y el transistor PNP y los capacitores asociados y resistencias de pull-up. Esta es la ruta más ordenada, pero requiere grabado de PCB y equipo de soldadura SMD. Sin embargo, el sistema podría hacerse conectando los módulos directamente y colocando el regulador de voltaje y el transistor PNP en un trozo de placa, como fue el caso en el proyecto TicTac anterior (vinculado anteriormente).

Si decide optar por la opción de PCB, es posible que desee hacer también mi placa de programación ESP12, especialmente si planea hacer más proyectos con las placas ESP12.

Lista de partes:

  • Caja TicTac de 49g
  • ESP-12F (o ESP-12E) Tenga en cuenta que el ESP-12F tiene un mejor alcance; de lo contrario, es el mismo que el ESP-12E
  • Pantalla SPI TFT de 2,4”con controlador ILI9341 y táctil, p. Ej. TJCTW24024-SPI
  • Módulo cargador - ver foto
  • Tira de clavija de 2 mm (opcional pero vale la pena usarla)
  • Transistor PNP en formato SOT23. Usé BCW30, pero cualquier otro con una capacidad de más de 100 mA y una ganancia de CC> 200 debería estar bien.
  • Regulador 3v3 250ma (min) en formato SOT23. Usé Microchip MCP1703T-33002E / CB. Otros funcionarán, pero verifiquen su corriente de reposo. (sugiera menos de 30uA).
  • Resistencias (todos los tamaños 0805)
  • 10k 4off
  • 3k3 1 de descuento
  • Condensadores (todos los tamaños 0805)
  • 2n2 2 apagado
  • 0.1u 1 de descuento
  • PCB como archivo WiFiAnalyserArtwork.docx adjunto.
  • Batería LiPo de celda única. Capacidad 400-1000mahr - que encajará en el estuche. 400 mahr es lo suficientemente grande.

Para la opción sin PCB, use equivalentes con plomo, resistencias de ¼ W y superiores están bien, y capacitores con voltaje de trabajo de 5v o más.

Al hacer la PCB, taladre los orificios a 0,8 mm. Si tiene buen ojo, los orificios de la tira de clavijas de 2 mm del ESP12 pueden ser de 0,7 mm para un mejor soporte.

Colocación de componentes:

Imagen
Imagen

Al ensamblar la PCB, haga primero las resistencias y los condensadores, luego el regulador y el transistor PNP, seguidos del módulo del cargador y la tira de clavijas para el ESP12. No soldé el ESP12 en su lugar porque está lo suficientemente firme presionado en la tira de clavijas, y es más fácil reprogramar fuera de la placa. Notará que la PCB tiene conectores para TX, RX, GPIO 0, Reset y tierra si alguna vez desea reprogramar in situ. Tenga en cuenta que se requerirá un botón para bajar GPIO. El reinicio se puede bajar tocando la pantalla. Se puede usar un botón, pero solo si el cable a la pantalla T_IRQ está desconectado.

Paso 3: cableado

Antes de conectar la pantalla a la placa de circuito, retire el regulador i1 y coloque una gota de soldadura en J1 que luego lo reemplaza. Luego debería verse así:

Imagen
Imagen

Luego, retire la tira de clavijas o córtelas. La mejor manera de quitar la tira de clavijas es una clavija a la vez. Aplique un soldador a un lado mientras tira del pasador con unos alicates por el otro.

Ahora puede comenzar el cableado, comenzando por conectar el cable plano a la pantalla. Corte una longitud de 7-8 cm de cable plano para PC y seleccione 10 formas. Recorte 9 de los caminos hacia atrás 10 mm dejando uno más largo en un borde para el pin T-IRQ. El resto se puede extender hacia donde se soldarán y recortarán un poco más cuando sea necesario.

Coloqué y soldé un cable a la vez comenzando con VCC.

Imagen
Imagen

Coloque la PCB donde debe estar en relación con la pantalla. Luego, uno a la vez, corte los cables a 5 mm más o menos de lo requerido y pele el aislamiento de 2 mm, estañe el extremo y suelde en su lugar. El enrutamiento de cables es el siguiente (contando los números de pin de VCC):

Monitor tarjeta de circuito impreso Comentario
1 1 VCC
2 8 GND
3 9 CS
4 5 REINICIAR
5 7 CORRIENTE CONTINUA
6 2 SDI (MOSI)
7 4 SCK
8 10 DIRIGIÓ
9 3 SDO (MISO)
10 6 T_IRQ
Imagen
Imagen

Ahora solo queda conectar la batería y programar el ESP12. Si está programando in situ, conecte la batería ahora. Si está programando fuera de la placa, conecte la batería después.

Paso 4: programación

Descargue el código ESP8266WiFiAnalMod.ino archivo adjunto, cree una carpeta llamada "ESP8266WiFiAnalMod" en su carpeta de bocetos de Arduino y mueva el archivo a esta.

Inicie el IDE de Arduino (descargue e instale desde Arduino.cc si es necesario) y agregue los detalles de la placa ESP si no los tiene (consulte: Sparkfun).

Cargue el código (Archivo> Sketchbook>… ESP8266WiFiAnalMod).

Luego configure los detalles de programación (Herramientas):

Seleccione la placa: Módulo ESP8266 genérico

Vea a continuación el resto de las configuraciones. Seleccione el método de reinicio: "nodemcu" si utiliza un programador con la unidad automatizada de reinicio y GPIO0. De lo contrario, establézcalo en “ck” si está programando in situ o mediante una conexión directa a un convertidor USB a serie.

Es probable que el número de puerto sea diferente.

Imagen
Imagen

Si desea programar in situ, deberá soldar cables a un interruptor para bajar el GPIO 0 y conectarlo al Tx y Rx; vea a continuación:

Una opción más sencilla es utilizar una placa de programación: placa de programación y conexión ESP-12E y ESP-12F

Si está programando in situ, conéctese como se indica a continuación. Tenga en cuenta que si la pantalla está conectada, el reinicio se puede activar mediante la pantalla táctil; de lo contrario, se necesita un cambio de Reinicio a GND. Se necesita energía para la placa, mejor aplicando 3.7v a los pines OUT + y OUT-. Si usa una batería, el cargador debe reiniciarse conectando brevemente un cable USB.

Imagen
Imagen

Si configura el modo de programación manualmente, tire de reset bajo (pantalla táctil), jale GPIO 0 bajo y mientras está bajo, suelte el restablecimiento. Ahora haga clic en el botón de descarga. La programación debería continuar.

Si usa la placa de programación y conexión, simplemente conecte el convertidor serial USB FTDI, aplique energía de 3.3v a la placa de programación y haga clic en descargar.

Paso 5: Ensamblaje final y prueba

Ahora es un buen momento para una prueba preliminar. Si el ESP12 se programó in situ, debería estar funcionando; solo toque ligeramente la pantalla y debería comenzar. Si está programado fuera de la unidad, inserte el ESP12 y conecte la batería y debería estar funcionando.

Desconecté la batería mientras realizaba el ensamblaje final en parte por conveniencia y en parte para evitar cualquier cortocircuito involuntario.

La pantalla se emparejará perfectamente entre la tapa y la parte inferior de la carcasa. La sección elevada en la base sostiene muy bien la pantalla hacia el lado de la caja.

La placa de circuito debe fijarse a la placa de visualización para que quepa dentro de la tapa y presente la toma de carga USB. Cuando se observe la relación requerida entre las posiciones de las placas, coloque cinta adhesiva de doble cara (del tipo de 1 mm de espesor) en ambas placas. Esto le dará un espacio libre de 2 mm que debería evitar cualquier contacto eléctrico. Coloqué un poco de cinta aislante cubriendo los componentes electrónicos de la pantalla como medida de precaución:

Imagen
Imagen

A continuación, debemos quitar alrededor de 2 mm de la tapa superior. Hice un ajuste perfecto a la pantalla con trozos adicionales cortados para el cable plano de la pantalla táctil y el soporte de plástico de la pantalla. Vea abajo:

Imagen
Imagen
Imagen
Imagen

Por último, debemos colocar la batería y usarla para sostener la pantalla contra el costado de la caja. Utilicé una vieja pieza de espuma de poliestireno y la corté y lijé hasta obtener el grosor requerido. Pegué esto en el PCB de la pantalla con una cinta delgada de doble cara y usé un par de trozos más pequeños de cinta para evitar que la batería se deslizara.

Imagen
Imagen

Cuando lo haya conectado todo y descubra que no pasa nada, no se preocupe (todavía). El circuito de protección de la batería en el módulo del cargador debe reiniciarse. Esto se hace conectándolo a través de un cable micro USB a una fuente de 5v. Unos segundos es suficiente.

¡Y ahora tienes un útil dispositivo que muestra la potencia de los sistemas ESP8266, y en mi caso me llevó a cambiar mi canal WiFi ya que detectó otros 5 en el mismo!

Espero que disfrutes de este hermoso proyecto.

Miguel

Recomendado: