[GELÖST] Dooya Rolllädensteuerung

Begonnen von Jarnsen, 04 November 2015, 22:06:27

Vorheriges Thema - Nächstes Thema

Jarnsen

Zitat von: Sidey am 07 Oktober 2016, 18:30:50
Das ist ja komisch, was passiert da denn genau nach dem Reboot?

Er erkennt den sduino nicht mehr... kurz vom Strom genommen geht es wieder... wenn man irgendwie regeln könnte das USB erst nach dem Start aktiviert wird würde es gehen...


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

majorshark

Ich habe nur eine Markiese mit Dooya Motor. Von daher reicht mir der Funktionsumfang.  :D
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

Ralf9

Zitat von: Jarnsen am 07 Oktober 2016, 18:28:17
Das einzige was ein wenig nervig ist, ist wenn der RPi neugestartet wird muss ich den SignalDuino ab und wieder anstöpseln... aber den nanoCUL auch

Dies hängt evtl damit zusammen, daß bei vielen der clone nanos aus china vergessen wurde den Testpin des FTDI Chips auf GND zu legen:

https://ketturi.kapsi.fi/2014/04/how-to-fix-moody-arduino-nano/

https://raspberry.tips/faq/arduino-nano-als-cul-reboot-fehler-beheben/


Wegen was mußt Du eigentlich den RPi so oft neu starten? Hast Du den RPi nicht immer inbetrieb?

GrußRalf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Jarnsen

Klar ist er immer am Netz... muss ihn nicht oft neu starten... sage nur das es das einzige ist was mich stört...


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

Ralf9

Wenn Du nicht an der RPi Hardware bastelst, dürfte normalerweise nur sehr selten ein neustart notwendig sein.
Mein Banana Pi hat mittlerweile eine uptime von fast einem Jahr.

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

RitterSport

@majorshark
Danke erstmal für die Links und Hinweise.
Leider habe ich folgendes Problem über die Konsole und Rollo:

Die erste versuchsweise angelernte Rolllade schaltet sehr selten, und wenn wird nur der Befehl runter ausgeführt.
Mit den Fernbedienungen geht es einwandfrei.
Ein Sendeproblem sollte es eigentlich auch nicht sein, es ist eine Lambda/4 angelötet und das Schalten von Steckdosen geht

Irgendeine Idee?
Wie kann ich weitere Rollos anlernen? Anstelle von "sudo nice -n -19 ./rollo 0 0 1 0 anlernen" ein " sudo nice -n -19 ./rollo 0 0 0 1 anlernen" ?

Danke

Joe

majorshark

Gerne.

Zitat von: RitterSport am 11 Oktober 2016, 20:56:54
Die erste versuchsweise angelernte Rolllade schaltet sehr selten, und wenn wird nur der Befehl runter ausgeführt.
Mit den Fernbedienungen geht es einwandfrei.
Ein Sendeproblem sollte es eigentlich auch nicht sein, es ist eine Lambda/4 angelötet und das Schalten von Steckdosen geht

Ich denke da gibt es zwei Möglichkeiten. Die erste könnte sein das der Funkempfang nicht optimal ist. Dafür würde ich die Funkstrecke verkürzen. Nur zum Test um das auszuschießen.
Die zweite Möglichkeit ist das Timing des 'rollo' Tools. Das hatte der Autor auf Mikrokontroller.net auch beschreiben. Dafür ist das 'nice' im Befehl gut. Wobei der maximale Nice-Wert ist 19, der minimale -20. Vielleicht hat Dein Raspi zu viel zu tun um ein ordentliches Timing hinzubekommen.

Bei mir trifft eher Variante eins zu und es schalten zuweilen die 433MHz Steckdosen nicht sofort. Maximale Reichweite bei mir sind ca. 10m und zwei Mauern.

Das Anlernen sollte mit einem anderen Kanal, so wie Du es versuchst funktionieren.

Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

Jarnsen

Für Timings ist halt ein arduino besser als ein raspi laut Sebastian von mikrokontroller.net weil da 1 sec immer 1 sec sind und nicht eventuell 0,8 oder 1,1sec


Gesendet von iPhone mit Tapatalk
1 x RPi2,
1 x nanoCUL433, 1 x nanoCUL868, 1 x SIGNALduino433
Sonos/SonosSpeak, Homebridge, 2 x Enigma2, 10 x Nobily Rollläden, 3 x Intertechno Steckdosen
Pushover, Abfallerinnerung, MySensors, 7 x Max!

RitterSport

Ist tatsächlich ein Timingproblem!
Bei einem nacktem Raspi mit neuem Fhem und nichts anderem am Laufen : Geht problemlos

