The official firmware for Meshtastic, an open-source, off-grid mesh communication system. https://meshtastic.org
Find a file
Carlos Valdes ce7444c1a1
feat: add WIZnet W5500-EVB-Pico2 + E22P-868M30S variant (#10552)
* feat: add WIZnet W5500-EVB-Pico2 + E22P-868M30S variant

Adds a community variant for the WIZnet W5500-EVB-Pico2 development
board (https://docs.wiznet.io/Product/iEthernet/W5500/w5500-evb-pico2)
paired with an external EBYTE E22P-868M30S LoRa module.

This is the hardware twin of variants/rp2350/diy/pico2_w5500_e22 — same
LoRa pinout, same W5500 pin mapping — and reuses its variant.h verbatim
via `-I variants/rp2350/diy/pico2_w5500_e22`. No duplicated pinout file.

Two differences vs pico2_w5500_e22 justify the separate env:

1. Board target: `wiznet_5500_evb_pico2` (2 MB flash) instead of
   `rpipico2` (4 MB flash). The WIZnet PCB ships with a smaller Q-SPI
   chip than a stock Pi Pico 2. Selecting the correct board makes the
   linker fail fast on overflow instead of producing a UF2 that gets
   silently truncated when flashed to the device.
2. W5500 PHY is integrated on the PCB (hard-wired SPI0 GP16-20) rather
   than supplied as an external module the user wires manually.

The E22P-868M30S uses a single combined RFEN pin (LNA + PA enable)
instead of the older E22-900M30S's split RXEN/TXEN pins. RFEN is held
HIGH at all times via `SX126X_ANT_SW 3`; TX switching still uses the
on-module DIO2 → TXEN bridge through `SX126X_DIO2_AS_RF_SWITCH`.

Build verified: wiznet_5500_evb_pico2_e22p SUCCESS
(RAM 19.2%, Flash 65.6% of 1.5 MB partition / 2 MB chip).

* style(wiznet-evb-pico2-e22p): prettier-format README tables

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2026-06-05 09:08:43 -05:00
.claude/commands Implement rotating JSONL recorder for persistent logging (#10428) 2026-05-10 09:22:40 -05:00
.clusterfuzzlite Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
.devcontainer Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
.github Size change reporting (#10488) 2026-06-04 06:31:27 -05:00
.trunk Merge remote-tracking branch 'origin/master' into develop 2026-05-19 05:37:01 -05:00
.vscode VSCode: Prepare for pioarduino transition (#10471) 2026-05-13 09:25:11 -05:00
bin missing module config (#10496) 2026-06-05 08:34:28 -05:00
boards Add Heltec mesh node t1 (#10416) 2026-05-29 12:47:09 -05:00
branding spelling fixes in .md files (#9810) 2026-03-05 08:54:57 +11:00
data/static Bundle WebUI (#878) 2021-10-09 17:15:12 +11:00
debian Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
extra_scripts ESP32: Migrate to Arduino 3.x (pioarduino) (#9122) 2026-05-17 18:53:32 -05:00
images No idea why trunk wants to disturb these PNGs but... 2024-10-08 05:34:41 -05:00
mcp-server Automatic variable hop limits based on mesh activity and size estimation (#10176) 2026-06-04 05:59:49 -05:00
meshtestic@dcac7e5673 python3 ref 2024-09-24 15:24:08 -05:00
monitor run trunk fmt -a (#9400) 2026-01-22 15:46:37 -06:00
protobufs@8b68f27367 Update protobufs (#10614) 2026-06-02 19:25:35 -04:00
release Cleans up visibility in GPS.h (#5426) 2024-11-23 06:10:09 -06:00
src fix: FEM Sleep/Wake Fix - Enable PA after sleep (#10617) 2026-06-04 20:40:05 -05:00
test Automatic variable hop limits based on mesh activity and size estimation (#10176) 2026-06-04 05:59:49 -05:00
variants feat: add WIZnet W5500-EVB-Pico2 + E22P-868M30S variant (#10552) 2026-06-05 09:08:43 -05:00
zephyr feat: add Nordic nRF54L15-DK variant (Zephyr + BLE + LoRa) (#10193) 2026-05-16 06:16:11 -05:00
.dockerignore Initial commit of a fuzzer for Meshtastic (#5790) 2025-01-16 18:42:21 -06:00
.env.example meshtasticd-docker: simplify, add USB compose (#5662) 2024-12-26 12:59:26 -06:00
.envrc Add initial Nix shell (#8530) 2026-01-29 10:06:58 -06:00
.gitattributes update gitattributes for windows (#6289) 2025-03-11 13:05:51 -05:00
.gitignore feat: add Nordic nRF54L15-DK variant (Zephyr + BLE + LoRa) (#10193) 2026-05-16 06:16:11 -05:00
.gitmodules Consume device-ui as a pio library (#6193) 2025-03-05 16:19:59 -06:00
.gitpod.yml add a .yml to setup a Gitpod instance quickly (#4551) 2024-08-23 20:24:23 -05:00
.mcp.json Add MCP server for interacting with meshtastic devices and testing framework / TUI (#10194) 2026-04-18 08:17:44 -05:00
.semgrepignore Fix de/compression buffer overflows in TAK packets (#4317) 2024-07-23 06:16:53 -05:00
AGENTS.md Some fixes and tidies for testing both online and in unit_tests 2026-06-03 02:47:23 +01:00
alpine.Dockerfile Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
CODE_OF_CONDUCT.md Trunk 2024-11-28 06:26:51 -06:00
CONTRIBUTING.md lol of course trunk fmt 2024-09-04 15:33:28 -07:00
default_8MB.csv ESP32: Migrate to Arduino 3.x (pioarduino) (#9122) 2026-05-17 18:53:32 -05:00
default_16MB.csv ESP32: Migrate to Arduino 3.x (pioarduino) (#9122) 2026-05-17 18:53:32 -05:00
docker-compose.yml meshtasticd-docker: simplify, add USB compose (#5662) 2024-12-26 12:59:26 -06:00
Dockerfile Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
Dockerfile.test Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
flake.lock Add initial Nix shell (#8530) 2026-01-29 10:06:58 -06:00
flake.nix Add initial Nix shell (#8530) 2026-01-29 10:06:58 -06:00
LICENSE move my bt experiment into its own repo (about to remove ttn) 2020-02-01 08:30:53 -08:00
meshtasticd.spec.rpkg Remove fragile JSON libraries from the firmware while retaining Meshtasticd JSON support (#10152) 2026-06-03 16:47:30 +02:00
partition-table-8MB.csv reorganize 8MB partition for MUI devices (#7860) 2025-09-08 05:56:47 -05:00
partition-table.csv - new Bootloader for ESP-IDF 4.2 2022-09-26 22:42:58 +02:00
platformio.ini Remove reocurring pio deps for SHT sensors (#10601) 2026-06-02 06:23:23 -04:00
pyocd.yaml Add semihosting support for nrf52 devices (#4137) 2024-06-24 10:27:37 -05:00
README.md Trunk fmt 2025-11-20 06:14:29 -06:00
renovate.json Renovate: Don't update branches outside the schedule (daily) (#10039) 2026-03-30 14:36:59 -05:00
rpkg.conf rpkg Fedora packaging (#5735) 2025-01-13 12:24:05 +08:00
SECURITY.md Update security policy to reflect new stage 2026-01-02 06:42:28 -06:00
shell.nix Add initial Nix shell (#8530) 2026-01-29 10:06:58 -06:00
suppressions.txt Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
userPrefs.jsonc feat: add Nordic nRF54L15-DK variant (Zephyr + BLE + LoRa) (#10193) 2026-05-16 06:16:11 -05:00
version.properties Develop is 2.8 WIP now 2026-05-13 13:50:17 -05:00

Meshtastic Logo

Meshtastic Firmware

GitHub release downloads CI CLA assistant Fiscal Contributors Vercel

meshtastic%2Ffirmware | Trendshift

Overview

This repository contains the official device firmware for Meshtastic, an open-source LoRa mesh networking project designed for long-range, low-power communication without relying on internet or cellular infrastructure. The firmware supports various hardware platforms, including ESP32, nRF52, RP2040/RP2350, and Linux-based devices.

Meshtastic enables text messaging, location sharing, and telemetry over a decentralized mesh network, making it ideal for outdoor adventures, emergency preparedness, and remote operations.

Get Started

Join our community and help improve Meshtastic! 🚀

Stats

Alt