mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Raspberry Pi mit RFM69 und FS20


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Alexander B. (alex1891)


Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

Ich bin auf der suche nach einer Möglichkeit um die FS20 Funkthermostate 
in unserem Haus mit meinem Raspberry PI zu steuern (FHT80B-3).

Ich würde gerne Solltemperaturen setzen, Ist-Temperatur auslesen und 
evtl die Wochenpläne anpassen. (Das ist aber nicht das Thema diesees 
Threads :D)

Ich bin noch bei dem "Problem" welche Hardware ich verwenden soll. Ich 
bin jetzt über den RFM69 gestolpert. Der soll ja FS20 fähig sein.


Habe auch schon eine fertige und saubere Lösung für die Montage auf dem 
Pi Gefunden: http://shop.seegel-systeme.de/Module/Raspberry-RFM-II.html

Was sagt ihr dazu? Ist die Hardware für den vorgesehen Einsatz zu 
gebrauchen? Oder habt ihr andere vorschläge?

Wichtig ist das ich Senden UND Empfangen kann, ich will in Regelmäßigen 
Abständen die Temperatur auslesen und in meine Datenbank ablegen.

: Bearbeitet durch User
von Mick (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Schau mal hier: 
http://www.michael-heck.net/index.php/tippstricks/hausautomatisierung-fs20

Für die Protokollierung in eine Datenbank empfehlen wir RRDtool: 
http://oss.oetiker.ch/rrdtool/

von Alexander B. (alex1891)


Bewertung
0 lesenswert
nicht lesenswert
Mick schrieb:
> Schau mal hier:
> http://www.michael-heck.net/index.php/tippstricks/hausautomatisierung-fs20
>
> Für die Protokollierung in eine Datenbank empfehlen wir RRDtool:
> http://oss.oetiker.ch/rrdtool/

Das ist nicht wirklich das was ich will. Ich will auf nicht auf FHEM 
zurückgreifen. Ich will meinen eignenen Schlanken code schreiben.

von Torsten C. (torsten_c) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Alexander B. schrieb:
> Ist die Hardware für den vorgesehen Einsatz zu gebrauchen?

Im Kapitel "FS20 Funksteckdosen schalten" im Artikel RFM69 steht:
> Da das RFM69 OOK modulieren kann, können damit die FS20 Funksteckdosen
> geschaltet werden …

Also: Ja, ist demnach zu gebrauchen.

Alexander B. schrieb:
> Ich will meinen eignenen Schlanken code schreiben.

Schlank ist gut.
Ich möchte nämlich eine FS20-MQTT-Bridge auf einem ESP8266 haben und ein 
ganzes "FHEM" auf einem ESP8266 muss nicht sein.

Hast Du schon was fertig oder einen Tipp?

Es ist wohl noch etwas "reverse engineering" und "Datenblatt Lesen" 
nötig, um aus dem Code das genaue Sendeformat zu ermitteln, um dann den 
RFM69 richtig anzusteuern.
Aber dann sollte es auch mit einem RasPi oder einem ESP8266 gehen:

https://www.mikrocontroller.net/attachment/highlight/62605 oder
https://github.com/ethersex/ethersex/blob/master/hardware/radio/fs20/fs20.c

Oder kennt jemand noch bessere Informationsquellen für das 
FS20-Protokoll speziell mit dem RFM69?

Vielleicht liest Alexander Neumann hier mit und kann Tipps geben? ;-)

Quellen:
* Beitrag "FS20 Rcvr. auf AVR Anpassung - verzweifle gerade ein wenig" und
* Beitrag "RFM01 - 838.35MHz ASK OOK / FS20"

: Bearbeitet durch User
von Torsten C. (torsten_c) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
PS:
Raúl de Pablos Martín schreibt:
> … port the LowPowerLab RFM69 library to work on the Raspi. …
> Here is the RFM69 library source code
http://rdepablos.merlitec.com/mixed/rfm69-library-for-raspberry-pi

Also: Raspi "fast fertig" und "nur noch" die FS20-Codes erzeugen, z.B.:
void fs20_send(uint16_t housecode, uint8_t address, uint8_t command) {
    for (uint8_t i = 0; i < 3; i++) {
        fs20_send_sync();
        uint8_t sum = 6; /* magic constant 6 from fs20 protocol definition... */
        fs20_send_byte(HI8(housecode));
        sum += HI8(housecode);
        fs20_send_byte(LO8(housecode));
        sum += LO8(housecode);
        fs20_send_byte(address);
        sum += address;
        fs20_send_byte(command);
        sum += command;
        fs20_send_byte(sum);
        fs20_send_zero();
        _delay_loop_2(FS20_DELAY_CMD);
    }
}

Mit dem ESP8266 wird es vielleicht noch etwas mehr Aufwand …

von Alexander B. (alex1891)


Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank!
Ich hab noch gar nichts. Schreibe im moment meine Bachelorarbeit und 
habe keinen nerv zuhause auch noch zu Coden ^^

Thema ist aber noch aktuell.

Hast du dir schonmal den Transifer CC1100 angeschaut? Die Junges von 
Busware nehmen den.

Ich hab sogar einen davon hier liegen konnte mich damit aber noch nicht 
beschäftigen.

Hier vlt könnte man die cc1100 files aus der culfw benutzen ;)

http://sourceforge.net/p/culfw/code/HEAD/tree/tags/CUL_VER_161/clib/cc1100.c

Man muss halt nur di SPI Schnittstelle vom Raspberry ansprechen über 
WiringPi zum Beispiel :P

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.