FHEM+Arduino Firmata via Ethernet+RF 433 Mhz Sender+Baumarkt-Funksteckdosen

Begonnen von blueberry63, 08 April 2014, 16:16:31

Vorheriges Thema - Nächstes Thema

blueberry63

Ist OK. Bin gespannt, was bei der Osterbastelei rauskommt  :)

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

blueberry63

Noch eine Frage zwischendurch: würde das Ganze auch auf einem Arduino Nano laufen? Für einen Tip zum günstigen Einkauf der Komponenten wäre ich auch dankbar.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Wzut

Ne,ne keine Osterbastelei ich bin nicht zu Hause bis Montag. Aber ich habe mir gestern Abend das 20_FRM:Serco nochmal angeschaut - da werde ich einen ersatz für schreiben , ähnlich dem IT Modul. Damit kann man dann für jede Steckdose ein eigenes FHEM Device anlegen. Was den Nano angeht, ich habe keine Ahnung wieviel Speicher der hat.Stell doch in deinerArduino IDE einfach mal Board Nano ein lass deine Version einfach mal übersetzen. Be ider Zusammenfassung erscheint dann schon eine Fehlermeldung wenn es nicht reicht.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

blueberry63

Ich habe inzwischen eine Lösung für mich gefunden: ich lege einfach ein F20-Dummy mit Notify an.

Zitat
define ARD433 FRM 3030 global
define STECKD_BAUHS FRM_SERVO 7
attr STECKD_BAUHS IODev ARD433
attr STECKD_BAUHS room System

### STECKD Werkraum
define STECKD_WERKR FS20 55b2 00
attr STECKD_WERKR room Werkraum
define n_steckd_werkrON notify STECKD_WERKR:on { fhem("set STECKD_BAUHS angle 3874") }
attr n_steckd_werkrON room Werkraum
define n_steckd_werkrOFF notify STECKD_WERKR:off { fhem("set STECKD_BAUHS angle 3873") }
attr n_steckd_werkrOFF room Werkraum

Damit habe ich für jede einzelne Steckdose ein "Gerät", das ich sowohl  per Weboberfläche, als auch in Notifies mit ON/OFF schalten (nur on-for-timer/on-till geht leider nicht).

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

blueberry63

Hallo,

ich habe noch ein Verständnis-Problem: ist FHEMDUINO eine Konkurrenz zu diesem Projekt hier bzw. was ist der Unterschied?

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Franz Tenbrock

FHEMDUINO hängt soweit ich mich erinnere am usb Port, das hier am Ethernet
cubi3, Cul 868, ESA2000WZ, EM1000GZ,  FS20, dashboard, 1-Wire, Max Thermos, Max Wandthermo, Max Lan, Fritzbox callmonitor, , nanocul, HM Led16, HM Bewegungsmelder, HM Schalter, RPi, banana, ESP8266, DoorPi

Olly

Zitat von: Franz Tenbrock am 18 April 2014, 08:11:09
FHEMDUINO hängt soweit ich mich erinnere am usb Port, das hier am Ethernet
So ist es. ;-)
Man kann den Arduino mit Firmata auch direkt per USB anschliessen, dann ist es quasi wie FHEMDuino.

Gruss

    Olly
BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

Olly

sorry, doppelt....
BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

Olly

BananaPi 1GB;NetCSM 868MHz, miniCUL 433MHz, LaCrosseGateway, 2x SignalESP; FHEM 6.2

blueberry63

ZitatFHEMDUINO hängt soweit ich mich erinnere am usb Port, das hier am Ethernet

Wäre es dann nicht sinnvoll, beide Projekte zusammenzulegen?

Und: soll ich mal einen entsprechenden Post im FHEMDUINO-Thread posten? Ich möchte aber Wzut nicht überrumpeln...

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Wzut

Zitat von: blueberry63 am 18 April 2014, 11:19:28
Wäre es dann nicht sinnvoll, beide Projekte zusammenzulegen?
Für FHEMduino habe ich auch schon mal was veröffentlicht (für PEARL Temp Sensoren). FHEMduino und Firmata nutzen zwar beide den Arduino, aber das wars dann auch schon mit der Gemeinsamkeit. So ist diese Steckdosenschalterei nur ein Nebenprodukt, denn der Firmata Anwender wird mehr Wert auf die digitalen und analogen I/Os und den einfachen Anschluss von OneWire legen. Zumal mit Firmata leicht zwischen Anschluss via USB oder Ethernet gewählt werden kann.
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

blueberry63

FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

Christian.

Hallo zusammen,

ich möchte auch Baumarkt-Steckdosen mit einem Arduino schalten.

Meine bisherigen Erfahrungen: ich habe einen Arduino Mega mit ConfigurableFirmata im Einsatz, an dem ein paar Stromzähler hängen. Damit bin ich auch sehr zufrieden. Vor kurzem habe ich einen RF433-Sender und -Empfänger erstanden. Mit einem kleinen Sketch und der RCSwitch-Bibliothek habe ich es ziemlich schnell hinbekommen, Baumarkt-Steckdosen damit zu schalten. Soweit, so gut.

Als nächstes möchte ich das in FHEM integrieren. Auf der Suche nach bestehenden Lösungen bin ich auf FHEMduino gestoßen. Mit FHEMduino und dem bestehenden FHEM-Modul IT war das auch ziemlich einfach und komfortabel zu bewerkstelligen.

Dummerweise kann man ja aber immer nur einen Sketch gleichzeitig auf einem Arduino laufen lassen, also entweder Firmata oder FHEMduino. Ich möchte aber weder auf die Stromzähler verzichten noch für jede Anwendung einen neuen Arduino anschaffen. Die Suche nach einem allgemeinen "Sketch-Multiplexer" verlief erfolglos (ist wohl auch spätestens beim Einsatz von Interrupts nicht ohne Weiteres möglich). Ein Arduino-Sketch aus dem ban-Projekt verknüpft RCSwitch mit Firmata, leider aber nicht ConfigurableFirmata.

Vor ein paar Tagen bin ich über einen Hinweis von Norbert gestoßen, dass ConfigurableFirmata ja explizit für die Erweiterung um neue Features entwickelt wurde und habe mir das DHT11-Beispiel angesehen. Gestern habe ich nun ein Gerüst für ein RCSwitch-Feature entwickelt. Erst jetzt sehe ich, dass Wzut im Prinzip dasselbe Ziel hat und auch schon eine Spezialversion des Servo-Features zu diesem Zweck entwickelt hat.

Bevor wir jetzt parallel entwickeln, möchte ich hier meinen aktuellen Stand posten. Vielleicht kann ja mal jemand drüberschauen, der mehr Erfahrung mit der Arduino-Entwicklung hat. Der Sketch ist kompilierbar, wurde aber noch nicht ausgeführt (also völlig ungetestet). Die Perl-Seite fehlt noch komplett. Ich schätze, man benötigt neben einem neuen Modul 20_FRM_RCSWITCH Anpassungen in 10_FRM, Platform und Protocol.


Christian
Raspberry Pi 3 mit FHEM; Arduino Nano mit ConfigurableFirmata (S0-Stromzähler); nanoCUL (MAX!); SIGNALduino (RXB6, 433 MHz); eBus; RS485 & D0 (SolarView); DVB-T (Thermo-/Hygrometer); Z-Wave; ZigBee

drdownload

CUL 868 Slow-RF (FS20 Aktoren, Sender, FHT8V), CUL 868 (WMBUS-Empfang), Jeelink (PCA301), WS3600 (WH3080 über USB-Basis), Bewässerung mit ESP-Easy und Proplanta, RFXTRX433 Home-Easy Empfang und Senden, Oregon TH, WS001 TH), Blackbean IR, Mopidy-Snapcast MR Audio, Kodi, Forum-LED-Controller,

blueberry63

Ich wollte mich kurz melden, um zu berichten, dass ich nun eine Lösung für das Schalten der Steckdosen mit "on-for-timer/on-till" gefunden habe. Das Stichwort heißt "readingsProxy":

DAS FRM-Device als Basis:

define ARD433 FRM 3030 global
define STECKD_BAUHS FRM_SERVO 7
attr STECKD_BAUHS IODev ARD433
attr STECKD_BAUHS room System


Die einzelne Steckdose (hier: STECKD_DRUCKER):

define STECKD_DRUCKER readingsProxy STECKD_BAUHS state
attr STECKD_DRUCKER setFn {readingsSingleUpdate($defs{$name}, "state", $CMD, 1);; ($CMD eq "on")?"angle 3650":"angle 3649";;}
attr STECKD_DRUCKER setList on off
attr STECKD_DRUCKER valueFn {undef}


Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower