FHEMduino

Begonnen von mdorenka, 06 Dezember 2013, 15:34:39

Vorheriges Thema - Nächstes Thema

mommfried

#285
update:
nach dem ich alle Sender und den FHEMduino mit Doppelquad Antennen ausgerüstet habe, konnte ich den Verstärker unterm Carport
abbauen, die Sender im OG und im UG sind eigentlich auch nicht mehr nötig, ich komme mit dem Sender im EG nun in jede Ecke...
Der Empfang ist auch um längen besser.
Ich habe Sender und Empfänger einfach in den Mittelpunkt der Antenne gelötet, Antenne an die eine Seite, GND an die andere Seite.
So sieht die aus, 16,8 cm Kantenlänge: http://www.cnet.de/wp-content/uploads/legacy_images/c/praxis/weekend/0903_dvb-t-doppelquad-antenne-im-eigenbau/quadbau_04.jpg



Sehr schön,

empfängt sogar meine billig Bewegungsmelder, muß nur noch schauen, wie ich dazu ein notify gestalte.
Home easy wird nicht erkannt.

Jetzt noch ne doppelquad Antenne dran, mal sehen, wie der Empfang dann ist.

Vielen Dank dafür

Gruß  8)

Momme

1x Raspi 5, ein paar 4er,  conbee II, Espeasy, Aquara

Spezialtrick

Könntest du ein Foto deiner Antenne posten?
FHEM - Debmatic - Zigbee2MQTT - Homekit

cbvo

#287
Hallo

Ich bekomme es leider immer noch nicht hin
Dsmeg zeigt
Product: FT232R USB UART
[ 3207.211588] usb 1-1.3: Manufacturer: FTDI
[ 3207.211601] usb 1-1.3: SerialNumber: A501S2C6
[ 3207.217766] ftdi_sio 1-1.3:1.0: FTDI USB Serial Device converter detected
[ 3207.217954] usb 1-1.3: Detected FT232RL
[ 3207.217976] usb 1-1.3: Number of endpoints 2
[ 3207.218008] usb 1-1.3: Endpoint 1 MaxPacketSize 64
[ 3207.218025] usb 1-1.3: Endpoint 2 MaxPacketSize 64
[ 3207.218039] usb 1-1.3: Setting MaxPacketSize 64
[ 3207.218853] usb 1-1.3: FTDI USB Serial Device converter now attached to ttyUSB0


Leider bleibt es immer noch auf Disconnect.
Kann es sein das beim Sketch sich was geändert hat. Weil laut Word Anleitung sind es bei fertigstellung des sketches "12810 bytes", ich habe aber nur 10756bytes.
Ich gehe nach der Word Anleitung.

Momentan habe ich ein nackiges FHEM und nur den duino dran.
Dieses define define Arduino FHEMduino dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A501S2C6-if00-port0@9600
habe ich auch probiert, gleiches verhalten.

++EDIT++
Jetzt läuft es. Habe die Module nochmals draufgespielt.
RaspPi
Addon Board 868 Mhz, IT, VUplus solo²
Fritzbox 7390
Onewire Temp Fühler

Wernieman

Copy/Paste Fehler oder Tippfehler?
define Arduino FHEMduino dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A501S2C6-if00-port0@9600
Da fehlt ein / vor dev/serial/....

Also eigentlich muss die Zeile lauten:
define Arduino FHEMduino /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A501S2C6-if00-port0@9600
Sofern das usb-FTDI_FT232R_USB_UART_A501S2C6-if00-port0 richtig ist ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

snoop

Hallo zusammen,

