Hauptmenü

NAS_Control

Begonnen von Dietmar63, 16 Januar 2013, 22:51:50

Vorheriges Thema - Nächstes Thema

Dietmar63

ich besitze ein NAS der Firma Buffalo und bin kein Anhänger davon ein NAS rund um die Uhr laufen zu lassen.

Die NAS von Buffalo haben die Funktion, sie per WOL zu wecken bzw. dann durch regelmäßiges Senden weiterer WOL-Pakete wach halten zu können. Diese Funktion habe ich bisher immer per PC(WLAN) oder Telefon(android) an das NAS gesandt. Manchmal ist diese Funkverbindung instabil, so dass das NAS herunterfährt und die Verbindung zusammenbricht - blöd wenn man Musik hört oder Videos schaut.

Nachdem ich in den FHEM-Sourcen auf das Modul 98_WOL gestossen bin, habe ich auf der Basis dieses Moduls ein weiteres Modul gebaut, dass ich 98_NAS_Control genannt habe. Es schickt dem NAS in regelmäßigen Abständen WOL-Pakete, so dass ich jetzt vom Sofa aus über die Weboberfläche das NAS einschalte und bequem auf die dort gespeicherten Videos zugreife.


Die Definition in fhem.cfg sieht so aus:


define <name>                 NAS_Control <MAC_ADRESS>     <IP>           <repeat> <mode>

define NAS                    NAS_Control 00:24:A5:A6:10:E0 192.168.2.196 180      UDP


Der Vorteil für mich ist, dass FHEM bei mir auf der Fritzbox läuft und somit zum NAS eine echte LAN-Verbindung besteht.
Bei Interesse kann ich es der Allgemeinheit zur Verfügung stellen.

Dietmar

Wenn das In
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Puschel74

Hallo,

super und danke für das Modul.
Schön langsam kommt ja einiges zusammen hier ;-)

Aber mal was anderes.

Du musst dein NAS "künstlich" wach halten damit es nicht runter fährt während du Musik hörst oder ein Video schaust?
Ich wage mal mein WD WorldBook auch als NAS einzuordnen.
Dieses fährt nach 5 Minuten runter wenn keine Daten angefordert werden und wird durch Datenzugriff
a) wieder geweckt wenn es schläft und
b) bleibt es wach solange Daten angefordert werden.
Wenn ich Musik höre oder ein Video anschaue fährt das NAS niemals runter - wär ja noch schöner.

Die Buffalo kenn ich (noch) nicht aber nachdem wie ich das hier lese wären die für mich unbrauchbar.

Sorry. Ich will hier nichts schlecht machen.
Aber zum Glück hat dieser Umstand wenigstens für ein neues Modul gesorgt.
Hat also auch was gutes das dein NAS runter fährt ;-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Dietmar63

Zur Klarstellung:

Das NAS läßt sich in zwei Modi betreiben:

a) NAS läuft rund um die Uhr. Dann schaltet die Platte ab, wenn kein Datenzugriff, schaltet wieder an sobald ein Zugriff erfolt. Das müßte dem entsprechen was du kennst.

b) es gibt aber auch den Modus es per WOL einzuschalten und dann durch weitere WOL-Pakete wach zu halten. Das ist die Variante, die ich in der Regel nutze.

Dietmar
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Tobias

Hi,
anstatt ein neues Modul zu bauen, hätte ich die Variante bevorzugt, das WOL Modul entsprechend zu erweitern.
Es wird sonst mit der Zeit zu unübersichtlich wenn mehrere Module sich nur in Nouancen unterscheiden :(

aber Immerhin lernt man damit Perl :)
Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

Fennek

Hallo Dietmar,

melde schon Mal Interesse an Deinem Modul an.
Danke dafür :-)

Ich habe selbst zwei leicht modifizierte Buffalo's am laufen und es
stört mich schon eine ganze Weile das man sie nur mit den NAS-Navigator
aus ihrem Tiefschlaf erwecken kann.
Aus diesem Grund laufen sie Zeitgesteuert im Dauerbetieb weil sie auch, bedingt
durch Raid Ihre Platten nicht abschalten.  
FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's

maeb3

Hallo Dietmar,

habe ebenfalls Interesse an dem Modul, da ich die gleiche Situation habe (Buffalo Linkstation Mini). Insbesondere, um das NAS aufzuwecken (z.B. wenn der TV angeht), ohne dass mein PC hochfährt.  

Grüße,
 Matthias

Markus

Hallo Dietmar sei bitte nicht Böse, aber ich bin auch der selben Meinung wie Tobias.
Lieber etwas weniger Module als viele fast gleiche und keiner kennt sich mehr aus gerade als Anfänger kann man dann leicht denn Überblick verlieren.

vielleicht liest ja Boris mit und baut dein Modul in sein WOL ein.

Gruß Markus
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa

Dietmar63

ich bin niemandmn böse.

Es ist schon richtig, dass mit der Zeit das Ganze unübersichtlich wird.
Die bessere Lösung ist es allemal, beide Funktionen mit einem Modul zu erledigen.

Das Modul ist durch mich aber doch um einiges verändert worden.

a) 98_WOl beinhaltet zwei Möglichkeiten einen Rechner zu wecken. Per ether-wake(busybox) und per UDP-Paket mittels IO::Socket::INET

b) mit ether-wake läßt sich mein NAS nicht wecken(Ursache unbekannt). Die UDP-Variante funktioniert leider nur mit der Änderung, dass die echte IP an wol_by_udp() weitergegeben wird. In 98_WOL wird immer die Broardcast-Adresse(255.255.255.255) angesprochen.

c) in 98_WOL gibt es eine Funktion, die mittels "ping" den Status an/aus des fremden Rechners/NAS erfragt. Dies ist bei meinem Buffalo-NAS nicht sinnvoll, weil das NAS auf den "ping" immer eine Antwort sendet.

d) ich habe zwei zusätzliche Parameter <repeat> <mode> eingeführt, weil ich den Abstand zwischen zwei WOL-Paketen angeben möchte bzw. weil ich die Weckmethode auswählbar machen wollte. In 98_WOL wurden einfach beide Varianten ausgeführt.

e) mein Modul ist also leider nicht einfach abwärtskompatibel - das hatte ich anfangs auch nicht vor. Es funktioniert aber jetzt so gut, dass ich die Gemeinde davon profitieren lassen möchte. Ich habe von Euch auch so viel bekommen!

Ich werde Boris kontaktieren.

Dietmar
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dr. Boris Neubert

Zitat von: orti-otto schrieb am Do, 17 Januar 2013 18:18Die bessere Lösung ist es allemal, beide Funktionen mit einem Modul zu erledigen.

Hallo,

eins vorneweg: das Modul ist nicht von mir. Ich hatte es mir nur neulich mal angesehen, kann auch was dazu sagen.

Ich denke, daß es wie folgt gemacht werden sollte:
1. Zwei weitere optionale Parameter am define:
       mode (entweder etherwake oder magicpacket); wenn mode fehlt, werden beide Verfahren ausgeführt
       repeat (gibt an, alle wieviele Sekunden ein Weckruf gemäß mode geschickt wird; falls repeat fehlt, gibt es keine Wiederholung)
   Damit ist define abwärtskompatibel.
2. Neben set ... on, was einmal oder wiederholt die Weckrufe sendet, braucht man dann logischerweise auch ein set ... off, was aber nur das Senden der Weckrufe beendet.

Weiteres:
3. Die Prüfung in WOL_GetUpdate, ob der Rechner an oder aus ist, sollte nicht über den zurückgegebenen String (100% packet loss) sondern den Return-Code 0 oder 1 des Shell-Befehls erfolgen (die auskommentierte Zeile scheint das zu tun). Das ist portabel.

Ich schaue mir das gerne an, wenn es realisiert ist, und checke es auch ein. Bitte hier posten.

Viele Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Dietmar63

Ok so hätte ich es jetzt auch gemacht! Die Änderungen baue ich morgen ein. Es scheint mir kein großer Aufwand zu sein.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

Hallo,

ich habe am Sonntag 98_WOL so erweitert, dass es die Funktion des oben beschriebenen NAS_Control zusätzich erfüllt.
Die Doku vervollstängige ich in den nächsten Tagen. Das Modul hänge ich zum Testen an. Über Feedback würde ich mich freuen.

Der Aufruf erfolgt so:

define <name> WOL <MAC_ADRESS> <IP> [<repeat> [<mode>]]

Die beiden zusätzlichen Parameter <repeat> bzw. <mode> stehen für den Abstand zwischen zwei Magic-Paketen bzw. für die Art des Weckrufs. Ich habe eine Fritzbox, mit ihr läßt sich aber offensichtlich mein NAS nicht per ether-wake wecken. Nach einigen Umbauten funktionierte aber die UDP-Methode.

Jetzt kann man jedenfalls mit mode=EW oder UDP zwischen diesen beiden Methoden auswählen.

Mit der Definition eines Geräts wird es  nicht sofort geweckt.
Mit set <wol> on bzw. set <wol> off kann ein- bzw. ausgeschaltet werden.

In Regelmäßigem Abständen wird  leider weiterhin per ping geprüft, ob das Gerät noch wach ist und ensprechende Stati versorgt. Die Idee von Tobias, auf ... system(..) umzuschalten funktionierte nicht. Der Rückgabewert der Funktion system lag immer bei -1.

Dietmar
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Hallo,

habe das WOL Modul bei mir mal getestet.

Wenn ich WOL dann einschalte, vermerkt er es zwar im Logfile, aber das Signal wird nicht wie erwartet zyklisch wiederholt.

2013.01.29 10:28:55 3: WOL set PrivateCloud on
2013.01.29 10:28:55 3: WOL waking  PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.100
2013.01.29 11:19:28 3: WOL set PrivateCloud off

Das Ein- und Ausschalten habe ich manuell vorgenommen (set .. on / set .. off), aber dazwischen liegt knapp eine Stunde und es kam kein Paket, obwohl ales Repeat 120 eingegeben war (das sind doch Sekunden, oder?)

define PrivateCloud WOL 00:24:A5:7D:F6:B5 192.168.10.100 120 UDP

Irgendeine Idee?

Grüße,
 Matthias

Dietmar63

Das Protokoll müßte so aussehen(reverse):

2013.01.29 20:12:02 3: WOL set NAS off
...
2013.01.29 20:12:02 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.01.29 20:12:02 3: WOL waking  NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196
2013.01.29 20:12:02 3: WOL set NAS on

habe es so definiert:

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 240 UDP
attr   NAS                    room Wohnzimmer

Du müßtest die Zeilen mit busy finden - dann erfolgt das regelmäßige Wecken.

Ansonsten ip oder mac falsch.

Welche Hardware nutzt du? Wurde der host schon mal von woanders erfolgreich geweckt?
Prüf mal ob bei dir das Programm Nascontrol.exe (win) funktioniert.
Manchmal werden die Paket wg. firewalls nicht versandt oder bleigen hängen - Protokoll der firewall ansehen.

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Hallo,

ich habe eine Buffalo Linkstation Mini; und ja, ich habe das System schon öfters per WOL aufgeweckt und wachgehalten.
Auf meinem (Windows) PC läuft z.B. die NASNavigator Software, die ebenfalls die Linkstation per WOL wachhält.
Sobald der PC runterfährt, geht nach spätestens 3 Minuten auch das NAS aus. Beim Starten des PCs wird die Linkstation wieder geweckt.

MAC und IP stimmen beide. Habe es nochmals geprüft. Trotzdem: ich bekomme keine busy-Einträge.
Bricht denn das Modul das Senden der WOL Pakete ab, wenn die MAC und/oder IP nicht erreichbar bzw. falsch wäre?

Macht das Modul einen Unterschied, ob die Station per Ping noch erreichbar ist?
Ich glaube nämlich, dass die Linkstation Mini im Standby/Sleep noch für eine ganze Zeit auf Pings antwortet. Trotzdem braucht man zum Starten der Festplatten (und zum Verhindern des Ausschaltens) die WOL Pakete.

Werde das am Wochenende nochmals detaillierter prüfen.

Wenn ich übrigens mein NAS "set ... on" über fhem anschalten will, zeigt er mir trotzdem als Status "off" an, d.h. er scheint das set on einfach nicht umzusetzen:

Laut Logfile angeschaltet:
2013.01.30 09:10:50 3: WOL set PrivateCloud on
2013.01.30 09:10:50 3: WOL waking  PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.100

Aber im device Status off:
(http://dl.dropbox.com/u/4212017/30-01-2013%2009-12-17.png)




maeb3

Hallo nochmal,

falscher Alarm, alles zurück. Sorry.
Ich hatte (ohne groß zu überlegen), die MAC und IP Adresse des NAS im define eingetragen, aber es muss natürlich die IP der Fritzbox (und die MAC des NAS) dort rein.

Jetzt funktioniert es.

Sorry für die Verwirrung.
 
 Matthias

Dietmar63

und du bekommst auch die regeläßigen busy-zeilen?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Ja. Alle 120 Sekunden.

2013.01.30 10:49:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:51:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:53:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:55:03 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:57:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 10:59:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:01:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:03:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:05:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:07:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:09:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:11:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:13:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:15:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:17:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:19:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy
2013.01.30 11:21:04 3: WOL keeping PrivateCloud with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.1 busy

Grüße,
 Matthias

Dietmar63

noch Probleme gehabt?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

maeb3

Hallo und danke der Nachfrage,

folgende Erkenntnisse (nachdem ich in das WOL.pm Modul eingestiegen war):

1. ich verstehe zwar nicht viel von PERL, aber ich vermute mit der Zeile
 if (`ping -c 1 $ip` =~ m/100/) {
im WOL.pm wird nach "100" in der Antwort des Pings gesucht, wie sie z.B. bei "100% packet loss" vorkommt und daraus geschlossen, dass das Gerät nicht online ist (isRunning = false).
Da mein NAS die IP 192.168.10.100 hat, enthält eine Ping-Antwort in meinem Fall immer die Zeichenfolge "100", auch wenn ich 0% packet loss habe, da die "100" ja in meiner IP vorkommt:


# ping -c 1 192.168.10.100
PING 192.168.10.100 (192.168.10.100): 56 data bytes
64 bytes from 192.168.10.100: seq=0 ttl=64 time=0.668 ms

--- 192.168.10.100 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.668/0.668/0.668 ms


Deswegen wurde mein Gerät immer als isRunning=false angezeigt, selbst wenn es angeschaltet war.

Ich habe daher in der WOL.pm die Zeile geändert in:
 if (`ping -c 1 $ip` =~ m/100%/) {

Mit diesem zusätzlichen %-Zeichen funktioniert es bei mir.
Wenn von den PERL-Experten diese Änderung nicht aus anderen Gründen als kritisch erachtet wird, kannst du die vielleicht in das Modul noch übernehmen.

2. Für die Buffalo Linkstation funktioniert es allerdings nur, weil diese per IP-Adresse auch im Sleep-Mode per Ping erreichbar sind (es werden nur die Festplatten abgeschaltet und starten erst wieder durch die WOL Pakete). Vom Prinzip her sollte man mit WOL natürlich auch Geräte über ihre MAC Adresse aufwecken können, die nicht auf Ping's reagieren, z.B. auch Rechner, die erst vom DHCP Server eine zum Zeitpunkt des Weckens noch nicht vorhersehbare IP-Adresse erhalten. Dass ein Gerät auf Pings reagieren muss, um es wecken zu können, ist (außer bei Buffalo NAS) doch eher untypisch.

Daher ist mir unklar, warum mit


    ...  
  if (`ping -c 1 $ip` =~ m/100%/) {
    readingsBulkUpdate   ($hash, "isRunning", "false");
    $hash->{STATE}    = "off";
    ...


der Status des <wol> gleich wieder auf off zurückgesetzt wird, wenn ein Gerät nicht auf Ping antwortet.
Gibt es dafür einen triftigen Grund? Zumal beim Wecken später sowieso die Broadcast-Adresse (255.255.255.255) verwendet wird (UDP-mode), wenn ich die Zeilen in der WOL.pm richtig verstehe.


Wie auch immer, für meine Buffalo Linkstation funktioniert jetzt alles soweit.

Grüße,
 Matthias



P.S.
Zum einfacheren Troubleshooten hätte ich es übrigens praktisch gefunden, wenn neben den Meldungen:
2013-02-07_11:11:49 Linkstation isRunning: false

auch die anderen Log Meldungen bzw. Statusänderungen noch ins gleiche Logfile geschrieben würden, z.B.
2013.02.07 10:41:25 3: WOL set Linkstation on
2013.02.07 10:41:25 3: WOL waking  Linkstation with MAC 00:24:A5:7D:F6:B5 IP 192.168.10.100
2013.02.07 10:41:34 3: WOL set Linkstation off

Vielleicht sollte auch wie beim alten WOL Modul der STATE zusätzlich noch als Reading mitgeführt werden? Dann kämen doch die on und off Einträge automatisch mit in das <wol>-Logfile, oder?

maeb3

Ach ja,
am Anfang im Modul in der Initialize Routine hatte ich noch die  "$readingFnAttributes;" eingefügt, damit man über "event-on-change-reading" einstellen kann, dass der Log-Eintrag
2013-02-07_11:11:49 <wol> isRunning: false
alle 900 Sekunden nur eingetragen wird, wenn sich der Zustand im Vergleich zu vorher ändert.

sub WOL_Initialize($)
{
  my ($hash) = @_;

  $hash->{SetFn}     = "WOL_Set";
  $hash->{DefFn}     = "WOL_Define";
  $hash->{UndefFn}   = "WOL_Undef";
  $hash->{AttrList}  = "loglevel:0,1,2,3,4,5,6 ".
                        $readingFnAttributes;
}


Vielleicht kann das auch nochmal jemand auf Syntax/Korrektheit prüfen und dann könnte man es evt. auch noch mit ins Modul nehmen.

Grüße,
 Matthias

Hoeness

Hallo,

ich absoluter Neuling im Bereich Fhem.
Habe es auf meiner Fritzbox am laufen.

Da ich auch eine Buffalo Linksation besitze bin ich natürlich an dem Modul Interessiert.
Könnt Ihr mir weiterhelfen ;-)

Dietmar63

Ich habe die Funktion in WOL eingebaut, damit wir nicht zu viele Module entwickeln . Schicke ich dir morgen abend zu. Ich habe heute keinen Zugriff auf mein fhem.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

anbei das von mir erweiterte WOL.
Bei mir läuft folgende Definition:


define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 240 UDP
attr   NAS                    room Wohnzimmer
attr   NAS                    event-on-change-reading isRunning, STATE




Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

hier die neue Version von 98_WOL.pm mit nas_control-Unterstützung für Buffalo.

Mit Version 5.4 wurde eine Erweiterung fällig.
Es wird auch das Attribut shutdownCmd unterstützt - allerdings muss man es nicht angeben.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

@ Thomas

Funzt es?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

TJ

Hallo Dietmar,

leider nicht, ich habe EW und UDP ausprobiert.
Ich versuche mal mit Wireshark mitzuschreiben was über das Netzwerk gesendet wird.

Gruß Thomas

Dietmar63

@Thomas:

bekommst du folgenden output?


2013.04.14 23:55:53 3: No shutdown command given!
2013.04.14 23:55:53 3: WOL set NAS off
2013.04.14 23:55:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:55:00 3: FS20 set StehlampeTisch off
2013.04.14 23:51:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:47:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:43:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:39:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:35:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:34:19 3: credit is low: 843
2013.04.14 23:31:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:27:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:23:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:19:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:15:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:11:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:07:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 23:03:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:59:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:55:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:51:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:47:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:43:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:39:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:35:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:31:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:27:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:23:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:19:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:15:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:11:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:07:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy
2013.04.14 22:03:20 3: WOL keeping NAS with MAC 00:24:A5:A6:10:E0 IP 192.168.2.196 busy


Hast du es so definiert:

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 240 UDP

Welche Hardware hast du - eine fb (7270) - bei mir funktioniert es genau so.
Ich musste zwar eine Anpassung wg. 5.4 vornehmen - war aber nicht kompliziert.

zum Wecken funktioniert bei mir auch:

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.255 240 UDP
Die Magicpakete werden dann an alle Rechner des ganzen Netzwerks geschickt und nur der Rechner mit der passenden MAC wird geweckt. Dann funktioniert der ping zur Überprüfung der Aktivität nicht - Bei Buffalo Nas ist das sowieso überflüssig, weil das Nas eh pingbar bleibt.

In diesem Thread gibt es einige positive Beispiele - es war immer ein FB als fhem-host im Einsatz.

Ich übelege übrigens noch die beiden Parameter "240 UDP" zu tauschen dann kann man den <mode> wählen ohne den Repeatmodus für Buffalo auswählen zu müssen.

Was haltet Ihr davon?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

HardyCGN

PROBLEM unten GELÖST: Update von 5.3 nach 5.4 hat geholfen.

Hallo,

beim Laden des Moduls erhalte ich immer folgende Fehlermeldung:

2013.05.09 00:34:38 1: reload: Error:Modul 98_WOL deactivated:
 Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_WOL.pm line 36, <$fh> line 49.

2013.05.09 00:34:38 0: Global symbol "$readingFnAttributes" requires explicit package name at ./FHEM/98_WOL.pm line 36, <$fh> line 49.

Woran kann das liegen? Habe leider noch eine Ahnung von Perl.

FHEM 5.3 läuft auf einer FB7390 und die 98_WOL.pm habe ich über den Windows Explorer direkt in ./FHEM auf der FB gespeichert.

Danke & lg
Michael

Chris8888

Hallo,

ich versuche analog zu eurer Buffalo-NAS meine QNAP-NAS per WOL aufzuwecken.
Leider scheitert schon der Aufruf des Kommandos mit einer Fehlermeldung im Log:

LOG:
2013.06.01 12:59:08 2: WOL set qnap on
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: trying to wake 00:08:9B:C3:38:2A
Can't exec "/usr/bin/ether-wake": No such file or directory at ./FHEM/98_WOL.pm line 127.
Use of uninitialized value $response in concatenation (.) or string at ./FHEM/98_WOL.pm line 128.
2013.06.01 12:59:08 2: trying etherwake with response:
2013.06.01 12:59:08 2: trying direct socket via UDP
2013.06.01 12:59:08 2: WOL waking qnap


Im Einsatz ist eine Fritz 7390 mit der neusten DEV 5.4
FHEM läuft als root.

Hat jemand eine Idee?

Danke!

Gruß
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

Poste bitte deine Definition
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Hier die Def:
define qnap WOL 00:08:9B:C3:38:2A 192.168.100.44
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

Wol scheint eather_wake auf der FB nicht zu finden.

Ergänze bei der Definition 240 UDP.
Weiter oben in diesem Thread ist ein Beispiel.

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Hallo Dietmar,

der Fehler bleibt. :-(
Die EW-Funktion ist doch eine Standardfunktion der Fritzbox, oder?
Oder muss man das nachinstallieren? Die WOL-Funktion über die
GUI der Fritzbox funktioniert tadellos.

Gruß
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

Eigentlich ja, ich aber man weiß ja nie.

Hast du die Alternative von WOL hier aus dem Thread gezogen oder verwendest du das Original?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Hi,

da bin ich (wiedermal - grrrrr) auf eine Freetz-Option hereingefallen.

Die FM ist jetzt - dank neuem Image - weg.

Leider funktioniert das WOL trotzdem nicht.
Die Einträge im Log sind korrekt, der Filer bleibt trotzdem dunkel.

Ich habe sowohl das Originale als auch das hier angebotene Script verwendet.

Habe ich die DEV denn richtig gesetzt?
MAC-Adresse vom Qnap
IP-Adresse ebenfalls vom QNAP

Versucht habe ich ebenfalls die IP vom Router, hat aber auch nichts verändert.

Danke für eure Geduld und Hilfe!

Gruß
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

MAC-Adresse vom Qnap
 IP-Adresse ebenfalls vom QNAP

So ist es richtig.

Aber der kleinste Fehler und es funktioniert nicht.
Kannst du das Nas mit anderen Mitteln wecken(Win7: nasControl ) .
Vielleicht fängt eine Firewall die Pakete ab.
Ich schicke gleich meine Neueste Version. Bin unterwegs.

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Hi,

über die GUI der Fritzbox klappt das WOL ohne Probleme.
Eine Firewall hängt nicht dazwischen.

Danke schon mal!



FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

Versuch es mal mit dieser Version von WOL.
Ich hoffe du weißt, wie man sie einspielt.

Probier mal folgenden Definitionen in der Reihenfolge wie angegeben. MAC und IP ersetzen.

define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 UDP 240
define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 EW  240
define NAS                    WOL 00:24:A5:A6:10:E0 192.168.2.196 BOTH 240


Dir ist klar, dass nach der Definition noch
"set WOL on"
in der Oberfäche eingegeben werden muss. Erst dann wird das wol-Paket gesendet.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Hi,

leider auch mit der neuen Version das gleiche Bild bei mir.
Alle 3 Definitionen ergeben diesen Output:
WOL set qnap on
WOL waking  qnap with MAC 00:08:9B:C3:38:2A IP 192.168.100.44
WOL keeping qnap with MAC 00:08:9B:C3:38:2A IP 192.168.100.44 busy


Der Filer bleibt leider dunkel.

Mir gehen die Ideen aus....:-(

Gruß
Christian
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

...  und mir die Antworten.

Diese Wol läuft bei mir. Gestern noch ausprobiert. FB 7270.

Das Original funktioniert bei mir nicht.

Man müsste den tatsächlichen TCP Datenstrom untersuchen.

Mit Wireshark oder so.
Ob das aber möglich ist, weiß ich nicht.

Wie heißt die IP Adresse deiner FB?
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Chris8888

Die Fritzbox hat die .1.
Mit dem Sniffen des Datenstromes kenne ich mich mal so gar nicht aus....
und schon gar nicht mit der Bewertung dessen...

Sackgasse?
FHEM 6.0 auf einem PI4 mit div. Homematic-Komponenten, Alexa, Tablet-UI und Homebridge...und läuft einfach. Erweitert mit CCU3 und Homematic-IP...und läuft immer noch.

Dietmar63

ich befürcht irgendwie ja.

wie schon geschrieben, hat es bei mir anfang auch nicht funktioniert, aber mit Änderungen, die ich dir geschickt habe, funktioniert es bei mir von der FB bis zum Buffalo-Nas.

Man muss jetzt wirklich schaun, was über die Leitung geht, um zu ermitteln wo die Pakete hängen bleiben. Die FB wird es wahrscheinlich nicht sein.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm