Wiznet makers

matthew

Published May 04, 2026 ©

163 UCC

9 WCC

41 VAR

0 Contests

0 Followers

1 Following

Original Link

MeshCom

MeshCom is a LoRa/APRS off-grid messaging network for amateur radio, extended through W5500/W5100S Ethernet gateways to HAMNET or IP networks.

COMPONENTS
PROJECT DESCRIPTION

MeshCom Firmware — LoRa/APRS Off-Grid Mesh Messaging with WIZnet Ethernet Gateway Support


PROJECT DESCRIPTION

📌 Overview

MeshCom is a firmware project for building an off-grid text messaging network for amateur radio operators. It uses LoRa radio modules and APRS-style messages to exchange short text, position reports, status data, weather data, and telemetry even when normal communication infrastructure is unavailable. The README describes MeshCom as a low-energy, cost-effective, text-based communication tool using LoRa modulation and the APRS protocol in the 70 cm band.

This is not just a simple LoRa chat example. Each node is identified by an amateur radio callsign and optional SSID. Messages can be sent to all nodes or directly to a specific callsign. Some nodes can also operate as gateways to HAMNET or the Internet, and each node can act as a repeater for other MeshCom messages over the air.

MeshCom is especially relevant to Emergency Communication (EMCOM). In disaster, blackout, or infrastructure failure scenarios, a low-power LoRa mesh combined with HAMNET or Internet gateways can extend communication coverage beyond a single local radio group. The README explicitly points to emergency communication during disasters and blackouts as an important use case.


📌 Features

LoRa-based off-grid mesh communication
MeshCom’s primary communication layer is LoRa radio. The README lists regional frequencies such as 433.175 MHz for several regions, and documents LoRa parameters including SF 11, 250 kHz bandwidth, and coding rate 4/6.

APRS-style message structure
MeshCom 4.0 uses the APRS protocol reference for source, destination, digipeater, and payload data. Text messages, position reports, weather messages, and telemetry data are handled within this message structure.

Callsign-based node identity
Each node is identified by an amateur radio callsign and optional SSID. Messages can target all nodes or a specific callsign, and direct messages can use end-to-end acknowledgement.

Gateway and repeater operation
A MeshCom node can operate as a standard mesh node, a repeater, or a gateway to HAMNET or Internet-connected message infrastructure. This allows local LoRa-only networks to be bridged into wider messaging networks.

Position, status, weather, and telemetry reporting
Nodes can automatically send status and position messages. Nodes with sensors can also periodically send weather or telemetry data.

Wide hardware support
The README lists many supported LoRa hardware platforms, including TTGO T-Beam, Heltec LoRa boards, T-Deck, RAK4631, Ebyte E22, and T-ETH-ELITE variants across ESP32, ESP32-S3, and nRF52840 families.


📌 System Architecture

MeshCom can be understood as a combination of LoRa mesh nodes, optional gateway nodes, and an external IP-side message bridge.

A regular node sends and receives MeshCom packets over LoRa. Received messages can be shown on a small OLED display, a BLE-connected smartphone or tablet, or a USB serial console. The node can also repeat messages for other nodes, helping the mesh extend coverage over the air.

A gateway node adds IP connectivity. It can forward LoRa-side traffic to an external UDP server over HAMNET or the Internet, and it can also receive UDP messages from that external side and re-inject them into the LoRa mesh. In the nRF52 Ethernet implementation, incoming UDP packets are parsed by indicators such as GATE, CONF, and BEAT; GATE packets are treated as LoRa packets to be transmitted, while CONF and BEAT are used for configuration and heartbeat handling.

There is also an external UDP JSON interface. extudp_functions.cpp converts LoRa/APRS messages into JSON and sends them to an external UDP destination. It also receives external JSON messages and converts them back into MeshCom messages for LoRa transmission. The code path supports Wi-Fi, Ethernet, and RAK13800 Ethernet environments through conditional handling.

In short, MeshCom is not only a LoRa messaging firmware. It is also designed to act as a bridge between local LoRa mesh networks and wider IP-based message networks.


📌 Role and Application of the WIZnet's Chip

WIZnet products used: W5500 / W5100S

In this project, WIZnet chips provide the wired Ethernet interface for MeshCom gateway nodes. A normal MeshCom node can exchange messages over LoRa, but an Ethernet-enabled node can connect that LoRa mesh to HAMNET or Internet-side UDP services.

For the ESP32-S3-based T-ETH-ELITE_1262 variant, Ethernet is explicitly enabled with HAS_ETHERNET, and W5500 pin mapping is defined in the board configuration. The configuration file assigns CS, INT, RST, SCLK, MISO, and MOSI pins for the W5500 while also defining the LoRa SX1262-related settings.

The ESP32 Ethernet implementation initializes Ethernet using ETH_PHY_W5500 and passes the W5500 CS, INT, RST, and SPI pins to ETH.begin(). It then supports either static IP configuration or DHCP. If DHCP fails, it falls back to a local IP configuration. UDP is started on EXTERN_PORT, and sendUDP() / checkUDP() handle external UDP communication.

For nRF52840 / RAK4631-based builds, the project uses the RAK13800 Ethernet Shield, which is based on WIZnet W5100S. The nRF52 Ethernet code includes RAK13800_W5100S.h, and PlatformIO lists https://github.com/icssw-org/RAK13800-W5100S as a dependency for nRF52 Ethernet support.

