Floureon Wifi Raumthermostat

Begonnen von chris_kmn, 07 Dezember 2017, 20:23:29

Vorheriges Thema - Nächstes Thema

mkraus81

Zitat von: kabanett am 12 Oktober 2018, 16:24:31
@mkraus81
Ich hab mich erst die Tage mit den Thermostaten beschäftigt und gesehen das du mal das gleiche Problem hattest welches ich jetzt habe.
Es funktioniert nur wenn ich es per Hand anstoße. Du schreibst etwas vom richtigen Verzeichnis und ich habe schon mehrere Einträge versucht.
zB /home/pi/broadlink-thermostat/ und auch ohne /home/pi. Leider funktioniert es nicht. Könntest du mir da weiter helfen? Sorry, bin noch Anfänger was Linux betrifft ;)


also in der rc.local hab ich

/opt/broadlink-thermostat/blt.sh

in der blt.sh

/opt/broadlink-thermostat/broadlink-thermostat.py

du musst bei dir natürlich schauen in welchem Verzeichnis die Dateien liegen...
am besten mit vnc-viewer (wenn du rasbian nutzt) drauf... und mit dem Dateimanager nachschauen wo du das Ganze liegen hast

kabanett

Vielen Dank!
Aber es lag an der eigenen Blödheit ;)

Ich hab den Raspi zwar neu gebootet, aber noch mit den falschen Verzeichnisverweis.
Nach reboot funktioniert alles! 
Hardware: Fhem auf Raspi3 / selbtsbau CUL 433 und 868 MHz / MAX Thermostate / IT-Dosen nur noch Weihnachten / diverse ESP Aktoren/Sensoren / X10 Fernbedienung / Shelly 1, 1L, 2, 2.5, Dimmer, RGB2 / LaCrosseGateway / Zigbee2531 / diverse Zigbee Aktoren/Sensoren

delta8585

Hallo,
ich hoffe mir kann hier wer helfen.

ich bekomme immer folgende Ausgabe

broadlink discover
Reconnect
Disconnect, reason: 1
Disconnect, reason: <paho.mqtt.client.Client object at 0x1f43750>


was bedeutet reason: 1?

Gruß

mfhotdog

Hallo zusammen, 

seid hier bezüglich des devices mit dem THERM### weitergekommen? Ich habe einen Staubsaugerroboter, welcher auch über die WeBack App gesteuert wird. Dieser macht auch ein ähnliches WLAN auf und zwar ROBOT###. Ich habe einen MQTT Sniffer laufen lassen, konnte aber keine MQTT Daten  mitschneiden. Würde sehr ungern den Roboter über den Server in China betreiben, sondern lieber direkt in FHEM ohne Internet anbinden.

Viele Grüße

okin

Hallo,
bin auch seit einiger Zeit am versuchen, meine Thermostate (Floureon WIFI Thermostat BYC17.GH3) in FHEM einzubinden.
Das Ganze läuft bei mir auf einem Synology NAS (DS414slim Marvell ARMADA ARMv7) und konnte folgende Python Module erfolgreich installieren:


admin@DiskStation:/$ pip list
Package        Version
-------------- ---------
asn1crypto     0.24.0
attrs          17.4.0
Automat        0.6.0
bcrypt         3.1.2
broadlink      0.6
certifi        2018.4.16
cffi           1.11.2
chardet        3.0.4
Cheetah        2.4.4
constantly     15.1.0
cryptography   2.1.4
enum34         1.1.6
hyperlink      17.3.1
idna           2.6
incremental    17.5.0
ipaddress      1.0.19
lxml           3.7.2
M2Crypto       0.25.1
Markdown       2.6.11
MarkupSafe     1.0
msgpack-python 0.4.8
olefile        0.44
paho-mqtt      1.4.0
Pillow         4.0.0
pip            18.1
psutil         5.4.3
pyalsa         1.0.29
pyasn1         0.4.2
PyAudio        0.2.9
pycparser      2.18
pycrypto       2.6.1
pycurl         7.43.0
pymongo        3.4.0
pyOpenSSL      17.5.0
pytz           2018.7
PyYAML         3.12
pyzmq          16.0.2
requests       2.18.4
setuptools     40.5.0
six            1.11.0
SQLAlchemy     1.2.0
Twisted        17.9.0
typing         3.5.2.2
urllib3        1.22
uWSGI          2.0.14
virtualenv     15.1.0
wheel          0.32.2
zope.interface 4.4.3



