[ VERSION 0.2.4 ] 74_HOMBOT.pm, Steuerung eines LG Hombot Staubsaugerroboters

Begonnen von CoolTux, 30 November 2015, 10:45:42

Vorheriges Thema - Nächstes Thema

CoolTux

Andre kannst du noch mal schauen welche Version Du hast. Ich kann Deine Meldung weder vom Betrieb noch vom Code her nachvollziehen.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

justme1968

74_HOMBOT.pm 10861 2016-02-16 10:47:14Z markooldenburg

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

CoolTux

Bitte einmal ein FHEM oder wenigstens Modulupdate von HOMBOT machen.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

justme1968

also wenn ich mir das svn anschaue gab es seit dem aber keine änderung die mit dem problem zu tun haben sollten oder :) ?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

CoolTux

Komme mit den svn Revisionen nicht klar. Sag mal bitte Version. Also 0.2.0 oder 0.2.3?
Von der 0.2.3 zur 0.2.4 gebe ich Dir Recht. Davor kann ich leider nicht wirklich sehen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Was ich nicht nachvollziehen kann ist Deine Meldung wenn Du einen statusRequest machst und das Gerät offline ist. Bei mir geht es in der neusten 0.2.4er Version und der Code sagt auch das es gehen muss. Oder ich bin Betriebsblind dann tut es mir leid.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Esjay

Guten Morgen,

so ich habe mir als 2. Sauger nun auch einen LG zugelegt.Hab gestern schon den WIFI Hack eingespielt, und wenn ich es schaffe, werde ich heute die Fhem Anbindung realisieren. Da ich gestern nicht mehr gewillt war den Theard nach genauen Infos bezüglich der Vorbereitungen zu durchsuchen, es jetzt nachgeholt habe, wollte ich fragen, ob es nicht Sinnvoll wäre folgendes in den Startpost zu übernehmen. Vll hilft es ja dem ein oder anderen, die Einbindung etwas schneller zu vollziehen.

Zitat von: Sinibald am 03 April 2016, 13:10:00
@Glarios

Als erstes machst du ein FHEM update. Wie http://www.meintechblog.de/2014/11/fhem-server-updaten/

Damit müsstest du auch 74_HOMBOT.pm auf deinen FHEM Server haben.

Dann downloadest du putty.exe auf deinen PC und loggst dich auf dein FHEM Server ein.

Von SSH Konsole des FHEM loggst du dich wieder mal auf die Hombot auf mit der befehl "ssh root@192.168.x.y"
Wenn du was neben Homebot Passwort gefragt wirst schreib einfach "yes".

du kannst dich dann von Hombot wieder ausloggen also zurück zur FHEM Server.

dann kopierst du known_hosts Datei von ~/.ssh Ordner zur /opt/fhem/.ssh/ Ordner:

cp ~/.ssh/known_hosts /opt/fhem/.ssh/known_hosts

Du muss noch sshpass auf dem FHEM Server installieren:

sudo apt-get install sshpass.

so da kannst du jetzt die Sitzung beenden...

Am ende muss du nur noch in FHEM Kommandozeile den Modul definieren:

define LuiGi HOMBOT 192.168.178.101

Fertig.

Zitat von: CoolTux am 06 April 2016, 20:24:35
Du wirst ers t den versteckten Ordner ssh im Verzeichnis /opt/fhemfhem anlegen müssen.

Hier nochmal zusammengefasst:

Per Putty vom Fhem Server aus mittelts ssh folgenden Befehl ausführen

ssh root@192.168.x.y  / IP entspricht der des Hom-Bots

Wenn zusätzlich zum Passwort eine Abfrage kommt, diese mit
yes
bestätigen, und anschließend wieder mit
exit
ausloggen.


Anschließend kopiert man die known_hosts Datei vom ~/.ssh Ordner in den Ordner /opt/fhem/.ssh/ mittels:
cp ~/.ssh/known_hosts /opt/fhem/.ssh/known_hosts
Sollte eine Fehlermeldung erscheinen, könnte dies daran liegen, das der Ordner .ssh nicht vorhanden ist.Diesen dann mittels:
sudo mkdir /opt/fhem/.ssh
anlegen.

Anschließend, falls noch nicht vorhanden auf dem Fhem Server mittels:
sudo apt-get install sshpass
sshpass installieren.


Abschließend das Device in Fhem bekannt machen mittels:
define LuiGi HOMBOT <IP des Saugers>

Grüße

Hab das "Danke für das Modul" vergessen.  ;) ;D

CoolTux

Guten Morgen,

Vielen Dank für Deine Zusammenfassung. Da das Modul offiziell ist, sollte nicht unbedingt der Thread als erste Dokuquelle genutzt werden, sondern die Commandref und danach das Wiki.
Sollte hier Pflegebedarf bestehen, so gibt es mehrere Möglichkeiten.

Commandref: Mir bescheid geben ich werde es nach pflegen.
Wiki: Selbst einen Account bei den Admins beantragen und die entsprechenden Passagen auss/ver bessern. Es gibt nicht nur Entwickler und nicht nur Entwickler werden gebraucht. Fast noch wichtiger ist Dokumentation. Und da gute und vor allem auch willige Leute zu finden ist leider schwer. Daher, bitte bitte einfach anmelden und mitmachen.



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Esjay

Guten Morgen,

leider werde ich meinen Hom-Bot wieder zurücksenden müssen. Er kommt mit den Stühlen nicht klar, und fährt sich fest. Nichts desto trotz, werde ich mir mal den Wiki Account zulegen, und die Anpassung machen.

Grüße

CoolTux

Das wäre super. Vielen lieben Dank.

Und falls es hilft, ich muss meine Stühle auch hochstellen.  ;D



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Esjay

Zitat von: CoolTux am 28 Juni 2017, 08:33:32
Das wäre super. Vielen lieben Dank.

Und falls es hilft, ich muss meine Stühle auch hochstellen.  ;D



Grüße

Sind leider 4 IKEA POÄNG Stühle. Da ist es mit dem Hochstellen so ne Sache  ;) ;D. Werde mir wohl nen 2ten Xiaomi kaufen. Der werkelt im Erdgeschoss vor sich hin, und hat Null, Null Probleme. Ist halt nur wegen Garantie usw.  blöd. Aber gut, anderes Thema!

Gruß

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Esjay

Zitat von: CoolTux am 28 Juni 2017, 08:41:03
Gibt aber dafür glaube auch ein Modul, oder?

Jap, von Markus M. Läuft bei mir auch schon wunderbar. War bei mir auch definitiv ein Kaufkriterium. 

So kurzes Up to date. Wiki ist soweit angepasst. hoffe es ist so in Ordnung. Wenn nicht, bitte nen kurzen Hinweis an mich.

Liebe Grüße

Alex76

Das Modul funktioniert soweit  recht brav, ich würde mir noch wünschen, dass man zb ein NTP Update anstoßen könnte. Das ist durch das ReadOnly Filesystem nicht so einfach machbar und von FHEM aus sicher sehr elegant lösbar.

Hierfür könnte man das Script:
/usr/rscript/updatetime.sh starten
#!/bin/bash
# VER: 1.1


# config file location
CFG="/usr/zdendo/updatetime.cfg"
# time log file location
LOG="/usr/zdendo/updatetime.log"
# please create destination directory with mkdir command




# SUBPROGRAM timeupdate ===================
updatetime()
{
export TZ="$TIMEZONE"
ntpclient -s -h $NTPSERVER >> $LOG
MyDateTime=$(date)
MyHours=$(echo $MyDateTime | awk 'match($0, /[0-9].:[0-9].:[0-9]./) { print substr( $0, RSTART+0, RLENGTH-6 ) }')
MyMinutes=$(echo $MyDateTime | awk 'match($0, /[0-9].:[0-9].:[0-9]./) { print substr( $0, RSTART+3, RLENGTH-6 ) }')
MySeconds=$(echo $MyDateTime | awk 'match($0, /[0-9].:[0-9].:[0-9]./) { print substr( $0, RSTART+6, RLENGTH-6 ) }')
MyDate=$(date -Idate | sed -e "s/-//g")
wget -O- -q 'http://127.0.0.1:6260/json.cgi?%7b%22TIME_SET%22:%7b%22DATE%22:%22'$MyDate'%22,%22DAY%22:%22'0'%22,%22HOUR%22:%22'$MyHours'%22,%22MINUTE%22:%22'$MyMi
echo "" >> $LOG
echo "Synchronized succesfull (server $NTPSERVER) (timezone $TZ)" >> $LOG
echo
echo "Update time complete."
echo
amixer sset "Speaker Playback Off" "Stereo" > /dev/null 2>&1
echo aplay -c 1 -r 16000 -f S16_LE /usr/SNDDATA/SND_NOTICE_UPDATE_END.snd > /dev/null 2>&1
amixer sset "Speaker Playback Off" "All off" > /dev/null 2>&1
}
# SUBPROGRAM end ==========================




# SUBPROGRAM loadconfig from $CFG file ===
loadconfig()
{
  # load ntpserver from config file
  NTPSERVER=`cat $CFG | grep "NTPSERVER" | sed -e 's/^NTPSERVER="//'  -e 's/"$//'`


  # load timezone from config file
  TIMEZONE=`cat $CFG | grep "TIMEZONE" | sed -e 's/^TIMEZONE="//'  -e 's/"$//'`
}
# SUBPROGRAM end ==========================




# SUBPROGRAM setup ========================
saveconfig()
{
loadconfig
   echo "Actual NTP server: $NTPSERVER"
   echo "Actual   timezone: $TIMEZONE"
   echo
   echo "Just press ENTER for leave old config"
   echo
   read -p "NTP server: " NEWSERVER
   read -p "Time zone:  " NEWZONE
   echo
   if [ "$NEWSERVER" != "" ]; then NTPSERVER=$NEWSERVER; fi
   if [ "$NEWZONE" != "" ]; then TIMEZONE=$NEWZONE; fi
   echo "New configuration:"
   echo "NTP server: $NTPSERVER"
   echo "Time zone:  $TIMEZONE"
   echo
   read -n1 -p "Save setup? (y - yes / other cancel) " KEY
   echo
   if [ "$KEY" == "y" ]; then
      rm "$CFG" > /dev/null 2>&1
      touch "$CFG"
      echo "NTPSERVER=\"$NTPSERVER\"" >> $CFG
      echo "TIMEZONE=\"$TIMEZONE\"" >> $CFG
      echo "Saved."
      echo
      read -n1 -p "Update time? (y - yes / other cancel) " KEY
      if [ "$KEY" == "y" ]; then
      updatetime
      else echo
      echo "Canceled."; fi
      exit 0
   fi
echo "Canceled."
echo
read -n1 -p "Update time? (y - yes / other cancel) " KEY
      if [ "$KEY" == "y" ]; then
      updatetime
      else echo
      echo "Canceled."; fi
exit 0
}
# SUBPROGRAM end ==========================






# =========================================
# MAIN PROGRAM ============================
# =========================================


clear
# if config file not exist, will create default cfg
# run setup (if press y) and synchronize time
if [ ! -f $CFG ]; then
   echo "$CFG not found"
   echo "creating default file"
   echo "NTPSERVER=\"2.sk.pool.ntp.org\"" > $CFG
   echo "TIMEZONE=\"UTC-1\"" >> $CFG
   loadconfig
   echo "done"
   echo
   echo "Actual NTP server: $NTPSERVER"
   echo "Actual   timezone: $TIMEZONE"
   echo
   # will wait for 5 sec, after time limit
   # will continue without setup
   # and synchronize with defaults
   read -t5 -n1 -p "Reconfigure? (y - yes / other cancel) " KEY
   if [ "$KEY" == "y" ]; then
      clear
      saveconfig; fi
   echo



   updatetime


   exit 0
fi




# if you call program with yours parameters
# (--cfg cfg config setup (what you want))
# you will run setup configuration


if [ "$1" == "--cfg" ]; then
saveconfig
fi


if [ "$1" == "cfg" ]; then
saveconfig
fi


if [ "$1" == "config" ]; then
saveconfig
fi


if [ "$1" == "setup" ]; then
saveconfig
fi


# if is all ok - only this sequence will run:


loadconfig


# If you run this command with number parameter
# it will wait for x second


if [ "$1" == "" ]; then
   while true; do
        updatetime;
        sleep 3600;
   done
fi
if [ $1 -gt 0 ]; then
        sleep $1;
        while true; do

                updatetime;
                sleep 3600;
        done
fi




# END of main program

CoolTux

2 Möglichkeiten kann ich hierzu anbieten.

Warten bis ich Zeit und Lust habe
Mir einen Patch anbieten den ich einbauen kann



Grüße
Leon
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net