MCU Hardware

Networking Protocols
Quick Reference

A practical, opinionated reference for the protocols you’ll meet in a home or farm network: Wi-Fi 6/6E/7, LoRaWAN, Zigbee, Thread, Matter, Z-Wave, MQTT, Modbus, CAN, NMEA 2000, and the rest. 134 protocols from 868 MHz LPWAN to 6 GHz Wi-Fi, with practical notes on range, power, data rate, and which to pick for which job. Sister to the Networking Concepts Quick Reference — same search engine, same look, cross-linked. Search “LoRa” to find every LoRa entry, “Modbus” to find every Modbus variant, “IoT” to find the right protocol for the job.

/
134
Glossary terms
23
Letter sections
5
Learning path
6
Quick tables

1. How to use this document

You will not read this end-to-end. Use it like a dictionary with a learning path on top.

  1. Day 1 of your co-op: skim sections 2–4 (Prerequisites, Suggested Path, the Practical 20 list at the end of section 5). That alone puts you ahead of most interns.
  2. When you hit an unfamiliar term in code or a meeting: Cmd-F the term in section 5. Each entry is self-contained.
  3. When you want depth on a topic: follow the 📚 links at the bottom of the section. Those are the canonical, freely available resources — not random blog posts.
  4. When you're about to wire a part on your bench: jump to the sister Hardware Quick Reference (link in the navbar) and look up the exact part — it cross-links back to the concepts here.

2. Prerequisites

You don't need an EE degree, but the following mental model is assumed throughout this document. If you don't have it, the Practical 20 in section 4 will catch you up over a week.

Math (intuition, not proofs):

  • Algebra: solve for an unknown. Why: every circuit calculation is solving V = IR for one of the three.
  • Trig: sine, cosine, frequency, phase. Why: AC analysis, audio, filters, control loops.
  • Logarithms. Why: decibels, RC time constants, RC filter cutoff math.

Programming (one of these is enough):

  • Python — the default for MicroPython on the Pico and ESP32-S3. You should be comfortable with classes, decorators, async, and type hints.
  • C / C++ — for ESP-IDF, Arduino, or any low-level work. Pointers, structs, volatile, static, bit manipulation.
  • Shellcd, ls, grep, |, >, python -m venv, esptool.py.

Tools to install (do this on day 1):

# Thonny (the friendliest MicroPython IDE — recommended for first month)
sudo apt install thonny   # or download from thonny.org

# mpremote — the official MicroPython command-line tool
pip install mpremote

# esptool — for flashing ESP32 / ESP32-S3 boards over USB
pip install esptool

# Arduino IDE 2.x — for Arduino C/C++ projects
# Download from arduino.cc

3. Suggested learning path (5 steps)

Do these in order. By the end you will have a working sensor, a working cloud-free dashboard, and a working secure remote-access story — and you will know which protocol to pick for the next one.

Step 1 — Use the protocols you already use, but look at them

Open chrome://net-export (or Firefox dev tools → Network) and watch the HTTP requests your browser makes on a single page load. You will see DNS (UDP 53), TLS (TCP 443), HTTP/2 or HTTP/3, and probably a WebSocket. Read the headers: User-Agent, Set-Cookie, Strict-Transport-Security. Goal: you can name the protocols in the request graph.

Step 2 — Make a sensor talk MQTT

Run Mosquitto on a Pi or in Docker. Run an ESP32 sensor sketch (from the electronics quickref) that publishes a temperature reading to home/lab/temperature every 10 seconds. Subscribe with mosquitto_sub to see the data. Add TLS (mosquitto.conf + a self-signed cert or Let’s Encrypt). Goal: a working pub/sub sensor on your local network, end-to-end TLS.

Step 3 — Add a wire-protocol sensor

Wire an RS-485 Modbus energy meter or a Modbus-enabled solar inverter to an ESP32 with a MAX485 transceiver. Poll it every 5 seconds and republish the values to MQTT. Use the Modbus cheat sheet (section 6.5) for the Python or C code. Goal: a wired industrial sensor is now in the same dashboard as your wireless sensors.

Step 4 — Build a streaming service

Set up RTSP with an IP camera (or your phone as a test). Add an ONVIF-capable NVR like Agent DVR or Frigate. Add a low-latency WebRTC viewer (Janus or LiveKit) so you can view the camera from anywhere with sub-second latency. Compare with HLS for higher-latency but simpler setup. Goal: video streams end-to-end and you understand the trade-offs.

Step 5 — Secure it for the real world

Generate a real PKI with a private CA (use step ca or smallstep). Issue mTLS certs to every device in your MQTT + WebRTC + custom-HTTP stack. Set up OAuth 2.0 + OIDC with Authentik or Keycloak, and have every web UI use it. Add SSH keys everywhere, disable password login, run fail2ban. Goal: no plaintext password or self-signed cert anywhere in your stack.

Optional but recommended: try LoRaWAN with a local gateway (RAK WisGate or Dragino LPS8) and ChirpStack for a sensor a few km away; or try WebRTC SFU (LiveKit or mediasoup) for low-latency multi-party video.

4. The Practical 20 — read these first

Letter

A

5 terms

AIS (Automatic Identification System)

#
Maritime protocol (STDMA over 161.975/162.025 MHz) for ships to broadcast their position, course, and speed. Range ~20–40 nm. Practical: Coastal farms with marine traffic; recreational boats in busy waters. A $30 RTL-SDR + rtl_ais gives you a free receiver. See also: NMEA 2000.

AMQP 1.0 (Advanced Message Queuing Protocol)

#
A binary messaging protocol with guaranteed delivery, routing, and transactions. Used in enterprise messaging (RabbitMQ, ActiveMQ Artemis). Practical: Heavier than MQTT but offers more guarantees. OPC UA often uses AMQP as its transport. See also: MQTT 3.1.1.

AirPlay

#
Apple's proprietary protocol for streaming audio/video/screen from Apple devices. Practical: Works on a local network (mDNS/Bonjour discovery, RAOP for audio, RTSP for video). The closed-but-ubiquitous standard for “cast to TV” on iOS/macOS. See also: Chromecast (Google Cast), mDNS / Bonjour / Avahi.

Age Encryption (age-encryption.org)

#
A modern, simple file-encryption tool. Practical: Replacement for gpg in many scripting use cases: age -r age1... secret.txt > secret.age. Smaller, no keyserver, no config files. See also: OpenPGP / GPG (RFC 4880).

Active Directory

#
Microsoft's directory service: LDAP + Kerberos + Group Policy + DNS, all integrated. Default identity store for Windows networks. Practical: On a farm with mixed Windows/Mac/Linux, you can integrate Linux via realmd/SSSD, or run a separate FreeIPA/Authentik. See also: Kerberos, LDAP / LDAPS (port 389 / 636).
Letter

B

4 terms

Bluetooth Mesh 1.1

#
A many-to-many mesh protocol on top of BLE, 2.4 GHz, ~1 Mbps. Up to 32 000 nodes per network. Practical: Used in some industrial and smart-building deployments. Less common in home automation than Zigbee/Thread/Matter. Watch for: Bluetooth Mesh requires a provisioner to add nodes — usually a phone app. See also: Bluetooth LE (BLE 5.4).

Bluetooth LE (BLE 5.4)

#
Bluetooth Low Energy. The 2.4 GHz short-range radio used by AirTags, smart locks, fitness bands, beacons, and many sensors. Practical: 1 Mbps (BLE 5) or 2 Mbps (BLE 5.2), 50 m line-of-sight typical. Power: a BLE beacon runs months on a CR2032. Use for: one-to-one or one-to-many short-range sensor networks, especially when phones are the gateway. See also: Bluetooth Mesh 1.1.

BACnet MS/TP (Building Automation)

