All Projects → argilo → Gr Elster

argilo / Gr Elster

Licence: gpl-3.0
A GNU Radio block that decodes packets transmitted by Elster R2S smart meters

Projects that are alternatives of or similar to Gr Elster

Compiler
Pawn compiler for SA-MP with bug fixes and new features - runs on Windows, Linux, macOS
Stars: ✭ 209 (+167.95%)
Mutual labels:  cmake, hacktoberfest
Openrct2
An open source re-implementation of RollerCoaster Tycoon 2 🎢
Stars: ✭ 10,115 (+12867.95%)
Mutual labels:  cmake, hacktoberfest
Mumble
Mumble is an open-source, low-latency, high quality voice chat software.
Stars: ✭ 4,418 (+5564.1%)
Mutual labels:  cmake, hacktoberfest
Argagg
A simple C++11 command line argument parser
Stars: ✭ 180 (+130.77%)
Mutual labels:  cmake, hacktoberfest
Flingengine
A Vulkan game engine with a focus on data oriented design
Stars: ✭ 239 (+206.41%)
Mutual labels:  cmake, hacktoberfest
Obengine
2D Game Engine with Lua Scripting made on top of SFML !
Stars: ✭ 335 (+329.49%)
Mutual labels:  cmake, hacktoberfest
Hacktoberfest2020
Contribute for hacktoberfest 2020
Stars: ✭ 72 (-7.69%)
Mutual labels:  cmake, hacktoberfest
Ultrasonic
Minimalist library for Ultrasonic Module HC-SR04, PING))) and Seeed SEN136B5B to Arduino
Stars: ✭ 77 (-1.28%)
Mutual labels:  hacktoberfest
Google cursor
🍭 Cursor theme inspired on Google
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest
Brainbox
BrainBox is a web application that lets you annotate and segment 3D brain imaging data in real time, collaboratively.
Stars: ✭ 77 (-1.28%)
Mutual labels:  hacktoberfest
Phpunit Pretty Result Printer
PHPUnit Pretty Result Printer -- make your PHPUnit tests look pretty!
Stars: ✭ 1,208 (+1448.72%)
Mutual labels:  hacktoberfest
Laravel Schedulable
Schedule and unschedule eloquent models elegantly without cron jobs
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest
Html Project
🌎
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest
Findtbb
CMake find module for Intel Threading Building Blocks
Stars: ✭ 77 (-1.28%)
Mutual labels:  cmake
Calendar
Desktop calendar app designed for elementary OS
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest
Cursos
Repositório com materiais de cursos das Pyladies São Paulo
Stars: ✭ 77 (-1.28%)
Mutual labels:  hacktoberfest
Hpp Skel
Skeleton for C++ header-only libraries
Stars: ✭ 78 (+0%)
Mutual labels:  cmake
Laravel Countdown
Provide an easy class easy way to get the time difference between two dates, with an extra bonus trait for eloquent
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest
Cotire
CMake module to speed up builds.
Stars: ✭ 1,212 (+1453.85%)
Mutual labels:  cmake
Opentok Xamarin.forms
Vonage | TokBox | OpenTok: Video/Audio Chat library for Xamarin.Forms
Stars: ✭ 78 (+0%)
Mutual labels:  hacktoberfest

gr-elster

Author: Clayton Smith
Email: [email protected]

This GNU Radio block and sample flow graph are intended to receive packets transmitted by Elster smart meters on the 902-928 MHz band. In particular, I have tested it with the Elster R2S hydro meters used in the Ottawa area. It may work with other Elster meters. Please let me know what you manage to receive with it.

It is not yet complete, as I have not fully reverse engineered the packet structure, nor the payload data. But it is able to dump complete packets, and can display meter readings and hourly electricity usage data. When running, it dumps all packets to the console in hex, and decodes those packets containing meter readings as follows:

Meter reading for meter #XXXXXXX: YYYYY kWh
Hourly readings: Z.ZZ, Z.ZZ, Z.ZZ, Z.ZZ, Z.ZZ, Z.ZZ

It also stores packets to a pcap file (beginning with elster-001.pcap) which can then be decoded using the decode_pcap.py script.

In my area, usage data is transmitted every six hours (beginning at 05:30, 11:30, 17:30 and 23:30 UTC), so it may be necessary to wait a while before such packets will appear.

The flow graph in /apps/elster_rx_multi.grc is intended for use with an RTL-SDR dongle, but can likely be used with other SDR receivers as well. It receives six out of the 25 frequency-hopping channels used in my area, but that should be sufficient to receive most traffic since packets are repeated a few times on different channels. The number of simultaneous channels is limited by the bandwidth of the SDR. An RTL-SDR dongle can reliably receive up to about 2.4 MHz, which is sufficient for six 400-kHz channels.

For best reception with an RTL-SDR dongle, set the frequency correction slider to the appropriate value (in PPM) for your particular tuner.

Build instructions:

mkdir build
cd build
cmake ../
make
sudo make install

If your GNU Radio is installed in /usr (rather than /usr/local), then replace the third line above with:

cmake -DCMAKE_INSTALL_PREFIX=/usr ../

After following the build instructions, be sure to restart GNU Radio Companion so that the new block will be available there.

Any help you can offer with reverse engineering or coding would be greatly appreciated!

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].