# rtl_433

> Receives and decodes transmissions from ISM-band devices such as weather sensors, remote controls, doorbells and alarm sensors, using RTL-SDR or SoapySDR receivers or recorded I/Q files, and emits decoded fields as JSON, CSV, MQTT and other outputs. For signals no built-in decoder recognizes, a pulse analyzer reports OOK/FSK timings and hints for a flexible -X decoder that slices frames into bits; its analysis guide leaves mapping those bits to values to the analyst, working from known readings.

- Type: Tool
- Targets: Protocol
- Category: Protocol analysis tools
- Relationship: Foundation tool
- Sources reviewed: 2026-10-18
- Added to the catalog: 2026-10-18
- Original resource: <https://github.com/merbanan/rtl_433>
- Primary source: <https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/README.md>
- Catalog page: <https://awesomerea.org/resources/rtl-433/>
- Record JSON: <https://awesomerea.org/resources/rtl-433/record.json>
- Chinese version: [简体中文](https://awesomerea.org/zh/resources/rtl-433/index.md)

## Requirements & limits

- Live reception needs an RTL2832-based RTL-SDR dongle or a SoapySDR device; the README names LimeSDR, PlutoSDR, HackRF One and SoapyRemote among actively tested devices, and rtl_tcp servers are accepted. Without a receiver, it reads recorded CU8, CS16 or CF32 I/Q and AM sample files, and -S saves captured signals as files.
- Written in portable C99 and built with CMake; RTL-SDR and SoapySDR libraries are optional at build time, and OpenSSL is needed only for TLS outputs. Packages exist for Debian/Ubuntu (rtl-433), FreeBSD and Homebrew; release 25.12 (2025-12-12) ships Linux, macOS arm64 and Windows binaries, and the reviewed master commit is dated 2026-10-11.
- At review the README listed 380 device protocols numbered up to 386, 44 of them disabled by default and enabled with -R or a configuration file. Built-in decoders cover those listed models only; for other signals the analyzer and flex decoders frame OOK/FSK pulses and slice them into bits, and do not infer field meanings or protocol semantics.
- GPL-2.0. The optional HTTP API output listens on 0.0.0.0:8433 by default.

## Primary sources

1. <https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/README.md>
2. <https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/docs/ANALYZE.md>
3. <https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/docs/BUILDING.md>
4. <https://github.com/merbanan/rtl_433/blob/80f7bcc3a3dc6edf537544593bf367241a225215/COPYING>
5. <https://github.com/merbanan/rtl_433/releases/tag/25.12>

## More in Protocols

- [Blackbox Protobuf](https://awesomerea.org/resources/blackbox-protobuf/index.md) · Tool
- [furiousMAC Continuity](https://awesomerea.org/resources/furiousmac-continuity/index.md) · Tool
- [opendbc](https://awesomerea.org/resources/opendbc/index.md) · Tool
- [FISSURE](https://awesomerea.org/resources/fissure/index.md) · Tool
- [friTap](https://awesomerea.org/resources/fritap/index.md) · Tool
- [pbtk](https://awesomerea.org/resources/pbtk/index.md) · Tool

## About this entry

The description was reviewed against primary sources.
Original editorial content: MIT. Linked projects, papers and assets retain their own rights and licenses.