#
Building Automation and Control network, Master-Slave/Token-Passing variant over RS-485. 9600–76 800 baud, 127 devices max on a bus. Practical: The protocol for HVAC, lighting, and access control in commercial buildings. If you're doing farm building automation, you'll meet it. See also: RS-485 / RS-422, Modbus RTU (RS-485).
Letter

C

5 terms

ChirpStack

#
An open-source LoRaWAN network server. Handles device activation, deduplication, encryption, downlink scheduling, and exposes device data via MQTT, HTTP webhooks, or AMQP. Practical: Run your own on a small server (Raspberry Pi 4 works for low device counts, x86 for hundreds of devices). Pairs with a LoRaWAN gateway; devices registered in ChirpStack can then push data to Home Assistant, Node-RED, InfluxDB, etc. See also: LoRaWAN, LoRaWAN Gateway, The Things Network (TTN).

CAN 2.0B / CAN FD

#
CAN 2.0B = Controller Area Network, 1 Mbit/s max, 11/29-bit identifiers, the standard bus for cars and many industrial devices. CAN FD = Flexible Data rate, up to 8 Mbit/s, 64-byte payloads, modern replacement. Practical: Every modern car has at least 5 CAN buses (engine, body, infotainment, ADAS, chassis). To sniff: an ESP32 + TWAI + a cheap CAN transceiver (SN65HVD230). See also: NMEA 2000, Modbus RTU (RS-485).

CoAP (Constrained Application Protocol)

#
A REST-like protocol over UDP for constrained devices, port 5683. Practical: Smaller than HTTP/2 (~4 bytes header), designed for low-power sensors. Often paired with DTLS for encryption. Use for: battery-powered sensors that don't need a full TCP stack. See also: MQTT 3.1.1.

Chromecast (Google Cast)

#
Google's protocol for streaming to Chromecast devices, HTTPS + WebRTC under the hood, port 8009. Practical: The default for “cast to TV” on Android and Chrome. Open via the Cast SDK, but the protocol itself is proprietary. See also: AirPlay, mDNS / Bonjour / Avahi.

CalDAV / CardDAV

#
CalDAV = calendar sync (port 443, RFC 4791). CardDAV = contacts sync (RFC 6352). Both are iCalendar (RFC 5545) or vCard (RFC 6350) over WebDAV. Practical: Use a self-hosted Radicale, Baïkal, or Nextcloud for a family/farm calendar. Works with Apple Calendar, Thunderbird, DAVx5 on Android. See also: WebDAV (Web Distributed Authoring and Versioning, RFC 4918).
Letter

D

13 terms

DMX512 (Stage Lighting)

#
A unicast serial protocol for stage lighting and effects. RS-485 at 250 kbaud, 512 channels per universe, 32 devices per universe. Practical: If you want to control stage lights, fog machines, or moving heads from an ESP32, DMX is the protocol. Libraries: esp_dmx for ESP32, esp32-fastled-webserver for WS2812B + DMX hybrid. See also: RS-485 / RS-422.

DLNA / uPnP AV

#
A media-sharing protocol for streaming video/audio between devices on a LAN. Practical: Still common for smart TVs and media servers (Plex, Jellyfin). Watch for: many implementations are unencrypted — fine on a trusted LAN, dangerous if exposed. See also: SSDP (UPnP).

DDS (Data Distribution Service)

#
A high-performance pub/sub middleware for real-time systems (robotics, autonomous vehicles, defense). OMG standard. Practical: For 99% of farm/home IoT, MQTT is enough. DDS is what you find in defense and aerospace. See also: MQTT 3.1.1.

DASH7 (D7A)

#
An ISO/IEC 18000-7 sub-GHz (433/868/915 MHz) protocol for active RFID-style sensor networks, range 1–2 km, designed for asset tracking. Practical: Less popular than LoRa; niche in mining, agriculture, and logistics. See also: LoRaWAN.

DLMS / COSEM (Smart Metering)

#
Device Language Message Specification / Companion Specification for Energy Metering, IEC 62056. The protocol most electricity meters speak. Practical: If you're doing energy monitoring, you'll meet DLMS/COSEM. Watch for: the spec is dense; use a library (Gurux DLMS) rather than implementing it yourself. See also: Modbus TCP (port 502), Modbus RTU (RS-485).

DASH (MPEG-DASH)

#
The ISO standard for HTTP adaptive bitrate streaming. Same idea as HLS (manifest + segments) but codec-agnostic and more flexible. Practical: Used by Netflix, YouTube (on some platforms), Amazon Prime Video, and most streaming services. See also: HLS (HTTP Live Streaming).

DKIM / SPF / DMARC

#
The three email-authentication standards. SPF (RFC 7208): DNS TXT record listing which IPs can send for your domain. DKIM (RFC 6376): cryptographic signature on every message. DMARC (RFC 7489): policy on what to do with failures. Practical: All three required for a self-hosted mail server to land in the inbox. Gmail, Outlook, Yahoo all reject mail that fails all three. See also: SMTP (port 25 / 465 / 587).

DoH (DNS over HTTPS, RFC 8484)

#
DNS queries and responses sent as HTTPS to port 443. Encrypted, looks like regular HTTPS traffic to a firewall. Practical: Supported in Firefox, Chrome, Windows 11, iOS 14+, Android 9+. Configure your browser or OS to use Cloudflare 1.1.1.1, Quad9 9.9.9.9, or your own Pi-hole. Watch for: some networks block it (corporate filtering); use DoT (port 853) as a fallback. See also: DoT (DNS over TLS, port 853), DNS (Domain Name System), DNSSEC.

DoT (DNS over TLS, port 853)

#
DNS over an explicit TLS connection, port 853. Encrypted but on a dedicated port (easy to block). Practical: Better for managed networks than DoH (visible to network operators). Configure on the router or per-device. See also: DoH (DNS over HTTPS, RFC 8484), DNS (Domain Name System).

DNSSEC

#
Cryptographic signing of DNS records so a resolver can verify the answers came from the authoritative server and weren't tampered with. Practical: Most public DNS providers (Cloudflare, Quad9, Google 8.8.8.8) validate DNSSEC. If you run your own authoritative DNS (BIND, NSD, Knot, PowerDNS), enable signing. Watch for: misconfigured DNSSEC breaks resolution for your domain. See also: DNS (Domain Name System).

DNP3 (IEEE 1815)

#
Distributed Network Protocol, used in North American electric / water / wastewater utilities. Practical: The default for SCADA in those verticals. See also: Modbus TCP (port 502), BACnet/IP (port 47808).
Letter

E

2 terms

EtherCAT

#
The Beckhoff industrial Ethernet protocol — sub-100 µs cycle time by processing “on the fly” as the frame passes through each slave. Practical: The fastest industrial Ethernet; used in motion control and high-speed machine vision. See also: PROFINET, EtherNet/IP (CIP over TCP/UDP).
Letter

G

4 terms

GNSS (GPS / Galileo / GLONASS / BeiDou)

#
Global Navigation Satellite Systems. The GPS chip in your phone receives signals from multiple satellites and trilaterates its position. Practical: Modern GNSS modules (u-blox NEO-M8/M9, Quectel LC76G) are multi-constellation: GPS + Galileo + GLONASS + BeiDou simultaneously = faster fix, better accuracy in canyons. Accuracy: 2–5 m standalone, ~1 m with SBAS (WAAS in the US, EGNOS in EU), sub-meter with RTK. See also: RTK GPS.

gRPC (gRPC Remote Procedure Call)

#
A high-performance RPC framework from Google, built on HTTP/2 and Protocol Buffers. Strongly typed service definitions (.proto files), bidirectional streaming, deadlines, cancellation. Practical: The default for microservice-to-microservice communication. For IoT, the binary framing and HTTP/2 requirement make it less common than MQTT (no HTTP/2 on tiny sensors). See also: HTTP / HTTPS, QUIC / HTTP/3, gRPC (gRPC Remote Procedure Call).