In practical terms, W5500 and W5100S turn a LoRa-only MeshCom node into an IP-connected gateway node. The LoRa radio handles local off-grid communication, while WIZnet Ethernet provides the wired path to HAMNET or Internet-based UDP services.


📌 Implementation Notes

The ESP32 Ethernet path uses ETHClass2 and EthernetUDP. In the T-ETH-ELITE variant, PlatformIO pulls in ETHClass2 and the Arduino Ethernet library, and defines the BOARD_T_ETH_ELITE build flag.

EspETH::initethDHCP() initializes W5500 Ethernet and then chooses between static configuration and DHCP mode. If a fixed IP is configured, gateway, subnet, and DNS settings are applied. Otherwise, the firmware tries DHCP. If DHCP fails, the code falls back to 192.168.4.1.

The nRF52 Ethernet implementation uses Ethernet.begin() for DHCP or fixed IP and checks Ethernet link status. On UDP receive, a GATE message is converted into a LoRa packet, a CONF message updates settings such as callsign, shortname, and position information, and a BEAT message is used as a server heartbeat.

The external UDP JSON path converts received LoRa/APRS messages into JSON for external systems, and also turns incoming JSON commands into MeshCom messages for LoRa transmission. This makes it easier to connect MeshCom to external dashboards, servers, or gateway services.


📌 Market & Application Value

MeshCom is closer to an amateur radio, citizen science, emergency communication, and low-power mesh networking platform than to a consumer messaging product.

The most direct use cases include:

emergency text communication during disasters or blackouts

low-power mesh networking for outdoor or remote areas

amateur radio position and status exchange

weather and telemetry reporting from remote nodes

gateway operation between LoRa mesh and HAMNET/IP networks

APRS-style experimentation and integration

Ethernet-enabled gateway nodes are especially valuable because they extend the reach of the LoRa network. When a local MeshCom radio network is connected to HAMNET or an IP network, messages can move between MeshCom networks that are not directly connected by radio. The README describes this gateway concept as a way for separated MeshCom radio networks to communicate through HAMNET-connected gateways.

It is also important to note the amateur radio context. The README states that MeshCom use cases should respect Amateur Radio Service rules, including non-commercial and experimental operation. So this should be understood as an amateur-radio and citizen-science communication platform, not a commercial messaging service.


📌 External Indicators

This repository is not a single-board proof of concept. It is a broad firmware project with many supported boards and build targets. The PlatformIO configuration includes ESP32, ESP32-S3, T-Deck, Heltec, TTGO T-Beam, RAK4631, T-ETH-ELITE_1262, and several other environments.

The README also documents firmware flashing, OTA update, NVS erase, ESP32/ESP32-S3 flash addresses, and RAK4631 UF2 update methods. This suggests that the project is intended for real users and field updates, not only for lab experimentation.

The hardware ID table also lists many LoRa board generations, which shows that MeshCom is evolving across multiple amateur radio hardware platforms rather than targeting only one board.


📌 WIZnet Strategic Value

In this project, WIZnet chips are not used for a simple web server or TCP demo. W5500 and W5100S are used as gateway interfaces between LoRa mesh and IP networks.

MeshCom’s core value is off-grid LoRa communication, but wider coverage requires a bridge to HAMNET or Internet-connected infrastructure. WIZnet Ethernet provides a wired and predictable network path for those gateway nodes. This is especially useful for fixed amateur radio stations, club stations, and emergency communication sites where stable wired connectivity is preferred.

This makes MeshCom a strong example of WIZnet Ethernet being used as a backhaul interface for low-power wireless mesh networks. LoRa handles the local radio side, while WIZnet Ethernet connects the mesh to external IP-based services.


📌 Summary

MeshCom Firmware is a project for building an off-grid amateur-radio messaging network using LoRa and APRS-style messages. Each node is identified by a callsign, can exchange text, position, status, weather, and telemetry data, and can operate as a repeater or gateway.

WIZnet chips support MeshCom gateway operation. ESP32-S3 T-ETH-ELITE variants use W5500 Ethernet, while nRF52/RAK4631 builds use the RAK13800 W5100S Ethernet shield. Through this Ethernet path, a MeshCom node can connect the LoRa mesh to HAMNET or Internet-side UDP networks.

Ultimately, this project shows how LoRa mesh and WIZnet Ethernet can work together: LoRa provides local off-grid radio coverage, while WIZnet Ethernet provides the gateway path to wider IP-based message networks.


📌 FAQ

Q1. What is MeshCom?
MeshCom is an off-grid text messaging network for amateur radio, using LoRa and APRS-style messages.

Q2. When is this project useful?
It is useful for emergency communication, disaster or blackout scenarios, outdoor activities, amateur radio experiments, and low-power position/status reporting.

Q3. What does the WIZnet chip do?
W5500 or W5100S provides wired Ethernet for MeshCom gateway nodes, allowing LoRa mesh traffic to connect to HAMNET or Internet-side UDP services.

Q4. Where is W5500 used?
W5500 is used in the ESP32-S3 T-ETH-ELITE_1262 variant. The configuration defines W5500 Ethernet pins, and the code initializes Ethernet using ETH_PHY_W5500.

Q5. Where is W5100S used?
W5100S is used through the RAK13800 Ethernet Shield in the nRF52 / RAK4631 Ethernet implementation.

Q6. Is MeshCom a commercial messaging product?
No. The README states that MeshCom should follow Amateur Radio Service rules, including non-commercial and experimental operation.

Documents
Comments Write