All Projects → kevinmehall → Rtlsdr 433m Sensor

kevinmehall / Rtlsdr 433m Sensor

Decoder for Oregon Scientific v1 protocol wireless temperature sensors with RTL-SDR and GNU Radio.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Rtlsdr 433m Sensor

Gnss Sdr
GNSS-SDR, an open-source software-defined GNSS receiver
Stars: ✭ 801 (+410.19%)
Mutual labels:  rtl-sdr, gnuradio, software-defined-radio
gr-etcetera
Additional PyBOMBS recipes that aren't in gr-recipes
Stars: ✭ 71 (-54.78%)
Mutual labels:  gnuradio, software-defined-radio
Dumpvdl2
VDL Mode 2 message decoder and protocol analyzer
Stars: ✭ 100 (-36.31%)
Mutual labels:  rtl-sdr, software-defined-radio
Gqrx
Software defined radio receiver powered by GNU Radio and Qt.
Stars: ✭ 1,934 (+1131.85%)
Mutual labels:  rtl-sdr, gnuradio
RTLion
Multipurpose RTL-SDR Framework for RTL2832 based DVB-T receivers
Stars: ✭ 88 (-43.95%)
Mutual labels:  rtl-sdr, software-defined-radio
Remote-SDR
Remote control of 2 Software Design Radio. Receiver and trasmitter. Based on Adalm-Pluto SDR or RTL-SDR or Hack RF SDR and signal processing using GNU Radio on Orange PI. GUI on a web browser.
Stars: ✭ 61 (-61.15%)
Mutual labels:  rtl-sdr, gnuradio
Qspectrumanalyzer
Spectrum analyzer for multiple SDR platforms (PyQtGraph based GUI for soapy_power, hackrf_sweep, rtl_power, rx_power and other backends)
Stars: ✭ 677 (+331.21%)
Mutual labels:  rtl-sdr, software-defined-radio
RFMap
RFMap - Radio Frequency Mapper
Stars: ✭ 23 (-85.35%)
Mutual labels:  rtl-sdr, gnuradio
Openwebrx
Open source, multi-user SDR receiver software with a web interface
Stars: ✭ 813 (+417.83%)
Mutual labels:  rtl-sdr, software-defined-radio
Gr Recipes
Main GNU Radio recipe repository for use with PyBOMBS
Stars: ✭ 90 (-42.68%)
Mutual labels:  gnuradio, software-defined-radio
Shinysdr
Software-defined radio receiver application built on GNU Radio with a web-based UI and plugins. In development, usable but incomplete. Compatible with RTL-SDR.
Stars: ✭ 884 (+463.06%)
Mutual labels:  rtl-sdr, gnuradio
RTLSDR-Airband
Multichannel AM/NFM demodulator
Stars: ✭ 487 (+210.19%)
Mutual labels:  rtl-sdr, software-defined-radio
ScratchRadio
Educational software for use with the LimeSDR platform
Stars: ✭ 64 (-59.24%)
Mutual labels:  gnuradio, software-defined-radio
gr-ccsds
GNU Radio module for Reed Solomon coded CCSDS frames
Stars: ✭ 32 (-79.62%)
Mutual labels:  gnuradio, software-defined-radio
SDR-Detector
GSM Scanner, RTL-SDR, StingWatch, Meteor
Stars: ✭ 56 (-64.33%)
Mutual labels:  rtl-sdr, software-defined-radio
Pybombs
PyBOMBS (Python Build Overlay Managed Bundle System) is the GNU Radio install management system for resolving dependencies and pulling in out-of-tree projects.
Stars: ✭ 316 (+101.27%)
Mutual labels:  gnuradio, software-defined-radio
Qradiolink
Multimode SDR transceiver for GNU radio
Stars: ✭ 176 (+12.1%)
Mutual labels:  gnuradio, software-defined-radio
gqrx
Software defined radio receiver powered by GNU Radio and Qt.
Stars: ✭ 2,345 (+1393.63%)
Mutual labels:  rtl-sdr, gnuradio
Pysdr
A guide for using Python as a software-defined radio (SDR) framework, for extremely rapid development of SDR apps/research with beautiful GUIs
Stars: ✭ 60 (-61.78%)
Mutual labels:  rtl-sdr, software-defined-radio
Airspy Fmradion
Software decoder for FM/AM broadcast radio with AirSpy R2 / Mini, Airspy HF+, and RTL-SDR
Stars: ✭ 59 (-62.42%)
Mutual labels:  rtl-sdr, software-defined-radio

Decoding Oregon Scientific wireless sensor data with RTL-SDR and GNU Radio

Kevin Mehall
http://kevinmehall.net

This script decodes the packets that Oregon Scientific remote thermometers (like the one pictured below) send to the display unit. It also serves as example code for accessing rtl-sdr / GNU Radio samples live from Python.

Picture of sensor

Each sensor transmits every 30 seconds on 433.9MHz. The packet is repeated twice. Modulation is On-off keying, and the 32 data bits are manchester encoded. Alexander Yerezeyev implemeted a decoder for AVR microcontrollers, and wrote up a description of the protocol.

My sensors use the V1 protocol, but if you have newer sensors, take a look at JeeLabs' description of the V2 protocol. It would probably be simple to adapt my code.

The GNU Radio osmosdr block captures from the device. It's tuned slightly to the side to avoid the DC noise at the local oscillator frequency. A freq_xlating_fir_filter_ccc block selects and downsamples the correct region of the captured frequency range. Then it AM demodulates that band, and uses a message sink and queue to bring the samples into Python. (see gr_queue.py). A Python state machine detects the preamble, manchester-decodes the bits, and then parses the packet.

You can also (with the -a flag) play the AM audio to your speakers. The sensor packets sound like beeps, and you can hear other devices transmitting on the ISM band.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].