GraphQL (single request/response)

#
A query language for HTTP APIs, single endpoint, client specifies exactly which fields it wants. Developed by Facebook 2015. Practical: Used by GitHub, Shopify, GitLab, Hasura. Reduces over-fetching vs REST. Watch for: N+1 query problems on the server; a single complex query can hammer the DB. See also: HTTP / HTTPS, GraphQL Subscriptions (over WebSocket).
Letter

H

2 terms

HLS (HTTP Live Streaming)

#
Apple's HTTP-based streaming protocol, port 80/443. Segments (typically 2–10 s) of MP4/TS video served as a manifest + numbered .ts or .m4s files. Practical: The default for live streaming to phones/browsers. Works through any HTTP proxy, firewall, CDN. Latency: 5–30 s typical, 2–3 s in LL-HLS mode. See also: DASH (MPEG-DASH), RTMP (Real-Time Messaging Protocol).

HTTP Webhooks (port 443)

#
Server-to-server event delivery via plain HTTPS POST. GitHub, Stripe, Slack, and every SaaS API uses webhooks to push events. Practical: Payloads are usually JSON. Always sign them (HMAC-SHA256 in an X-Signature header is the standard pattern). See also: HTTP / HTTPS, Webhook Fan-out Services (Hookdeck / Svix).
Letter

I

8 terms

IPsec (IKEv2 / ESP)

#
The enterprise VPN standard. Two modes: IKEv2 for key exchange, ESP for encryption. Practical: Used in site-to-site enterprise VPNs and Apple's iCloud Private Relay. On a farm or home, WireGuard is simpler. See also: WireGuard.

Iridium / Inmarsat (Satellite IoT)

#
LEO (Iridium, 66 satellites at 780 km) and GEO (Inmarsat, geostationary) satellite networks for IoT and voice. Practical: For a farm beyond cellular and LoRa coverage, Iridium SBD (Short Burst Data) sends 340-byte messages for ~$1 each. Inmarsat is more expensive but higher bandwidth. Watch for: Iridium modules are $200+; the use case is truly remote (Antarctic research station, ocean buoy, continental-scale farm). See also: Starlink (Dish-to-Satellite), LoRaWAN.

ICE / STUN / TURN

#
STUN (port 3478) helps a peer behind NAT discover its public IP. TURN (port 3478) is the relay when STUN fails (symmetric NAT, corporate firewall). ICE is the algorithm that tries every path. Practical: Required by WebRTC and modern VoIP. Running your own TURN server (coturn) on a home/farm network: ~50 lines of config, and your video calls stop failing when both ends are behind CGNAT. See also: WebRTC (Web Real-Time Communication), SIP (Session Initiation Protocol), NAT (Network Address Translation).

Icecast / Shoutcast

#
The classic protocols for internet radio. TCP for the control channel, HTTP for the stream. Practical: Still widely used for radio stations and audio-only streams (talk radio, music stations). See also: HLS (HTTP Live Streaming).

IMAP (port 143 / 993)

#
Internet Message Access Protocol. Read email on the server, sync folders and flags across devices. Port 143 (plain, use STARTTLS), 993 (IMAPS, implicit TLS). Practical: The right protocol for multi-device email. POP3 only if you really want everything downloaded-and-deleted. See also: POP3 (port 110 / 995), SMTP (port 25 / 465 / 587), JMAP (RFC 8620).

IO-Link

#
A point-to-point digital protocol (IEC 61131-9) for sensors and actuators over a 3-wire cable, port-less. Practical: Replaces 4–20 mA analog and discrete I/O on smart sensors. The IO-Link master exposes the sensor data over PROFINET/EtherNet/IP/etc. See also: PROFINET, EtherNet/IP (CIP over TCP/UDP).

InfluxDB Line Protocol

#
The text protocol for writing to InfluxDB: measurement,tag=value,tag=value field=value,field=value timestamp. Practical: The default for time-series data (sensor readings, metrics) when the dataset grows past SQLite. Telegraf, the TICK stack, and many IoT gateways speak it. See also: MQTT 3.1.1.
Letter

J

2 terms

JWT (JSON Web Token)

#
A signed JSON object passed between parties to prove identity. RFC 7519. Three parts: header.payload.signature, base64url-encoded. Practical: The de-facto format for API tokens. Watch for: JWTs are not encrypted (just signed); don't put secrets in the payload. See also: OAuth 2.0, OIDC (OpenID Connect).

JMAP (RFC 8620)

#
JSON Meta Application Protocol, a modern replacement for IMAP/SMTP/CalDAV/CardDAV. JSON over HTTPS, designed for sync across devices. Practical: Used by Fastmail, Stalwart, and a few others. Smaller, simpler, and faster than IMAP. See also: IMAP (port 143 / 993), CalDAV / CardDAV.
Letter

K

3 terms

KNX (Building Automation)

#
An open standard (ISO/IEC 14543) for building automation, originally EIB. Twisted-pair (KNX TP), powerline (KNX PL), RF (KNX RF), and IP (KNXnet/IP). Practical: The European equivalent of BACnet; less common in North America. Found in higher-end homes and commercial buildings. See also: BACnet MS/TP (Building Automation).

Kafka (Apache Kafka)

#
A distributed event streaming platform, not just a messaging protocol. Topics, partitions, consumer groups, exactly-once semantics. Uses a custom binary protocol over TCP (port 9092), with Kafka Connect, Schema Registry, and ksqlDB on top. Practical: The de-facto standard for high-throughput event pipelines (millions of events/sec per broker cluster). On a farm, you might run a small Kafka cluster on a NAS to aggregate sensor data; for a co-op, the right answer is usually MQTT, not Kafka. See also: MQTT 3.1.1, AMQP 1.0 (Advanced Message Queuing Protocol), NATS.

Kerberos

#
A ticket-based authentication protocol (port 88). Default in Active Directory. Practical: On a home network, you almost never see it. In a Windows domain, every service uses it under the hood (LDAP/Kerberos, SMB/Kerberos, MSSQL/Kerberos). See also: LDAP / LDAPS (port 389 / 636), RADIUS / TACACS+.
Letter

L

7 terms

LoRa (Physical Layer)

#
A spread-spectrum sub-GHz radio modulation from Semtech. LoRa is the physical layer (the radio); LoRaWAN is the network protocol (see separate entry). Practical: Range: 2–10 km line-of-sight; 300 m to 2 km in a farm/urban environment. Data rate: 0.3–50 kbps. Frequencies vary by region: 868 MHz in EU, 915 MHz in US, 433 MHz in Asia. Use for: battery-powered sensors that send small packets a few times per hour: soil moisture, livestock tracking, tank level, weather stations. Watch for: duty-cycle regulations (1% in EU 868) limit how often you can transmit. See also: LoRaWAN, LoRa Frequency Plans.

LoRaWAN

#
The MAC-layer protocol that sits on top of LoRa. Defines device classes, message formats, encryption, and the network architecture (end device → gateway → network server → application server). Versions: LoRaWAN 1.0 (2015) through 1.0.4 / 1.1 (2017). Practical: Device classes: A (always on, best for mains-powered), B (sync via beacon, scheduled downlink), C (always on RX — only for mains). Activation: OTAA (over-the-air, secure, recommended) vs ABP (activation by personalization, less secure, used for testing). Spreading factor: SF7–SF12 — higher SF = longer range, lower data rate, more time-on-air. Use The Things Network (community LoRaWAN) for free, or run your own ChirpStack / TTN instance. See also: LoRa (Physical Layer), ChirpStack, The Things Network (TTN).

LoRaWAN Gateway

