Tabla de contenido:

Escáner Nano ESP32 BLE: 14 pasos (con imágenes)
Escáner Nano ESP32 BLE: 14 pasos (con imágenes)

Video: Escáner Nano ESP32 BLE: 14 pasos (con imágenes)

Video: Escáner Nano ESP32 BLE: 14 pasos (con imágenes)
Video: Programar ESP32 con Arduino IDE 2024, Noviembre
Anonim
Escáner Nano ESP32 BLE
Escáner Nano ESP32 BLE

Estos instructivos muestran cómo usar ESP32 para hacer un escáner de señal BLE inalámbrico, todos los datos escaneados se enviarán al servidor HTTP a través de WiFi.

Paso 1: ¿Por qué BLE Scanner?

¿Por qué BLE Scanner?
¿Por qué BLE Scanner?

La señal BLE (Bluetooth Low Energy) es muy común para dispositivos digitales actuales, teléfonos móviles, muñequeras, iBeacon, etiquetas de activos. Esta señal no solo lo ayuda a emparejar los dispositivos, sino que también puede informar el estado del dispositivo, como el nivel de la batería, la frecuencia cardíaca, el movimiento (caminar, correr, caer), temperatura, botón de pánico, anti-pérdida … etc.

Es una gran cantidad de datos valiosos para el seguimiento de la ubicación si podemos recopilar la señal BLE en un cierto número de posiciones.

A largo plazo, el escáner BLE debería fijarse en la posición seleccionada. Sin embargo, seleccionar un lugar adecuado requiere prueba y error. Un pequeño escáner BLE inalámbrico es útil para ayudarlo a verificar dónde está el lugar correcto.

Paso 2: preparación

Preparación
Preparación
Preparación
Preparación

Tablero ESP32

Estoy usando la placa ESP-WROOM-32 esta vez.

Un pequeño contenedor

Cualquier contenedor pequeño debería estar bien, tengo una pequeña caja TicTac en la mano y solo cabe una placa ESP32, ¡qué coincidencia!

Batería Lipo

La corriente máxima del ESP32 es de alrededor de 250 mA. Para no consumir más de 1C de corriente en ningún momento, la batería Lipo debe tener una capacidad superior a 250 mAh. 852025 es el tamaño máximo que puede caber en la caja Tictac y afirma que tiene 300 mAh, es lo suficientemente bueno.

Circuito regulador de potencia

Un regulador LDO de 3.3 V, algunos condensadores, tengo un regulador HT7333A, condensador de 22 uf y 100 uf en la mano

Otros

Una resistencia SMD de 10k Ohm para pull up EN pin, una pequeña pieza de PCB multipropósito, un interruptor de encendido, algunos cables revestidos, cabezal de 7 pines

Muelle de desarrollo ESP32

En el proceso del programa, también requiere una base de desarrollo ESP32, puede encontrar cómo hacerlo en mis instrucciones anteriores:

www.instructables.com/id/Battery-Powered-E…

Paso 3: recorta la PCB

Recorta la PCB
Recorta la PCB

Mide la dimensión de tu pequeño recipiente y recorta la PCB para que encaje en él.

Paso 4: Encabezado del pin de soldadura

Encabezado de pin de soldadura
Encabezado de pin de soldadura

Comencemos a soldar desde el cabezal de 7 pines y la PCB.

Paso 5: circuito de potencia de soldadura

Circuito de potencia de soldadura
Circuito de potencia de soldadura
Circuito de potencia de soldadura
Circuito de potencia de soldadura
Circuito de potencia de soldadura
Circuito de potencia de soldadura

Aquí está el resumen de la conexión:

LDO Vin -> encabezado de pin Vcc (1) -> interruptor de encendido -> Lipo V +, encabezado de pin de carga (7)

LDO GND -> conector de pin GND (2), condensadores V- pins, ESP32 GND LDO Vout -> condensadores V + pins, ESP32 Vcc

Paso 6: Resistencia de extracción de soldadura

Resistencia de extracción de soldadura
Resistencia de extracción de soldadura

Es el trabajo de soldadura más difícil en este proyecto, el ancho del pin en la placa ESP32 es de solo 1.27 mm. Afortunadamente, el pin Vcc y EN está cerca, puede dirigir la resistencia de soldadura entre ambos pines sin cable.

