Cómo monitorear visualmente tu red Meshtastic con MeshSense
Si alguna vez has construido una red autónoma usando placas como Heltec o TTGO T-Beam con firmware Meshtastic, probablemente te hayas encontrado con el típico problema de observabilidad. Los nodos están dispersos en tejados, balcones o mochilas, y estar mirando una diminuta pantalla de 0,96 pulgadas o navegando por una aplicación móvil solo para evaluar rutas rápidamente se vuelve agotador. Quieres un dashboard adecuado con un mapa, gráficas de intensidad de señal y rastreo de paquetes.
El proyecto MeshSense resuelve exactamente este problema. Es una aplicación ligera de código abierto que se conecta a tu nodo Meshtastic y renderiza un mapa en vivo con todos los parámetros de la red.

Qué puede hacer la aplicación
La característica principal de MeshSense es la recopilación de estadísticas en tiempo real sin trucos ni integraciones complejas. Simplemente lo conectas al nodo base a través de Bluetooth o Wi-Fi regular, y la interfaz comienza a recopilar datos de la zona circundante.
Estos son los escenarios principales donde el dashboard ahorra tiempo:
- Topología y mapa de nodos. La aplicación muestra claramente qué nodos están activos actualmente, sus ubicaciones GPS físicas y cuándo se comunicaron por última vez.
- Rastreo de rutas. La función traceroute te permite ver al instante cuántos relés intermedios atravesó un paquete y cuál fue la ruta óptima.
- Informes de calidad de señal. Puedes monitorear los niveles de SNR y recepción de cada nodo para ajustar antenas direccionales o identificar zonas muertas en la ciudad.
- Monitoreo de estado del hardware. Se muestran la carga de la batería, la temperatura y los datos de telemetría de dispositivos remotos.
Ejecutar en un servidor y en modo headless
Más allá de la versión de escritorio Electron, el proyecto funciona bien en computadoras de placa única como Raspberry Pi situadas cerca de la estación de radio base.
Hay disponible un modo headless para operación sin interfaz gráfica. MeshSense inicia un servidor web local accesible desde cualquier navegador de la red local, protegido con una clave secreta:
export ADDRESS=10.0.1.20 # IP-адрес вашей Meshtastic ноды
export PORT=5920 # Порт веб-интерфейса
ACCESS_KEY=mySecretKey ./meshsense-x86_64.AppImage --headless
Al ejecutar la aplicación en una placa ARM64 sin monitor, los desarrolladores sugieren lanzar AppImage a través de un framebuffer virtual:
dbus-run-session xvfb-run ./meshsense-arm64.AppImage --headless \
--disable-gpu --in-process-gpu --disable-software-rasterizer
Para sistemas basados en Debian o Ubuntu, instala un par de paquetes antes de iniciar AppImage: libfuse2 para que el contenedor funcione y fonts-noto-color-emoji para que los iconos se muestren correctamente en la interfaz.
Bajo el capó
La arquitectura del proyecto se divide en tres componentes: un frontend basado en Vite, un backend de API en Node.js y un wrapper de Electron.
Hay un detalle de implementación interesante en el código: para la interacción directa con módulos de radio a través de Bluetooth, los desarrolladores construyeron un módulo personalizado webbluetooth vinculado a libdbus-1-dev y cmake del sistema. Esto significa que al compilar localmente desde el código fuente, primero necesitarás compilar el binding binario:
git clone --recurse-submodules https://github.com/Affirmatech/MeshSense.git
cd MeshSense
# Сборка нативной зависимости для Bluetooth
cd api/webbluetooth
npm i
npm run build:all
cd ../..
# Установка остальных пакетов
./update.mjs
Para desarrollo, el inicio se divide en dos procesos independientes. El frontend comienza en el puerto 59 y el backend en el puerto 59, proxea automáticamente las rutas no manejadas a Vite:
# В первом терминале (UI)
cd ui
PORT=5921 npm run dev
# Во втором терминале (API)
cd api
export DEV_UI_URL=http://localhost:5921
PORT=5920 npm run dev
En el README, los autores advierten honestamente sobre un bug del modo dev: cuando Vite hace hot-reload, las suscripciones a eventos de estado a veces se duplican, causando que las líneas de log aparezcan dos veces. Esto se soluciona simplemente recargando la página en el navegador.
Para quién es útil el proyecto
MeshSense es una utilidad práctica para radioaficionados, entusiastas de LoRa y quienes construyen redes de comunicación descentralizadas para senderismo, casas de campo o mensajería urbana de respaldo. Elimina la necesidad de analizar registros manualmente a través de un puerto serie o adivinar por qué un paquete no llegó a la siguiente colina.
Si ya tienes un servidor doméstico o Raspberry Pi en funcionamiento con un nodo LoRa conectado, tiene sentido añadir MeshSense a tu inicio y obtener una vista clara de las ondas justo frente a ti.
Proyectos relacionados