Meshcom es una red Mesh desarrollada por ICSSW para radioaficionados, que funciona en la banda de 430 MHz con modulación LoRa y está interconectada con APRS.
Este protocolo está poco o nada implantado en España. De hecho a 13/10/2026 unicamente aparecian dos estacioens: EA3HVF-12 en Catalunya y DL3HAQ-98 en mallorca
Debe de disponer de una placa de desarrollo ESP 32 - LoRa- 433 MHz de las compatibles con el proyecto, en nuestro caso probamos con dos placas para poder probar el enlace via radio
A continuación se conecta la placa a un ordenador con navegador y se selecciona la URL de la web de flashseo https://esptool.oevsv.at/ y se elije la opción que mas se aproxime a la placa en caso para T3 fue T-Lora
![]() |
| En nuestro caso es la T-Lora |
Para la placa T-Beam fue T-Beam (Default) SX1278
Dos temas a considerar:
- El cable USB debe soportar datos (muchos cables USB son solo de alimentación)
- Si tiene una aplicación ya cargada debe instalar el firmware con borrado (ERASED)
Con la opción LOG & CONSOLE puede ver como ha ido la carga del firmware e incluso hacer un RESET para comprobar que en principio todo va bien
[13:13:42]============
[13:13:42]CLIENT SETUP
[13:13:42]============
[13:13:42][BOOT] RESET_REASON=1 POWERON
[13:13:42][HEAP] 00:00:00 164248 162000 110580 (init)
[13:13:42][PSRM] 00:00:00 0
[13:13:42][INIT]...efuse not used
[13:13:42][INIT]...init_flash
[13:13:42][INIT]...build Oct 2 2026 / 03:22:24
[13:13:42][INIT]...FLASH layout 20260724 ok, build 20260929
[13:13:42][TIME]...Loaded time persistence: saved_time=0, msg_time=0
[13:13:42][INIT]...WIFIAP starting...
[13:13:42][INIT]...WEBServer starting...
[13:13:42][INIT]...init_batt
[13:13:42][INIT]...MCP23017 not found
[13:13:42][INIT]...INA226 not found
[13:13:42][INIT]...RTC not found
[13:13:42][OBUT]...One Button GPIO(12) not activated
[13:13:42][INIT].._GW_ID: XXXXXXXX
[13:13:42][INIT]...Initialize clock: ok
[13:13:42][INIT]...Auto detecting display:
[13:13:42][INIT]...Display type: 0x04
[13:13:42][INIT]...OLED panel is 0.9 inch -> SSD1306
[13:13:42][LoRa]...SX1276 Chip Initializing ... success
[13:13:43][LoRa]...RF_FREQUENCY: 433.175 MHz
[13:13:43][LoRa]...RF_BANDWIDTH: 250 kHz
[13:13:43][LoRa]...RF_SF: 11
[13:13:43][LoRa]...RF_CR: 4/6
[13:13:43][LoRa]...RF_POWER: 20 dBm
[13:13:43][LoRa]...PREAMBLE: 8 symbols
[13:13:43][LoRa]...Starting to listen ... success
[13:13:43][LoRa]...All settings successfully changed
[13:13:43][BLE ]...Device started with BLE-Name <XXXXX>
[13:13:43][BLE ]...Device-Address <XXXXX>
[13:13:43][BLE ]...Waiting a client connection to notify...
[13:13:43]==============
[13:13:43]CLIENT STARTED
[13:13:43]==============
[13:13:43][WIFI]...no connection possible
[13:13:43][HEAP] 00:00:00 149068 148952 110580 (mon)
[13:14:11][TX];refuse;unconfigured;ms;30001;refused;1
![]() |
| Arranque de la lilygo T3 con Mescom4.0 |
Configuración
Ahora es necesario configurar el indicativo y la puerta de enlace y activar esta última. Para ello se puede hacer por linea de comandos desde una consola o programa que la simule cono Putty o con una app desde un dispositivo móvil (Android o iOs) que se conecta a la placa mediante BLE
![]() |
| Pantalla para seleccionar la placa MeshCom con la que queremos enlazar por BLE la app (azul disponible, verde enlazada) |
Indicativo: debe introducir su indicativo de radioaficionado al cual debe añadir un guion y un numero de dispositivo, p.e. EA5JTT-1, al salvarlo en la placa esta se reincia en 15" y aoarcerá en pantalla en CALL:
WiFi: debe configurar la red en SSID y la contraaseña y salvarlo, si todo va bien se reinicia en 15" y aparecerá tambien en panlla como SSID y la IP asignada por la red. Se puede hacer que la IP se asigne automaticamente dejando los campos en blanco o fijar una (IP.mascara, gateway, DNS y NTP), funciona de ambas forams
Gateway : activarlo
Por comandos se necesitarian estos cuatro
- --setcall <call>
- --setssid WIFIssid
- --setpwd WIFIpassword
- --gateway on
Si todo es correcto en el arranque saldrá algo como esto en el LOG
[WIFI]...connect OK
[WIFI]...now listening at IP 192.168.1.89, UDP port 1990
[WIFI]...Internet UDP-DEST meshcom.oevsv.at
[WIFI]...Internet NTP-DEST pool.ntp.org
[GW];srv;OE;host;meshcom.oevsv.at;path;inet;ms;312943
TimeClient no update possible --> CPU-Mode
[WIFI];dns;meshcom.oevsv.at;ip;89.185.97.38;ms;92
[GW];keep;tx;ok;1;ms;313036
[WIFI];dns;pool.ntp.org;ip;178.215.228.24;ms;100
[NTP];ok;epoch;1791906229;rtt;97
[GW];rx;type;BEAT;len;20;ms;313315
[GW];keep;tx;ok;1;ms;342959
[GW];rx;type;BEAT;len;20;ms;343136
para lanzar comandos por consola no se complique con Putty, ni Screen o minicom, basta con volver a la URL de flasheo e ir a LOG
Tecleando ---help tenemos todos los comandos disponibles
--help
MeshCom 4.40a commands (a/b = pick one, <x> = value)
== Show ==
--info node info
- 16:35:36]--info
- [16:35:36]--MeshCom 4.40a (build: Oct 2 2026 / 03:22:22)
- [16:35:36]...UPDATE:
- [16:35:36]...Call: <EA5JTT-1> ...ID XXXXXXXX ...NODE 3 <TLORA_V2_1_1p6> ...UTC-OFF 1.000000 [INIT]
- [16:35:36]...BATT 4.28 V ...BATT 100 % ...MAXV 4.200 V
- [16:35:36]...TIME 430990 ms
- [16:35:36]...Flash-Version 20260724
- [16:35:36]...NOMSGALL off ...MESH on ...BUTTON (12) off ...SOFTSER off ... SOFTSERREAD off
- [16:35:36]...PASSWD <>
- [16:35:36]...DEBUG man ...DEBUG en
- [16:35:36]...DEBUG off ...LORADEBUG off ...NBRDEBUG off ...TXCAPTURE off ...GPSDEBUG off/0 ...SOFTSERDEBUG off
- [16:35:36]...WXDEBUG off ...BLEDEBUG off
- [16:35:36]...NBRRELAY off ...relays A 0 B 0 ...cancelled 0 ...possible 0 ...refused 0 ...NBRSYM on ...NBRREPORT auto
- [16:35:36]...BOOT RESET_REASON=1 POWERON
- [16:35:36]...DisplayInfo off ...DisplayCont off ...DisplyLog off ...contrast 255 ...ackinfo off
- [16:35:36]...EXTUDP off ...EXT IP none ...NOPMOTHER off
- [16:35:36]...BTCODE 000000
- [16:35:36]...APRSMC: APRSMC
- [16:35:36]...ATXT:
- [16:35:36]...NAME:
- [16:35:36]...BLE : short tx s0 r0 d0 t0 e0 mtu0
- [16:35:36]...DISPLAY on
- [16:35:36]...CTRY EU8
- [16:35:36]...FREQ 433.1750 MHz TXPWR 20 dBm RXBOOST off
- [16:35:36]...MAXHOP text 4 / pos 2
- [16:35:36]...BATTERY PIN 35 factor 1.0000
- [16:35:36]...Webserver off / Webpwd <> / Gateway off
- [16:35:36]...NETConsole off
- [16:35:36]...KISS/TCP off / TX off / RxMeta off / Auth off
- [16:35:36]...WIFI-AP off
- [16:35:36]...SSID <********> / PASSWORD <***>
- [16:35:36]...NETWORK Mode:WiFi
- [16:35:36]...hasIpAddress: no
- [16:35:36]
--pos lat/lon/alt/time
--weather temp/hum/press (alias --wx)
--lora LoRa settings
--mheard heard stations, 12 h (alias --mh)
--path routes per sender (alias --hey)
--neighbours neighbour matrix (alias --nbr)
--msgid message-id counter
--io IO config
--showI2C scan I2C bus
--seset show sensor settings
--wifiset show WiFi settings
--nodeset show node settings
--analogset show analog settings
--tel show telemetry settings
- MeshCom 4.40a
- PARM: none
- UNIT: none
- FORMAT: none
- EQNS: none
- VALUES: none
- PTIME: 15
--aprsset show APRS settings
--regex <call> test callsign against the validator
--netconsole net console status
--wifistat WiFi link/counters
--udpstat MeshCom UDP RX/TX counters
== Node ==
--setcall <call> callsign (OE0XXX-1)
--setname <name>/none operator first name (alias --operatorname)
--setctry 0-99 country -> LoRa preset
--setgrc 9;..9; groups
--utcoff +/-99.9 UTC offset h
--settime yyyy.mm.dd hh:mm:ss set clock
--setrtc yyyy.mm.dd hh:mm:ss set RTC chip
--btcode 999999 BLE pairing code
--bleshort BLE advertising short, reboots
--blelong BLE advertising long, reboots
--all display: all frames
--msg display: messages only
--save write settings to flash
--reboot reboot
--deepsleep enter deep sleep
--cleanflash wipe settings flash (recovery)
--ota-update reboot into safeboot OTA
--conffin send config-finished to app
== LoRa / mesh ==
--txpower 99 TX power dBm
--txfreq 999.999 TX frequency MHz
--txbw 999 bandwidth kHz
--txsf 6-12 spreading factor
--txcr 5-8 coding rate 4/x
--maxhop 1-6 text hop limit (no value: show)
--store mailbox status (no value: show)
--mesh on/off relay foreign frames
--shortpath on/off short path
]--via on/off/<call> via callsign
--sendpos send position now
--sendtrack send track/APRS beacon now
--sendhey send HEY beacon now
--sendtele send telemetry now
--posshot one-shot position now
--postime 99 position interval s
== Neighbour matrix ==
--nbrreset clear matrix
--nbrcheck consistency check
--nbrrelay off/count/on relay decision: off / log only / active
--nbrsym on/off assume symmetric links
--nbrreport off/auto/on HN neighbour report
== APRS ==
--symid <c> symbol table
--symcd <c> symbol code
[16:32:29]--aprscomment <t>/none comment (alias --atxt)
[16:32:29]--aprsmc <call> APRS destination call (default APRSMC)
[16:32:29]--track on/off SmartBeaconing
[16:32:29]--gps on/off GPS chip
[16:32:29]--gps reset GPS factory reset
[16:32:29]--gps autosymbol/fixsymbol symbol source
[16:32:29]--setlat 44.12345 latitude
[16:32:29]--setlon 016.12345 longitude
[16:32:29]--setalt 999 altitude m (with GPS: seeds the filter)
[16:32:29]--setublox <cmd> u-blox GPS passthrough
[16:32:29]--setl76k <cmd> L76K GPS passthrough
== Network ==
--setssid <ssid>/none WLAN SSID
--setpwd <pwd>/none WLAN password
--wifiap on/off WLAN access point
--wifitxpower 2-20 WiFi TX power dBm
--setownip a.b.c.d static IP
--setowngw a.b.c.d gateway
--setownms a.b.c.d netmask
[16:32:29]--setowndns a.b.c.d DNS server
[16:32:29]--setownntp a.b.c.d NTP server
--gateway on/off/pos/nopos MeshCom gateway
--gateway srv OE/DL/IT gateway server, reboots
[16:32:29]--setudpcall <call> UDP callsign
[16:32:29]--sethamnet on/off HAMNET server
[16:32:29]--setinet on/off internet server
[16:32:29]--extudp on/off external UDP
[16:32:29]--extudpip a.b.c.d/none external UDP peer
[16:32:29]--nopmother on/off no foreign DMs to EXTUDP peer
[16:32:29]--webserver on/off web server
[16:32:29]--webpwd <pwd>/none web password
[16:32:29]--webtimer 0 reset web session timer
[16:32:29]--netconsole on/off console on TCP 2323
[16:32:29]--passwd <pwd>/none net console password
[16:32:29]--kiss on/off KISS/TCP port 8001
[16:32:29]--kiss tx on/off KISS may transmit
[16:32:29]--kiss meta on/off KISS metadata frames
[16:32:29]--kiss auth on/off KISS authentication
[16:32:29]--udplog on/off one [UDP] line per datagram
== Sensors / battery ==
[16:32:29]--bmp on use BMP280
[16:32:29]--bme on use BME280
[16:32:29]--680 on use BME680
[16:32:29]--811 on use CCS811
[16:32:29]--390 on use BMP390
[16:32:29]--bmx off BMx280/390/680 off
[16:32:29]--bmp off BMx280/390 off
[16:32:29]--bme off BMx280/390 off
[16:32:29]--680 off BME680 off
[16:32:29]--390 off BMP390 off
[16:32:29]--811 off CCS811 off
[16:32:29]--setpress latch QNH at current altitude
[16:32:29]--aht20 on/off AHT20
[16:32:29]--sht21 on/off SHT21
[16:32:29]--onewire on/off 1-Wire DSxxxx
[16:32:29]--onewire gpio 99 1-Wire pin
[16:32:29]--ina226 on/off INA226
[16:32:29]--shunt 9.999 INA226 shunt ohms
[16:32:29]--imax 9.9 INA226 max current A
[16:32:29]--isamp 9 INA226 sample count
[16:32:29]--batt factor 9.9 battery ADC factor
[16:32:29]--maxv 9.99 100% battery voltage
[16:32:29]--volt on/off show battery voltage
[16:32:29]--proz on/off show battery percent
[16:32:29]--tempoff in/out 9.9 temperature offset
[16:32:29]--button on/off user button check
[16:32:29]--button gpio 99 user button pin
[16:32:29]--setio a0-b7 in/out MCP IO pin mode
[16:32:29]--setio clear clear MCP IO config
[16:32:29]--setout a0-b7 on/off MCP output
== Telemetry ==
[16:32:29]--parm tm1,..,tm5 value names (unused: blank)
[16:32:29]--unit tm1,..,tm5 units (unused: blank)
[16:32:29]--format 1,1,1,1,1 decimals (unused: 0)
[16:32:30]--eqns 0,1,0,... equations, 15 values
[16:32:30]--values press,hum,temp,onewire,co2 value sources
[16:32:30]--ptime 99 interval min
[16:32:30]== Display ==
[16:32:30]--display on/off display
[16:32:30]--nomsgall on/off hide '*' messages
[16:32:30]--contrast 1-255 OLED contrast
[16:32:30]--persiststat NVS-only values
[16:32:30]--board led on/off board LED
== Debug ==
[16:32:30]--debug on/off debug output
[16:32:30]--debug csv/man output format
[16:32:30]--debug en/de output language
[16:32:30]--bledebug on/off BLE debug
[16:32:30]--loradebug on/off LoRa debug
[16:32:30]--txcapture on/off TX capture
[16:32:30]--nbrdebug on/off neighbour debug
[16:32:30]--viadebug on/off via debug
[16:32:30]--wxdebug on/off weather debug
[16:32:30]--gpsdebug on/off GPS debug (also 2/0)
[16:32:30]--ackinfo on/off show who ACKed (not saved)
[16:32:30]--setinfo on/off LoRa info lines on serial
[16:32:30]--setcont on/off verbose serial output
[16:32:30]--setretx on/off retransmit info on serial
[16:32:30]--setlog on/off/<call> log one callsign
--pingcall <call> ping target
--pingtime 99 ping interval s
--pingmax 99/max ping count limit
--ping start/stop start/stop pinging
[16:32:30]--spectrum spectral scan
[16:32:30]--specstart 999.9 scan start MHz
[16:32:30]--specend 999.9 scan end MHz
[16:32:30]--specstep 9.9 scan step MHz
[16:32:30]--specsamples 500-2048 scan samples
Pruebas
Enviar un mensaje al canal publico
Suscribirse al grupo 2 (Europa) y 214 (España) y enviar un mensaje
![]() | |
|
Mirar algun nodo activo y enviarles uno directo
![]() |
| https://meshmap.oevsv.at/messages |
Monitorización
![]() |
| Mapa con los nodos MeshCom https://meshmap.oevsv.at/ |
![]() |
| Cuadro de control de la red en https://meshcom.oevsv.at/# |
![]() |
| Monitorización de los mensajes con https://meshcom.oevsv.at/# Recuerde que entre estaciones de radioaficionados no pueen ir los mensajes cifrados a diferencia de MeshCore |
Poniendo nuestros nodos en el mapa
Cuando se establece un contacto via radio se actualiza el mapa de MeschCom y el de APRS
![]() |
| https://meshmap.oevsv.at/ |
![]() |
| https://aprs.fi/ |
![]() |
| Mi primer QSO via radio |
![]() |
| Mi primer QSO via Internet |
Advertencia importante
Las modificaciones, configuraciones y procedimientos descritos en este sitio pueden implicar riesgos técnicos, legales o de seguridad. El autor no se responsabiliza del mal funcionamiento de los equipos, daños permanentes, pérdida de garantía ni de posibles infracciones legales derivadas del uso de esta información.
El lector asume plena responsabilidad por cualquier acción que decida realizar basándose en el contenido de este blog.
© 2026 EA5JTT. Queda prohibida la reproducción total o parcial sin autorización expresa del autor.











.jpg)

No hay comentarios:
Publicar un comentario