#
A radio that listens on LoRa frequencies and forwards packets to a network server over Ethernet, Wi-Fi, or cellular. Common boards: Raspberry Pi + SX1302/SX1303 concentrator HAT (e.g. imeshbean 868/915 MHz 8-channel), or all-in-one devices (MikroTik wAP LR, Dragino LPS8, RAK Wireless WisGate). Practical: An outdoor gateway on a pole covers 2–10 km radius in rural terrain. Watch for: gateways are not routers — they just forward packets; the network server (ChirpStack, TTN) does auth, dedup, and routing. See also: LoRaWAN, ChirpStack.

LoRa Frequency Plans

#
The legal frequency ranges and channel layouts for LoRa, varying by region. Practical: US (902–928 MHz): 64 uplink channels (500 kHz wide, 8 × 125 kHz sub-bands), 8 downlink channels. Duty cycle: none. Max EIRP: +30 dBm (1 W) for fixed gateways, +20 dBm for mobile/portable. EU (863–870 MHz): 8 mandatory channels, 1% duty cycle (or dwell time limits), max +14 dBm EIRP. AU (915–928 MHz) similar to US, 1% duty cycle. Watch for: buying a US-spec gateway in EU is illegal (wrong frequencies); check the SX130x configuration file matches your region. See also: LoRa (Physical Layer), LoRaWAN.

LTE / 5G NR (Cellular IoT)

#
LTE Cat-1, Cat-M1, NB-IoT for low-power cellular IoT (years on a battery). 5G NR-Light (RedCap) for mid-tier. 5G eMBB for high-speed (hundreds of Mbps). Practical: For a farm sensor 50 km from the nearest cell tower: NB-IoT or Cat-M1 (low power, long range). For a tractor GPS uplink: LTE Cat-1. For a CCTV camera uplink: 5G. Watch for: data caps and CGNAT on most plans; static IPs are expensive. See also: CGNAT (Carrier-Grade NAT), SIM / eSIM (IoT).

Let's Encrypt / ACME

#
A free, automated certificate authority. The ACME protocol (RFC 8555) automates issuance and renewal. Practical: Use certbot, acme.sh, or your reverse proxy's built-in ACME client (traefik, caddy, nginx-proxy-manager). Renewals are automatic. Watch for: ACME challenges require port 80 (HTTP-01) or DNS-01 (a TXT record on your domain). For a farm with dynamic DNS, DNS-01 is the right one. See also: TLS 1.3 (Transport Layer Security, port 443), DDNS (Dynamic DNS).

LDAP / LDAPS (port 389 / 636)

#
Lightweight Directory Access Protocol. The standard for centralized user/groups/certificates. Practical: Use for a Linux home server if you have more than 2 users (FreeIPA, OpenLDAP, or the LLDAP container). LDAPS = LDAP over TLS, port 636. See also: Kerberos, RADIUS / TACACS+, Active Directory.
Letter

M

13 terms

Matter 1.3

#
Application-layer smart-home standard backed by Apple, Google, Amazon, Samsung, and the Connectivity Standards Alliance. Runs over Wi-Fi, Thread, or Ethernet. Practical: The promise: a Matter-certified device works with every major smart-home ecosystem (HomeKit, Google Home, Alexa, SmartThings) without bridges or extra apps. Watch for: matter is still maturing in 2026 — some device classes (cameras, white goods) have limited support. See also: Thread 1.3, Zigbee 3.0.

MQTT 5

#
The 2019 revision of MQTT. Adds: reason codes, shared subscriptions, message expiry, topic aliases, user properties, response/request pattern (correlating requests with responses). Practical: MQTT 3.1.1 is still the default on most brokers. MQTT 5 is worth it for production systems with hundreds of clients or complex pub/sub graphs. See also: MQTT 3.1.1, MQTT-SN (MQTT for Sensor Networks).

MQTT 3.1.1

#
The 2014 version of MQTT, still the most widely deployed. Plain pub/sub, no message expiry, no shared subscriptions, no reason codes. Practical: Works on every device, every broker, every client library. Use for: 90% of home/farm IoT. The simplicity is the point. See also: MQTT 5.

MQTT-SN (MQTT for Sensor Networks)

#
A variant of MQTT designed for non-TCP networks (UDP, Zigbee, LoRa, serial). Practical: Relevant when your sensor speaks UDP or some low-power radio, not TCP. The brokers Mosquitto and EMQX support MQTT-SN gateways. See also: MQTT 3.1.1.

Modbus RTU (RS-485)

#
The binary Modbus over RS-485 serial. Master/slave, half-duplex, 2-wire (or 4-wire full-duplex), up to 32 devices on a bus, 1200 m max at low baud. Practical: Every solar inverter, most electricity meters, many HVAC and irrigation controllers speak Modbus RTU. The most common baud is 9600 8N1. Wiring: use twisted pair (Cat5 works in a pinch); terminate both ends with 120 Ω. See also: Modbus TCP (port 502), RS-485 / RS-422.

Modbus TCP (port 502)

#
Modbus over TCP/IP. Same register model as Modbus RTU, but no CRC (TCP has its own). Default port 502. Practical: Used by many industrial controllers and modern solar inverters. Debug: mbpoll -m tcp -a 1 -r 0x0000 -c 10 inverter.local. See also: Modbus RTU (RS-485).

MQTT over QUIC (MQTT 5)

#
MQTT 5 over the QUIC transport (UDP-based, encrypted by default, 0-RTT handshake). Practical: Designed for cellular and constrained networks where TCP's handshake is slow. Brokers: EMQX supports it natively. See also: MQTT 5, QUIC / HTTP/3.

mDNS / Bonjour / Avahi

#
Multicast DNS, port 5353. Used for zero-config service discovery. Practical: The reason printer.local and raspberrypi.local work on your LAN. Apple uses Bonjour; Linux uses Avahi. Watch for: doesn't cross VLANs without an mDNS reflector. See also: DNS (Domain Name System), SSDP (UPnP).

MQTT-TLS (port 8883)

#
MQTT over TLS. Default port 8883. Practical: Use whenever the broker is reachable from anywhere you don't fully trust (public internet, shared LAN). Self-signed certs work; Let's Encrypt certs work for public brokers. Watch for: cert validation on the client side; embedded devices often skip this and are MITMable. See also: MQTT 3.1.1, TLS / SSL.

MQTT Sparkplug B

#
An industrial-grade specification on top of MQTT 5, defining topics, payload format, and state management for industrial IoT. Backed by the Eclipse Foundation. Practical: Used in factories and large farms where you need guaranteed delivery, defined state, and historical data. For a small home, plain MQTT is fine. See also: MQTT 5, OPC UA (Open Platform Communications Unified Architecture).

mTLS (Mutual TLS)

#
Both client AND server present certificates. Practical: The right way to authenticate machines talking to machines (no shared secrets, no JWTs to leak). Used by Kubernetes admission, HashiCorp Vault, every zero-trust network, and your bank's mobile app. Watch for: certificate management (rotation, revocation) is the headache. See also: TLS 1.3 (Transport Layer Security, port 443), PKI (Public Key Infrastructure).
Letter

N

6 terms

NMEA 0183

#
Old marine protocol, RS-422 or RS-232, 4800 baud, ASCII sentences starting with $. Examples: $GPGGA (GPS fix), $WIMWV (wind), $SDDBT (depth). Practical: Still found on older marine electronics. New gear uses NMEA 2000 (CAN-based). See also: NMEA 2000.

NMEA 2000

#
Marine protocol based on CAN 2.0B, 250 kbit/s, backbone + drop topology, 252 addresses per network. PGNs (Parameter Group Numbers) define message types. Practical: Chartplotters, autopilots, AIS, depth sounders, engine data — all NMEA 2000. To bridge to Ethernet/Wi-Fi: Yacht Devices or Actisense gateways. See also: CAN 2.0B / CAN FD, NMEA 0183.

NB-IoT (Narrowband IoT)