Pin ESP32 Vcc -> Resistencia de 10k Ohm -> Pin ESP32 EN

Paso 7: Pasadores del programa de soldadura

Pines de programa de soldadura
Pines de programa de soldadura

Aquí está el resumen de la conexión:

Cabecera de pin Tx (3) -> Pin Tx ESP32

Cabecera de pin Rx (4) -> Pin Rx ESP32 Cabecera de pin de programa (5) -> Pin RST ESP32 GPIO 0 pin Cabecera de pin RST (6) -> Pin ESP32 EN

Paso 8: Limpieza de la caja TicTac

Limpieza de la caja TicTac
Limpieza de la caja TicTac
  • Come todos los dulces
  • Quita las pegatinas

Paso 9: apriételo en la caja

Apriete en la caja
Apriete en la caja
Apriete en la caja
Apriete en la caja
Apriete en la caja
Apriete en la caja

Apriete todos los componentes en la caja TicTac, tenga cuidado de no arrancar ningún cable.

Paso 10: Prepare el software

Preparar el software
Preparar el software
Preparar el software
Preparar el software

IDE de Arduino

Descargue e instale Arduino IDE si aún no lo ha hecho:

www.arduino.cc/en/Main/Software

arduino-esp32

Instalar soporte de hardware para ESP32

Instrucciones detalladas para la instalación en sistemas operativos populares.

Para Linux: https://www.arduino.cc/en/Guide/Linux (consulte también la página de juegos de Arduino

Para macOS X:

Para Windows:

Ref.:

Paso 11: Programe el ESP32

Programar el ESP32
Programar el ESP32
Programar el ESP32
Programar el ESP32
Programar el ESP32
Programar el ESP32
Programar el ESP32
Programar el ESP32
  • Descarga el programa Arduino:
  • Modificar parámetros:

#define WIFI_SSID "YOURAPSSID"

#define WIFI_PASSWORD "YOURAPPASSWORD" #define POST_URL "https:// YOURSERVERNAMEORIP: 3000 /"

  • Seleccionar tablero: Cualquier tablero ESP32
  • Seleccionar partición: Sin OTA / SPIFFS mínimo
  • Subir

Paso 12: recibir datos

Recibir datos
Recibir datos

Si aún no tiene ningún servidor HTTP para recibir los datos POST, puede intentar utilizar este sencillo programa Node.js:

Aquí están los datos de muestra recibidos:

Mar 20 de marzo de 2018 08:44:41 GMT + 0000 (UTC): [{"Dirección": "6e: 3d: f0: a0: 00: 36", "Rssi": -65, "ManufacturerData": "4c0010050b1047f0b3"}, {"Address": "f8: 04: 2e: bc: 51: 97 "," Rssi ": -94," ManufacturerData ":" 75004204018020f8042ebc5197fa042ebc519601000000000000 "}, {" Address ":" 0c: 07: 4a: fa: 60: dd "," Rssi ": -96," ManufacturerData ": "4c0009060304c0a80105"}]

Paso 13: Medición de potencia

Medida de potencia
Medida de potencia
Medida de potencia
Medida de potencia
Medida de potencia
Medida de potencia

El programa escanea la señal BLE durante 30 segundos, luego duerme profundamente 300 segundos y luego vuelve a escanear. Por cada bucle, consume alrededor de 3,9 mWh.

Teóricamente, se puede ejecutar: (Actualizaré el resultado de la prueba más adelante en mi Twitter)

Lipo de 300 mAh / 3,9 mWh a 330 segundos

= [(300 mA * 3,3 V) mWh / 3,9 mWh * 330] segundos ~ 83769 segundos ~ 23 horas

2018-04-08 Actualización:

He cambiado para usar el regulador LDO XC6503D331 y he realizado 2 mediciones:

Ronda 1: 12:43:28 - 16:42:10 (~ 20 horas) 210 POST de escaneo BLE recibido

Ronda 2: 10:04:01 - 05:36:47 (~ 19.5 horas) 208 POST de escaneo BLE recibido

Paso 14: ¡Feliz escaneo

¡Feliz escaneo!
¡Feliz escaneo!

¡Es hora de encontrar un lugar para configurar su red de seguimiento BLE!

Recomendado: