Skip to content

🛰️ RF Funkmodul Deluxe ist ein Open-Source-Toolkit für den Raspberry Pi , mit dem du 433 MHz-Funksteckdosen, Sensoren und Fernbedienungen empfangen, analysieren und steuern kannst. Ob du deine Funksteckdosen automatisieren, Signale aufzeichnen, oder einfach nur Frequenzen entschlüsseln willst.

License

Notifications You must be signed in to change notification settings

jogiesp/rf_funkmodul

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛸 RF Funkmodul Deluxe – Rettet die 433 MHz Welt!

Achtung! ⚠️ Dieses Projekt ist so wichtig, dass es das Gleichgewicht des Universums beeinflusst. Wer hier nicht sauber GPIO 27 & 17 benutzt, riskiert, dass sein Kaffee kalt wird und die Maus im Keller die Weltherrschaft übernimmt.


🔥 Was ist das?

rf_funkmodul ist das ultimative 433 MHz Scanner- und Test-Toolkit für Raspberry Pi 64‑Bit — und ja: jetzt auch zum Steuern von Funksteckdosen.

  • rf_scanner.py – Lauscht wie ein Geheimagent auf allen 433 MHz Signalen. Speichert alles, was piept, blubbert oder klickt.
  • rf_analysis.py – Macht Ordnung im Chaos. Analysiert die empfangenen Codes und zeigt die Top‑Codes an.
  • rf_random_test.py – FĂźr waghalsige Experimente. Sendet zufällige Codes ins Äther‑Universum und beobachtet, wie das System reagiert.
  • Neu: rf_sender.py / rpi-rf_send-Beispiele – Sendet erkannte Codes gezielt, z. B. um Funksteckdosen zu schalten (funktioniert auf 64‑Bit Raspberry Pi).

🔌 Neue Funktion: Funksteckdosen steuern (jetzt mit 64‑Bit Support)

Du kannst mit diesem Projekt jetzt nicht nur abhören — du kannst auch schalten. Ablauf (kurz & knackig):

  1. Code erfassen: Starte den Scanner und drücke die Taste an deiner Funkfernbedienung. Notiere code, proto und pulselength aus der CSV oder dem Scanner‑Output.
sudo python3 rf_scanner.py --gpio 27 --outfile ~/rf_senders.csv --interval 60 --verbose
  1. Code prßfen/analysieren: Mit rf_analysis.py findest du die häufigsten/zuverlässigsten Codes.
python3 rf_analysis.py ~/rf_senders.csv
  1. Code senden (testen):

Beispiel mit dem mitgelieferten CLI‑Tool rpi-rf_send (sollte mit rpi-rf installiert sein):

# Beispiel: sende Code 4199697 via GPIO 17, verwende protocol/pulselength falls nĂśtig
sudo rpi-rf_send -g 17 -p 329 -t 1 -r 10 4199697
  • -g 17 — Pin fĂźr Sender (GPIO 17).
  • -p 329 — (optional) Pulselength / Protokollparameter — oft notwendig, damit die Steckdose den Code versteht.
  • -r 10 — Wiederholungen (einige Steckdosen brauchen mehrere Wiederholungen).
  1. Python‑Variante (kleines Script):
# rf_sender.py — einfaches Beispiel mit rpi_rf
from rpi_rf import RFDevice
import time

rf = RFDevice(17)
rf.enable_tx()
try:
    code = 4199697        # vom Scanner erfasst
    pulselength = 329     # optional, vom Scanner empfohlen
    proto = 1             # falls bekannt
    for _ in range(10):
        rf.tx_code(code, proto=proto, pulselength=pulselength)
        time.sleep(0.1)
finally:
    rf.cleanup()

🎬 Video (Prinzipübertragbar)

Es gibt ein älteres, aber sehr nützliches Video, das das Prinzip zeigt — auch wenn es sich auf ein anderes Projekt bezieht, lässt sich das Vorgehen 1:1 übertragen: https://www.youtube.com/watch?v=rSnYOeeKrS8&t=250s

Schau dir das an, wenn du lieber eine visuelle Schritt‑für‑Schritt‑Erklärung möchtest. (Spoiler: Kaffee wird zwischendurch gemopst.)


⚙️ Installation (für Mutige & Sparsame)

# Update dein System – sonst rebelliert es!
sudo apt update
sudo apt install -y python3 python3-pip mosquitto-clients git

# Rpi-RF installieren (geheimes Funkwerkzeug fĂźr Agenten)
sudo pip3 install rpi-rf

Hinweis: Wer das nicht installiert, wird niemals die geheimen Signale der Fernbedienungen entschlĂźsseln.

🚀 Starten

Scanner starten (empfängt alles, was piept):

sudo python3 rf_scanner.py --gpio 27 --outfile ~/rf_senders.csv --interval 300 --verbose

Codes senden (fĂźr mutige Tests):

sudo rpi-rf_send -g 17 -p 329 -t 1 -r 10 4199697

📡 MQTT Integration (für ioBroker‑Helden)

Alles, was empfangen wird, kann via MQTT an deinen Broker gesendet werden.

Standard‑Broker‑IP (Beispiel): 192.168.1.1

Topics:

Events: rcscan/event (Payload: code,proto,pulselength,timestamp)
State: rcscan/code/<code>/<field> (z. B. rcscan/code/4199697/count)

Beispiel:

mosquitto_sub -h 192.168.1.1 -t "rcscan/event" -v
mosquitto_sub -h 192.168.1.1 -t "rcscan/code/4199697/#" -v

🧰 Tools & Scripts im Repo

  • rf_scanner.py — Hauptscanner (CSV + MQTT via mosquitto_pub)
  • rf_analysis.py — einfache Auswertung (Top‑Codes & beste proto/pulselength)
  • rf_random_test.py — sendet zufällige Codes (zum Testen)
  • rf_sender.py — neu: Beispielskript zum Senden von Codes (siehe oben)

🐭 Sicherheits‑ & Hausmeister‑Hinweise

  • Achte auf Mäuse. Sie beobachten dich heimlich.
  • SchĂźtze Kabel vor Nageattacken (Kabelkanal verwenden).
  • Respektiere die Funkfrequenzen — stĂśr nicht die Nachbarn. Wenn du fremde Geräte schaltest, bist du kein Hero, du bist ein Problem.
  • Bei Dauerbetrieb: gelegentlich tail -n 200 ~/rf_senders.csv prĂźfen.

🧾 Lizenz

MIT — weil das Leben zu kurz für komplizierte Lizenzen ist.


🎩 Epilog (sehr wichtig & ein bisschen albern)

Wenn du dieses Repo benutzt hast und dein Empfänger wieder munter ist:

  • Trink einen Kaffee (oder Tee).
  • Sag „Hallo“ zur Maus (freundlich).
  • Erzähle einem Freund von deinem Triumph Ăźber 32→64‑Bit‑Albträume.

Viel Spaß beim Funk‑Tüfteln! 🚀

About

🛰️ RF Funkmodul Deluxe ist ein Open-Source-Toolkit für den Raspberry Pi , mit dem du 433 MHz-Funksteckdosen, Sensoren und Fernbedienungen empfangen, analysieren und steuern kannst. Ob du deine Funksteckdosen automatisieren, Signale aufzeichnen, oder einfach nur Frequenzen entschlüsseln willst.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages