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


von Alexander B. (alex1891)


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)


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)


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


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


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.:
1
void fs20_send(uint16_t housecode, uint8_t address, uint8_t command) {
2
    for (uint8_t i = 0; i < 3; i++) {
3
        fs20_send_sync();
4
        uint8_t sum = 6; /* magic constant 6 from fs20 protocol definition... */
5
        fs20_send_byte(HI8(housecode));
6
        sum += HI8(housecode);
7
        fs20_send_byte(LO8(housecode));
8
        sum += LO8(housecode);
9
        fs20_send_byte(address);
10
        sum += address;
11
        fs20_send_byte(command);
12
        sum += command;
13
        fs20_send_byte(sum);
14
        fs20_send_zero();
15
        _delay_loop_2(FS20_DELAY_CMD);
16
    }
17
}

Mit dem ESP8266 wird es vielleicht noch etwas mehr Aufwand …

von Alexander B. (alex1891)


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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.