help> modules
Please wait a moment while I gather a list of all available modules...
/usr/local/lib/python2.7/site-packages/cffi/model.py:526: UserWarning: 'point_conversion_form_t' has no values explicitly defined; next version will refuse to guess which integer type it is meant to be (unsigned/signed, int/long)
  % self._get_c_name())
BaseHTTPServer      babel               jinja2              robotparser
Bastion             base64              json                runpy
CDROM               bdb                 kerberos            samba
CGIHTTPServer       binascii            keyword             sched
Canvas              binhex              ldap                select
ConfigParser        bisect              ldapurl             serial
Cookie              broadlink           ldb                 service_identity
Crypto              bsddb               ldif                sets
Cython              bz2                 lib2to3             setuptools
DAV                 cPickle             libxml2             sgmllib
DAVServer           cProfile            libxml2mod          sha
DLFCN               cStringIO           libxslt             shelve
Dialog              caldav              libxsltmod          shlex
DocXMLRPCServer     calendar            linecache           shutil
FileDialog          cffi                locale              signal
FixTk               cgi                 logging             simplejson
HTMLParser          cgitb               lxml                site
IN                  characteristic      macpath             six
MimeWriter          chunk               macurl2path         smtpd
OpenSSL             cmath               mailbox             smtplib
PAM                 cmd                 mailcap             sndhdr
PIL                 code                mako                socket
PyCRC               codecs              markupbase          spwd
Queue               codeop              markupsafe          sqlite3
ScrolledText        collections         marshal             sqlparse
SimpleDialog        colorsys            math                sre
SimpleHTTPServer    commands            md5                 sre_compile
SimpleXMLRPCServer  compileall          mhlib               sre_constants
SocketServer        compiler            mimetools           sre_parse
StringIO            contextlib          mimetypes           ssl
TYPES               cookielib           mimify              stat
Tix                 copy                mmap                statvfs
Tkconstants         copy_reg            mock                stdnum
Tkdnd               coverage            modulefinder        string
Tkinter             crypt               multifile           stringold
UserDict            cryptography        multiprocessing     stringprep
UserList            csv                 mutex               strop
UserString          ctypes              mx                  struct
WSDiscovery         curl                netifaces           subprocess
ZSI                 curses              netrc               sunau
_LWPCookieJar       cython              new                 sunaudio
_MozillaCookieJar   datetime            nis                 symbol
__builtin__         dateutil            nntplib             symtable
__future__          dbhash              nose                synodl
_abcoll             dbm                 ntpath              sys
_ast                decimal             nturl2path          sysconfig
_bisect             decorator           numbers             syslog
_bsddb              defusedxml          opcode              tabnanny
_cffi_backend       difflib             openid              talloc
_codecs             dircache            operator            tarfile
_codecs_cn          dis                 optparse            tdb
_codecs_hk          distutils           os                  telnetlib
_codecs_iso2022     doctest             os2emxpath          tempfile
_codecs_jp          docutils            paho                termios
_codecs_kr          dot_parser          parser              test_characteristic
_codecs_tw          drv_libxml2         passlib             tests
_collections        dsml                pdb                 tevent
_csv                dumbdbm             pg                  textwrap
_ctypes             dummy_thread        pgdb                this
_ctypes_test        dummy_threading     pickle              thread
_curses             easy_install        pickletools         threading
_curses_panel       email               pipes               time
_elementtree        encodings           pkg_resources       timeit
_functools          ensurepip           pkgutil             tkColorChooser
_hashlib            enum                platform            tkCommonDialog
_heapq              errno               plistlib            tkFileDialog
_hotshot            exceptions          popen2              tkFont
_io                 fcntl               poplib              tkMessageBox
_json               feedparser          posix               tkSimpleDialog
_ldap               filecmp             posixfile           toaiff
_ldb_text           fileinput           posixpath           token
_locale             fnmatch             pprint              tokenize
_lsprof             formatter           profile             trace
_multibytecodec     formencode          pstats              traceback
_multiprocessing    fpformat            psutil              ttk
_osx_support        fractions           psycogreen          tty
_pg                 ftplib              psycopg2            turtle
_pyio               functools           pty                 twisted
_pytest             future_builtins     pwd                 types
_random             gc                  py                  unicodedata
_socket             gdata               pyPdf               unittest
_sqlite3            gdbm                py_compile          unittest2
_sre                genericpath         pyasn1              urllib
_ssl                getopt              pyasn1_modules      urllib2
_strptime           getpass             pycalendar          urlparse
_struct             gettext             pychart             usb
_symtable           gevent              pyclbr              user
_sysconfigdata      glob                pycparser           usercustomize
_tdb_text           greenlet            pycurl              uu
_testcapi           grp                 pydoc               uuid
_tevent             gzip                pydoc_data          vatnumber
_threading_local    hashlib             pydot               vobject
_warnings           heapq               pyexpat             warnings
_weakref            hmac                pyparsing           wave
_weakrefset         hotshot             pytest              weakref
_yaml               htmlentitydefs      pytz                webbrowser
abc                 htmllib             pywebdav            werkzeug
aifc                httplib             pyximport           whichdb
antigravity         idlelib             qrcode              wsgiref
anydbm              idna                quopri              xattr
argparse            ihooks              random              xdrlib
array               imaplib             re                  xlwt
ast                 imghdr              readline            xml
asynchat            imp                 reportlab           xmllib
asyncore            importlib           repr                xmlrpclib
atexit              imputil             requests            xxsubtype
atom                inspect             resource            yaml
attr                io                  rexec               zipfile
audiodev            ipaddress           rfc822              zipimport
audioop             itertools           rlcompleter         zlib


Bin nach der obigen Anleitung vorgegangen, bis auf die Installation von Mosquitto, welches ich über das Paketzentrum des NAS installiert habe.
Beim ausführen von ,,python2.7 broadlink-thermostat.py" bekomme ich, wie kmidt, folgendes Ergebnis:

Zitat von: kmidt am 29 September 2018, 12:40:06
broadlink discover
Reconnect
Connect, reason: 0

Wie kann ich testen, wo das Problem liegt? Möchte ausschließen dass es an der Konfiguration liegt und z.B. paho-mqtt lauffähig ist, ob es an der Schnittstelle zu Mosquitto liegt oder wo es hapert...
Gibt es hier einfache Befehle bzw. Vorgehensweisen um broadlink/paho-mqtt etc. zu testen?


Randinfos:
Die Thermostate wurden per App mit dem WLAN verbunden und habe ich in der Fritzbox eine feste IP zugewiesen, sowie den Internetzugriff untersagt (btw: dadurch funktioniert die ,,weback" App von Floureno nicht mehr – die Beok App hat die Thermostate nicht gefunden...)
Die Firmware der Thermostate habe ich geupdatet auf 3.1.2.rel, wodurch der Bug der Uhrzeitverstellung behoben war.
Broadlink v0.6, da diese pycrypto und die neuste Version 0.9 pycryptodemo voraussetzt, was ich nicht installiert bekommen habe.
Über MQTT sind meine Sonoff Geräte bereits unter FHEM steuerbar.

delta8585

ich habe den leisen Verdacht dass das BY17.GH3 nicht über MQTT kommuniziert.
Ich habe mit Wireshark mal einen Mitschnitt zwischen Thermostat und Server gemacht. Nur leider kenn ich mich da zu wenig aus.  :-[



okin

Zitat von: delta8585 am 11 November 2018, 19:20:16
ich habe den leisen Verdacht dass das BY17.GH3 nicht über MQTT kommuniziert.
Ich habe mit Wireshark mal einen Mitschnitt zwischen Thermostat und Server gemacht. Nur leider kenn ich mich da zu wenig aus.  :-[

Das würde vielleicht auch erklären warum die Beok App die Thermostate nicht finden kann - nun wäre die Frage, wie es dann kommuniziert...  ???
Kann das jemand bestätigen?
Hatte auch versucht die im Home-Assistant Forum beschriebenen Pakete mit der App "Packet Capture" zu sniffen, jedoch ohne Erfolg  :-\

Habe soeben einen Rücksendeantrag verschickt und werde es noch mal mit Beok versuchen (wichtig ist mir ein 16A Thermostat):
Beok TDS21WIFI-EP
Hat jemand das verlinkte Thermostat erfolgreich in FHEM eingebunden oder kann bestätigen, dass dieses dazu in der Lage ist?  ::)

flinke flasche

Zitat von: okin am 12 November 2018, 19:49:36

Habe soeben einen Rücksendeantrag verschickt und werde es noch mal mit Beok versuchen (wichtig ist mir ein 16A Thermostat):
Beok TDS21WIFI-EP
Hat jemand das verlinkte Thermostat erfolgreich in FHEM eingebunden oder kann bestätigen, dass dieses dazu in der Lage ist?  ::)


Hallo,

habe mich nach langem stillen mitlesen endlich hier angemeldet, da ich auch meinen Thermostat gegen einen von diesen austauschen möchte um sie über FHEM zu steuern.

Da bei mir weiß auch besser passen würde wäre es interessant ob deiner auch geht. In Amazon schreiben sie ja, dass der schwarze und der weiße baugleich sind, aber leider nichts von FHEM.
Vielleicht müsste man ihn einfach testen. Da er von Amazon geliefert wird sollte ein Umtausch ja kein Problem sein.
Denke ich bestelle ihn mal und versuche diese Anleitung.

Grüße
Tobias

flinke flasche

Heute kam mein weißer Thermostat wie oben geschrieben.
Habe ihn erfolgreich in FHEM einbinden können, Daten werden alle ausgelesen.
Musste bei mir allerdings noch "pip install pytz" installieren, dass es funktioniert.
Bin erstaunt, dass ich das hinbekommen habe, da ich nicht sehr viel in Linux unterwegs bin.

Allerdings bin ich wohl zu blöde die einen autostart in die rc.local zu bekommen.
kann mir da jemand auf die Sprünge helfen?

Mein Datei liegt so begraben "/home/pi/broadlink-thermostat/blt.sh" wenn ich das eintrage wird sie allerdings nicht beim start gestartet.

Wie bekomme ich denn so ein schönes Dropdown-Menü wie be ganz normalen Thermostaten?

hat den Thermostat zufällig auch in Tablet UI integriert?

Grüße
Tobias

flinke flasche

So, nachdem ich eine Nacht drüber geschlafen habe, habe ich den Fehler gefunden, auch bei mir war es der Pfad der nicht gestimmt hat.
Man muss 2 Pfade anpassen, einmal den in der rc.local und den 2ten in der verlinkten blt.sh (den hatte ich vergessen).
nach einem Neustart startet alles wie gewollt und das Thermostat ist aus FHEM steuerbar.

okin

Zitat von: flinke flasche am 17 November 2018, 01:16:28
Heute kam mein weißer Thermostat wie oben geschrieben.

kannst du uns bitte auch den Typ nennen?
Danke!  ;)

flinke flasche

sorry,
hatte gedacht ich hätte ihn oben erwähnt.
Ist dieser hier.

Hier wurde geschrieben welche alle funktionieren. Der Link ist von der ersten Seite.

flinke flasche

Habe das Problem, dass mein Thermostat nur funktioniert wenn ich ihn manuell mit
cd broadlink-thermostat
python2.7 broadlink-thermostat.py
starte

wenn ich mit ctrl+c (Mac) da raus gehe, kann ich auch nicht mehr steuern.

habe wie auf der ersten Seite alle Daten in die /etc/rc.local geschrieben.
Das mit Ip stand schon drinnen.

#!/bin/bash
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

setsid /home/pi/broadlink-thermostat/blt.sh >/dev/null 2>&1 < /dev/null &
exit 0

#Start SBFspotUploadDaemon
sudo /usr/local/bin/sbfspot.3/SBFspotUploadDaemon


wenn ich den Status von rc.local mit "sudo systemctl status rc-local.service" abfrage kommt folgenden.
● rc-local.service - /etc/rc.local
   Loaded: loaded (/etc/systemd/system/multi-user.target.wants/rc-local.service; linked)
  Drop-In: /etc/systemd/system/rc-local.service.d
           └─ttyoutput.conf
   Active: active (exited) since Sat 2018-11-17 18:57:10 CET; 16min ago
  Process: 429 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)