#
A 3GPP-standardized cellular LPWAN, 200 kHz bandwidth, ~26 dBm uplink, designed for indoor deep coverage. Practical: Operates inside LTE carriers; needs an NB-IoT SIM and a plan. Good for: underground sensors, basement meters, agricultural sensors far from the house. See also: LTE / 5G NR (Cellular IoT).

NATS

#
A lightweight, high-performance pub/sub messaging system. Plain-text protocol (port 4222), <10 ms p99 latency, subject-based addressing (home.barn.temperature). Practical: Smaller and faster than MQTT for many use cases. JetStream adds persistence, replay, and exactly-once. See also: MQTT 3.1.1, ZeroMQ (ZMQ, ØMQ), Kafka (Apache Kafka).

NTP (Network Time Protocol, port 123)

#
The protocol that keeps clocks synchronized. Practical: Almost every networked device has an NTP client. Public servers: pool.ntp.org, time.cloudflare.com, time.google.com. Debug: ntpq -p (Linux) shows the time sources. See also: PTP (Precision Time Protocol, IEEE 1588).

NFS (Network File System, port 2049)

#
The Unix file-sharing protocol. Practical: Default for Linux-to-Linux file sharing. Faster than SMB on Linux but less universal. Watch for: NFSv3 has no auth (relies on IP allowlist); NFSv4+ supports Kerberos. See also: SMB / CIFS (Server Message Block, port 445).
Letter

O

7 terms

OpenVPN

#
The long-standing SSL/TLS-based VPN. UDP or TCP, default 1194. Mature, widely supported, runs on every OS. Practical: Slower than WireGuard (~2–4×) and more complex to configure, but works in more constrained environments. See also: WireGuard.

OPC UA (Open Platform Communications Unified Architecture)

#
The industrial IoT standard. M2M communication, security, complex data modeling. Runs over TCP, HTTPS, or AMQP. Practical: What you find in a real factory: PLCs, SCADA, MES all speak OPC UA. Use for: serious industrial integration; for a farm or home, MQTT is simpler. See also: Modbus TCP (port 502), MQTT 3.1.1.

ONVIF (Open Network Video Interface Forum)

#
A standard for IP-based physical security products. Profile S = video streaming, Profile G = recording, Profile T = advanced video. Practical: A camera that says “ONVIF Profile S” will work with any ONVIF-conformant NVR or VMS (Blue Iris, Synology Surveillance Station, Agent DVR). Without ONVIF, you're locked into one vendor's app. See also: RTSP (Real-Time Streaming Protocol).

OCSP Stapling

#
Server periodically fetches its own certificate-revocation status and includes it in the TLS handshake, so clients don't have to phone the CA on every connection. Practical: Enable on every public-facing TLS server. Saves the client's connection, removes a privacy leak (the CA used to see every visit), and is required by some compliance standards. See also: TLS 1.3 (Transport Layer Security, port 443).

OAuth 2.0

#
The authorization framework behind “Sign in with Google” and most modern APIs. RFC 6749. Practical: Use for delegating access to a third party (e.g. “let IFTTT read my sensor data”). Watch for: OAuth is authorization, not authentication — you also need OIDC for “who is this user.” See also: OIDC (OpenID Connect), SAML 2.0, JWT (JSON Web Token).

OIDC (OpenID Connect)

#
An identity layer on top of OAuth 2.0. Returns an ID Token (JWT) that proves who the user is. Practical: The de-facto standard for “log in with your existing account.” Run your own OIDC provider (Authentik, Keycloak, Auth0, PocketID) and you have a single sign-on for your home/farm services. See also: OAuth 2.0, JWT (JSON Web Token), SAML 2.0.
Letter

P

5 terms

PKI (Public Key Infrastructure)