ich möchte auch gerne kurz über die Sende und Empfang Thematik berichten, da ich mit zwei verschiedenen Transmittern und Receivern getestet habe (LPF seit zwei Monaten im Einsatz / SRF seit ein paar Tagen).
Meine Umgebung besteht aus:
- RPI
- LPF (http://www.ebay.de/sch/i.html?_nkw=arduino+433)
- SRF (http://www.ebay.de/itm/281169560721?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649)
- 7 x Conrad KW9010 (Bei Ebay ersteigert)
- Belkin River Rock USB 2.0 Hub (4-Port)(http://www.amazon.de/Belkin-River-Rock-USB-4-Port/dp/B009IQB1OQ/ref=sr_1_16?ie=UTF8&qid=1393102572&sr=8-16&keywords=belkin+usb+hub)

Erfahrungen mit LPF:

- Ohne aktiven USB Hub (direkt an RPI angeschlossen) beträgt die Empfang-Reichweite max. 50 cm (inkl. einer 17 cm Antenne - Achtung keine Litzenleitung - siehe Foto)
- Mit aktiven USB Hub kann ich im gesamten Haus (inkl. 2 Decken aus Stahlbeton) funken. Dies funktionierte bei mir nur im Dachgeschoss (in einem Bereich indem ich keinen RPI noch andere Komponenten hinstellen kann bzw. möchte.).
- Das Senden vom Dachgeschoss aus funktioniert wie oben beschrieben, vom Keller aus ist der Empfang gleich null - erklären kann ich mir das nicht...
- Senden/Schalten eigentlich kein Problem lediglich die Position (Ort) und die Ausrichtung der Antenne des Senders ist hier entscheidend.

Fazit: Es geht, aber der Empfänger und Sender sind sehr sensibel (Empfänger mehr als der Sender) auf Veränderungen in Bezug auf Position und Richtung der Antenne.

Erfahrungen mit SRF:

- Arduino (Sender und Empfänger) an den aktiven USB HUB angeschlossen (den Test ohne USB Hub habe ich mir gespart) "ohne" Antenne und sehe da - senden und empfangen quer durchs Haus - selbst durch zwei Decken aus Stahlbeton "KEIN" Problem - Reichweite min. 15m.
- Das ganze funktioniert vom Dachgeschoss als auch vom Keller aus.

Fazit: LPF landet wieder in die Bastellkiste (vielleicht finde ich noch eine Verwendung dafür.). Der SRF ist es. Ich habe zusätzlich eine 17cm Antennen  montiert um auf Nummer sicher zu gehen, dass dem Sender und Empfänger nicht die Puste ausgeht.

So, ich denke das sollte zunächst reichen.

Viele Grüße
Arthur

P.S: Jetzt fehlt nur noch ein Gehäuse (es hat die Größe eines USB Sticks) da werde ich was basteln müssen.



reichi

Hi!

nachdem ich hier nur Leonardos (und leo-kompatible pro micros) habe, habe ich den code mal etwas angepasst, so dass der sketch nun auch auf einem Leonardo (und kompatiblen boards) problemlos läuft.
Ich war so frei einen Pull-Request auf github zu machen möchte aber darum bitten das einmal auf einem 328 basierten arduino gegenzutesten (da ich ein solches gerät nicht besitze.

Was ich mir auch erlaubt habe ist die DPINs in defines auszulagern.
Magic Numbers irgendwo im Code machen mich nämlich wuschig ;).

mommfried


Nabend,

ich bekomme es nicht hin, das empfangene Signal mit einem notify zu verarbeiten, daher HILFEeeeeeeeeeee  :o

Im Event Monitor sieht das empfangene Signal so aus:

FHEMduino FHEMduino_USB UNKNOWNCODE IR5592413

Im Log so:

FHEMduino_USB: unknown message IR5592413

Wie muß ich jetzt ein notify dazu gestalten?

Danke

Momme
1x Raspi 5, ein paar 4er,  conbee II, Espeasy, Aquara

Olly

Zitat von: mommfried am 02 März 2014, 19:16:21
Nabend,

ich bekomme es nicht hin, das empfangene Signal mit einem notify zu verarbeiten, daher HILFEeeeeeeeeeee  :o

Im Event Monitor sieht das empfangene Signal so aus:

FHEMduino FHEMduino_USB UNKNOWNCODE IR5592413

Im Log so:

FHEMduino_USB: unknown message IR5592413

Wie muß ich jetzt ein notify dazu gestalten?

Danke

Momme
Hallo,

das liegt daran, dass der Empfang von IT Signalen noch nicht komplett implementiert ist. FHEMduino kann das Signal zwar  empfangen, aber die richtige Übergabe an FHEM fehlt noch.

Gruß

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

yogiflop

#293
Lösung in #297 ;-)


Guten Morgen,

nach einigem hin und her habe ich nun die Modul am laufen und es sieht auch nicht schlecht aus. Die Werte kommen in regelmäßigen Abständen, teilweise ein bißchen zuviele Werte auf einmal, aber egal.

Allerdings habe ich hin und wieder mal folgenden Eintrag im Logfile.

2014.03.04 22:44:34 1: FHEMduino_KW9010 97 Skipping override due to too large timedifference
2014.03.04 22:44:39 1: FHEMduino_KW9010 86 Skipping override due to too large timedifference
2014.03.04 22:45:00 1: FHEMduino_KW9010 B5 Skipping override due to too large timedifference


Danach kommen die Werte aber wieder normal.

Des Weiteren kommen alle Werte immer 3 mal und diese speichert er dann auch drei mal. Ich habe einmal in den Quellcode geguckt - leider nur rudimentäre Programmierkenntnisse in Perl - und gesehen, das dort auch mit "lastReceive" gearbeitet wird, also einer Zeit, wann der letzte Wert empfangen wurde. Kann man hier keinen Interval definieren der im "define" mit übergeben wird ?? oder einen Standardwert von 120 sec oder ähnlich ?? Da das Modul ja nicht über Update verteilt wird (was recht schade ist) könnte man da zusammen arbeiten.

CubieTruck mit FHEM 5.7
433MHz, 868MHz HMLan
div. Baumarktsteckdosen, 3x HM
div. MiLight's

Franz Tenbrock

#294
Hallo
hatte ganz am Anfang das FHEMduino Projekt auch bei mir verushct, es funktionierte auch so weit nur die Reichweite  :-(
dann hab ich erst mal mit 1wire weitergemacht ..

jetzt liegt der fertig programmierte duino hier

mit diesem Empfänger
http://www.ebay.de/itm/433MHz-Superheterodyne-RF-Link-kits-3400-ARM-MCU-Transmitter-and-Reveiver-/281169560721?pt=LH_DefaultDomain_0&hash=item4177030491
scheint ja das Empfangsproblem gelöst zu sein.

Hat jemand Erfahrung ob die Revolt Energiemessstecker damit funktionieren??
Revolt NC-5462


Das wäre ein Grund für mich das Ding mit dem neuen Empfänger auszurüsten um endlich diese Dosen (4 Stück) vernünftig auszuwerten


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

yogiflop

Ich mal wieder ....

da mir meine Module deutlich zu kommunikativ waren, waren ich mal ein bißchen was geändert.

im Modull 14_FHEMduino_KW9010.pm
habe ich eine kleine "Zeitschleife" eingebaut.

alter Code:

  readingsBeginUpdate($hash);
  readingsBulkUpdate($hash, "state", $val);
  readingsBulkUpdate($hash, "temperature", $tmp);
  readingsBulkUpdate($hash, "humidity", $hum);
  readingsBulkUpdate($hash, "battery", $bat);
  readingsBulkUpdate($hash, "trend", $trend);
  readingsBulkUpdate($hash, "sendMode", $sendMode);
  readingsEndUpdate($hash, 1); # Notify is done by Dispatch


neuer Code:

if ((time() - $hash->{lastTransmit} > 60)) {
  readingsBeginUpdate($hash);
  readingsBulkUpdate($hash, "state", $val);
  readingsBulkUpdate($hash, "temperature", $tmp);
  readingsBulkUpdate($hash, "humidity", $hum);
  readingsBulkUpdate($hash, "battery", $bat);
  readingsBulkUpdate($hash, "trend", $trend);
  readingsBulkUpdate($hash, "sendMode", $sendMode);
  readingsEndUpdate($hash, 1); # Notify is done by Dispatch
  $hash->{lastTransmit} = time();
}


Dadurch werden die Werte nur noch ca. alle 60 aufgezeichnet. Dieses reduziert die Datenlast doch erheblich.

@Frank
Ich habe hier seit ein paar Tagen den Superheterodyne-Empfänger in Einsatz und erreiche damit inzwischen die gesamte Wohnung. Also eine deutliche Verbesserung zu den anderen ebay-billg-Empfängern.
CubieTruck mit FHEM 5.7
433MHz, 868MHz HMLan
div. Baumarktsteckdosen, 3x HM
div. MiLight's

Wzut

Ich habe bei mir drei Aussensoren für eine Wetterstation von PEARL (www.pearl.de) im Einsatz (Preis ca. 5-7 Euro ) , Pearl Artikel Nr. NC-7159
Da im Netz keine Doku zu den Dinger zu finden war habe ich versucht die Bedeutung der 36 Datenbits herauszufinden. (siehe Code)
Anbei ein Stückchen C damit der Arduino diese Sensoren auswerten kann. Die Ausgabe habe ich dem Format der KW9010 Sensoren angepasst, so das kein neues FHEM Modul nötig war.
/*
* NC7159
*/

bool receiveProtocolNC7159(unsigned int changeCount) {

#define NC7159_SYNC   9000
#define NC7159_ONE    3750
#define NC7159_ZERO   1800
#define NC7159_GLITCH  100
#define NC7159_MESSAGELENGTH 36

bool bitmessage[36];
byte i;
 
if (changeCount < NC7159_MESSAGELENGTH * 2) { return false; }
if ((timings[0] < NC7159_SYNC - NC7159_GLITCH) || (timings[0] > NC7159_SYNC + NC7159_GLITCH)) { return false; }

  for (i = 0; i < (NC7159_MESSAGELENGTH*2); i=i+2)
  {
    if ((timings[i+2] > NC7159_ZERO - NC7159_GLITCH) && (timings[i+2] < NC7159_ZERO + NC7159_GLITCH))    { bitmessage[i>>1] = false; }
    else if ((timings[i+2] > NC7159_ONE - NC7159_GLITCH) && (timings[i+2] < NC7159_ONE + NC7159_GLITCH)) { bitmessage[i>>1] = true; }
    else { return false; }
  }
 
  // Sensor ID & Channel
  byte unsigned id = bitmessage[3] | bitmessage[2] << 1 | bitmessage[1] << 2 | bitmessage[0] << 3 ;
  if (id !=5) return false; // ist leider kein Pearl Sensor Nr. NC-7159 :(
 
  id=0; // unterdruecke Bit 4+5, jetzt erst einmal nur 6 Bit 
  for (i=6;i<12;i++)  if (bitmessage[i]) id +=  1 << (13-i);

  // Bit 12 : immer 1 oder doch Battery State ?
  bool battery = bitmessage[12];
 
  // Bit 14 + 15 = Kanal  0 - 2 , id nun bis auf 8 Bit fuellen
  id = id | bitmessage[14] << 1 | bitmessage[15] ;

  // Trigger
  bool forcedSend = bitmessage[13];
 
  int temperature=0;
  for (i=17;i<28;i++) if (bitmessage[i]) temperature +=  1 << (27-i);
  if (bitmessage[16]) temperature -= 0x1000; // negative Temp
 
  // die restlichen 8 Bits sind z.Z unbekannt vllt. eine Pruefsumme ?
  byte rest=0;
  for (i=28;i<36;i++) if (bitmessage[i]) rest +=  1 << (35-i);
   
  char tmp[11];
  sprintf(tmp,"K%02x%01d%01d%01d%+04d%02d", id, battery,0, forcedSend, temperature, rest);
  message = tmp;
  available = true;
  return true;
}

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

atze09

#297
Hallo zusammen,
Ich habe schon einen FHEMduino an Synology/ Pi in Betrieb, aber irgendwie schaffe ich es nicht ihn an meiner Fritzbox 7490 zu betreiben.
Habt ihr Tips für mich oder muss ich was spezielles beachten??
Treiber installieren??

Edit:
Nicht mehr so aktuell. Habe es nun wieder auf meiner Synology DS212j am laufen und diese geht auch wieder in den Ruhemodus, nach dem ich die logfiles per symlink auf einen externen USB Stick gemacht habe. (Anleitung hier aus einem anderem Thread.

speddy99

Hallo,
hat jemand einen Tip wie flashen  direkt über den raspberry funktioniert?

Über win7 und win xp bekomme ich den Nano nicht an laufen. Wird einfach nicht erkannt. Laut Internet ist diese Problem wohl öfter..... Vielleicht liegt es auch Chinesen nano....

Wo habt ihr eure funktionierenden Nano geholt?

Und wie funktioniert das flashen über inotools

Lg Michael
Raspberry Pi Ver.3 16GB SD, HM Lan,  6* HM CC RT DN 3* HM SEC SC 2
1-Wire 5*DS18B20 direkt am Raspi
Signalduino,8*Intertechno Steckdosen,4*WS0002 Feuchtefühler
WEMOS D1 Mini mit Led´s Statusbildschirm

fh168

Hallo Speddy,

es liegt nicht an den Chinesen, sondern am Treiber.
Ich habe in meinem Blog vor einiger Zeit dazu einen Beitrag geschrieben, da steht alles drin.
Ich nutze die kleinen Nanos auch, sind klasse.

http://blog.moneybag.de/lacrosse-temperatursensor-an-arduino-nano-und-rfm12b-als-jeelink-ersatz/

Robin
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-