Main PID: 429 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/rc-local.service
           ├─ 459 /bin/sh /home/pi/broadlink-thermostat/blt.sh
           ├─1098 python /home/pi/broadlink-thermostat/broadlink-thermostat.py
           └─1631 python /home/pi/broadlink-thermostat/broadlink-thermostat.py

Nov 17 18:57:10 raspberrypi systemd[1]: Started /etc/rc.local.

Warning: Unit file changed on disk, 'systemctl daemon-reload' recommended.

Was sagt denn das Warning?
Keine Ahnung warum er die broadlink-thermostat.py 2x läd.


Teilweise funktioniert das schalten über FHEM oder Tablet UI, allerdings funktioniert es irgendwann nicht mehr.
Wenn ich die Original App auf dem iPhone starte flippt mit FHEM ab.

flinke flasche

#73
Irgendwie bin ich wohl zu blöde, dass bei mir die rc.local beim Booten die Datei startet.
Wenn ich sie von Hand starte geht alles.

Wenn ich die rc. Local von Hand starte funktioniert es auch manchmal.
Woran kann das liegen?

Klappt das bei euch?
Nutze einen pi3


Jetzt läufts wohl - Nachtrag.
habe laut der Anleitung hier das mit ausführen beim booten wohl doch hinbekommen.

Anscheinend lag es wohl an den Rechten der Datei broadlink-thermostat.py
Mit "sudo chmod +x broadlink-thermostat.py" ausführbar machen (natürlich im Verzeichnis anwenden, sonst den Pfad vor die Datei voranstellen).
Seit dem startet sie so wie sie soll beim booten.

MarioP73

Hallo zusammen.

Ich habe das Thermostat mit der Kennung C17.Gh3 in der Version 5.0.
Des weiteren arbeite ich auf einem Raspberry Pi 3 mit einem iobroker und
einer Python-Version 2.7.13.
Von Broadlink habe ich einen "Broadlink RM Mini 3" im Einsatz.

Ich habe mich an die Anleitung gehalten, bekomme aber das Thermostat nicht angezeigt.
Verwendet jemand eine ähnliche Konfiguration?
Wo könnte der Fehler liegen? Mir fehlt der Ansatz.

Anbei noch Bilder vom Gerät.

Mario
Raspberry Pi 3 mit iobroker und HM-Funkmodul | HM-Thermostate | diverse Sonoff's mit Tasmota-FW | einige ESP8266 | Broadlink RM mini 3| AmbiPiLight | AnetA8 mit Raspberry Pi 3 und Octoprint | ...