#
The system of CAs, certificates, CRLs, OCSP, and the policies around them. Practical: For a home/farm setup, you have a choice: public CA (Let's Encrypt, free) for anything public, or private CA (your own Root CA, generated with step ca init or mkcert) for LAN devices. Don't use self-signed certs in production; deploy a private CA instead. See also: TLS 1.3 (Transport Layer Security, port 443), mTLS (Mutual TLS), Let's Encrypt / ACME.

POP3 (port 110 / 995)

#
Post Office Protocol v3. Download email to one device, optionally delete from server. Port 110 (plain), 995 (POP3S). Practical: Legacy, single-device. IMAP is the right choice today. See also: IMAP (port 143 / 993).

PTP (Precision Time Protocol, IEEE 1588)

#
Sub-microsecond time sync over LAN. Used in industrial control, audio/video over IP, financial trading. Practical: Grandmaster + transparent clocks on switches (PTP-aware switches). Use for: anything that needs <10 µs sync between devices (pro audio on Dante AVB, factory motion control). See also: NTP (Network Time Protocol, port 123).

Prometheus Remote Write

#
A snappy-compressed binary protobuf format for shipping metrics to a Prometheus-compatible backend (Cortex, Thanos, Mimir, VictoriaMetrics). Practical: The default for high-volume metrics from Kubernetes clusters. See also: InfluxDB Line Protocol.
Letter

Q

1 term

QUIC / HTTP/3

#
QUIC = a UDP-based transport (IETF, RFC 9000) with built-in TLS 1.3 and 0-RTT handshakes. HTTP/3 = HTTP over QUIC. Practical: Already deployed by Google, Cloudflare, Facebook. Faster connection setup, better loss recovery than TCP+TLS 1.3. Watch for: middleboxes (corporate firewalls, some NATs) sometimes block UDP/443. See also: TCP (Transmission Control Protocol), TLS / SSL.
Letter

R

8 terms

RS-485 / RS-422

#
Differential serial standards. RS-485 = half-duplex, multi-drop, up to 32 devices, 1200 m. RS-422 = full-duplex, point-to-point, 1200 m. Practical: RS-485 is the wiring layer for Modbus RTU, DMX512, PROFIBUS, BACnet MS/TP (building automation), and many proprietary industrial protocols. Wiring: twisted pair, 120 Ω termination at both ends, common ground. Watch for: RS-485 is the electrical spec — the protocol is something else (Modbus, DMX, etc.). See also: Modbus RTU (RS-485).

RTK GPS

#
Real-Time Kinematic GPS. Uses carrier-phase measurements and a local base station to achieve 1–2 cm horizontal accuracy, vs 2–5 m for plain GPS. Practical: The 5× cost of an RTK receiver over a regular GPS is justified if you need cm-level accuracy (surveying, autonomous tractor guidance, precision agriculture). Setup: a fixed base station (you can buy one or use a NTRIP service) + rover + radio or cellular link. See also: GNSS (GPS / Galileo / GLONASS / BeiDou).

RTSP (Real-Time Streaming Protocol)

#
A streaming protocol for IP cameras. Default port 554. Practical: The standard protocol for talking to security cameras and baby monitors. VLC opens any RTSP stream: vlc rtsp://camera.local:554/stream1. Watch for: many cheap cameras ship with unencrypted RTSP; use a firewall or VLAN to keep it off the public internet. See also: ONVIF (Open Network Video Interface Forum).

RTP / RTCP (Real-time Transport Protocol)

#
The foundational real-time streaming protocol, port 5004 (RTP) / 5005 (RTCP). Carries audio and video packets with sequence numbers, timestamps, and payload type. RTCP is the out-of-band control channel (stats, lip-sync). Practical: Used inside VoIP, WebRTC, RTSP, and SIP. You rarely use raw RTP; almost always over UDP and almost always inside another protocol. See also: RTSP (Real-Time Streaming Protocol), WebRTC (Web Real-Time Communication), SIP (Session Initiation Protocol).

RIST (Reliable Internet Stream Transport)

#
An open standard (VSF TR-06-1) for reliable low-latency video over IP. Port 5000+. Practical: The other open alternative to SRT for broadcast video. Stronger than SRT for unreliable networks (more aggressive ARQ + FEC); used by some major broadcasters. See also: SRT (Secure Reliable Transport), RTMP (Real-Time Messaging Protocol).

RTMP (Real-Time Messaging Protocol)

#
Adobe's 2002 protocol for streaming audio, video, and data to a Flash server. TCP, port 1935. Practical: Mostly deprecated for playback (Flash died in 2020) but still used as an ingest protocol — OBS Studio, many cameras, and Twitch still use RTMP to push streams to a server. The server then re-distributes via HLS or DASH. See also: HLS (HTTP Live Streaming), DASH (MPEG-DASH), SRT (Secure Reliable Transport).

RADIUS / TACACS+

#
AAA protocols (Authentication, Authorization, Accounting) for network devices. RADIUS (port 1812/1813) is the older, ubiquitous one; TACACS+ is Cisco's, more common on enterprise gear. Practical: On a farm, RADIUS on a UniFi or MikroTik setup gives you a single place to manage Wi-Fi logins (instead of a per-AP password). See also: LDAP / LDAPS (port 389 / 636), Kerberos.

rsync (port 873 over SSH)

#
The classic delta-transfer file sync tool. Practical: rsync -avz --progress src/ dest/ for one-way sync. Watch for: the trailing slash matters — src/ copies contents; src copies the directory itself. See also: SSH (Secure Shell, port 22).
Letter

S

19 terms

SSDP (UPnP)

#
Simple Service Discovery Protocol, used by UPnP. Multicast on 239.255.255.250:1900. Practical: Older devices (network printers, NAS, smart TVs) advertise themselves via SSDP. Most modern apps use mDNS instead. See also: mDNS / Bonjour / Avahi.

Starlink (Dish-to-Satellite)

#
SpaceX's low-earth-orbit satellite internet. Dish talks to a constellation at 550 km altitude via Ku-band (downlink 10.7–12.7 GHz, uplink 14.0–14.5 GHz). 50–250 Mbps typical, 20–60 ms latency. Practical: The default broadband choice for rural / off-grid sites in 2026. Watch for: high winds and heavy rain cause brief dropouts; latency spikes during satellite handovers. See also: CGNAT (Carrier-Grade NAT), ISP (Internet Service Provider).

SigFox

#
An ultra-narrowband (UNB) sub-GHz LPWAN, ~100–600 bps, 10–40 km range. Practical: Cloud-only service, paid per device per message. Limited coverage outside major cities. For a farm, LoRaWAN is almost always the better choice — open standard, local gateways, free if you run your own network. See also: LoRaWAN.

SigV4 / SigV4a (AWS Signing)

#
AWS's HTTP request-signing protocol. Practical: Every IoT device that publishes to AWS IoT Core, calls AWS Lambda, or writes to AWS Timestream has to sign every request with SigV4 (or SigV4a, the multi-region variant). Watch for: SigV4 requires a 4-step HMAC chain; get the timestamp right or AWS rejects the request. See also: HTTP / HTTPS.

SIM / eSIM (IoT)

#
The cellular identity card. A SIM (physical) or eSIM (embedded, MFF2) gives a device its IMSI and authentication on a cellular network. Practical: For an IoT device, an eSIM is the right choice — no tray, no plastic. Providers: Hologram, Twilio (Super SIM), Soracom, 1NCE, Velos IoT. Watch for: data plans are tiny (most are 1–100 MB/mo, some are 0.1 MB/mo for low-rate sensors). See also: LTE / 5G NR (Cellular IoT).

SSE (Server-Sent Events)

#
An HTML5 standard for one-way server-to-client streaming over HTTP. Plain text/event-stream MIME type, no library needed in the browser (just new EventSource(url)). Practical: Simpler than WebSocket when you only need server-to-client. Native auto-reconnect, no protocol overhead. Use for: live dashboards, notification streams, server logs. See also: WebSocket (RFC 6455), HTTP / HTTPS.

SIP (Session Initiation Protocol)

#
The text-based signaling protocol for VoIP, port 5060 (UDP/TCP) / 5061 (TLS). Defined in RFC 3261. Practical: Used by every business VoIP system (3CX, FreeSWITCH, Asterisk) and most residential VoIP providers. Watch for: SIP and RTP are paired — SIP for setup/teardown, RTP for the actual audio. See also: RTP / RTCP (Real-time Transport Protocol), WebRTC (Web Real-Time Communication).

Spotify Connect / Tidal Connect

#
Protocols that let a phone act as a remote control for a network-connected speaker. The actual audio stream goes phone-to-speaker over the local network, not phone-to-cloud-to-speaker. Practical: Lower battery use on the phone, higher audio quality than Bluetooth, supports gapless playback. See also: AirPlay, Chromecast (Google Cast).

SSH (Secure Shell, port 22)

#
Encrypted remote shell and tunnel. RFC 4253 (2006). Practical: The single most important tool for an admin. SSH into a Pi on the farm, port-forward a VNC session, SFTP files. Watch for: use key-based auth, disable password auth, fail2ban if exposed. See also: TLS / SSL, WireGuard, SFTP (SSH File Transfer Protocol, port 22).

S/MIME (Secure/Multipurpose Internet Mail Extensions)

#
Email signing + encryption using X.509 certificates (the same certs as HTTPS). Native in Apple Mail, Outlook, Thunderbird. Practical: Easier than OpenPGP for normal users (no keyserver dance) but requires a certificate from a CA. See also: OpenPGP / GPG (RFC 4880).

SAML 2.0

#
Security Assertion Markup Language. XML-based, the enterprise SSO standard before OIDC took over. Practical: Still dominant in enterprise (Salesforce, Workday, ServiceNow all support it). Use over OIDC for: legacy apps, enterprise customers, sign-then-encrypt assertions. See also: OIDC (OpenID Connect), OAuth 2.0.

SASL (Simple Authentication and Security Layer, RFC 4422)

#
A framework that decouples auth from the application protocol. Used by LDAP, XMPP, SMTP, IMAP, Kafka — pick a SASL mechanism (PLAIN, SCRAM, GSSAPI/Kerberos) and the protocol stays the same. Practical: If you implement an auth layer for a custom protocol, copy SASL's mechanism-negotiation pattern instead of inventing your own. See also: Kerberos, LDAP / LDAPS (port 389 / 636).

SMTP (port 25 / 465 / 587)

#
Simple Mail Transfer Protocol, RFC 5321. The protocol that moves email between servers and from client to server. Port 25 (server-to-server), 587 (submission, client-to-server, the one you should use), 465 (legacy SMTPS). Practical: For a self-hosted mail server, use Postfix or Stalwart; pair with DKIM/SPF/DMARC for deliverability. See also: IMAP (port 143 / 993), POP3 (port 110 / 995), DKIM / SPF / DMARC.

Syncthing

#
A peer-to-peer continuous file sync, no central server. Practical: The right answer for “keep this folder in sync across my laptop, my desktop, and my NAS.” See also: rsync (port 873 over SSH).
Letter

T

3 terms

The Things Network (TTN)

#
A community LoRaWAN network — free public gateways, free network server (now TTN v3 Stack). Practical: The fastest way to get a LoRaWAN device online: flash it, register on TTN, see data in their console within minutes. The catch: coverage is dense in some cities, sparse in rural areas. For a farm, you may need your own gateway that bridges to TTN. See also: LoRaWAN, ChirpStack.

Thread 1.3

#
An IPv6-based mesh protocol for IoT, IEEE 802.15.4 (2.4 GHz), 250 kbps, mesh routing via 6LoWPAN. Practical: Powers Apple HomeKit-over-Thread, Google Nest, Matter-over-Thread. Requires a Thread Border Router to bridge to Wi-Fi/Ethernet: Apple TV 4K, HomePod mini, Nest Hub Max, or a dedicated device. Watch for: Thread and Zigbee are not directly compatible (different protocols, different mesh); a device is either-or. See also: Matter 1.3, Zigbee 3.0.

TLS 1.3 (Transport Layer Security, port 443)

#
The current TLS version. 1-RTT handshake (vs 2-RTT for TLS 1.2), 0-RTT resumption, mandatory forward secrecy (X25519 + ChaCha20-Poly1305 or AES-GCM), removed legacy ciphers. RFC 8446, 2018. Practical: Modern default for HTTPS, MQTTS, LDAPS, FTPS, DoT. See also: HTTP / HTTPS, mTLS (Mutual TLS), OCSP Stapling.
Letter

U

1 term

UPnP IGD (Internet Gateway Device)

#
Auto-port-forwarding protocol. A UPnP-aware application on your device asks the UPnP-aware router to open a port automatically. Practical: Convenient for games and P2P apps. Watch for: security risk — any compromised device on your LAN can open any inbound port. Disable UPnP on your router unless you have a reason. See also: Port Forwarding, SSDP (UPnP).
Letter

W

12 terms

Wi-Fi 4 (802.11n)

#
The 2009 Wi-Fi standard. 2.4 + 5 GHz, MIMO (up to 4×4), 40 MHz channels, 150–600 Mbps PHY, ~75 Mbps real-world per stream. Practical: Every device from 2010+ supports it. Use for: legacy IoT devices that don't do 802.11ac; the 2.4 GHz band is often cleaner in rural settings. Watch for: the 2.4 GHz 40 MHz channels overlap with the rest of the band — most deployments stick to 20 MHz. See also: Wi-Fi 5 (802.11ac), Wi-Fi 6 (802.11ax), Wi-Fi 7 (802.11be).

Wi-Fi 5 (802.11ac)

#
The 2014 Wi-Fi standard. 5 GHz only, MU-MIMO (downlink), 80/160 MHz channels, up to ~1.3 Gbps PHY, ~400 Mbps real-world per client. Practical: Default for any device from 2014+. The most common AP standard in 2026. Use for: the bulk of home and small-business Wi-Fi. Watch for: 160 MHz channels are wide and rarely useful in dense deployments; stick to 80 MHz. See also: Wi-Fi 4 (802.11n), Wi-Fi 6 (802.11ax).

Wi-Fi 6 (802.11ax)

#
The 2020 Wi-Fi standard. 2.4 + 5 GHz (Wi-Fi 6E adds 6 GHz), OFDMA, BSS Coloring, 1024-QAM, up to ~9.6 Gbps PHY, ~1.5 Gbps real-world. Practical: Designed for high-density deployments (apartments, stadiums, IoT-heavy networks). OFDMA lets one AP talk to many clients at once. Use for: new deployments, anything with 10+ devices per AP. Watch for: you need 802.11ax clients to see the speed gain — older 802.11ac clients fall back to ac rates. See also: Wi-Fi 5 (802.11ac), Wi-Fi 6E (802.11ax, 6 GHz), Wi-Fi 7 (802.11be).

Wi-Fi 6E (802.11ax, 6 GHz)

#
An extension of Wi-Fi 6 to the 6 GHz band. 7× more 160 MHz channels than 5 GHz. Practical: Solves the 5 GHz congestion problem in dense urban areas. The 6 GHz band has shorter range than 5 GHz (~1.4× higher path loss), so AP density matters. Use for: high-density offices, modern apartments, anywhere 5 GHz is full. Watch for: not all clients support 6 GHz yet (older phones, IoT chips). See also: Wi-Fi 6 (802.11ax), Wi-Fi 7 (802.11be).

Wi-Fi 7 (802.11be)

#
The 2024 Wi-Fi standard. 2.4/5/6 GHz, 320 MHz channels, MLO (multi-link operation), 4096-QAM, up to ~46 Gbps PHY. Practical: 2× faster than Wi-Fi 6E in ideal conditions, but mostly only useful for AR/VR and 8K video. Use for: new high-end APs in 2026+; most home users won't notice the difference vs. Wi-Fi 6E. Watch for: client support is still limited in mid-2026. See also: Wi-Fi 6E (802.11ax, 6 GHz), Wi-Fi 6 (802.11ax).

WireGuard

#
A modern, fast, simple VPN. Kernel-mode in Linux 5.6+. Default port 51820 (UDP). Curve25519 keys, ChaCha20 encryption. Practical: The right answer for a site-to-site VPN (house ↔ barn) or a remote-access VPN. Config: a few KB of INI-style text per peer. Watch for: the tunnel MTU is 1420; configure MSS clamping if you tunnel HTTP. See also: OpenVPN, Tailscale / ZeroTier.

Wireless M-Bus (wM-Bus)

#
A European standard (EN 13757-4) for sub-GHz (868 MHz) wireless meter reading. Practical: If you have European heat meters, water meters, or gas meters, they probably speak wM-Bus. Decoding: wmbusmeters on a Pi with an RTL-SDR or a CUL dongle. See also: LoRaWAN.

WebSocket (RFC 6455)

#
A persistent, full-duplex TCP connection. HTTP-compatible handshake, then arbitrary bidirectional messages. Practical: Used by Home Assistant, Node-RED dashboards, browser-based IoT configurators, and many real-time web apps. See also: HTTP / HTTPS.

WebP / AVIF / JPEG XL

#
Modern image formats with better compression than JPEG. WebP (Google, lossy+lossless+animation), AVIF (AV1-based, royalty-free, lossy+lossless), JPEG XL (next-gen JPEG, slow adoption). Practical: Serve AVIF or WebP from your web stack when the browser supports it (most do as of 2026) — 30–50% smaller than JPEG at equivalent visual quality. See also: HTTP / HTTPS.

WebDAV (Web Distributed Authoring and Versioning, RFC 4918)

#
HTTP extensions for collaborative file editing on a remote server. PUT, LOCK, PROPFIND, MKCOL, COPY, MOVE, DELETE. Practical: The protocol under CalDAV/CardDAV. Also useful for “mount a remote filesystem as a drive” (macOS Finder, Windows Explorer both support it). See also: CalDAV / CardDAV.

Webhook Fan-out Services (Hookdeck / Svix)

#
Managed services that buffer, retry, and fan-out webhooks to multiple destinations. Practical: The right answer when you have 5 SaaS webhooks hitting the same endpoint, or when a downstream is flaky. See also: HTTP Webhooks (port 443).
Letter

X

1 term

XMPP (Jabber, Extensible Messaging and Presence Protocol)

#
An XML-based open-standard messaging protocol, port 5222 (client) / 5269 (server-to-server). Used by Jabber, Cisco Webex, and a long tail of open chat servers. Practical: Mature, federated (any XMPP server can talk to any other), strong security (TLS + SASL by default). Use for: chat systems, presence (online/offline/away), decentralized IoT messaging. See also: MQTT 3.1.1, Matrix (Matrix.org), HTTP / HTTPS.
Letter

Z

3 terms

Zigbee 3.0

#
The 2019 revision of the IEEE 802.15.4-based home automation mesh. 2.4 GHz globally, ~250 kbps, range ~10–30 m indoor (with mesh hops further). Practical: Coordinator (one per network) = the ZBDongle-E, ConBee II, or a hub. Router (mains-powered) = any repeater or always-on device. End device (battery) = sensors, buttons. Use for: low-power, low-data-rate home automation: bulbs, sensors, locks, switches. Watch for: Zigbee and Wi-Fi both use 2.4 GHz; keep APs on channels 1, 6, or 11 (not 15/20/25) and use Wi-Fi's 5 GHz where possible. See also: Thread 1.3, Matter 1.3, Home Assistant (HASS).

Z-Wave (800 series)

#
A sub-GHz (908.42 MHz US, 868.42 MHz EU) mesh protocol for home automation, 100 kbps, ~30 m indoor range. The 800 series (ZGM230, ZG23, ZG28) is the modern generation. Practical: Each Z-Wave network has a unique Home ID; devices from one network cannot join another. Use for: locks, thermostats, switches — anything where reliable mesh + sub-GHz (less Wi-Fi interference) matters. Watch for: Z-Wave and Zigbee are competitors — pick one per device class. See also: Zigbee 3.0.

ZeroMQ (ZMQ, ØMQ)

#
A socket library, not a broker — no central server. Patterns: PUB/SUB, REQ/REP, PUSH/PULL, PAIR. Practical: Excellent for in-process or in-cluster messaging (fast, low-latency). Not the right choice when you need discovery or broker-managed QoS. Use when you control both ends. See also: NATS, MQTT 3.1.1.

No matches

Try a different term, or press Esc to clear the search.

6. Quick reference tables

6.1 Wireless protocol comparison (the one table you need)

ProtocolBandRangeData ratePowerTopologyBest for
Wi-Fi 6 (802.11ax)2.4 / 5 / 6 GHz30–100 m1.5 Gbpshighstarhigh-bandwidth local: cameras, PCs, TVs
Bluetooth LE 52.4 GHz10–50 m2 Mbpsvery lowp2p / meshphone-as-remote, beacons, sensors
Zigbee 3.02.4 GHz10–30 m indoor (mesh far)250 kbpsvery lowmeshbattery sensors, bulbs, switches
Thread 1.32.4 GHz10–30 m indoor (mesh far)250 kbpsvery lowIPv6 meshIPv6-native home automation
Matter 1.3over Wi-Fi / Thread / Ethernetsame as carriersamevariessamecross-ecosystem compat
Z-Wave 800sub-GHz (908/868 MHz)30 m indoor (mesh far)100 kbpsvery lowmeshlocks, thermostats (less Wi-Fi interference)
LoRaWANsub-GHz (868/915 MHz)2–10 km outdoor0.3–50 kbpsultra-lowstar-of-starsfarm sensors, meters, asset tracking
NB-IoT / LTE-Mcellularcellular coverage26 kbps / 300 kbpslowstartruly remote sensors, no local gateway needed
Wi-Fi HaLow (802.11ah)sub-GHz (900 MHz)1 km outdoor~50 MbpslowstarWi-Fi-native long range, still niche
Starlink (consumer)Ku bandglobal (LEO)50–250 Mbpshigh (dish)starrural broadband, the default for off-grid in 2026

6.2 What protocol for what application?

ApplicationProtocol (recommended first choice)Why
Soil moisture / tank level sensor on a farmLoRaWANkm range, multi-year battery, no Wi-Fi
Smart light bulb (home)Zigbee or Matter-over-Wi-Filow power, mesh, works with HomeKit/Google/Alexa
Smart door lockZ-Wave 800 or Thread/Matterbattery, secure, sub-GHz less interference
Livestock GPS trackerNB-IoT (no local gateway needed) or LoRaWANcellular coverage or local gateway
Outdoor security cameraWi-Fi (PoE if possible) + ONVIFbandwidth, RTSP/ONVIF NVR compat
Industrial PLC → SCADAModbus TCP / OPC UA / EtherNet/IPstandard, deterministic, IT-friendly
Marine chartplotterNMEA 2000 (CAN-based)boat standard, 250 kbit CAN
Boat AIS receiverAIS (161/162 MHz)maritime standard, $30 RTL-SDR works
Local-only sensor hub (no internet)MQTT on local broker, Zigbee/Z-Wave to hubno cloud, Home Assistant
Sensor 50 km from the nearest cell towerIridium SBD or LoRaWAN with a tall gatewayonly options
Tractor GPS guidance (cm accuracy)RTK GPS over LoRa or cellularprecision agriculture
Solar inverter monitoringModbus RTU (RS-485) or Modbus TCPindustry standard for inverters

6.3 Wired protocols cheat sheet (for sensors you can’t reach wirelessly)

WireMax lengthSpeedTopologyCommon uses
RS-4851200 m10 Mbpsmulti-drop, half-duplexModbus, DMX, BACnet MS/TP
RS-23215 m115 kbpspoint-to-pointold gear, GPS, some sensors
CAN 2.0B40 m (at 1 Mbit)1 Mbpsmulti-dropcars, NMEA 2000, industrial
CAN FD40 m8 Mbpsmulti-dropmodern cars, factory floors
Ethernet (Cat5e)100 m1 Gbpsstar (switched)LAN, PoE cameras, APs
Fiber (single-mode)40 km+10 / 100 Gbpspoint-to-pointsite-to-site, ISP backbone
DMX512 (RS-485 at 250 kbaud)300 m250 kbpsdaisy-chainstage lighting
NMEA 0183 (RS-422)10 m4.8 / 38.4 kbpspoint-to-pointold marine electronics

6.4 MQTT topic conventions worth knowing

The convention is to use a hierarchy: <root>/<location>/<device>/<measurement>. Wildcards: + (one level), # (all levels below).

# Examples (Home Assistant style):
home/garage/temperature          # state
home/garage/temperature/set      # command
home/barn/water_tank/level       # state
home/barn/water_tank/level/json  # JSON payload

# Wildcards
home/+/temperature              # matches any location
home/barn/#                      # matches anything under barn

# Reserved topics
$SYS/broker/version              # broker info
$SYS/clients/connected           # who's connected

# Sparkplug B industrial hierarchy:
spBv1.0/group_id/message_type/edge_node_id/device_id

6.5 Modbus cheat sheet (for solar inverters, meters, HVAC)

# Modbus RTU over RS-485 (Python)
from pymodbus.client import ModbusSerialClient
c = ModbusSerialClient(port='/dev/ttyUSB0', baudrate=9600,
                       parity='N', stopbits=1, bytesize=8)
result = c.read_holding_registers(address=0, count=10, slave=1)
if not result.isError():
    print(result.registers)  # list of 10 uint16s

# Modbus TCP (Python)
from pymodbus.client import ModbusTcpClient
c = ModbusTcpClient('inverter.local', port=502)
result = c.read_input_registers(address=0, count=10, slave=1)

# Register types
# 0xxxxx = Coils (digital, read/write)
# 1xxxxx = Discrete inputs (digital, read-only)
# 3xxxxx = Input registers (analog, read-only)
# 4xxxxx = Holding registers (analog, read/write)
#
# Function codes
# 01 = read coils
# 02 = read discrete inputs
# 03 = read holding registers
# 04 = read input registers
# 05 = write single coil
# 06 = write single holding register
# 15 = write multiple coils
# 16 = write multiple holding registers

# Polling loop (do not poll faster than 1 Hz on shared bus)
while True:
    regs = c.read_input_registers(0, 10, slave=1).registers
    voltage = regs[0] / 10.0   # 0.1 V resolution
    current = regs[1] / 100.0  # 0.01 A resolution
    print(f"{voltage} V, {current} A")
    time.sleep(5)

Tip: the vendor’s Modbus register map is gold. Search for “<vendor> <model> modbus register map”.

6.6 When NOT to reach for the cool protocol

  1. Wire first. A $5 Cat6 cable beats every wireless protocol. Run conduit if it’s a permanent install.
  2. Pick the boring protocol. If Wi-Fi reaches, use Wi-Fi. If RS-485 works, use RS-485. Don’t add a LoRa gateway because it’s more interesting.
  3. Don’t run a cloud dependency if you don’t have to. A local MQTT broker + Home Assistant beats Tuya + Alexa for a co-op who wants to learn.
  4. Avoid vendor-locked ecosystems (Zigbee-only hubs that don’t bridge to MQTT, Tuya-only cloud, proprietary 433 MHz). Open standards survive longer.
  5. Avoid mixing too many protocols. Three radios in one sensor is more failure modes. Pick the right one.

7. Further reading

Start here (free, high quality):

Hardware communities:


Last updated: July 2026. Maintained as a living document — if a term on your co-op isn't here, add it.