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

Hallo Christian,

ich bekomme folgende Fehlermeldung bei "RC_SENDER":

Zitat
STATE: error initializing: unsupported mode '10' for pin '7'



define ARD433 FRM 3030 global
attr ARD433 room System

### TEST RC
define RC_SENDER FRM_RCOUT 7
attr RC_SENDER IODev ARD433
attr RC_SENDER room Test

define SCHALTERA2 IT FFFF0F0000 F0 00
### 1111010000
attr SCHALTERA2 IODev RC_SENDER
attr SCHALTERA2 room Test


Woran kann das liegen?

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

Christian.

@Bastelbernd
Der ConfigurableFirmata.ino aus meinem letzten Archiv fehlen die Zeilen zur Aktivierung von RCInputFirmata. Neben der üblichen Einbindung muss für das Feature noch das Reporting aktiviert werden. Ein Beispiel hängt an; dort sind für RCInputFirmata die Zeilen 107ff, 232ff und 318ff relevant. Damit sollten eingehende RF-Signale FHEM-seitig im Modul 20_FRM_RCIN angezeigt werden. Eine Verknüpfung zu 10_IT gibt es derzeit nicht.

@blueberry
Die Fehlermeldung bedeutet, dass auf dem Arduino das RCOutputFirmata-Feature nicht zur Verfügung steht. Möglicherweise hast Du das Feature in der ConfigurableFirmata.ino auskommentiert? Dann hilft Dir schon die angehängte Version, probier es damit mal. Ansonsten würde ich vermuten, dass Du entweder auf FHEM-Seite oder auf Arduino-Seite nicht alle angepassten Dateien aus dem Archiv im Einsatz hast. Wzut war z.B. drüber gestolpert, dass das Feature noch nicht in Firmata-Version 2.5 zur Verfügung steht (hier beschrieben).
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

blueberry63

Es scheint jetzt prinzipiell zu funktionnieren (keine Fehlermeldung mehr), aber ich bekomme mit dem Code für meine Pollin-Steckdosen nicht klar. Kann man noch die DIP-Schalterstellungen direkt als DIP-Code eingeben?

Mein Beispiel: 1111010000 (1=ON)

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

... was bedeutet übrigens Tristat- Long- und Charactercode?
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.

Bei 1=On und 0=Off wird der DIP-Code 1111010000 wird zum Tristate-Code 0000F0FFFF. Die Konfiguration wäre dann
define SCHALTERA2 IT 0000F0FFFF FF F0

Zitat von: blueberry63 am 18 Mai 2014, 23:28:21... was bedeutet übrigens Tristat- Long- und Charactercode?
Das wichtigste habe ich in der Modul-Dokumentation beschrieben. RCSwitch hat 3 Funktionen zum Senden, die jeweils einen anderen Parameter haben:

  • Tristate-Code: Ein i.d.R. 12 Zeichen langer String bestehend aus 0, 1, und F. Der Code ist im Wiki beschrieben.
  • Character-Code: Ein String bestehend aus den Zeichen 0 und 1.
  • Long-Code: eine höchstens 32-Bit lange positive Ganzzahl in Kombination mit der Anzahl der relevanten Stellen (bitCount); die rechten bitCount Stellen der Zahl in Binärkodierung werden gesendet.
Im RCSwitch-Code habe ich gesehen, dass die Funktionen zueinander inkompatibel sind, d.h. bei jeder der 3 Funktionen wird der Code anders durch die Luft geschickt. Ich selber benötige nur die Tristate-Variante. 10_IT funktioniert auch nur mit Tristate.
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

ntruchsess

Ich benutze bisher keine 433-Mhz basierte Hardware. Wird aber Zeit, dass ich mit der Aufnahme des Features in den Firmata-standard weiterkomme, daher mal eine kurze Frage in die Runde: was genau brauche ich als Minimalausstattung zum testen? (Link auf die billigste eBay-variante reicht, es muss nur repräsentativ sein. Ich will damit nur testen und nichts reales schalten...)

Gruß,

Norbert
while (!asleep()) {sheep++};

Wzut

Sender für 3,49€
http://www.watterott.com/de/RF-Link-Sender-434MHz

der Empfänger für 4,37 € ist nicht so der Hit , geht aber auf dem Schreibtisch
http://www.watterott.com/de/RF-Link-2400bps-Empfaenger-434MHz 

bei ebay nach 434MhZ Empfänger suchen mit dem Zusatz "Superhet" - die sollen laut Aussage im FHEMduino Thread sehr gut sein.

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Bastelbernd

