- Offizieller Beitrag
Also die Steckdosen kann man ja zur Not immer noch per Handsender ansteuern, so ist es ja nicht, davon weis nur leider der Pi nichts!
Man müsste also einen Empfänger an den Pi schließen, der das Signal der Handsender bekommt und auch so den Status speichert, den der Handsender verändert. Erst mal unwichtig, wie ich finde.
Funkstörungen? Was stellst du dir genau vor? Ein Nachbar, der den selben Hauscode nutzt? Habe mir diesbezüglich auch schon Gedanken gemacht. Meine relativ simple Lösung: Zwei Steckdosen, welche hintereinander stecken!
So:
Strom -> Steckdose 10101 1 1 -> Steckdose 11001 1 1 -> Relai -> Garagentor
Also das die App erst die erste anschaltet, dann die zweite mit jeweils unterschiedlichen Hauscodes, dann nach einer Sekunde die zweite wieder aus, dann nach noch einer Sekunde die erste wieder aus!
So müsste jemand genau wissen, wie die Konfiguration aussieht, denn es multipliziert die Wahrscheinlichkeit mit sich selbst, was viel viel sicherer ist! Hätten wir z.B. nur 10 Möglichkeiten per DIP Schalter, hätten wir dann durch die zweite Steckdose 10 hoch 2 Möglichkeiten! Also 100!
Da wir aber 5 DIP-Schalter haben, haben wir so schon 31 Möglichkeiten? Da 11111 als Binärecode in Dezimal 31 ergibt? Und so 31 hoch 2 961 Möglichkeiten wären?
Ist auf jeden Fall einiges mehr!
Zum Thema Stromausfall, PECH! Wenn du kein Strom hast, bringt dir das auch recht wenig STECKDOSEN an und aus zu schalten, oder Garagentore
Nur die Sache mit Funkstörung das würde mich interessieren!
@ shulle:
Ich habe selber kein Andoid zuhause, müsste aber genau so sein wie beim iOS, da die App für beide Systeme angeboten wird und auch vom Entwickler gleiche Funktionen besitzt! lg.
@ ThomasH:
Ich versuche verzweifelt ein zweites kleines Skript, welches mir ermöglicht eine voreingestellt Dose z.B. "11111 2" nach 30 Minuten nach dem Drücken des Lampenbuttons in NetIO zu erstellen, doch ohne Erfolg
Kannst du mir da helfen?
Wichtig ist halt, das es auch wenn die App geschlossen wird weiter läuft und das wenn man den Befehl erneut aufruft, das Skript neu startet, also z.B. nach 20 Minuten willst du ab da erst wieder 30 Minuten, also drückt man den Button einfach noch mal.. Und am besten einen Button, der das zweite kleine Skript halt abbricht. Aber vorrangig, wäre es schon toll, wenn es überhaupt geht
Du bist doch so fix im Programmieren
Danke schon mal
EDIT:
Habe es direkt mal getestet, dein Skript, aber die Temperatur spinnt
Also 1wire gibt das aus:
pi@raspberrypi /sys/bus/w1/devices/28-0000030d050f $ cat w1_slave
44 01 4b 46 7f ff 0c 10 a9 : crc=a9 YES
44 01 4b 46 7f ff 0c 10 a9 t=20250
Aber das Skript macht da irgendwas falsch
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
14.3
-----------------------------------------------------
client > 192.168.178.52 < send > Lampe Bett aus <
client requested valid command Lampe
Die Lampe Bett mit id 11111 1 wird geschaltet
Bett An
-----------------------------------------------------
client > 192.168.178.52 < send > Lampe Bett an <
client requested valid command Lampe
Die Lampe Bett mit id 11111 1 wird geschaltet
Bett Aus
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
-9.7
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
-9.7
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
-7.7
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
6.3
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
28.3
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
18.3
-----------------------------------------------------
client > 192.168.178.52 < send > Temperatur eins <
client requested valid command Temperatur
28.3
Alles anzeigen
Was macht den im Skript diese Zeile:
temp = random.randrange(-10, 30, 2) + 0.3
???
EDIT2:
Okay, habe es jetzt
habe diese Zeile wegkommentiert und folgende eingefügt:
temp = read_sensor("28-0000030d050f")
Wichtig bei einem Neustart ist, das man jedes mal die Module neu lädt: [font="Consolas"]sudo modprobe w1[/font][font="Consolas"]-[/font][font="Consolas"]gpio und [font="Consolas"]sudo modprobe w1[/font][font="Consolas"]-[/font][font="Consolas"]therm[/font][/font]