Bei meinem 2. Arbeitsraspi geht es so gut wie nie, darauf ist alle ausgelagert was auf dem 1. Raspi stören könnte.
Ich habe einen 1. Raspi , allerdings sitzt dort ein COC-Modul, deswegen kann ich den GPIO nicht nutzen.
Könnte ich den GPIO umstellen? Wie mache ich das?

Grüße

majorshark

Also doch das Timing.  :-\ Ok das passiert mit dem Singanduino natürlich nicht.

Den GPIO kannst Du umstellen. Einfach im rollo.c bei pinMode (0,... ) und digitalWrite (0,...) Deinen entsprechenden WiringPi-Port eintragen und neu Kompilieren.

gcc -Wall -o rollo rollo.c -lwiringPi

Wenn es keine Fehler gab sollte es auf dem andern Port funktionieren.
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

RitterSport

#205
Danke das funktioniert nun.
Aus der Konsole heraus kann ich nun alle anfahren etc.
Aber ich bekomme es aus fhem nicht heraus....
Die beiden Dateien liegen unter /home/pi/Dooya/ , Eigentümer ist pi

Bei der Eingabe { system("sudo nice -n -5 /home/pi/Dooya/rollo 0 1 0 0 runter &");;} bekomme ich nur -1 zurück

Komplett als DOIF
define Rollo_Kinderzimmer2 dummy
attr Rollo_Kinderzimmer2 room Rollladen
attr Rollo_Kinderzimmer2 setList hoch runter stop
attr Rollo_Kinderzimmer2 webCmd hoch:runter:stop
define Rollo_Kinderzimmer2_DOIF DOIF ([Rollo_Kinderzimmer2:"hoch"])\
({system("sudo nice -n -5 /home/pi/Dooya/rollo 0 1 0 0 hoch &");})\
DOELSEIF ([Rollo_Kinderzimmer2:"runter"])\
({system("sudo nice -n -5 /home/pi/Dooya/rollo 0 1 0 0 runter &");;;;})\
DOELSEIF ([Rollo_Kinderzimmer2:"stop"])\
({system("sudo nice -n -5 /home/pi/Dooya/rollo 0 1 0 0 stop &");;;;})
attr Rollo_Kinderzimmer1_DOIF room Notify
attr Rollo_Kinderzimmer1_DOIF do always


Wo habe ich den Denkfehler? Die Syntax müsste eigentlich stimmen da ein : { myLEDSend("TV_Server","6,0,100,0");;} bei mir geht.

majorshark

Ich denke das ist eine Rechteproblem. Du hat ja als Benutzer Pi Kompiliert und versuchst als Benutzer FHEM diese auszuführen.
Du kannst ja mal versuchen die Datei 'rollo' auf 755 zu setzten.
Zitatsudo chmod 755 /home/pi/Dooya/rollo
Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

RitterSport

#207
Danke für die Rückmeldung.
Habe sogar 777 ausprobiert, ich bekomme immer zurück:
error

{system("sudo nice -n -5 /home/pi/Dooya/rollo 0 0 1 0 runter &");;}: -1  2016-10-13 14:39:23


Testweise unter fhem und dann als Benutzer fhem wie hier:

{system("sudo nice -n -5 /opt/fhem/Dooya/rollo 0 1 0 0 runter &");;;;}
geht auch nicht.
Im Logfile finde ich das hier:
sudo: no tty present and no askpass program specified

Mit fhem groups bekomme ich : fhem : dialout tty audio

Ideen?

majorshark

Hm. Nicht gut.
Ich habe es gerade noch einmal bei mir ausprobiert. Mit
{system("sudo nice -n -19 /usr/bin/rollo 0 0 1 0 runter &");;}
geht es bei mir in der Eingabezeile von FHEM. Allerdings ist das Ergebnis auch -1.
Und denk auch an das Timing. Ich weiß nicht ob es mit nice -5 bei Dir zuverlässig funktioniert wenn es da schon Probleme gab.


Grüße aus Dewitz

VM auf Synology DS718+ mit FHEM 5.9 auf Debian 9.5/32-Bit (stretch)
Nächster Leipziger Stammtisch:

RitterSport

#209
Warum auch immer, mit dem Wert -5 kann ich bei mir alle Schalten, bei -19 gehen einige nur sporadisch.
In der Konsole geht es definitiv, aus fhem heraus bekomme ich die Fehlermeldung.
Gelöst, danke für die Unterstützung.
Die /etc/sudoers musste modifiziert werden, die Berechtigung fehlte dort.
# User privilege specification
root ALL=(ALL:ALL) ALL
fhem    ALL=(ALL:ALL) ALL
#includedir /etc/sudoers.d
fhem ALL=(ALL) NOPASSWD: AL