Hallo Christian,

Leider komme ich mit dem Empfangen nicht weiter. Auch mit denen letzten Sketch geht es nicht. Es kommen keine Daten an.
Senden geht prima.
Hast du noch einen Tipp für mich, wie man das besser eingrenzen kann woran das liegt?

Gruß Bernd
FHEM auf Server mit Mainboard ASRock J3160B,Gehause Mini ITX E-3002+ SSD
Viessmann(optolink) HM-CFG-USB(HMLAN), PoKeys57E
Jeelik(Arduino)+LaCrosse, Nextion
Firmata+Arduino+1Wire+2xDS2423+IN+OUT
Electrolama zig-a-zig-ah!,Zigbee2MQTT

ntruchsess

Zitat von: Wzut am 19 Mai 2014, 13:04:34
Sender für 3,49€
http://www.watterott.com/de/RF-Link-Sender-434MHz

der Empfänger für 4,37 € ist nicht so der Hit , geht aber auf dem Schreibtisch
http://www.watterott.com/de/RF-Link-2400bps-Empfaenger-434MHz 

bei ebay nach 434MhZ Empfänger suchen mit dem Zusatz "Superhet" - die sollen laut Aussage im FHEMduino Thread sehr gut sein.

danke, aber wenn ich das richtig verstehe habe kann ich meinen Arduino damit Sende- und Empfangstauglich machen, habe aber noch keinen Sensor oder Aktor als Gegenstelle?
while (!asleep()) {sheep++};

Wzut

richtig, wenn es lieber "billig" magst -> 3er Set für 9.95 http://forum.fhem.de/index.php/topic,18235.0.html
oder was aus dem Baumarkt (IT, ELRO, etc )  Bsp bei Obi ELRO 3er Set ca. 15 Euro
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Christian.

@Bastelbernd
Ich glaube, ich habe ein entscheidendes Detail bisher unterschlagen: der Empfang basiert auf Interrupts, d.h. der Empfangspin muss Interrupt-fähig sein. Bei den meisten Boards sind das Pin 2 und 3. Wenn der Pin nicht interrupt-fähig ist, sollte es aber eigentlich einen Fehler beim Initialisieren von 20_FRM_RCIN geben. Wenn das Dein Problem auch nicht löst, kannst Du das Empfangsmodul mal mit RCSwitch direkt testen. RCSwitch enthält Beispiel-Sketches, die alles Empfangene auf der Konsole ausgeben.

@Norbert
Sender & Empfänger bei eBay. Die günstigsten Steckdosen gibt's vermutlich bei Pollin.
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

Bastelbernd

Hallo Christian,
das mit den Interrupts war mir schon klar. Habe das auch schon mit RCSwitch getestet, da geht der Empfang. Pin ist 2.
Wenn man den in der FRM_RCIN ändert gibt das auch einen Fehler.Habe auch Verbose 5 aktiviert.
Sieht so aus als ob der aber auf dem Arduino nicht aktiviert wird.
Ich weiß auch nicht weiter.

Gruß Bernd
FHEM auf Server mit Mainboard ASRock J3160B,Gehause Mini ITX E-3002+ SSD
Viessmann(optolink) HM-CFG-USB(HMLAN), PoKeys57E
Jeelik(Arduino)+LaCrosse, Nextion
Firmata+Arduino+1Wire+2xDS2423+IN+OUT
Electrolama zig-a-zig-ah!,Zigbee2MQTT

blueberry63

 >:( Ich komme leider nicht weiter. Folgende Fehlermeldung sehe ich im LOG:

Zitat
error initializing 'RC_SENDER': Undefined subroutine &main::FRM_RCIN_apply_attribute called

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

@Christian: kann es sein, daß in Deiner letzten Ino ein Fehler ist:


#ifdef RCOutputFirmata_h
  firmataExt.addFeature(rcOutput);
#endif
#ifdef RCOutputFirmata_h
  firmataExt.addFeature(rcInput);
#endif


?

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

Christian.

Ja, habe ich gerade eben auch bemerkt. Und in Zeile 126 fehlt auch noch die Ergänzung von RCInputFirmata_h. Und noch einer: in 20_FRM_RCOUT, Zeile 69 steht FRM_RCIN_apply_attribute statt FRM_RCOUT_apply_attribute (der dürfte aber keine Auswirkungen bis auf Deine Log-Meldung haben). Ich zieh das jetzt grade.
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