FHEM Forum

Verschiedenes => Bastelecke => Thema gestartet von: andi11 am 27 Januar 2017, 06:58:27

Titel: Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 27 Januar 2017, 06:58:27
In diesem Thread https://forum.fhem.de/index.php?topic=60914 (https://forum.fhem.de/index.php?topic=60914) ist die Frage nach einer Bluetooth auf Wlan Umsetzung für Pflanzensensoren von Xiaomi http://www.gearbest.com/other-garden-supplies/pp_373947.html (http://www.gearbest.com/other-garden-supplies/pp_373947.html) aufgetaucht.
Für mich wäre das auch sehr praktisch.
Dort kam der Vorschlag, dass ganze mit einem HM10 Bluetooth Modul auf einem NodeMCU zu machen.
Hat jemand einen Ansatz ob/wie das funktionieren kann?

Am liebsten natürlich eine allgemeine Umsetzung Bluetooth <> Wlan , dass es nicht nur mit dem einen Sensor funktioniert.
Oder kennt jemand Alternativen zur HM10 Variante? Die aktuelle Version kommuniziert über USB Bluetooth Dongle und gatttool .
Eine Möglichkeit wären mehrere Raspis, das finde ich aber nicht soooo toll. Bin aber genauso an käuflichen Alternativen interessiert.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 27 Januar 2017, 11:26:29
Bluetooth auf WLAN hört sich gut an. Werde ich demnächst auch brauchen

Von mobil gesendet daher kurze Antwort

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 27 Januar 2017, 18:14:40
Was ich gefunden habe ist das hier: http://redbearlab.com/nrf51822-sdk/
Da steht was von Central Role dabei. Die Library dazu für Arduino ist hier https://github.com/RedBearLab/nRF51822-Arduino
Ein Beispiel für Central Role wird aber nicht gelistet.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 28 Januar 2017, 11:16:33
Hier ist eine Referenz GATT über AT Commands. Das ist der Schlüssel. ESP -> Seriell -> AT Commands -> Gatt -> Antwort -> Rückmeldung über ESP

http://support.connectblue.com/display/PRODBTSPA/Bluetooth+Serial+Port+Adapter+AT+Commands+GATT
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 28 Januar 2017, 13:22:09
danke :) das heist aber auch dass ein HM10/11 das ganze nicht kann, denn diese Kommandos sind dort nicht implementiert, oder übersehe ich was?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 28 Januar 2017, 13:27:31
Gute Frage. Ich habe mittlerweile einen hier liegen, auf einem ZS-040 Breakout, aber ich krieg ihn nicht zum reden. Habe erstmal einen FTDI dran und versuche mit 9600 Baud über Minicom mit dem HM10 zu reden - nix, keine Antwort. Das Teil blinkt nur rot im Sekundentakt und ist auch über Bluetooth nicht zu sehen  :(


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 28 Januar 2017, 18:46:18
Zitat von: Waldmensch am 28 Januar 2017, 13:27:31
Ich habe mittlerweile einen hier liegen, auf einem ZS-040 Breakout, aber ich krieg ihn nicht zum reden. Habe erstmal einen FTDI dran und versuche mit 9600 Baud über Minicom mit dem HM10 zu reden - nix, keine Antwort. Das Teil blinkt nur rot im Sekundentakt und ist auch über Bluetooth nicht zu sehen  :(
Da gibt es richtige und fake Module. Die einen gehen nur mit /r/n am Ende die anderen ohne. Ich muss mal meine Readme Datei raussuchen, ich habe beide in Betrieb bekommen.

Ich habe hier https://forum.fhem.de/index.php/topic,45589.msg373657.html#msg373657 mal Leiterplatten gemacht (eine mit USB <-> Bluetooth, eine mit RES485 Bluetooth). Wenn ihr die Platinen (ca. 15-20 Euro) finanziert, mache ich Euch eine Layout, entweder mit ESP8266 ESP12E/F oder sogar mit dem PSF-A85 von ITead.

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 28 Januar 2017, 19:37:10


Zitat von: PeMue am 28 Januar 2017, 18:46:18
Da gibt es richtige und fake Module. Die einen gehen nur mit /r/n am Ende die anderen ohne. Ich muss mal meine Readme Datei raussuchen, ich habe beide in Betrieb bekommen.

Ich habe hier https://forum.fhem.de/index.php/topic,45589.msg373657.html#msg373657 mal Leiterplatten gemacht (eine mit USB <-> Bluetooth, eine mit RES485 Bluetooth). Wenn ihr die Platinen (ca. 15-20 Euro) finanziert, mache ich Euch eine Layout, entweder mit ESP8266 ESP12E/F oder sogar mit dem PSF-A85 von ITead.

Gruß PeMue

D. h. Es wird eine Bluetooth zu WLAN bridge? Sie sieht es mir der Programmierung des ESP aus?

Gruß Sascha

Von mobil gesendet daher kurze Antwort

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 28 Januar 2017, 19:40:48
Zitat von: sash.sc am 28 Januar 2017, 19:37:10
Wie sieht es mir der Programmierung des ESP aus?
Ich schlage ESPEasy vor, da kann man endweder die SoftSerial oder die normale serielle Schnittstelle nehmen. Die HM10 werden per AT Kommandos konfiguriert und wenn sie mal gepairt sind, ist das eine "ganz normale" serielle Schnittstelle.

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 28 Januar 2017, 19:44:31
Espeasy hört sich gut an. Habe ich auf diversen esp bzw nodemcu an laufen zusammen mit dem passenden Modul von dev0.  8)

Gruß Sascha

Von mobil gesendet daher kurze Antwort

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 28 Januar 2017, 22:00:15
Man könnte ja ganz simpel die AT Befehle an ESPEASY senden und die Antwort des HM in einem Json an FHEM zurückliefern. Der ESP dann nur als "doofer" Vermittler. Wenn aber das GATT nicht über AT geht wirds nur als iBeacon taugen


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 28 Januar 2017, 23:13:40
Also ab und zu spuckt das Teil was aus, aber auf 99% aller AT Kommandos passiert gar nichts oder ERR

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 29 Januar 2017, 07:21:49
Hallo,

hier sind die AT-Befehle, die bei mir funktionieren:
Original HM-10
==============
serielle Schnittstelle
9600/N/8/1 kein CR+LF notwendig

http://blog.blecentral.com/2015/05/05/hm-10-peripheral/

AT-Befehle:
AT              OK
AT+VERS?        HMSoft V540
AT+HELP?        www.jnhuamao.cn
AT+BAUD?        OK+Get:0
AT+PARI?        OK+Get:0
AT+STOP?        OK+Get:0
AT+NAME?        HMSoft<\0>
AT+ROLE?        OK+Get:0 0 ... slave 1 ... master
AT+RADD         RADD:000000000000
AT+TYPE         OK+Get:0
AT+RENEW        OK+RENEW
AT+RESET        OK+RESET
AT+PASS?        OK+Get:000000
AT+IMME?        OK+Get:0
AT+TCON?        OK+Get:000000
AT+TYPE?        OK+Get:0
AT+SLEEP        OK+SLEEP<\0>
AT+WAKE         OK+WAKE
AT+PIO1?        OK+Get:0
AT+HELP?        www.jnhuamao.cn
AT+ADDR?        OK+ADDR:B4994C57C1FB
AT+POWE?        OK+Get:2
AT+PCTL?        OK+Get:1 0 normal, 1 max. power output
AT+ROLE1        OK+Set:1
AT+RESET        OK+RESET
AT+IMME1        OK+Set:1
AT+SHOW1        OK+Set:1
AT+ADVI?        OK+Get:0
AT+ALLO?        OK+Get:0
AT+BATC?        OK+Get:0
AT+BATT?        OK+Get:100
AT+FLOW?        OK+Get:0
AT+IBE0?        OK+Get:0x74278BDA
AT+IBE1?        OK+Get:0xB6444520
AT+IBE2?        OK+Get:0x8F0C720E
AT+IBE3?        OK+Get:0xAF059935
AT+MARJ?        OK+Get:0xFFE0
AT+PWRM?        OK+Get:1
AT+SAVE?        OK+Get:1
AT+TEMP?        OK+Get:023.884
AT+UUID?        OK+Get:0xFFE0

Welches Terminalprogramm verwendest Du?

Gruß PeMue
Titel: Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 08:56:34
Das ist ein simples Programm in .Net, was im Quellcode vorliegt. Damit kann man unter Windows den comport "bespassen" wie man will. Also z.B. Noch ein \r\n anhängen

Wenn ich einen normalen Write auslöse AT+HELP? kommt gar keine Antwort
Wenn ich einen Write auslöse AT+HELP?\n kommt ERR
Wenn ich einen Write auslöse AT+HELP?\r\n kommt ERR


Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 29 Januar 2017, 09:36:38
Du hast auch ein fake Modul (erkennbar an dem fehlenden 32 kHz Quarz), Bolutec BLE-CC41-A-

fake HM-10
==========
Bolutek BLE-CC41-A
serielle Schnittstelle
9600/N/8/1 CR+LF notwendig

AT              OK
AT+NAME         +NAME=BT05
AT+PIN          +PIN=000000
AT+BAUD         +BAUD=4
AT+POWER        ERROR=201
AT+PARI         +PARI=0
AT+PWRM         +PWRM=1
AT+SLEEPT       +SLEEP<\r><\n>OK
AT+VERSION      +VERSION=Firmware V3.0.6,Bluetooth V4.0 LE
AT+LADDR        +LADDR=00:15:83:00:44:22
AT+STATE        +STATE=2<\r><\n>OK
AT+ROLE         +ROLE=0
AT+POWE         +POWE=2
AT+NOTI         +NOTI=0
AT+UUID         +UUID=0xFFE0
AT+CHAR         +CHAR=0xFFE1
AT+NOTI1        +NOTI=1<\r><\n>OK
AT+INQ          OK<\r><\n>+INQS<\r><\n>+INQ:1 0xB4994C57C1FB<\r><\n>+INQE<\r><\n>Devices Found 1
AT+SHOW
AT+CONN1        +Connecting  0xB4994C57C1FB<\r><\n>+Connected  0xB4994C57C1FB

http://www.aliexpress.com/item/HM-10-CC2540-4-0-BLE-Bluetooth-to-UART-Transceiver-Module-Central-Peripheral/2031511773.html
AT              (Test command)
AT+BAUD         (Query/Set Baud rate)
AT+STOP         (Query/Set stop bit)
AT+UART         (Query/Set uart rate,parity, stop bit)
AT+PIO          (Query/Set PIO pins status Long command)
AT+PIO          (Query/Set a PIO pin status Short command)
AT+NAME         (Query/Set device friendly name)
AT+PIN          (Query/Set device password code)
AT+DEFAULT      (Reset device settings)
AT+RESTART      (Restart device)
AT+ROLE         (Query/Set device mode, Master or Slave)
AT+CLEAR        (Clear remote device address if has)
AT+CONLAST      (Try to connect last connect succeed device)
AT+VERSION      (Show software version information)
AT+HELP         (Show help information)
AT+ADDR         (Query self address)
AT+RADD         (Query remote device address)
AT+IMME         (Query/Set Whether the device boot immediately)
AT+WORK         (if device not working, start work, use with AT+IMME command)
AT+TCON         (Query/Set Try to connect remote times)
AT+TYPE         (Query/Set device work type,  transceiver mode or remote mode)
AT+START        (Switch remote control mode to transceiver mode)
AT+BUFF         (Query/Set How to use buffer data, Duing mode switching time)
AT+FILT         (Query/Set device filter when device searching)

AT+LADD         (Query self address)
AT+COD          (Query/Set Class of Device. eg: phone, headset etc.)
AT+CHK          (Query/Set parity)

AT+HELP
********************************************************************<\r><\n>
* Command             Description<9><9><9>           *<\r><\n>*
---------------------------------------------------------------- *<\r><\n>
* AT                  Check if the command terminal work normally  *<\r><\n>
* AT+RESET            Software reboot<9><9><9><9>   *<\r><\n>
* AT+VERSION          Get firmware, bluetooth, HCI and LMP version *<\r><\n>
* AT+HELP             List all the commands<9><9>           * <\r><\n>
* AT+NAME             Get/Set local device name                    * <\r><\n>
* AT+PIN              Get/Set pin code for pairing                 * <\r><\n>
* AT+PASS             Get/Set pin code for pairing                 * <\r><\n>
* AT+BAUD             Get/Set baud rate<9><9>                   * <\r><\n>
* AT+LADDR            Get local bluetooth address<9><9>   * <\r><\n>
* AT+ADDR             Get local bluetooth address<9><9>   * <\r><\n>
* AT+DEFAULT          Restore factory default<9><9><9>   * <\r><\n>
* AT+RENEW            Restore factory default<9><9><9>   * <\r><\n>
* AT+STATE            Get current state<9><9><9><9>   *<\r><\n>
* AT+PWRM             Get/Set power on mode (low power) <9><9>   *<\r><\n>
* AT+POWE             Get/Set RF transmit power <9><9>   *<\r><\n>
* AT+SLEEP            Sleep mode <9><9>                   *<\r><\n>
* AT+ROLE             Get/Set current role.<9>                   * <\r><\n>
* AT+PARI             Get/Set UART parity bit.                     * <\r><\n>
* AT+STOP             Get/Set UART stop bit.                       * <\r><\n>
* AT+START            System start working.<9><9><9>   *<\r><\n>
* AT+IMME             System wait for command when power on.<9>   *<\r><\n>
* AT+IBEA             Switch iBeacon mode.<9>                   *<\r><\n>
* AT+IBE0             Set iBeacon UUID 0.            <9>           * <\r><\n>
* AT+IBE1             Set iBeacon UUID 1.            <9>           * <\r><\n>
* AT+IBE2             Set iBeacon UUID 2.            <9>           * <\r><\n>
* AT+IBE3             Set iBeacon UUID 3.            <9>           * <\r><\n>
* AT+MARJ             Set iBeacon MARJ .            <9>           * <\r><\n>
* AT+MINO             Set iBeacon MINO .            <9>           * <\r><\n>
* AT+MEA              Set iBeacon MEA .            <9>           * <\r><\n>
* AT+NOTI             Notify connection event .                    * <\r><\n>
* AT+UUID             Get/Set system SERVER_UUID .            <9>   * <\r><\n>
* AT+CHAR             Get/Set system CHAR_UUID .            <9>   * <\r><\n>
* -----------------------------------------------------------------* <\r><\n>
* Note: (M) = The command support slave mode only. <9><9>   *<\r><\n>
* For more information, please visit http://www.bolutek.com        *<\r><\n>
* Copyright@2013 www.bolutek.com. All rights reserved.<9><9>   *<\r><\n>
********************************************************************<\r><\n>


Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 09:43:54
Ohne Fragezeichen wird es in der Tat redselig ;) AT+HELP\r\n

< *******************************************************************
< * Command             Description            
< *----------------------------------------------------------------
< * AT                  Check if the command terminal work normally
< * AT+DEFAULT          Restore factory default    
<
< * AT+RESET            Software reboot    
< * AT+ROLE             Get/Set current role.                    
< * AT+DISC             Disconnect connection                       
< * AT+ADVEN            Broadcast switch             
< * AT+ADVI             Broadcast interval            
< * AT+NINTERVAL        Connection interval                         
< * AT+POWE             Get/Set RF transmit power    
< * AT+NAME             Get/Set local device name                   
< * AT+LADDR            Get local bluetooth address    
< * AT+VERSION          Get firmware, bluetooth, HCI and LMP version
< * AT+TYPE             Binding and pairing settings    
< * AT+PIN              Get/Set pin code for pairing               
< * AT+UUID             Get/Set system SERVER_UUID .               
< * AT+CHAR             Get/Set system CHAR_UUID .               
< * AT+INQ              Search from device            
< * AT+RSLV             Read the scan list MAC address    
< * AT+CONN             Connected scan list device    
< * AT+CONA             Connection specified MAC            
< * AT+BAND             Binding from device            
< * AT+CLRBAND          Cancel binding               
< * AT+GETDCN           Number of scanned list devices    
< * AT+SLEEP            Sleep mode                    
< * AT+HELP             List all the commands            
< * ---------------------------------------------------------------
< ******************************************************************
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 29 Januar 2017, 10:21:57
bei diese AT Kommando listen steht aber nichts dabei das GATT als Central funktioniert oder?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 11:30:59
Ich schaffe es nicht mal, das Teil als Master zu schalten und einen Scan zu machen. :(


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 29 Januar 2017, 11:39:45
ROLE0 (slave) commands:
AT+POWE Get/Set RF transmit power
AT+PAIR Get/Set bond mode
AT+PIN Get/Set pin code for pairing

ROLE1 (master) commands:
AT+INQ Search slave model
AT+CONN Connect the index slave model
AT+SHOW Show the searched slave model

Die Dinger pairen sich aber nicht mit jedem Bluetooth Slave.

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 29 Januar 2017, 11:55:31
wenn ich das Datenblatt recht verstehe, kann es sich nur zu einem Master verbinden, um die Daten der seriellen Schnittstelle weiterzugeben.
Ich finde nichts, dass es Kommandos für GATT versteht.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 12:35:05
AT+INQ50:65:83:7E:42:69
< ERR
AT+INQ
< OK
AT+RSLV
< ERR
AT+CONA50:65:83:7E:42:69
< ERR
AT+GETDCN
< +GETDCN:0


lt hcitool sind aber Devices da:
root@lemaker ~ > hcitool lescan
LE Scan ...
50:65:83:7E:42:69 (unknown)
50:65:83:7E:42:69 WATCH-NC
50:65:83:7E:42:69 (unknown)
50:65:83:7E:42:69 WATCH-NC
C4:7C:8D:62:4C:42 (unknown)
C4:7C:8D:62:4C:42 Flower care
50:65:83:7E:42:69 (unknown)
50:65:83:7E:42:69 WATCH-NC
50:65:83:7E:42:69 (unknown)
50:65:83:7E:42:69 WATCH-NC
50:65:83:7E:42:69 (unknown)
50:65:83:7E:42:69 WATCH-NC
C4:7C:8D:62:4C:66 (unknown)
C4:7C:8D:62:4C:66 Flower care
50:65:83:7E:42:69 (unknown)
C4:7C:8D:62:4C:42 (unknown)
C4:7C:8D:62:4C:42 Flower care
^Croot@lemaker ~ >


Ich hätte erwartet, das ich so eine Liste mit AT+RSLV auch krieg. Irgendwo muß ich ja den Index herbekommen

@andi11: da sehe ich leider auch schwarz :(
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 12:52:33
Okay, vermutlich ist der Sinn dahinter

mit AT+INQ einen Scan starten
mit AT+GETDCN die Anzahl gefundener Devices n lesen
in einer schleife 1-n mit AT+RSLVn die Adressen lesen
mit AT+CONA<MAC ohne Doppelpunkte> Device verbinden

Zumindest sind das die Commandos, die keinen ERR zurückliefern. Leider zeigt AT+GETDCN immer 0 an. AT+ROLE < +ROLE=1

AT+INQ50:65:83:7E:42:69
< ERR
AT+INQ
< OK
AT+RSLV
< ERR
AT+CONA50:65:83:7E:42:69
< ERR
AT+GETDCN
< +GETDCN:0
AT+INQ
< OK
AT+RSLV
< ERR
AT+RSLV0
< ERR
AT+RSLV1
< +RSLV=000000000000
AT+RSLV2
< +RSLV=000000000000
AT+RSLV3
< +RSLV=000000000000
AT+RSLV4
< +RSLV=000000000000
AT+RSLV5
< +RSLV=000000000000
AT+CONA50:65:83:7E:42:69
< ERR
AT+GETDCN
< +GETDCN:0
AT+CONA5065837E4269
< OK
AT+CONN
< +LADDR=69:42:7E:83:65:50
AT+GETDCN
< +GETDCN:0
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 15:58:28
@PeMue: wäre dieser ein originaler? Du sagtest man erkennt das an dem bestückten ?Quarz? http://www.ebay.de/itm/HM-10-Bluetooth-4-0-BLE-Arduino-CC2541-iOS-Android-Master-Slave-Modul-/282297971883?hash=item41ba4534ab:g:FHMAAOSwo4pYWWpj

Ohne funktionierenden AT+INQ Befehl ist ein Masterbetrieb ja eher sinnlos. Mit meinem Iphone kann ich das ding im Slave Mode pairen, das bringt mich aber nicht wirklich weiter
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 29 Januar 2017, 16:09:02
Hallo Waldmensch,

müsste ein Original sein, siehe auch Skizze im Anhang (rot umrandet):

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 17:15:16
Okay, habe den mal geordert. Scheint ja nicht umsonst teurer als die Mehrzahl zu sein.


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 17:40:33
Eventuell ist das hier auch eine Option ;)
https://forum.arduino.cc/index.php?topic=393655.0


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 29 Januar 2017, 18:15:44
Zitat von: Waldmensch am 29 Januar 2017, 17:40:33
Eventuell ist das hier auch eine Option ;)
https://forum.arduino.cc/index.php?topic=393655.0


Gesendet von iPhone mit Tapatalk

Habe den Bericht gerade mal überflogen.
D.h. man könnte das Teil auf einen ESP oder ähnliche setzen anstatt den Arduino ?

Gruß
Sascha
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 29 Januar 2017, 18:24:09
Zitat von: sash.sc am 29 Januar 2017, 18:15:44
D.h. man könnte das Teil auf einen ESP oder ähnliche setzen anstatt den Arduino ?
Nö, das ist die Antwort auf die Frage:
Wie bekomme ich eine Original Firmware auf ein Fake HM-10 Modul bei dem der 32 kHz Quarz für den Sleep Modus fehlt.

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 18:26:45
Na auf einem ESP funktioniert das genauso wie auf einem Arduino. Es ist simple serielle Kommunikation.


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 29 Januar 2017, 18:29:06
Zitat von: PeMue am 29 Januar 2017, 18:24:09
Nö, das ist die Antwort auf die Frage:
Wie bekomme ich eine Original Firmware auf ein Fake HM-10 Modul bei dem der 32 kHz Quarz für den Sleep Modus fehlt.

Gruß PeMue
Wobei man an diese vergleichsweise riesigen Lötpads locker selber einen Quarz löten könnte (wenn das alles ist)


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Christian.Kühnel am 30 Januar 2017, 23:34:37
Liebe Freunde der Pflanzenautomatisierung,

ich habe in den letzten Tagen etwas Software zusammengebaut und hier ist meine Lösung für die zu kurze Bluetooth LE Reichweite:
https://github.com/ChristianKuehnel/plantgateway

Kurzfassung:
Ich lasse auf einem kleinen Linuxrechner (z.B. C.H.I.P oder Raspberry Pi 3) mit Bluetooth und WiFi das "plantgateway" laufen. Das holt regelmäßig (z.B. 1x pro Stunde) die Messwerten von den Xiaomi Mi Sensoren und schickt sie per WiFi und MQTT zum fhem Server. Damit lassen sich dann beliebige Entfernungen überbrücken.

Vorteile:
* Funktioniert mit Standard Hardware.
* Ist mit dem C.H.I.P (9$) auch recht günstig.
* Funktioniert überall, wo eine IP-Verbindung besteht (WiFi, LAN, Mobilfunk, ...).
* Funktioniert mit jeder Heimautomatisierung, die MQTT unterstützt, also nicht nur fhem.

Nachteil:
* Ein weiterer Linuxrechner der Strom braucht und administriert werden will.


Schönen Abend,
Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 31 Januar 2017, 00:34:12
Hast Du bei deiner Kostenrechnung den Raspi3 eingepreist oder kannst Du welche kostenlos besorgen? In dem Fall würde ich ein Paar nehmen.


Gesendet von iPhone mit Tapatalk
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Papaloewe am 31 Januar 2017, 08:41:38
Ne, dafür hat er ja auf den C.H.I.P verwiesen.  ;D

Hat jemand mal zu diesem Mini-PC weitere Infos und ggf. eine Bezugsquelle?
Danke.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 31 Januar 2017, 09:20:15
Gebt mir bescheid wenn Ihr soweit seit. Dann kann ich das Interface, was auch immer es dann wird, irgendwie versuchen ein zu binden.



Grüße
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Papaloewe am 31 Januar 2017, 14:24:24
ok, habs gefunden:
https://getchip.com/pages/chip (https://getchip.com/pages/chip)
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 31 Januar 2017, 15:16:05
klingt ja echt schick. Findet jemand angaben zu Stromaufnahme usw?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 31 Januar 2017, 15:51:59
Zitat von: andi11 am 31 Januar 2017, 15:16:05
klingt ja echt schick. Findet jemand angaben zu Stromaufnahme usw?

Irgendwo war's gestanden...
...aus dem Kopf:

ca. 500mA beim Booten
ca. 200mA im Betrieb
ca. 80mA wenn nix zu tun ist

Stimmt schickes Teil...
...mal sehen, einen könnte man sich ja mal bestellen :)

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 31 Januar 2017, 15:59:43
Das Teil sieht echt nicht schlecht aus. 80mA beim nichtstun ist eine ganze Menge, aber das Teil kann man ja auch abschalten, und nur alle x Minuten aufwecken. Ältere Versionen waren da wohl genügsamer.
Und für den Preis :)


Etwas undurchsichtig find ich das ganze, aber es ist ja OpenSource.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: smoudo am 31 Januar 2017, 21:11:22
Gibt's da EU Bezugsquellen? Versand aus USA macht das ganze recht sinnlos

Grüße

Matze
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Christian.Kühnel am 31 Januar 2017, 22:30:07
Sorry, hatte die URL vergessen. Ja, ich habe mir 2 Geräte von https://getchip.com/ bestellt. Die sind aktuell aber nicht lieferbar. Der Versand nach Deutschland kostet 11 EUR, ist also auch noch im Rahmen. Damit komme ich bei 2 Geräten auf 15 EUR pro Gerät. Das ist immer noch deutlich günstiger als ein RasPi3.

Dazu kommen noch Gehäuse und Netzteil, aber die braucht man bei jeder Bastellösung.

Zum Stromverbrauch:
Wenn man eine Steckdose in der Nähe hat ist das kein Problem: 80mA * 5V *365 Tage * 24h/Tag = 3,5 khW im Jahr
Bei 0,28 € pro kWh macht das Stromkosten von knapp 1€ pro Jahr, ist also meiner Meinung nach vernachlässigbar. Selbst wenn der Verbraucht doppelt so hoch ist, ist das nicht viel Geld für einen kompletten Linux-Rechner mit Wifi und BluetoothLE.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: smoudo am 31 Januar 2017, 22:54:38
Leistung sollte eher auf rpi2 Niveau liegen,
Allerdings find ich die Möglichkeit einen Akku anzuschließen
Top! Plus der interne Flash Speicher ist auch super!
Ist über die Anbindung und Typ was bekannt?
Kann man die pinleiste als gpio für Sensoren nutzen?
Ich denk der Verbrauch ist absolut ok!
Mir fallen auf Anhieb 3 Anwendungen ein die interessant wären!

Wie ist das mit Zoll aus USA?


Grüße

Matze

Ps.: sorry 4 OT
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Christian.Kühnel am 31 Januar 2017, 23:02:45
Ich habe keine weiteren Informationen zur Hardware.

Beim Zoll rechne ich mit 19% für Sendungen mit einem Wert über 22 €:
http://www.import-shopping.de/steuer-und-zoll-berechnen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 14 Februar 2017, 21:08:53
Hallo zusammen.

habe mir gerade den CHIP angeschaut. Ist dort von Haus aus ein HDMI Anschluß vorhanden, oder muß noch der Adapter dazu gekauft werden ?

Bin auf jedenfall an der WLAN/BT Bridge interessiert !!

Gruß
Sascha
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 16 Februar 2017, 07:47:11
nein für HDMI musst du ein extra Modul kaufen.
@Christian: Ist die Lieferbarkeit immer so bescheiden? Momentan heist es Q1/2017

Ich schau mir gerade den ESP32 an.

Mit dem Arduino Core geht wohl noch kein Wlan.
Beim Original SDK gibt es GATT Beispiele, aber da kapier ich mal so garnix.... https://github.com/espressif/esp-idf...ples/bluetooth
bei der DOKU findet man das hier http://esp-idf-fork.readthedocs.io/e...esp_gattc.html
Selbst als Coprozessor (wenn auch dekadend) wäre das ja evl. was, da ein ESP32Modul soviel kostet wie eines für Bluetooth.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: berniie am 16 Februar 2017, 12:28:39
Ich hätte da eine ähnlich günstige und lieferbare Alternative zum C.H.I.P
https://de.aliexpress.com/item/New-Orange-Pi-Zero-H2-Quad-Core-Open-source-512MB-development-board-beyond-Raspberry-Pi/32761500374.html (https://de.aliexpress.com/item/New-Orange-Pi-Zero-H2-Quad-Core-Open-source-512MB-development-board-beyond-Raspberry-Pi/32761500374.html)
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 17 Februar 2017, 08:30:26
interessant, da gibts ja mittlerweile einiges :)
Ich hab das hier gefunden http://www.friendlyarm.com/index.php?route=product/product&product_id=151 Vorteil es hat gleich Bluetooth und eMMC on Board.
Und eine Low Cost Version http://www.friendlyarm.com/index.php?route=product/product&product_id=132 mit Ethernet aber die grob abgeschätzt dem Orange Pi Zero entspricht.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 17 Februar 2017, 09:20:24
Alternativ wäre für mich auch eine Variante mit interessant, mit der ich irgendwie mit Arduino arbeiten kann (habe Eigenbau KNX Aktoren + Taster) daher evl ein ESP32?

Mit dem Arduino Core geht wohl noch kein Wlan.
Beim Original SDK gibt es GATT Beispiele, aber da kapier ich mal so garnix.... https://github.com/espressif/esp-idf...ples/bluetooth
bei der DOKU findet man das hier http://esp-idf-fork.readthedocs.io/e...esp_gattc.html
Damit scheint es aber zu gehen, siehe https://www.youtube.com/watch?v=brD3dYTK6Fg&feature=youtu.be
Und die Pycom Module mit ESP32 können es auch.

Und klar es ist nicht so flexibel wie ein "dezentrales Linux" dafür hat man aber nicht soviele Linux Systeme die veralten können. Und ich könnte solche Bluetooth Geräte an meine Taster anstecken, die ich eh in jedem Raum haben will.
Ist da jemand fitt beim ESP32?

Ansonsten gibts noch das hier. Wäre ja cool, ist aber nicht verfügbar https://www.seeedstudio.com/BTstack-LE-Arduino-Shield-p-2464.html
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 17 Februar 2017, 09:25:32
Warum nehmt ihr nicht direkt den Raspberry Pi 3, der hat doch schon Bluetooth an Bord?

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 17 Februar 2017, 09:32:37
in meinem Fall: Ich will die eigentlich in Hohlwand Dosen verbauen. Und ich benötige mehrere => Kosten.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 17 Februar 2017, 09:34:17
Wäre das nicht mit Kanonen auf Spatzen schießen?

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 28 Februar 2017, 14:39:36
Vielleicht interessant der neue Pi Zero fürn Zehner: https://www.heise.de/make/meldung/Raspberry-Pi-Zero-W-Bluetooth-und-WLAN-Update-fuer-Mini-Himbeere-3637499.html
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 28 Februar 2017, 19:27:14
Scheint ein guter Ansatz zu sein. Preis ist auf jedenfall mehr als gut.

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: PeMue am 28 Februar 2017, 19:30:18
Zitat von: Waldmensch am 28 Februar 2017, 14:39:36
Vielleicht interessant der neue Pi Zero fürn Zehner: https://www.heise.de/make/meldung/Raspberry-Pi-Zero-W-Bluetooth-und-WLAN-Update-fuer-Mini-Himbeere-3637499.html
Ist nur die Frage, wo man den bekommt ... Hast Du eine Bezugsquelle?

Gruß PeMue
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: juergs am 28 Februar 2017, 21:22:38
https://shop.pimoroni.com/products/raspberry-pi-zero-w
Wow, die 48 Stück waren in 3h wech ...
Gruß,
Jürgen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Waldmensch am 01 März 2017, 09:45:28
Zitat von: PeMue am 28 Februar 2017, 19:30:18
Ist nur die Frage, wo man den bekommt ... Hast Du eine Bezugsquelle?

Gruß PeMue
Ne, die Heise news wurde mir nur im Newsfeed eingespült.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 01 März 2017, 10:16:02
Zitat von: juergs am 28 Februar 2017, 21:22:38
https://shop.pimoroni.com/products/raspberry-pi-zero-w
Wow, die 48 Stück waren in 3h wech ...
Gruß,
Jürgen

Oh, out of stock...
...hoffentlich erst (weit) NACH meiner Bestellung ;)

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 02 März 2017, 11:35:49
Sind wieder lieferbar. Gerade mal einen bestellt [emoji41]

Gesendet von meinem E6653 mit Tapatalk

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mele am 22 März 2017, 20:55:28
Zitat von: Christian.Kühnel am 30 Januar 2017, 23:34:37
Liebe Freunde der Pflanzenautomatisierung,

ich habe in den letzten Tagen etwas Software zusammengebaut und hier ist meine Lösung für die zu kurze Bluetooth LE Reichweite:
https://github.com/ChristianKuehnel/plantgateway

Kurzfassung:
Ich lasse auf einem kleinen Linuxrechner (z.B. C.H.I.P oder Raspberry Pi 3) mit Bluetooth und WiFi das "plantgateway" laufen. Das holt regelmäßig (z.B. 1x pro Stunde) die Messwerten von den Xiaomi Mi Sensoren und schickt sie per WiFi und MQTT zum fhem Server. Damit lassen sich dann beliebige Entfernungen überbrücken.

Vorteile:
* Funktioniert mit Standard Hardware.
* Ist mit dem C.H.I.P (9$) auch recht günstig.
* Funktioniert überall, wo eine IP-Verbindung besteht (WiFi, LAN, Mobilfunk, ...).
* Funktioniert mit jeder Heimautomatisierung, die MQTT unterstützt, also nicht nur fhem.

Nachteil:
* Ein weiterer Linuxrechner der Strom braucht und administriert werden will.


Schönen Abend,
Christian

Hallo Christian,

ich verzweifle gerade leider an Deiner GITHUB-Anleitung zum plantgateway.

Ich hoffe, von Dir einen Rat zu bekommen, wie ich weitermachen kann. Ich habe einen Raspberry Pi 2 B als "Satellit" und einen cubietruck als Hauptinstanz.

Folgendes habe ich auf dem Satellit probiert:

Der Flowersens wird schon per hcitoolscan lescan erkannt.

In der Anleitung steht der Schritt
sudo apt-get install python3 pip3

welcher bei mir folgende Meldung ausgibt:
Paket pip3 kann nicht gefunden werden.

Die Installation funktionierte dann mit:
sudo apt-get install python3-pip

Wenn ich allerdings
sudo pip3 install https://github.com/ChristianKuehnel/plantgateway/archive/master.zip

ausführe (pip geht nicht), dann bekomme ich folgende Fehlermeldung:

sudo pip3 install https://github.com/ChristianKuehnel/plantgateway/archive/master.zip
Downloading/unpacking https://github.com/ChristianKuehnel/plantgateway/archive/master.zip
  Downloading master.zip (96kB): 96kB downloaded
  Running setup.py (path:/tmp/pip-cqkvk2re-build/setup.py) egg_info for package from https://github.com/ChristianKuehnel/plantgateway/archive/master.zip

Downloading/unpacking bluepy (from plantgateway==0.3.3)
  Downloading bluepy-1.0.5.tar.gz (210kB): 210kB downloaded
  Running setup.py (path:/tmp/pip-build-4f_5hkrb/bluepy/setup.py) egg_info for package bluepy

Downloading/unpacking paho-mqtt (from plantgateway==0.3.3)
  Downloading paho-mqtt-1.2.tar.gz (49kB): 49kB downloaded
  Running setup.py (path:/tmp/pip-build-4f_5hkrb/paho-mqtt/setup.py) egg_info for package paho-mqtt

Downloading/unpacking pyyaml (from plantgateway==0.3.3)
  Downloading PyYAML-3.12.tar.gz (253kB): 253kB downloaded
  Running setup.py (path:/tmp/pip-build-4f_5hkrb/pyyaml/setup.py) egg_info for package pyyaml

Installing collected packages: bluepy, paho-mqtt, pyyaml, plantgateway
  Running setup.py install for bluepy
    Working dir is /tmp/pip-build-4f_5hkrb/bluepy
    execute make -C ./bluepy clean
    execute make -C bluepy
    Failed to compile bluepy-helper. Exiting install.
    Command was 'make -C bluepy' in /tmp/pip-build-4f_5hkrb/bluepy
    Return code was 2
    Output was:
    b"make: Entering directory '/tmp/pip-build-4f_5hkrb/bluepy/bluepy'\ntar xzf bluez-src.tgz\ntouch ./bluez-5.29/lib/bluetooth.c ./bluez-5.29/lib/hci.c ./bluez-5.29/lib/sdp.c ./bluez-5.29/lib/uuid.c ./bluez-5.29/attrib/att.c ./bluez-5.29/attrib/gatt.c ./bluez-5.29/attrib/gattrib.c ./bluez-5.29/attrib/utils.c ./bluez-5.29/btio/btio.c ./bluez-5.29/src/log.c ./bluez-5.29/src/shared/mgmt.c ./bluez-5.29/src/shared/crypto.c ./bluez-5.29/src/shared/att.c ./bluez-5.29/src/shared/queue.c ./bluez-5.29/src/shared/util.c ./bluez-5.29/src/shared/io-glib.c ./bluez-5.29/src/shared/timeout-glib.c\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\ngcc -L. -Os -g -Wall -Werror -DHAVE_CONFIG_H -I./bluez-5.29/attrib -I./bluez-5.29 -I./bluez-5.29/lib -I./bluez-5.29/src -I./bluez-5.29/gdbus -I./bluez-5.29/btio  -o bluepy-helper bluepy-helper.c ./bluez-5.29/lib/bluetooth.c ./bluez-5.29/lib/hci.c ./bluez-5.29/lib/sdp.c ./bluez-5.29/lib/uuid.c ./bluez-5.29/attrib/att.c ./bluez-5.29/attrib/gatt.c ./bluez-5.29/attrib/gattrib.c ./bluez-5.29/attrib/utils.c ./bluez-5.29/btio/btio.c ./bluez-5.29/src/log.c ./bluez-5.29/src/shared/mgmt.c ./bluez-5.29/src/shared/crypto.c ./bluez-5.29/src/shared/att.c ./bluez-5.29/src/shared/queue.c ./bluez-5.29/src/shared/util.c ./bluez-5.29/src/shared/io-glib.c ./bluez-5.29/src/shared/timeout-glib.c \nbluepy-helper.c:33:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/att.c:33:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/gatt.c:32:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/gattrib.c:34:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/utils.c:30:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/btio/btio.c:37:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/log.c:32:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/shared/io-glib.c:30:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/shared/timeout-glib.c:22:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\nMakefile:28: recipe for target 'bluepy-helper' failed\nmake: *** [bluepy-helper] Error 1\nmake: Leaving directory '/tmp/pip-build-4f_5hkrb/bluepy/bluepy'\n"
    Complete output from command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-4f_5hkrb/bluepy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-htgkhp0o-record/install-record.txt --single-version-externally-managed --compile:
    running install

Working dir is /tmp/pip-build-4f_5hkrb/bluepy

execute make -C ./bluepy clean

execute make -C bluepy

Failed to compile bluepy-helper. Exiting install.

Command was 'make -C bluepy' in /tmp/pip-build-4f_5hkrb/bluepy

Return code was 2

Output was:

b"make: Entering directory '/tmp/pip-build-4f_5hkrb/bluepy/bluepy'\ntar xzf bluez-src.tgz\ntouch ./bluez-5.29/lib/bluetooth.c ./bluez-5.29/lib/hci.c ./bluez-5.29/lib/sdp.c ./bluez-5.29/lib/uuid.c ./bluez-5.29/attrib/att.c ./bluez-5.29/attrib/gatt.c ./bluez-5.29/attrib/gattrib.c ./bluez-5.29/attrib/utils.c ./bluez-5.29/btio/btio.c ./bluez-5.29/src/log.c ./bluez-5.29/src/shared/mgmt.c ./bluez-5.29/src/shared/crypto.c ./bluez-5.29/src/shared/att.c ./bluez-5.29/src/shared/queue.c ./bluez-5.29/src/shared/util.c ./bluez-5.29/src/shared/io-glib.c ./bluez-5.29/src/shared/timeout-glib.c\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\nPackage glib-2.0 was not found in the pkg-config search path.\nPerhaps you should add the directory containing `glib-2.0.pc'\nto the PKG_CONFIG_PATH environment variable\nNo package 'glib-2.0' found\ngcc -L. -Os -g -Wall -Werror -DHAVE_CONFIG_H -I./bluez-5.29/attrib -I./bluez-5.29 -I./bluez-5.29/lib -I./bluez-5.29/src -I./bluez-5.29/gdbus -I./bluez-5.29/btio  -o bluepy-helper bluepy-helper.c ./bluez-5.29/lib/bluetooth.c ./bluez-5.29/lib/hci.c ./bluez-5.29/lib/sdp.c ./bluez-5.29/lib/uuid.c ./bluez-5.29/attrib/att.c ./bluez-5.29/attrib/gatt.c ./bluez-5.29/attrib/gattrib.c ./bluez-5.29/attrib/utils.c ./bluez-5.29/btio/btio.c ./bluez-5.29/src/log.c ./bluez-5.29/src/shared/mgmt.c ./bluez-5.29/src/shared/crypto.c ./bluez-5.29/src/shared/att.c ./bluez-5.29/src/shared/queue.c ./bluez-5.29/src/shared/util.c ./bluez-5.29/src/shared/io-glib.c ./bluez-5.29/src/shared/timeout-glib.c \nbluepy-helper.c:33:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/att.c:33:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/gatt.c:32:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/gattrib.c:34:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/attrib/utils.c:30:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/btio/btio.c:37:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/log.c:32:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/shared/io-glib.c:30:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\n./bluez-5.29/src/shared/timeout-glib.c:22:18: fatal error: glib.h: Datei oder Verzeichnis nicht gefunden\n #include <glib.h>\n                  ^\ncompilation terminated.\nMakefile:28: recipe for target 'bluepy-helper' failed\nmake: *** [bluepy-helper] Error 1\nmake: Leaving directory '/tmp/pip-build-4f_5hkrb/bluepy/bluepy'\n"

----------------------------------------
Cleaning up...
Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-4f_5hkrb/bluepy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-htgkhp0o-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip-build-4f_5hkrb/bluepy
Storing debug log for failure in /root/.pip/pip.log


Hast Du einen Rat, wie ich weiter vorgehen kann?

Vielen herzlichen Dank vorab,

Manuel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 22 März 2017, 21:33:07
Hallo Manuel,

Die aktuelle Develversion vom FlowerSens Modul kann SSH. Vielleicht hilft Dir das ja.



Grüße
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mahowi am 22 März 2017, 21:33:48
Wie die Fehlermeldung schon aussagt, Dir fehlt die Header-Datei glib.h:
fatal error: glib.h: Datei oder Verzeichnis nicht gefunden
             ^^^^^^


Die bekommst Du, wenn Du das Paket libglib2.0-dev installierst.
pi@raspberrypi:~ $ dpkg -S /usr/include/glib-2.0/glib.h
libglib2.0-dev: /usr/include/glib-2.0/glib.h
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mele am 22 März 2017, 22:51:54
Zitat von: mahowi am 22 März 2017, 21:33:48
Wie die Fehlermeldung schon aussagt, Dir fehlt die Header-Datei glib.h:
fatal error: glib.h: Datei oder Verzeichnis nicht gefunden
             ^^^^^^


Die bekommst Du, wenn Du das Paket libglib2.0-dev installierst.
pi@raspberrypi:~ $ dpkg -S /usr/include/glib-2.0/glib.h
libglib2.0-dev: /usr/include/glib-2.0/glib.h


Das hat mich weitergebracht - vielen Dank.

Jetzt stehe ich vor dem nächsten Fehler.

Beim Aufruf von "plantgateway" erhalte ich Folgendes:
pi@raspberrypi:~ $ plantgateway
Traceback (most recent call last):
  File "/usr/local/bin/plantgateway", line 30, in <module>
    main()
  File "/usr/local/bin/plantgateway", line 24, in main
    pg = PlantGateway()
  File "/usr/local/lib/python3.4/dist-packages/plantgw/__init__.py", line 83, in __init__
    self.config = Configuration(config_file_path)
  File "/usr/local/lib/python3.4/dist-packages/plantgw/__init__.py", line 27, in __init__
    config = yaml.load(config_file)
  File "/usr/local/lib/python3.4/dist-packages/yaml/__init__.py", line 72, in load
    return loader.get_single_data()
  File "/usr/local/lib/python3.4/dist-packages/yaml/constructor.py", line 35, in get_single_data
    node = self.get_single_node()
  File "/usr/local/lib/python3.4/dist-packages/yaml/composer.py", line 39, in get_single_node
    if not self.check_event(StreamEndEvent):
  File "/usr/local/lib/python3.4/dist-packages/yaml/parser.py", line 98, in check_event
    self.current_event = self.state()
  File "/usr/local/lib/python3.4/dist-packages/yaml/parser.py", line 174, in parse_document_start
    self.peek_token().start_mark)
yaml.parser.ParserError: expected '<document start>', but found '<block mapping start>'
  in "/home/pi/.plantgw.yaml", line 5, column 1


Hier meine /home/pi/.plantgw.yaml (192.168.178.240 ist der cubietruck mit der Hauptinstanz .....241 wäre der RPI mit dem plantgateway:
# Template for configuration file of the plant gateway
..# copy this file to your home directory and rename it to ".plantgw.yaml" (starting with a ".").

# mqtt configuration, replace this with the configuration of your mqtt server
mqtt:
    #url of your mqtt server, madatory
#    server: my-mqtt-server
    server: 192.168.178.240

    #prefix of the topic where the sensor data will be published, mandatory
    prefix: some/prefix/my/plants

    #port of the mqtt server, optional if using 8883
    #port: 8883

    #credentials for the mqtt server, optional if you do not use authentication
    #user:
    #password:

    #path to ssl/tls ca file
    #ca_cert: /etc/ssl/certs/<my ca file.pem>

# sensor configuration, replace this with the configuration of your sensors
sensors:
    # bluetooth mac of the sensor, mandatory
    - mac: C4:7C:8D:62:D3:CF
      # alias to be used for the sensor, opotional
      alias: GWH1

# path where log file shall be stored, optional
#logfile: plantgw.log


Weiß jemand Rat?

Vielen herzlichen Dank vorab!

Gruß
Manuel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Papaloewe am 23 März 2017, 07:52:49
Braucht das Script python2, oder python3?
Schau dir mal die erste Zeile im Script an.

Nur so eine Vermutung....
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 29 Juni 2017, 13:10:36
Hi,
ich habe mir hier zwar nicht 100% alles durchgelesen, aber ich suche Infos, um einen ESP32 als BT<->WLAN->MQTT Bridge zu betreiben unm meine Xiaomi Planzensensoren anzubinden - und das von mehreren Positionen aus.
Da ja der ESP32 schon alles onBoard hat war die Idee so, da auf die NodeMCU nur "ein" Sketch drauf kommt und per USB mit Strom versorgt wird. Anosnsten keinerlei Anbauteile.
Ich glaube ursprünglich hat sich dieser Thread hiermit beschäftigt, ist aber dann auf einen LinuxVariante abgekommen. Genau DAS wollte ich nicht.
Ist also zum heutigen Tage diese Umsetzung schon möglich?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: nanocosmos am 20 August 2017, 09:57:45
Würde mich auch interessieren. [emoji4]
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 August 2017, 10:07:49
Es gibt die Möglichkeit, ja ich weiß ist Linux, mit einem günstigen Pi Nano oder wie der neue heißt direkt eine Verbindung herzustellen und über SSH (im Modul implementiert) die Sensoren ab zu fragen.

Ich kenne jetzt nicht die Preise oder den Preisunterschied. Denke aber das man ja so viele Nanos nicht kaufen muss.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: sash.sc am 20 August 2017, 10:12:53
Nimm einen pi Zero w. Der hat wlan und Bluetooth an Board. Linux und fhem drauf
Ist auch recht günstig
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 20 August 2017, 10:45:41
Habe (wie Sash geschrieben hat) einen PI Zero W nur Linux drauf ohne fhem.

Ich rufe den dann per ssh über das Modul auf meinem Hauptfhem...

PI Zero ist in der Nähe des Balkons und "frägt" 7 Sensoren ab...

Klappt schon seit Mai prima! :)

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: nanocosmos am 21 August 2017, 17:37:58
Danke für den Tipp mit dem PI Zero!
Hatte gehofft jemand hätte vielleicht ein Gateway Skript geschrieben ähnlich dem MySensors ESP Gateway.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Smarti am 12 April 2018, 22:05:05
Also ich bin auch auf der Suche nach einem Gateway von Bluetooth auf z.b. WLAN.

hierbei bin ich auf dieses Video gestoßen: https://www.youtube.com/watch?v=PBYCG-ypvRY

Wäre das nicht auch ein Thema für das LaCrossGateway32: https://forum.fhem.de/index.php?topic=70338.0

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 13 April 2018, 08:00:29
der ist noch viel besser :)
https://www.youtube.com/watch?v=iCKIIMrphtg
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 13 April 2018, 08:30:09
Andreas Spiess hat einige Videos zu dem Thema und schon was gebastelt. Er hat ein BLE Polar Sensor und ein BLE Precence Dector über einen ESP32 angebunden.
Für letzteres gibt es in der Video Beschreibung auch ein Sketch mit MQTT... https://github.com/SensorsIot/Bluetooth-BLE-on-Arduino-IDE

https://www.youtube.com/results?search_query=+Andreas+Spiess+ble

Und Mickey hier im Forum hat ein ESP32 Sketch geschrieben, der lepresenced simuliert: https://forum.fhem.de/index.php/topic,28753.msg743740.html#msg743740

Allerdings bekomme ich die Sketches unter Windows nicht kompiliert, weil die Arduino IDE nörgelt der Sketch wäre zu groß.

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: locutus am 15 April 2018, 21:55:09
@andi11
Schau dir das OpenMQTTGateway (https://github.com/1technophile/OpenMQTTGateway) genauer an!
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 03 Juni 2018, 18:53:34
danke für den Tipp, hab ich aktuell nur komplett aus den Augen verloren, da ich zwischenzeitlich gebaut habe, und sich die Situation komplett geändert hat (auch bluetooth)... Werd ich mir mal anschauen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 15 Juni 2018, 00:14:01
Zitat von: MadMax-FHEM am 20 August 2017, 10:45:41
Habe (wie Sash geschrieben hat) einen PI Zero W nur Linux drauf ohne fhem.

Ich rufe den dann per ssh über das Modul auf meinem Hauptfhem...

PI Zero ist in der Nähe des Balkons und "frägt" 7 Sensoren ab...

Klappt schon seit Mai prima! :)

Gruß, Joachim

Hallo Joachim,

kannst du das bitte mal etwas genauer beschreiben, wie man den Zero einrichten muss, damit man damit dann an FHEM senden kann bzw. über FHEM die BLE-Sensoren abfragen kann ? Wie sieht es beim Zero W denn mit dem Stromverbrauch aus ?

Grüße

Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 15 Juni 2018, 07:15:29
Hi Christian,

wenn ich die Tage mal Zeit finde mach ich das...

Stromverbrauch ZeroW: keine Ahnung. Da mal im Internet schauen was der so braucht. Denke aber mal so 2-3W max. macht ja die meiste Zeit nix ;)

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 15 Juni 2018, 19:55:27
Zitat von: MadMax-FHEM am 15 Juni 2018, 07:15:29
Hi Christian,

wenn ich die Tage mal Zeit finde mach ich das...

Stromverbrauch ZeroW: keine Ahnung. Da mal im Internet schauen was der so braucht. Denke aber mal so 2-3W max. macht ja die meiste Zeit nix ;)

Gruß, Joachim

So jetzt hatte ich Zeit ;)

Wie ich in Erinnerung hatte: auf dem PI ZeroW hab ich eigentlich nichts groß gemacht. Nur ein PI-Image drauf ("damals" noch Jessie ist noch drauf), WLAN eingerichtet, ssh aktiviert (ist ja seit Jessie nötig), dann per raspi-config Zeitzone, Hostname, Ländereinstellungen, ...

Auf der fhem-Seite dann ssh-Login ohne Passwort: per Zertifikat.

Anleitungen gibt's dazu einige.
Am nähesten wie ich das (immer so) mache ist das hier: https://heinz-otto.blogspot.com/2017/01/per-ssh-remote-befehle-direkt-ausfuhren.html

Und dann "nur" beim FlowerSense-Device sshHost gesetzt: pi@IP-ZeroW
Statt pi@IP-ZeroW geht auch nur die IP (oder Hostname falls lokaler DNS) und dann eben eine ssh-conf...

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 16 Juni 2018, 23:47:37
Ich habe heute mal das OpenMQTTGateway mit einem ESP32 ausprobiert: https://github.com/1technophile/OpenMQTTGateway/wiki/Module-Overview-ESP32
(zu beachten ist dieses hier: Special instructions so as to avoid issue Sketch too big at build time)

Ich habe ein Screenshot angehangen...

Damit kann man die Xiaomi Flower Sensoren per MQTT anbinden und dazu scannt es noch BLE Tags:

#mosquitto_sub -v -h 127.0.0.1 -p 1883 -t '#'
home/OpenMQTTGateway/BTtoMQTT/C47C8D65AE4C/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D65AE4C -67
home/OpenMQTTGateway/BTtoMQTT/C47C8D65AE4C/fer 331
home/OpenMQTTGateway/BTtoMQTT/7C2F80B96BAF/name Gigaset G-tag
home/OpenMQTTGateway/BTtoMQTT/7C2F80B96BAF/ManufacturerData �4��k���
home/OpenMQTTGateway/BTtoMQTT/7C2F80B96BAF -87
home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95 -73
home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/hum 23


Fhem anbindung:
defmod Flower_1 MQTT_DEVICE
attr Flower_1 IODev myBroker
attr Flower_1 stateFormat {sprintf("Temperatur: %.1f Grad, Feuchte: %.1f %, Lux: %.1f ", ReadingsVal($name,"temperature",0), ReadingsVal($name,"moisture",0), ReadingsVal($name,"lux",0))}
attr Flower_1 subscribeReading_fertility home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/fer
attr Flower_1 subscribeReading_lux home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/lux
attr Flower_1 subscribeReading_moisture home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/hum
attr Flower_1 subscribeReading_name home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/name
attr Flower_1 subscribeReading_rssi home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95
attr Flower_1 subscribeReading_temperature home/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/tem


Was nur derzeit zu fehlen scheint ist der Batterie Wert. Aber sonst läuft das bisher echt gut.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 17 Juni 2018, 12:36:26
Zitat von: MadMax-FHEM am 15 Juni 2018, 19:55:27
So jetzt hatte ich Zeit ;)

Wie ich in Erinnerung hatte: auf dem PI ZeroW hab ich eigentlich nichts groß gemacht. Nur ein PI-Image drauf ("damals" noch Jessie ist noch drauf), WLAN eingerichtet, ssh aktiviert (ist ja seit Jessie nötig), dann per raspi-config Zeitzone, Hostname, Ländereinstellungen, ...

Auf der fhem-Seite dann ssh-Login ohne Passwort: per Zertifikat.

Anleitungen gibt's dazu einige.
Am nähesten wie ich das (immer so) mache ist das hier: https://heinz-otto.blogspot.com/2017/01/per-ssh-remote-befehle-direkt-ausfuhren.html

Und dann "nur" beim FlowerSense-Device sshHost gesetzt: pi@IP-ZeroW
Statt pi@IP-ZeroW geht auch nur die IP (oder Hostname falls lokaler DNS) und dann eben eine ssh-conf...

Gruß, Joachim

DANKE, werde ich mal ausprobieren, hab erstmal einen Zero W geordert, bei pimoroni.de für 10,08 € + Porto kann man (hoffentlich) nicht viel falsch machen... Der ESP32 als lolin ist ja auch nicht billiger...

Grüße Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: m_gatz am 17 Juni 2018, 12:49:13
Der ESP32 braucht aber keine SD Karte, was für mich der Mehrwert ist.

Bei dem openMQTTGateway würde ich gerne nur ausgewählte Sensoren abfragen. Das ist aber (noch) nicht möglich, oder?
Ansonsten gibt es auf github eine Variante für den ESP32, die genau einen Sensor abfragt. Das lässt sich aber sicherlich mit entsprechenden Programmierkenntnissen auf mehrere Sensoren erweitern.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 17 Juni 2018, 13:07:51
Kann der ESP32 denn überhaupt als BLE-Acceespoint genutzt werden ? Ich meine ich hätte irgendwo gelesen, dass der mittels BLE nur zu einem Device Verbindung aufbauen kann
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: m_gatz am 17 Juni 2018, 13:22:23
Zitat von: cs-online am 17 Juni 2018, 13:07:51
Kann der ESP32 denn überhaupt als BLE-Acceespoint genutzt werden ? Ich meine ich hätte irgendwo gelesen, dass der mittels BLE nur zu einem Device Verbindung aufbauen kann

Muss man das denn? Es reicht doch wenn man in ner Schleife die Sensoren einzeln abfragt, oder?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 17 Juni 2018, 13:40:04
Zitat von: m_gatz am 17 Juni 2018, 12:49:13
Der ESP32 braucht aber keine SD Karte, was für mich der Mehrwert ist.

Bei dem openMQTTGateway würde ich gerne nur ausgewählte Sensoren abfragen. Das ist aber (noch) nicht möglich, oder?
Ansonsten gibt es auf github eine Variante für den ESP32, die genau einen Sensor abfragt. Das lässt sich aber sicherlich mit entsprechenden Programmierkenntnissen auf mehrere Sensoren erweitern.

Keine SD Karte und der ist stromsparender als ein RPi.

Wieso willst du nur ausgewählte abfragen?

Das openMQTTGateway fragt alle BLE Geräte in Reichweite ab und sendet es an den MQTT Broker.
Jeder Sensor hat seine eigene ID welche man in Fhem einbinden kann.
Ich habe derzeit 2 Flower Sensoren in Reichweite des ESP32.

Wobei ich mir nicht sicher bin, ob das openMQTTGateway wirklich abfragt, oder nur lauscht.
Es kann auch sein, das die Xiaomi Sensoren selbständig die Werte per BLE raus sendet.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 23 Juni 2018, 21:50:38
Zitat von: MadMax-FHEM am 15 Juni 2018, 19:55:27

Und dann "nur" beim FlowerSense-Device sshHost gesetzt: pi@IP-ZeroW
Statt pi@IP-ZeroW geht auch nur die IP (oder Hostname falls lokaler DNS) und dann eben eine ssh-conf...

Gruß, Joachim

@Joachim: Kannst du das oben nochmal genauer erklären ? PI-Zero W läuft, hab alles nach Ottos Anleitung gemacht, aber das mit dem "sshHost gesetzt: pi@IP-ZeroW" hab ich noch nicht verstanden. Auf dem Zero W brauchte ich doch kein FHEM installieren oder ?

Ähm und eine weitere Frage habe ich dann noch: Ich habe nun was ssh angeht nur auf dem System, auf dem FHEM läuft was konfiguriert. Muss ich denn auch auf dem Pi Zero W dazu irgendwas machen ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: MadMax-FHEM am 23 Juni 2018, 23:06:46
Auf dem ZeroW hab ich (soweit mir meine Aufzeichnungen zeigen) nichts zusätzliches gemacht.
Nur halt Ländereinstellungen, ssh aktiviert, WLAN (nat.) und filesystem expandiert...

Also auch kein fhem...

Ssh-Zugriff ähnlich wie in Ottos Blog beschrieben.
Auf dem ZeroW müssen halt die Zertifikate von fhem kopiert werden (sshcopy oder so oder halt per "Hand und Fuß")...

Dann das Attribut sshHost beim FlowerSensBLT-Modul/Device setzen und dort dann die IP des ZeroW eintragen und entweder eine ssh-conf oder eben noch den User (in meinem Fall pi [das ist der User der auf dem ZeroW das Kommando ausführen soll] angeben pi@IP-Adresse)...

Aber wie (verm.) geschrieben dazu wurde hier und in anderen Threads schon ausführlich "diskutiert"...

Gruß, Joachim
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 24 Juni 2018, 09:20:12
danke erstmal, das hilft schon weiter  :) ich warte noch auf die Sensoren, dann gehts an den nächsten Step...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 19 Juli 2018, 20:40:29
Hallo zusammen,

ich brauche noch mal Hilfe, nachdem die Dinger nun endlich angekommen sind und ich den Raspi wie oben in dem Artikel von Otto beschrieben konfiguriert habe, bekomme ich immer diese Fehlermeldung

no gatttool binary found. Please check if bluez-package is properly installed

Bluez ist installiert, ich kann auf dem ZeroW auch den Flower Care in der Liste der Bluetooth-Geräte sehen. Als model habe ich FlowerSens gewählt (ist das richtig ?) und als sshHost pi:raspberry@IP_VOM_RASPI ZeroW, Habs auch schon mit pi@IP_VOM_RASPI ZeroW probiert, zuerst kam "no route to host", dann der Fehler oben. Irgend ne Idee, was ich falsch mache ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 19 Juli 2018, 20:46:33
Zitat von: cs-online am 19 Juli 2018, 20:40:29
Hallo zusammen,

ich brauche noch mal Hilfe, nachdem die Dinger nun endlich angekommen sind und ich den Raspi wie oben in dem Artikel von Otto beschrieben konfiguriert habe, bekomme ich immer diese Fehlermeldung

no gatttool binary found. Please check if bluez-package is properly installed

Bluez ist installiert, ich kann auf dem ZeroW auch den Flower Care in der Liste der Bluetooth-Geräte sehen. Als model habe ich FlowerSens gewählt (ist das richtig ?) und als sshHost pi:raspberry@IP_VOM_RASPI ZeroW, Habs auch schon mit pi@IP_VOM_RASPI ZeroW probiert, zuerst kam "no route to host", dann der Fehler oben. Irgend ne Idee, was ich falsch mache ?

Installiere mal bitte auf dem lokalen System auch bluez. Lässt sich leider nicht anders lösen.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 19 Juli 2018, 21:23:04
...wenn du mit lokalen System den Raspi meinst, auf dem FHEM läuft, dann kommt nach Update und Upgrade die Meldung

sudo apt-get install bluez
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.
Statusinformationen werden eingelesen.... Fertig
bluez ist schon die neueste Version.


Und was mach ich nun ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 19 Juli 2018, 21:29:20
Führe bitte auf dem ZeroW

which gatttool

aus. Und auf dem fhem Pi bitte auch.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 20:41:58
Auf beiden kommt dabei dann als Antwort:

/usr/bin/gatttool


Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 20:49:07
Dann verstehe ich die Fehlermeldung ehrlich gesagt nicht.
Kannst du bitte auf verbose 5 stellen und das Log hier Posten.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 21:10:22
ähm, also Log auf das FlowerSense mit Verbose 5 ? Sieht so aus (Im Event-Monitor genauso):

2018-07-20_20:57:18 Gewaechshaus1 read sensor data
2018-07-20_20:57:19 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_20:57:19 Gewaechshaus1 error
2018-07-20_20:57:44 Gewaechshaus1 read sensor data
2018-07-20_20:57:45 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_20:57:45 Gewaechshaus1 error
2018-07-20_20:58:20 Gewaechshaus1 read sensor data
2018-07-20_20:58:23 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_20:58:23 Gewaechshaus1 error
2018-07-20_20:58:28 Gewaechshaus1 read sensor data
2018-07-20_20:58:30 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_20:58:30 Gewaechshaus1 error
2018-07-20_20:58:30 Gewaechshaus1 read sensor data
2018-07-20_20:58:31 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_20:58:31 Gewaechshaus1 error
2018-07-20_21:03:21 Gewaechshaus1 read sensor data
2018-07-20_21:03:22 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_21:03:22 Gewaechshaus1 error
2018-07-20_21:05:30 Gewaechshaus1 read sensor data
2018-07-20_21:05:31 Gewaechshaus1 lastGattError: no gatttool binary found. Please check if bluez-package is properly installed
2018-07-20_21:05:31 Gewaechshaus1 error


und mal sicherheitshalber die Definition des Sensors:

defmod Gewaechshaus1 XiaomiBTLESens C4:7C:8D:62:42:6F
attr Gewaechshaus1 model flowerSens
attr Gewaechshaus1 room Gewächshaus
attr Gewaechshaus1 sshHost pi@192.168.2.21
attr Gewaechshaus1 verbose 5
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 21:21:33
Einzige Möglichkeit die ich sehe warum das so ist, ist ein Problem mit der ssh Verbindung
Als User root bitte einmal ausführen

su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 21:29:42
als user root ? Wie mach ich das denn ? Bin nicht so richtig fit im Linux :-( sorry

einfach als Pi ausgeführt fragt er nach dem Passwort, das was ich in Erinnerung hatte war es dann aber nich...

pi@FHEM-Jessie:~ $ su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
Passwort:
su: Fehler bei Authentifizierung


wenn ich aber das hier mache, dann verbindet er ohne PW

pi@FHEM-Jessie:~ $ ssh pi@192.168.2.21
Linux raspberrypi 4.14.52+ #1123 Wed Jun 27 17:05:32 BST 2018 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Jul 19 21:27:44 2018 from 192.168.2.25

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 21:33:40
Du kannst ein sudo su - machen dann solltest du root sein.
Aber ich sehe schon das es so ist wie ich sage. Als User fhem hast du kein passwortlosen Login.
Du müsstest alles unter /home/pi/.ssh/ nach /opt/fhem/.ssh/ kopieren und mittels chown die rechte ändern
chown fhem: /opt/fhem/.ssh/*
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 21:40:49
OK, den .ssh Ordner habe ich nach /opt/fhem kopiert, da waren 3 Dateien drin.

aber:

pi@raspberrypi:~ $ chown fhem: /opt/fhem/.ssh/*
chown: ung▒ltige Spezifikation: ▒fhem:▒
pi@raspberrypi:~ $


als Sudo hätte es so ausgesehen:

pi@raspberrypi:~ $ sudo su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
Kein Passworteintrag f▒r Benutzer ▒fhem▒

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 21:42:47
Zitat von: cs-online am 20 Juli 2018, 21:40:49
OK, den .ssh Ordner habe ich nach /opt/fhem kopiert, da waren 3 Dateien drin.

aber:

pi@raspberrypi:~ $ chown fhem: /opt/fhem/.ssh/*
chown: ung▒ltige Spezifikation: ▒fhem:▒
pi@raspberrypi:~ $


Das musst du schon als root machen.

sudo chown -R fhem: /opt/fhem/.ssh
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 21:47:44
hmmm.... scheine ein schwerer Fall zu sein...

pi@raspberrypi:~ $ sudo chown fhem: /opt/fhem/.ssh/*
chown: ung▒ltige Spezifikation: ▒fhem:▒
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 21:50:19
Ich denke das ist schlimmer wie ich dachte.

Mach Mal

ps axu | grep fhem
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 21:56:48
Mist, ich war die letzten Befehle auf dem ZeroW eingeloggt, im FHEM-Raspi sieht das so aus:

pi@FHEM-Jessie:~ $ sudo su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
Host key verification failed.
pi@FHEM-Jessie:~ $ sudo chown fhem: /opt/fhem/.ssh/*
chown: Zugriff auf ,,/opt/fhem/.ssh/*" nicht möglich: Datei oder Verzeichnis nicht gefunden
pi@FHEM-Jessie:~ $ sudo chown fhem: /opt/fhem/.ssh/
pi@FHEM-Jessie:~ $


Hier das letzte:

pi@FHEM-Jessie:~ $ ps axu | grep fhem
fhem      4445  3.3  7.1  76412 67416 ?        S    21:55   0:00 /usr/bin/perl fhem.pl fhem.cfg
fhem      4446  1.0  0.0   2084   428 ?        S    21:55   0:00 ping -c 4 192.168.2.24
pi        4448  0.0  0.2   4292  2016 pts/0    S+   21:55   0:00 grep --color=auto fhem
fhem     31412 43.2  7.5  76412 71740 ?        S    08:17 353:46 /usr/bin/perl fhem.pl fhem.cfg
pi@FHEM-Jessie:~ $
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:00:51
Zitat von: cs-online am 20 Juli 2018, 21:56:48
Mist, ich war die letzten Befehle auf dem ZeroW eingeloggt, im FHEM-Raspi sieht das so aus:

pi@FHEM-Jessie:~ $ sudo su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
Host key verification failed.
pi@FHEM-Jessie:~ $ sudo chown fhem: /opt/fhem/.ssh/*
chown: Zugriff auf ,,/opt/fhem/.ssh/*" nicht möglich: Datei oder Verzeichnis nicht gefunden
pi@FHEM-Jessie:~ $ sudo chown fhem: /opt/fhem/.ssh/
pi@FHEM-Jessie:~ $


Hier das letzte:

pi@FHEM-Jessie:~ $ ps axu | grep fhem
fhem      4445  3.3  7.1  76412 67416 ?        S    21:55   0:00 /usr/bin/perl fhem.pl fhem.cfg
fhem      4446  1.0  0.0   2084   428 ?        S    21:55   0:00 ping -c 4 192.168.2.24
pi        4448  0.0  0.2   4292  2016 pts/0    S+   21:55   0:00 grep --color=auto fhem
fhem     31412 43.2  7.5  76412 71740 ?        S    08:17 353:46 /usr/bin/perl fhem.pl fhem.cfg
pi@FHEM-Jessie:~ $


Ah deswegen.
Na dann auf dem fhem Server einmal bitte

sudo cp -va /home/pi/.ssh /opt/fhem/
sudo chown -R fhem: /opt/fhem/.ssh
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:03:46
pi@FHEM-Jessie:~ $ sudo cp -va /home/pi/.ssh /opt/fhem/
,,/home/pi/.ssh/id_rsa" -> ,,/opt/fhem/.ssh/id_rsa"
,,/home/pi/.ssh/id_rsa.pub" -> ,,/opt/fhem/.ssh/id_rsa.pub"
,,/home/pi/.ssh/known_hosts" -> ,,/opt/fhem/.ssh/known_hosts"
pi@FHEM-Jessie:~ $ sudo chown -R fhem: /opt/fhem/.ssh
pi@FHEM-Jessie:~ $

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:08:31
nun sieht der Fehler schon etwas anders aus, nachdem er länger read sensor data gezeigt hat:

lastGattError
The BlockingCall Process terminated unexpectedly. Timedout
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:09:02
Und jetzt noch mal den
su -s /bin/bash ...
Befehl
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:15:27
pi@FHEM-Jessie:~ $ sudo su -s /bin/bash -c "ssh pi@192.168.2.21 'ls -l'" fhem
insgesamt 1728
drwxr-xr-x 21 pi pi    4096 Jul 19 19:37 bluez-5.47
-rw-r--r--  1 pi pi 1718920 Sep 14  2017 bluez-5.47.tar.xz
drwxr-xr-x  2 pi pi    4096 Jun 23 22:03 Desktop
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Documents
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Downloads
drwxr-xr-x  2 pi pi    4096 Jun 23 22:15 Favoriten
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Music
drwxr-xr-x  3 pi pi    4096 Jul 19 19:36 oldconffiles
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Pictures
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Public
drwxr-xr-x  2 pi pi    4096 Apr 18 02:57 python_games
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Templates
drwxr-xr-x  2 pi pi    4096 Apr 18 03:24 Videos
pi@FHEM-Jessie:~ $
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:20:54
Super. Das geht schon mal. Jetzt das Modul. Verbose 5 und dann mal Daten ziehen. Das Log hier posten
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:25:17
2018-07-20_22:11:24 Gewaechshaus1 unreachable
2018-07-20_22:11:24 Gewaechshaus1 lastGattError: The BlockingCall Process terminated unexpectedly. Timedout
2018-07-20_22:11:24 Gewaechshaus1 error
2018-07-20_22:13:16 Gewaechshaus1 read sensor data
2018-07-20_22:14:46 Gewaechshaus1 unreachable
2018-07-20_22:14:46 Gewaechshaus1 lastGattError: The BlockingCall Process terminated unexpectedly. Timedout
2018-07-20_22:14:46 Gewaechshaus1 error
2018-07-20_22:16:00 Gewaechshaus1 read sensor data
2018-07-20_22:17:31 Gewaechshaus1 unreachable
2018-07-20_22:17:31 Gewaechshaus1 lastGattError: The BlockingCall Process terminated unexpectedly. Timedout
2018-07-20_22:17:31 Gewaechshaus1 error
2018-07-20_22:21:28 Gewaechshaus1 read sensor data
2018-07-20_22:22:58 Gewaechshaus1 unreachable
2018-07-20_22:22:58 Gewaechshaus1 lastGattError: The BlockingCall Process terminated unexpectedly. Timedout
2018-07-20_22:22:58 Gewaechshaus1 error


unreachable klingt als ob der Sensor nicht antwortet oder ? Muss ich den nochmal pairen oder so ? der leuchtet auch nicht...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:29:42
Sieht nicht wirklich wie verbose 5 aus.

Davon mal ab, kannst du bitte den pi näher an den Sensor bringen?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:33:20
Ha, ich glaub ich habs, ich habe die Batterien nochmal rausgenommen und die App zeigt nun andere MAC-Adressen, nachdem ich die eine in die DEF eingetragen habe: BINGO, geht auf active :-)

Log sieht nun doch ein wenig anders aus :

2018-07-20_22:29:48 Gewaechshaus1 read sensor data
2018-07-20_22:29:54 Gewaechshaus1 batteryPercent: 100
2018-07-20_22:29:54 Gewaechshaus1 firmware: 2.7.0
2018-07-20_22:29:54 Gewaechshaus1 batteryState: ok
2018-07-20_22:29:54 Gewaechshaus1 active
2018-07-20_22:29:54 Gewaechshaus1 write sensor data
2018-07-20_22:30:00 Gewaechshaus1 temperature: 22.4
2018-07-20_22:30:00 Gewaechshaus1 moisture: 0
2018-07-20_22:30:00 Gewaechshaus1 lux: 132
2018-07-20_22:30:00 Gewaechshaus1 fertility: 8
2018-07-20_22:30:00 Gewaechshaus1 active
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:38:59
DANKE DANKE DANKE !!!! Super, dass du dir so viel Zeit genommen hast. Ich habe zwar kaum was verstanden, aber Hauptsache es läuft :-)
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:39:30
OK. Super.

Aber das ist nicht das Log. Das ist der Eventmonitor. Log ist was anderes. Nennt sich Logfile
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: CoolTux am 20 Juli 2018, 22:40:58
Zitat von: cs-online am 20 Juli 2018, 22:38:59
DANKE DANKE DANKE !!!! Super, dass du dir so viel Zeit genommen hast. Ich habe zwar kaum was verstanden, aber Hauptsache es läuft :-)

Gerne. Aber vielleicht schaust noch mal das Du bisschen Linux Kenntnisse ein holst. Ist dann in Zukunft einfacher für Dich  ;D


Grüße
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 Juli 2018, 22:50:32
Ja, da muss ich noch einiges lernen ;-) Mein Logfile ist irre groß, das bekam ich kaum auf, obwohl das jeden Tag neu geschrieben wird. Aber auch da hat nicht mehr drin gestanden zu den FloreSens, als in dem Log_File, das ich auf das Device gelegt hab.

How ever, nun kommt von beiden Sensoren Daten :-) Yippie, das We ist gerettet. Danke nochmals !!!
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 27 Juli 2018, 10:33:16
Um mal beim Thema zu bleiben, ich habe versucht das openmqttgateway für einen ESP32 zu kompilieren.
Es scheint noch einige Bugs zum ESP32 zu haben, ich musste ziemlich viel probieren und Arduino-Spezifisches disablen.
Wenn ich nun alle MOdule deaktive, auch das Z-BLE, läuft der Sketch auf dem ESP32, aber erkennt nix.
Aktiviere ich das Z-BLE Modul, wird der Sketch wahnsinnig gross, bekomme ihn aber noch auf den ESP32 gespielt. Problem nun, das er direkt nach dem Booten sich in Schleife immer wieder neustartet :(
Die Doku ist leider auch nicht so eindeutig, ob nun das Z-BLE Modul für einen ESP32 nicht benötigt wird da nativ im config_BT sowiso aktiviert oder nicht ....

Preisfrage: Wie habt ihr den funktionierenden Sketch erstellt???
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 27 Juli 2018, 12:08:18
Bei mir laufen zwei ESP32 seit 1-2 Monaten durchgängig 24 Std. ohne Probleme.
Auch weitere Module konnte ich zusätzlich zu dem BT hinzufügen, wie RF2 und HCSR501. Aber die habe ich wieder rausgeworfen, weil ich die noch nicht benötige.

Wie man den Fehler Fehler "Sketch too big" behebt, steht hier: https://github.com/1technophile/OpenMQTTGateway/wiki/Module-Overview-ESP32
und hier: https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379
Man muss zwei Dateien anpassen (default.csv) und (boards.txt) ich habe mir dafür das ESP32 Dev Module ausgesucht. Wichtig ist auch, das du das Board in der Arduino IDE auswählst, wenn du den Sketch kompilierst.

Das mit der Arduino IDE ist ein bisschen frickelig. Ich würde unbedingt eine frische Arduino installation verwenden!
Dazu diese BLE Lib: https://github.com/1technophile/OpenMQTTGateway/wiki/ESP32-BT-Module

Achja und probiere zuerst mal das release V0.7 aus: https://github.com/1technophile/OpenMQTTGateway/releases
Auf einen Rechner hatte ich Probleme, das aktuelle GIT zu kompilieren. Aber mit der V0.7 ging es.

EDIT: und du brauchst nur das ZgatewayBT in der user_config.h auskommentieren:
/*-------------DEFINE THE MODULES YOU WANT BELOW----------------*/
//Addons and module management, comment the Z line

//#define ZgatewayRF          //ESP8266, Arduino, ESP32
//#define ZgatewayIR          //ESP8266, Arduino,         Sonoff RF Bridge
#define ZgatewayBT          //ESP8266, Arduino, ESP32
...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: m_gatz am 27 Juli 2018, 12:13:16
Lasst ihr mit dem Gateway pauschal alle Sensoren abfragen?
Ich würde gern nur ausgewählte Sensorem, die außerhalb des Raspberrys liegen abfragen.

@mark79 wie verabeitest du die Daten dann weiter? Kann man die irgendwie dem normalen Modul zur Verfügung stellen, sodass man dessen Funktionalitäten witerhin nutzen kann?

Danke und Gruß!
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 27 Juli 2018, 12:21:45
Zitat von: m_gatz am 27 Juli 2018, 12:13:16
@mark79 wie verabeitest du die Daten dann weiter? Kann man die irgendwie dem normalen Modul zur Verfügung stellen, sodass man dessen Funktionalitäten witerhin nutzen kann?

Per MQTT, also das openmqttgateway scannt erstmal nach allen BTLE Geräten welches er findet und sendet es an den mqtt Broker.

Das sieht so aus:
root@rock64:~# mosquitto_sub -v -t \#
home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/name Flower care
home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/hum 36
home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/tem 30.4


In Fhem kann man dann entscheiden, welche Sensoren man einbinden möchte. Das einbinden geschieht einzeln pro Sensor:
defmod KU_Kraeuter MQTT_DEVICE
attr KU_Kraeuter DbLogExclude .*
attr KU_Kraeuter DbLogInclude fertility,lux,moisture,temperature
attr KU_Kraeuter IODev myBroker
attr KU_Kraeuter autoSubscribeReadings home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/+
attr KU_Kraeuter icon hue_room_garden
attr KU_Kraeuter room 2_Kueche,FlowerSens
attr KU_Kraeuter stateFormat {sprintf("Temperatur: %.1f Grad, Feuchte: %.1f %, Lux: %.1f ", ReadingsVal($name,"temperature",0), ReadingsVal($name,"moisture",0), ReadingsVal($name,"lux",0))}
attr KU_Kraeuter subscribeReading_fertility home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/fer
attr KU_Kraeuter subscribeReading_lux home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/lux
attr KU_Kraeuter subscribeReading_moisture home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/hum
attr KU_Kraeuter subscribeReading_name home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/name
attr KU_Kraeuter subscribeReading_temperature home/kueche/OpenMQTTGateway/BTtoMQTT/C47C8D65CD95/tem
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 01 August 2018, 12:52:44
Zitat von: mark79 am 27 Juli 2018, 12:08:18
Bei mir laufen zwei ESP32 seit 1-2 Monaten durchgängig 24 Std. ohne Probleme.
Auch weitere Module konnte ich zusätzlich zu dem BT hinzufügen, wie RF2 und HCSR501. Aber die habe ich wieder rausgeworfen, weil ich die noch nicht benötige.

Wie man den Fehler Fehler "Sketch too big" behebt, steht hier: https://github.com/1technophile/OpenMQTTGateway/wiki/Module-Overview-ESP32
und hier: https://github.com/nkolban/esp32-snippets/issues/441#issuecomment-375795379
Man muss zwei Dateien anpassen (default.csv) und (boards.txt) ich habe mir dafür das ESP32 Dev Module ausgesucht. Wichtig ist auch, das du das Board in der Arduino IDE auswählst, wenn du den Sketch kompilierst.

Das mit der Arduino IDE ist ein bisschen frickelig. Ich würde unbedingt eine frische Arduino installation verwenden!
Dazu diese BLE Lib: https://github.com/1technophile/OpenMQTTGateway/wiki/ESP32-BT-Module

Achja und probiere zuerst mal das release V0.7 aus: https://github.com/1technophile/OpenMQTTGateway/releases
Auf einen Rechner hatte ich Probleme, das aktuelle GIT zu kompilieren. Aber mit der V0.7 ging es.

EDIT: und du brauchst nur das ZgatewayBT in der user_config.h auskommentieren:
/*-------------DEFINE THE MODULES YOU WANT BELOW----------------*/
//Addons and module management, comment the Z line

//#define ZgatewayRF          //ESP8266, Arduino, ESP32
//#define ZgatewayIR          //ESP8266, Arduino,         Sonoff RF Bridge
#define ZgatewayBT          //ESP8266, Arduino, ESP32
...

Hi MArc,
alles gemacht, 0.7er Version installiert, too-big-sketch Anpassungen gemacht, BLE Library benutzt.
Bei mir werden einen Haufen Libraries nicht gefunden obwohl sie da sind, zb. Update.h, io.h, interrup.h, Probleme in der Ethernet.cpp
Kannst du mir mal ein funktionierendes "bin" file zukommen lassen?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 01 August 2018, 22:05:17
Zitat von: Tobias am 01 August 2018, 12:52:44
Hi MArc,
alles gemacht, 0.7er Version installiert, too-big-sketch Anpassungen gemacht, BLE Library benutzt.
Bei mir werden einen Haufen Libraries nicht gefunden obwohl sie da sind, zb. Update.h, io.h, interrup.h, Probleme in der Ethernet.cpp
Kannst du mir mal ein funktionierendes "bin" file zukommen lassen?

Hallo Tobias,

hast du die Arduino IDE mit ESP32 Support so installiert?
https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md

Vielleicht hast die falschen Pakete installiert?
Installieren geht mit: Sketch > Bibliothek einbinden >  Bibliothek verwalten und dort nach den fehlenden Paketen suchen und installieren.

Ein bin File bereit stellen ist schwierig, dafür brauch ich deine WLAN Zugangsdaten und die MQTT Broker IP. :D

Aber schau mal hier, so etwas scheint es schon zu geben: https://github.com/1technophile/OpenMQTTGateway/issues/244
Ich weiß nur nicht, wie man sich dann mit seinem WLAN AP verbindet und die Broker IP setzt. Am besten mal im GIT nachfragen.
Aber vielleicht hat die Version auch ein Webinterface, wo man das konfigurieren kann...

Wenn das auch nicht geht, melde dich noch mal. Ich kann dir meine Arduino IDE bereit stellen.


Viele Grüße
Mark
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 03 August 2018, 07:49:42
NAch langem TEsten, irgendwie hats meine Arduino VErsion nicht hinbekommen.
Mit der letzten 1.6.13 Arduino IDE und den oben verlinkten Anleitungen hat es funktioniert.
Auch mit der aktuellen ESP32 Umgebung, allerdings mit folgenden Änderungen (https://community.openmqttgateway.com/t/compile-error-on-esp32-on-version-0-7-and-0-8/40/5)

ZitatHere is the working process with the last version of arduino ESP32:
–> download the last version of ESP32 arduino and install it following the provided instructions on hte github readme
–> remove BLE library from libraries folder of ESP32 arduino folder
–> install nkolban library from here https://github.com/nkolban/ESP32_BLE_Arduino/archive/master.zip 23 into libraries folder of ESP32 arduino folder.
–> open OpenMQTTGateway.ino
–> choose board ESP32 dev module
–> change partition scheme to minimal SPIFFS
–> compile

Zumindest kompilierts, ob es funktioniert muss ich jetzt testen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 03 August 2018, 10:50:23
Schön das es jetzt geht. :)

Btw. wenn du es einmal seriell geflasht hast und die IP vom ESP32 bekannt ist, kannst du übrigens OTA update mit der Arduino IDE verwenden.
Das lässt sich unter Tools > Port einstellen.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 06 September 2018, 11:24:17
ah das ist ja ein nettes Feature :)
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: bartman121 am 06 September 2018, 14:38:36
Also ich bin jetzt auch gerade am Testen mit OpenMQTTGateway und einem ESP32. Scheint erstmal zu laufen, aber irgendwie fragt der die Sensoren nicht der Reihe nach ab, sondern zufällig.

Was habt ihr für für Zeiten in der config_BT.h eingetragen?
Zitat
#define TimeBtw_Read 50000 //define the time between 2 scans
#define Scan_duration 10 //define the time for a scan

Grüße

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: bartman121 am 06 September 2018, 17:40:21
Okay, ich habe jetzt schonmal ein Problem entdeckt, ich habe ein paar Sensoren (non-international, diese haben noch die alte Firmware (2.7.0.). Hier werden keine Werte ausgelesen, außer "name".


Sensoren mit Firmware 3.1.8 funktionieren jedoch wunderbar.

Ich vermute hier müsste man irgendwie das Parsen in der ZgatewayBT (process_miflora_data) anpassen.


/* 
  OpenMQTTGateway  - ESP8266 or Arduino program for home automation

   Act as a wifi or ethernet gateway between your 433mhz/infrared IR signal/BLE  and a MQTT broker
   Send and receiving command by MQTT

  This gateway enables to:
- publish MQTT data to a different topic related to BLE devices rssi signal

    Copyright: (c)Florian ROBERT
 
    This file is part of OpenMQTTGateway.
   
    OpenMQTTGateway is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    OpenMQTTGateway is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.

Thanks to wolass https://github.com/wolass for suggesting me HM 10 and dinosd https://github.com/dinosd/BLE_PROXIMITY for inspiring me how to implement the gateway
*/
#ifdef ZgatewayBT

  #ifdef ESP32
    /*
       Based on Neil Kolban example for IDF: https://github.com/nkolban/esp32-snippets/blob/master/cpp_utils/tests/BLE%20Tests/SampleScan.cpp
       Ported to Arduino ESP32 by Evandro Copercini
    */
    // core task implementation thanks to https://techtutorialsx.com/2017/05/09/esp32-running-code-on-a-specific-core/
   
    #include <BLEDevice.h>
    #include <BLEUtils.h>
    #include <BLEScan.h>
    #include <BLEAdvertisedDevice.h>

    //Time used to wait for an interval before resending BLE infos
    unsigned long timeBLE= 0;
   
    //core on which the BLE detection task will run
    static int taskCore = 0;
     
    class MyAdvertisedDeviceCallbacks: public BLEAdvertisedDeviceCallbacks {
          void onResult(BLEAdvertisedDevice advertisedDevice) {
            String mac_adress = advertisedDevice.getAddress().toString().c_str();
            mac_adress.replace(":","");
            mac_adress.toUpperCase();
            String mactopic = subjectBTtoMQTT + mac_adress;
            if (advertisedDevice.haveName()){
                trc(F("Get Name "));
                String nameBLE = advertisedDevice.getName().c_str();
                trc(nameBLE);
                client.publish((char *)(mactopic + "/name").c_str(),(char *)nameBLE.c_str());
            }
            if (advertisedDevice.haveManufacturerData()){
                trc(F("Get ManufacturerData "));
                String ManufacturerData = advertisedDevice.getManufacturerData().c_str();
                trc(ManufacturerData);
                client.publish((char *)(mactopic + "/ManufacturerData").c_str(),(char *)ManufacturerData.c_str());
            }
            if (advertisedDevice.haveRSSI()){
              trc(F("Get RSSI "));       
              String rssi = String(advertisedDevice.getRSSI());
              trc(mactopic + " " + rssi);
              client.publish((char *)mactopic.c_str(),(char *)rssi.c_str());
            }
            if (advertisedDevice.haveTXPower()){
              trc(F("Get TXPower "));       
              int8_t TXPower = advertisedDevice.getTXPower();
              trc(String(TXPower));
              char cTXPower[5];
              sprintf(cTXPower, "%d", TXPower);
              client.publish((char *)(mactopic + "/tx").c_str(),cTXPower);
            }
            if (advertisedDevice.haveServiceData()){
                trc(F("Get service data "));
                std::string serviceData = advertisedDevice.getServiceData();
                int serviceDataLength = serviceData.length();
                String returnedString = "";
                for (int i=0; i<serviceDataLength; i++)
                {
                  int a = serviceData[i];
                  if (a < 16) {
                    returnedString = returnedString + "0";
                  }
                  returnedString = returnedString + String(a,HEX); 
                }
                trc(returnedString);
                               
                trc(F("Get service data UUID"));
                BLEUUID serviceDataUUID = advertisedDevice.getServiceDataUUID();
                trc(serviceDataUUID.toString().c_str());

                if (strstr(serviceDataUUID.toString().c_str(),"fe95") != NULL){
                  trc("Processing mi flora data");
                  char service_data[returnedString.length()+1];
                  returnedString.toCharArray(service_data,returnedString.length()+1);
                  service_data[returnedString.length()] = '\0';
                  char mac[mac_adress.length()+1];
                  mac_adress.toCharArray(mac,mac_adress.length()+1);
                  boolean result = process_miflora_data(-22,service_data,mac);
                }
            }
          }
      };

    void setupBT(){
        #ifdef multiCore
        // we setup a task with priority one to avoid conflict with other gateways
        xTaskCreatePinnedToCore(
                          coreTask,   /* Function to implement the task */
                          "coreTask", /* Name of the task */
                          10000,      /* Stack size in words */
                          NULL,       /* Task input parameter */
                          1,          /* Priority of the task */
                          NULL,       /* Task handle. */
                          taskCore);  /* Core where the task should run */
          trc(F("ZgatewayBT multicore ESP32 setup done "));
        #else
          trc(F("ZgatewayBT singlecore ESP32 setup done "));
        #endif
    }
   
    #ifdef multiCore
    void coreTask( void * pvParameters ){
     
        String taskMessage = "BT Task running on core ";
        taskMessage = taskMessage + xPortGetCoreID();
     
        while(true){
            trc(taskMessage);
            delay(TimeBtw_Read);
            BLEDevice::init("");
            BLEScan* pBLEScan = BLEDevice::getScan(); //create new scan
            MyAdvertisedDeviceCallbacks myCallbacks;
            pBLEScan->setAdvertisedDeviceCallbacks(&myCallbacks);
            pBLEScan->setActiveScan(true); //active scan uses more power, but get results faster
            BLEScanResults foundDevices = pBLEScan->start(Scan_duration);
        }
    }
    #else
    boolean BTtoMQTT(){
      unsigned long now = millis();
      if (now > (timeBLE + TimeBtw_Read)) {//retriving value of temperature and humidity of the box from DHT every xUL
              timeBLE = now;
              BLEDevice::init("");
              BLEScan* pBLEScan = BLEDevice::getScan(); //create new scan
              MyAdvertisedDeviceCallbacks myCallbacks;
              pBLEScan->setAdvertisedDeviceCallbacks(&myCallbacks);
              pBLEScan->setActiveScan(true); //active scan uses more power, but get results faster
              BLEScanResults foundDevices = pBLEScan->start(Scan_duration);
              return true;
      }
      return false;
    }
    #endif
     
  #else // arduino or ESP8266 working with HM10/11

#include <SoftwareSerial.h>

#define STRING_MSG "OK+DISC:"
#define RESPONSE_MSG "OK+DISIS"
#define RESP_END_MSG "OK+DISCE"
#define SETUP_MSG "OK+RESET"

SoftwareSerial softserial(BT_RX, BT_TX);

String returnedString = "";
unsigned long timebt = 0;

// this struct define which parts of the hexadecimal chain we extract and what to do with these parts
struct decompose d[6] = {{"mac",16,12,true},{"typ",28,2,false},{"rsi",30,2,false},{"rdl",32,2,false},{"sty",44,4,true},{"rda",34,60,false}};

void setupBT() {
  softserial.begin(9600);
  softserial.print(F("AT+ROLE1"));
  delay(100);
  softserial.print(F("AT+IMME1"));
  delay(100);
  softserial.print(F("AT+RESET"));
  delay(100);
  trc(F("ZgatewayBT HM1X setup done "));
}

#ifdef ZgatewayBT_v6xx
#define QUESTION_MSG "AT+DISA?"
boolean BTtoMQTT() {

  //extract serial data from module in hexa format
  while (softserial.available() > 0) {
      int a = softserial.read();
      if (a < 16) {
        returnedString = returnedString + "0";
      }
        returnedString = returnedString + String(a,HEX); 
  }

  if (millis() > (timebt + TimeBtw_Read)) {//retriving data
      timebt = millis();
      #if defined(ESP8266)
        yield();
      #endif
      if (returnedString != "") {
        size_t pos = 0;
        while ((pos = returnedString.lastIndexOf(delimiter)) != -1) {
          #if defined(ESP8266)
            yield();
          #endif
          String token = returnedString.substring(pos);
          trc(token);
          returnedString.remove(pos,returnedString.length() );
          char token_char[token.length()+1];
          token.toCharArray(token_char, token.length()+1);
          trc(token);
          if ( token.length() > 60){// we extract data only if we have detailled infos
            for(int i =0; i<6;i++)
            {
              extract_char(token_char,d[i].extract,d[i].start, d[i].len ,d[i].reverse, false);
              if (i == 3) d[5].len = (int)strtol(d[i].extract, NULL, 16) * 2; // extracting the length of the rest data
            }
 
            if((strlen(d[0].extract)) == 12) // if a mac adress is detected we publish it
            {
                strupp(d[0].extract);
                String mactopic(d[0].extract);
                trc(mactopic);
                mactopic = subjectBTtoMQTT + mactopic;
                int rssi = (int)strtol(d[2].extract, NULL, 16) - 256;
                char val[12];
                sprintf(val, "%d", rssi);
                client.publish((char *)mactopic.c_str(),val);
                if (strcmp(d[4].extract, "fe95") == 0)
                boolean result = process_miflora_data(0,d[5].extract,d[0].extract);
               
                return true;
            }
          }
        }
        returnedString = ""; //init data string
        return false;
      }
      softserial.print(F(QUESTION_MSG));
      return false;
  }else{   
    return false;
  }
}

void strupp(char* beg)
{
    while (*beg = toupper(*beg))
       ++beg;
}

#endif

#ifndef ZgatewayBT_v6xx
#define QUESTION_MSG "AT+DISI?"
boolean BTtoMQTT() {
  while (softserial.available() > 0) {
     #if defined(ESP8266)
      yield();
     #endif
    String discResult = softserial.readString();
    if (discResult.indexOf(STRING_MSG)>=0){
      discResult.replace(RESPONSE_MSG,"");
      discResult.replace(RESP_END_MSG,"");
      float device_number = discResult.length()/78.0;
      if (device_number == (int)device_number){ // to avoid publishing partial values we detect if the serial data has been fully read = a multiple of 78
        trc(F("Sending BT data to MQTT"));
        #if defined(ESP8266)
          yield();
        #endif
        for (int i=0;i<(int)device_number;i++){
             String onedevice = discResult.substring(0,78);
             onedevice.replace(STRING_MSG,"");
             String mac = onedevice.substring(53,65);
             String rssi = onedevice.substring(66,70);
             String mactopic = subjectBTtoMQTT + mac;
             trc(mactopic + " " + rssi);
             client.publish((char *)mactopic.c_str(),(char *)rssi.c_str());
             discResult = discResult.substring(78);
          }
          return true;
        }
      }
    if (discResult.indexOf(SETUP_MSG)>=0)
    {
      trc(F("Connection OK to HM-10"));
    }
  }
  if (millis() > (timebt + TimeBtw_Read)) {//retriving value of adresses and rssi
       timebt = millis();
       #if defined(ESP8266)
        yield();
       #endif
       softserial.print(F(QUESTION_MSG));
       
  }
  return false;
}
#endif
#endif

boolean process_miflora_data(int offset, char * rest_data, char * mac_adress){
 
  int data_length = 0;
  switch (rest_data[51 + offset]) {
    case '1' :
    case '2' :
    case '3' :
    case '4' :
        data_length = ((rest_data[51 + offset] - '0') * 2)+1;
        trc(String(data_length));
    break;
    default:
        trc("can't read data_length");
    return false;
    }
   
  char rev_data[data_length];
  char data[data_length];
  memcpy( rev_data, &rest_data[52 + offset], data_length );
  rev_data[data_length] = '\0';
 
  // reverse data order
  revert_hex_data(rev_data, data, data_length);
  double value = strtol(data, NULL, 16);
  trc(String(value));
  char val[12];
  String mactopic(mac_adress);
  mactopic = subjectBTtoMQTT + mactopic;

  // following the value of digit 47 we determine the type of data we get from the sensor
  switch (rest_data[47 + offset]) {
    case '9' :
          mactopic = mactopic + "/" + "fer";
          dtostrf(value,0,0,val);
    break;
    case '4' :
          mactopic = mactopic + "/" + "tem";
          if (value > 65000) value = value - 65535;
          dtostrf(value/10,3,1,val); // temp has to be divided by 10
    break;
    case '7' :
          mactopic = mactopic + "/" + "lux";
          dtostrf(value,0,0,val);
     break;
    case '8' :
          mactopic = mactopic + "/" + "hum";
          dtostrf(value,0,0,val);
     break;
    default:
    trc("can't read values");
    return false;
    }
    client.publish((char *)mactopic.c_str(),val);;
    trc(String(val));
    return true;
  }

#endif


ich denke, dass CoolTux (Entwickler des XiaomiBLESens-Moduls könnte hier sicher hilfreiche Tipps geben? *lieb.schau*
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mark79 am 07 September 2018, 11:18:47
Zitat von: bartman121 am 06 September 2018, 17:40:21
Okay, ich habe jetzt schonmal ein Problem entdeckt, ich habe ein paar Sensoren (non-international, diese haben noch die alte Firmware (2.7.0.). Hier werden keine Werte ausgelesen, außer "name".


Sensoren mit Firmware 3.1.8 funktionieren jedoch wunderbar.

Ich vermute hier müsste man irgendwie das Parsen in der ZgatewayBT (process_miflora_data) anpassen.

ich denke, dass CoolTux (Entwickler des XiaomiBLESens-Moduls könnte hier sicher hilfreiche Tipps geben? *lieb.schau*

Update doch einfach die Firmware, ist einfacher. :)
Wenn das chinesische, also keine Internationale Xiaomi Pflanzensensoren sind, soll das wohl mit einem VPN und chinesischer IP gehen.

EDIT: https://forum.fhem.de/index.php/topic,60914.msg642541.html#msg642541
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: andi11 am 07 September 2018, 11:20:24
bei der Android App kannste das Land auswählen. Trotz chinesischer Schriftzeichen kriegt man das hin.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: bartman121 am 07 September 2018, 13:46:36
Zitat von: mark79 am 07 September 2018, 11:18:47
Update doch einfach die Firmware, ist einfacher. :)
Wenn das chinesische, also keine Internationale Xiaomi Pflanzensensoren sind, soll das wohl mit einem VPN und chinesischer IP gehen.

EDIT: https://forum.fhem.de/index.php/topic,60914.msg642541.html#msg642541

Hallo,

vielen Dank genau danach habe ich gesucht. Leider bietet FlyVPN derzeit keine kostenfreien VPN-Server in Festland-China an. Hong-Kong ist leider nicht Festland-China. '(

Edit:
Mit dem Probeabo von hidemyAss könnte ich die Sensoren updaten.

Grüße

Andreas
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 03 Mai 2019, 21:30:14
Hallo zusammen,

da mein ZeroW sich alle paar Tage aufhängt, bin ich gerade mit einem MQTT-Gateway auf einem ESP32 am testen. Ich bekomme auch Daten im Serien Monitor angezeigt, angeblich ist der auch mit dem Broker connected, aber wie bekomm ich denn die Daten im FHEM rein ? Ich habe noch andere MQTT-Devices, da gibt's mit Verbose 5 beim Broker auch jede Menge Einträge im Log, aber nichts vom ESP32... So sieht z.B. die Ausgabe im Seriellen Monitor aus:


Activated modules
ONOFFBT
BT Task running on core 0
Creating BLE buffer
BLErssi
-60
txPower
-59
BLE DISTANCE :
1.14
Pub json into:
home/home_presence/OpenMQTTGateway
{"id":"c4:7c:8d:66:c7:5c","name":"Flower care","rssi":-60,"distance":1.135236}
Get service data
Pub json into:
home/OpenMQTTGateway/BTtoMQTT/C47C8D66C75C
{"id":"c4:7c:8d:66:c7:5c","name":"Flower care","rssi":-60,"distance":1.135236,"servicedata":"71209800d85cc7668d7cc40d041002cd00","servicedatauuid":"0000fe95-0000-1000-8000-00805f9b34fb"}
Processing BLE device data
mi flora data reading
Creating BLE buffer
rest_data
71209800d85cc7668d7cc40d041002cd00
data_length
5
205.00
rest_data
71209800d85cc7668d7cc40d041002cd00
Pub json into:
home/OpenMQTTGateway/BTtoMQTT/C47C8D66C75C
{"tem":20.5}
BT Task running on core 0


Könnt Ihr mir ein wenig nachhelfen ?

Grüße

Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 03 Mai 2019, 21:57:02
Update: Ich habe es nun hinbekommen, dass im Log das hier erscheint:

2019.05.03 21:50:14 5: MQTT myBroker message received: Publish/at-most-once home/OpenMQTTGateway/BTtoMQTT/C47C8D66C75C
  7b 22 69 64 22 3a 22 63 34 3a 37 63 3a 38 64 3a  {"id":"c4:7c:8d:
  36 36 3a 63 37 3a 35 63 22 2c 22 6e 61 6d 65 22  66:c7:5c","name"
  3a 22 46 6c 6f 77 65 72 20 63 61 72 65 22 2c 22  :"Flower care","
  72 73 73 69 22 3a 2d 34 36 2c 22 64 69 73 74 61  rssi":-46,"dista
  6e 63 65 22 3a 30 2e 30 38 32 39 39 36 2c 22 73  nce":0.082996,"s
  65 72 76 69 63 65 64 61 74 61 22 3a 22 37 31 32  ervicedata":"712
  30 39 38 30 30 39 31 35 63 63 37 36 36 38 64 37  09800915cc7668d7
  63 63 34 30 64 30 37 31 30 30 33 34 61 30 30 30  cc40d0710034a000
  30 22 2c 22 73 65 72 76 69 63 65 64 61 74 61 75  0","servicedatau
  75 69 64 22 3a 22 30 30 30 30 66 65 39 35 2d 30  uid":"0000fe95-0
  30 30 30 2d 31 30 30 30 2d 38 30 30 30 2d 30 30  000-1000-8000-00
  38 30 35 66 39 62 33 34 66 62 22 7d              805f9b34fb"}
2019.05.03 21:50:14 1: PERL WARNING: Argument "{"id":"c4:7c:8d:66:c7:5c","name":"Flower care","rssi":-4..." isn't numeric in numeric gt (>) at (eval 632985) line 1.


Wie kann ich das nun weiter verarbeiten ?

EDIT: Hab es mit Expand-JSON hinbekommen.... Nun fehlt mir nur noch der Batterie-Status... Hat jemand eine Idee,wie man daran kommt ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 24 Juli 2019, 16:33:24
Hallo,

ich hab mir das jetzt auch mal auf einem ESP32 installiert. Aber ich habe Probleme mit dem MQTT Broker:
Invalid protocol "MQTT" in CONNECT ...
Kennt das Jemand? Ich weiß, dass ich bei einem anderen Projekt da irgendwie die MQTT Version auf dem ESP umbenennen musste. Trifft das hier auch zu?

Version:
Beschreibung: MQTT version 3.1 compatible message broker
This is a message broker that supports version 3.1 of the MQ Telemetry Transport protocol.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 24 Juli 2019, 19:55:14
OK ich habs, ein

#define MQTT_VERSION 3

in der PubSubClient.h hat geholfen.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 24 Juli 2019, 20:17:22
Ist das normal, dass man immer nur ein Wert bekommt, also Temp, Hum, Fertilität und Helligkeit?!?


home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/id c4:7c:8d:6a:5f:c1
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/rssi -74
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/distance 5.3
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/servicedata 71209800dec15f6a8d7cc40d0410021b01
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
home/OpenMQTTGateway/BTtoMQTT/C47C8D6A5FC1/tem 28.3

home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/id c4:7c:8d:6a:b5:c7
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/rssi -82
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/distance 11.5
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/servicedata 7120980068c7b56a8d7cc40d0810010f
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
home/OpenMQTTGateway/BTtoMQTT/C47C8D6AB5C7/moi 15.0

home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id c4:7c:8d:66:63:db
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi -76
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance 6.4
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata 7120980050db63668d7cc40d0410021301
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem 27.5

home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/id c4:7c:8d:66:64:2c
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/name Flower care
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/rssi -85
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/distance 15.1
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/servicedata 71209800072c64668d7cc40d0410021501
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
home/OpenMQTTGateway/BTtoMQTT/C47C8D66642C/tem 27.7
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 19 August 2019, 18:51:07
Hallo!

Ich habe mich auch mal an dem ES32 versucht mit openmqttgateway und bekomme diese Meldungen im Mqtt:

home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25 {"moi":0}

habe dann ein MQTT_DEVICE in Fhem angelegt:

home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/+

aber ich bekomme keine Readings, könnte vielleicht hier mir jemand helfen?

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 19 August 2019, 21:14:49
Bei mir sieht es so aus wobei die readings teilweise automatisch erstellt wurden.

Internals:
   FUUID      5d38add0-f33f-2323-49e2-4abaf93a5ec59c99
   IODev      MQTT_Broker
   NAME       MQTT_FlowerCare01
   NR         2479
   STATE      ???
   TYPE       MQTT_DEVICE
   Helper:
     DBLOG:
       fer:
         logdb:
           TIME       1566241468.90534
           VALUE      258.0
       lux:
         logdb:
           TIME       1566240848.68823
           VALUE      244.0
       moi:
         logdb:
           TIME       1566241778.76539
           VALUE      31.0
       tem:
         logdb:
           TIME       1566241160.74381
           VALUE      24.9
   READINGS:
     2019-08-19 21:09:38   distance        8.7
     2019-08-19 21:04:28   fer             258.0
     2019-08-19 21:09:38   id              c4:7c:8d:66:63:db
     2019-08-19 20:54:08   lux             244.0
     2019-08-19 21:09:38   moi             31.0
     2019-08-11 17:12:56   name            Flower care
     2019-08-19 21:09:38   rssi            -79
     2019-08-19 21:09:38   servicedata     71209800e2db63668d7cc40d0810011f
     2019-08-19 21:09:38   servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
     2019-08-19 20:59:20   tem             24.9
     2019-08-19 21:09:38   transmission-state incoming publish received
   message_ids:
   sets:
   subscribe:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem
   subscribeExpr:
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/([^/]+)$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/distance$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/fer$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/id$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/lux$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/moi$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/name$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/rssi$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/servicedata$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/servicedatauuid$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/tem$
   subscribeQos:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem 0
   subscribeReadings:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance:
       cmd       
       name       distance
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer:
       cmd       
       name       fer
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id:
       cmd       
       name       id
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux:
       cmd       
       name       lux
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi:
       cmd       
       name       moi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name:
       cmd       
       name       name
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi:
       cmd       
       name       rssi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata:
       cmd       
       name       servicedata
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid:
       cmd       
       name       servicedatauuid
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem:
       cmd       
       name       tem
Attributes:
   DbLogInclude fer,lux,moi,tem
   IODev      MQTT_Broker
   autoSubscribeReadings home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
   room       XiaomiBTLESens
   subscribeReading_distance home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance
   subscribeReading_fer home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer
   subscribeReading_id home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id
   subscribeReading_lux home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux
   subscribeReading_moi home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi
   subscribeReading_name home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name
   subscribeReading_rssi home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi
   subscribeReading_servicedata home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata
   subscribeReading_servicedatauuid home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid
   subscribeReading_tem home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 19 August 2019, 21:24:31
Zitat von: ext23 am 19 August 2019, 21:14:49
Bei mir sieht es so aus wobei die readings teilweise automatisch erstellt wurden.

Internals:
   FUUID      5d38add0-f33f-2323-49e2-4abaf93a5ec59c99
   IODev      MQTT_Broker
   NAME       MQTT_FlowerCare01
   NR         2479
   STATE      ???
   TYPE       MQTT_DEVICE
   Helper:
     DBLOG:
       fer:
         logdb:
           TIME       1566241468.90534
           VALUE      258.0
       lux:
         logdb:
           TIME       1566240848.68823
           VALUE      244.0
       moi:
         logdb:
           TIME       1566241778.76539
           VALUE      31.0
       tem:
         logdb:
           TIME       1566241160.74381
           VALUE      24.9
   READINGS:
     2019-08-19 21:09:38   distance        8.7
     2019-08-19 21:04:28   fer             258.0
     2019-08-19 21:09:38   id              c4:7c:8d:66:63:db
     2019-08-19 20:54:08   lux             244.0
     2019-08-19 21:09:38   moi             31.0
     2019-08-11 17:12:56   name            Flower care
     2019-08-19 21:09:38   rssi            -79
     2019-08-19 21:09:38   servicedata     71209800e2db63668d7cc40d0810011f
     2019-08-19 21:09:38   servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
     2019-08-19 20:59:20   tem             24.9
     2019-08-19 21:09:38   transmission-state incoming publish received
   message_ids:
   sets:
   subscribe:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem
   subscribeExpr:
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/([^/]+)$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/distance$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/fer$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/id$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/lux$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/moi$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/name$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/rssi$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/servicedata$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/servicedatauuid$
     ^home\/OpenMQTTGateway\/BTtoMQTT\/C47C8D6663DB\/tem$
   subscribeQos:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid 0
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem 0
   subscribeReadings:
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance:
       cmd       
       name       distance
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer:
       cmd       
       name       fer
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id:
       cmd       
       name       id
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux:
       cmd       
       name       lux
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi:
       cmd       
       name       moi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name:
       cmd       
       name       name
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi:
       cmd       
       name       rssi
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata:
       cmd       
       name       servicedata
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid:
       cmd       
       name       servicedatauuid
     home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem:
       cmd       
       name       tem
Attributes:
   DbLogInclude fer,lux,moi,tem
   IODev      MQTT_Broker
   autoSubscribeReadings home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+
   room       XiaomiBTLESens
   subscribeReading_distance home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/distance
   subscribeReading_fer home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/fer
   subscribeReading_id home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/id
   subscribeReading_lux home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/lux
   subscribeReading_moi home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/moi
   subscribeReading_name home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/name
   subscribeReading_rssi home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/rssi
   subscribeReading_servicedata home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedata
   subscribeReading_servicedatauuid home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/servicedatauuid
   subscribeReading_tem home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/tem


Hallo,

Ich versuche nun schon seit Stunden aber komme nicht weiter,
könntest du mir kurz beschreiben wie du vorgegangen bist???

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 19 August 2019, 21:59:19
Wichtig ist eigentlich nur das:

autoSubscribeReadings home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+

Danach wird alles automatisch angelegt. In dem OpenMQTT habe ich es aber so configuriert das der nicht json nutzt sondern alles in eigene topics packt.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 19 August 2019, 22:10:45
Zitat von: ext23 am 19 August 2019, 21:59:19
Wichtig ist eigentlich nur das:

autoSubscribeReadings home/OpenMQTTGateway/BTtoMQTT/C47C8D6663DB/+

Danach wird alles automatisch angelegt. In dem OpenMQTT habe ich es aber so configuriert das der nicht json nutzt sondern alles in eigene topics packt.

/Daniel

Ich habe zum ersten Test die fertige BLE-bin genommen und geflasht.

Dann hatte ich auch die Zeile gefunden, das er die Topics nicht in json sondern "simple" darstellen soll.

Doch ich bekomme es nicht auf mein esp32nodemcu geflasht, denn ich kenne mich überhaupt nicht pPatformio aus.

Könntest du mir bitte beschreiben welche Einstellungen ich da vor nehmen muss um es auf den esp32 zu bekommen?!?

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 19 August 2019, 22:27:12
Ich hab's mit der Arduino IDE gemacht. Alles wie beschrieben auf der Seite im Wiki. Wichtig ist minimal SPIFFS zu benutzen sonst passt es nicht rein.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 20 August 2019, 09:28:39
Hallo!

So habe es jetzt hin bekommen und der Esp32 startet und empfängt Nachrichten vom Flower Care, nur sind die sehr selten habe ich das Gefühl...

In welchen Abstand kommen bei euch die Meldungen vom Flower Care?

Könnte auch jemand mal seine Userconfig.h hier zum vergleich einstellen?

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 20 August 2019, 13:11:53
Was hast du denn eingestellt? Er sendet das so häufig wie du das einstellst. Aber pro Abfrage bekommt er immer nur 1 Wert, der Reihe nach. Also du brauchst immer 4 Abfragen um alle Werte zu haben.

"
Define the time you want between Bluetooth beacons/Mi flora scans in ms: #define TimeBtw_Read 55555 //define the time between 2 scans
"

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 20 August 2019, 13:25:14
Zitat von: ext23 am 20 August 2019, 13:11:53
#define TimeBtw_Read 55555 //define the time between 2 scans
/Daniel

das habe ich eingestellt, habe eben zum Test nochmal die "ESP32_OpenMQTTGateway_V092_BLE" direkt geflasht und siehe da schon kommen die Meldungen wieder regelmäßig.

Ich denke das ich Fehler in der Config habe desegen hier mal meine:

#ifndef user_config_h
#define user_config_h
/*-------------------VERSION----------------------*/
#define OMG_VERSION "0.9.2"

/*-------------CONFIGURE WIFIMANAGER-------------(only ESP8266 & SONOFF RFBridge)*/
/*
* The following parameters are set during the WifiManager setup process:
* - wifi_ssid
* - wifi_password
* - mqtt_user
* - mqtt_pass
* - mqtt_server
* - mqtt_port
*
* To completely disable WifiManager, define ESPWifiManualSetup.
* If you do so, please don't forget to set these variables before compiling
*
* Otherwise you can provide these credentials on the web interface after connecting
* to the access point with your password (SSID: WifiManager_ssid, password: WifiManager_password)
*/

/*-------------DEFINE YOUR  NETWORK PARAMETERS BELOW----------------*/
#if defined(ESP8266)||defined(ESP32)  // for nodemcu, weemos and esp8266
  #define ESPWifiManualSetup true //uncomment you don't want to use wifimanager for your credential settings on ESP
#endif

#if defined(ESPWifiManualSetup) // for nodemcu, weemos and esp8266
  #define wifi_ssid "XXX"
  #define wifi_password "XXX"
#else // for arduino + W5100
  const byte mac[] = {  0xDE, 0xED, 0xBA, 0xFE, 0x54, 0x95 }; //W5100 ethernet shield mac adress
#endif

//#define WifiManager_password "your_password" //this is going to be the WPA2-PSK password for the initial setup access point
//#define WifiManager_ssid "OpenMQTTGateway" //this is the network name of the initial setup access point
//#define WifiManager_ConfigPortalTimeOut 120
//#define WifiManager_TimeOut 5

/*-------------DEFINE YOUR MQTT PARAMETERS BELOW----------------*/
//MQTT Parameters definition
//#define mqtt_server_name "www.mqtt_broker.com" // instead of defining the server by its IP you can define it by its name, uncomment this line and set the correct MQTT server host name
char mqtt_user[20] = ""; // not compulsory only if your broker needs authentication
char mqtt_pass[30] = ""; // not compulsory only if your broker needs authentication
char mqtt_server[40] = "192.168.178.102";
char mqtt_port[6] = "1883";

#ifndef Gateway_Name
  #define Gateway_Name "OpenMQTTGateway"
#endif
//uncomment the line below to integrate msg value into the subject when receiving
//#define valueAsASubject true

/*-------------DEFINE THE MODULES YOU WANT BELOW----------------*/
//Addons and module management, comment the Z line

//#define ZgatewayRF     "RF"       //ESP8266, Arduino, ESP32
//#define ZgatewayIR     "IR"       //ESP8266, Arduino,         Sonoff RF Bridge
//#define ZgatewayLORA   "LORA"       //ESP8266, Arduino, ESP32
//#define ZgatewayPilight "Pilight" //ESP8266, Arduino, ESP32
#define ZgatewayBT     "BT"       //ESP8266, ESP32
//#define ZgatewayRF2    "RF2"      //ESP8266, Arduino, ESP32
//#define ZgatewaySRFB   "SRFB"     //                          Sonoff RF Bridge
//#define Zgateway2G     "2G"       //ESP8266, Arduino, ESP32
//#define ZgatewayRFM69  "RFM69"    //ESP8266, Arduino, ESP32
//#define ZactuatorONOFF "ONOFF"    //ESP8266, Arduino, ESP32,  Sonoff RF Bridge
//#define ZsensorINA226  "INA226"   //ESP8266, Arduino, ESP32
//#define ZsensorHCSR501 "HCSR501"  //ESP8266, Arduino, ESP32,  Sonoff RF Bridge
//#define ZsensorADC     "ADC"      //ESP8266, Arduino, ESP32
//#define ZsensorBH1750  "BH1750"   //ESP8266, Arduino, ESP32
//#define ZsensorTSL2561 "TSL2561"  //ESP8266, Arduino, ESP32
//#define ZsensorBME280  "BME280"   //ESP8266, Arduino, ESP32
//#define ZsensorDHT     "DHT"      //ESP8266, Arduino, ESP32,  Sonoff RF Bridge
//#define ZsensorGPIOKeyCode "GPIOKeyCode" //ESP8266, Arduino, ESP32
//#define ZsensorGPIOInput "GPIOInput" //ESP8266, Arduino, ESP32
//#define ZmqttDiscovery "HADiscovery"//ESP8266, Arduino, ESP32, Sonoff RF Bridge
//#define ZactuatorFASTLED "FASTLED"  //ESP8266, Arduino, ESP32, Sonoff RF Bridge

/*-------------DEFINE YOUR ADVANCED NETWORK PARAMETERS BELOW----------------*/
//#define MDNS_SD //uncomment if you  want to use mdns for discovering automatically your ip server, please note that MDNS with ESP32 can cause the BLE to not work
#define maxMQTTretry 4 //maximum MQTT connection attempts before going to wifi setup

//set minimum quality of signal so it ignores AP's under that quality
#define MinimumWifiSignalQuality 8

// these values are only used if no dhcp configuration is available
const byte ip[] = { 192, 168, 178, 35 }; //ip adress
const byte gateway[] = { 192, 168, 178, 1 }; //ip adress, if first value is different from 0 advanced config network will be used and you should fill gateway & dns
const byte Dns[] = { 192, 168, 178, 1 }; //ip adress, if first value is different from 0 advanced config network will be used and you should fill gateway & dns
const byte subnet[] = { 255, 255, 255, 0 }; //ip adress

/*-------------DEFINE YOUR MQTT ADVANCED PARAMETERS BELOW----------------*/
#define Base_Topic "home/"
#define version_Topic  Base_Topic Gateway_Name "/version"
#define will_Topic  Base_Topic Gateway_Name "/LWT"
#define will_QoS 0
#define will_Retain true
#define will_Message "offline"
#define Gateway_AnnouncementMsg "online"

//#define jsonPublishing true //comment if you don't want to use Json  publishing  (one topic for all the parameters)
//example home/OpenMQTTGateway_ESP32_DEVKIT/BTtoMQTT/4XXXXXXXXXX4 {"rssi":-63,"servicedata":"fe0000000000000000000000000000000000000000"}
//#define jsonReceiving true //comment if you don't want to use Json  reception analysis

#define simplePublishing true //comment if you don't want to use simple publishing (one topic for one parameter)
//example
// home/OpenMQTTGateway_ESP32_DEVKIT/BTtoMQTT/4XXXXXXXXXX4/rssi -63.0
// home/OpenMQTTGateway_ESP32_DEVKIT/BTtoMQTT/4XXXXXXXXXX4/servicedata fe0000000000000000000000000000000000000000
#define simpleReceiving true //comment if you don't want to use old way reception analysis

/*-------------DEFINE YOUR OTA PARAMETERS BELOW----------------*/
#define ota_hostname Gateway_Name
#define ota_password "OTAPASSWORD"
#define ota_port 8266

/*-------------DEFINE PINs FOR STATUS LEDs----------------*/
#ifdef ESP8266
  #define led_receive 40
  #define led_send 42
  #define led_info 44
#elif ESP32
  #define led_receive 40
  #define led_send 42
  #define led_info 44
#elif __AVR_ATmega2560__ //arduino mega
  #define led_receive 40
  #define led_send 42
  #define led_info 44
#else //arduino uno/nano
  #define led_receive 40
  #define led_send 42
  #define led_info 44
#endif

//      VCC   ------------D|-----------/\/\/\/\ -----------------  Arduino PIN
//                        LED       Resistor 270-510R

/*----------------------------OTHER PARAMETERS-----------------------------*/
/*-------------------CHANGING THEM IS NOT COMPULSORY-----------------------*/
/*----------------------------USER PARAMETERS-----------------------------*/
#ifdef ZgatewaySRFB
  #define SERIAL_BAUD 19200
#else
  #define SERIAL_BAUD 115200
#endif
/*--------------MQTT general topics-----------------*/
// global MQTT subject listened by the gateway to execute commands (send RF, IR or others)
#define subjectMQTTtoX  Base_Topic Gateway_Name "/commands/#"
#define subjectMultiGTWKey "toMQTT"
#define subjectGTWSendKey "MQTTto"

//variables to avoid duplicates
#define time_avoid_duplicate 3000 // if you want to avoid duplicate mqtt message received set this to > 0, the value is the time in milliseconds during which we don't publish duplicates

#if defined(ESP8266) || defined(ESP32) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1280__)
  #define JSON_MSG_BUFFER 512 // Json message max buffer size, don't put 1024 or higher it is causing unexpected behaviour on ESP8266
#else // boards with smaller memory
  #define JSON_MSG_BUFFER 64 // Json message max buffer size, don't put 1024 or higher it is causing unexpected behaviour on ESP8266
#endif

#define TimeBetweenReadingSYS 120000 // time between system readings (like memory)
#define subjectSYStoMQTT  Base_Topic Gateway_Name "/SYStoMQTT"

//#define subjectTRACEtoMQTT Base_Topic Gateway_Name "/log" //uncomment if you want to see traces on /log topic

/*-------------------ACTIVATE TRACES----------------------*/
#define TRACE 1  // commented =  trace off, uncommented = trace on

#endif


Vielleicht kann einer von euch was erkennen???

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 20 August 2019, 19:16:41
Hallo,

ich hoffe ich nerve nicht aber ich versuche mich jetzt schon sehr lange an diesem Problem aber komme einfach nicht weiter und habe auch kein Plan mehr was ich noch versuche könnte aber es bleibt dabei das die Readings sehr bescheiden ausfallen und manchmal sogar gar nichts mehr.

Vielleicht kann irgendwer mal seine lauffähige config von PlatformIo oder Arduino senden damit ich vergleichen könnte wo der Wurm bei mir vergraben ist?!

Hier nochmal meine Config von fhem:

Internals:
   CFGFN     
   FUUID      5d5ad257-f33f-b82c-83d5-f67fa216c070f2e5
   IODev      mqtt
   NAME       Balkon_PflanzenNew
   NR         352
   STATE      Temperatur: 23.3 Grad, Feuchte: 49.0 %, Lux: 8890.0
   TYPE       MQTT_DEVICE
   OLDREADINGS:
   READINGS:
     2019-08-20 19:07:35   distance        45.1
     2019-08-20 16:58:23   fer             0.0
     2019-08-20 19:07:35   id              c4:7c:8d:66:ec:25
     2019-08-20 17:12:41   lux             8890.0
     2019-08-20 19:07:35   moi             49.0
     2019-08-20 17:15:55   name            Flower care
     2019-08-20 19:07:35   rssi            -98
     2019-08-20 19:07:35   servicedata     712098004725ec668d7cc40d08100131
     2019-08-20 19:07:35   servicedatauuid 0000fe95-0000-1000-8000-00805f9b34fb
     2019-08-20 17:15:55   tem             23.3
     2019-08-20 19:07:35   transmission-state incoming publish received
   message_ids:
   sets:
   subscribe:
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/+
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/lux
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/id
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/name
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/rssi
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/distance
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedata
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedatauuid
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/fer
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/moi
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/tem
   subscribeExpr:
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/([^/]+)$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/lux$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/id$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/name$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/rssi$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/distance$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/servicedata$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/servicedatauuid$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/fer$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/moi$
     ^home\/OpenMQTTGateway_ESP32_BLE\/BTtoMQTT\/C47C8D66EC25\/tem$
   subscribeQos:
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/+
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/distance 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/fer 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/id 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/lux 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/moi 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/name 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/rssi 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedata 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedatauuid 0
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/tem 0
   subscribeReadings:
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/distance:
       cmd       
       name       distance
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/fer:
       cmd       
       name       fer
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/id:
       cmd       
       name       id
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/lux:
       cmd       
       name       lux
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/moi:
       cmd       
       name       moi
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/name:
       cmd       
       name       name
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/rssi:
       cmd       
       name       rssi
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedata:
       cmd       
       name       servicedata
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedatauuid:
       cmd       
       name       servicedatauuid
     home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/tem:
       cmd       
       name       tem
Attributes:
   IODev      mqtt
   autoSubscribeReadings home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/+
   event-on-change-reading fer,lux,moi,rssi,tem
   room       Balkon,mqtt
   stateFormat {sprintf("Temperatur: %.1f Grad, Feuchte: %.1f %, Lux: %.1f ", ReadingsVal($name,"tem",0), ReadingsVal($name,"moi",0), ReadingsVal($name,"lux",0))}
   subscribeReading_distance home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/distance
   subscribeReading_fer home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/fer
   subscribeReading_id home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/id
   subscribeReading_lux home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/lux
   subscribeReading_moi home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/moi
   subscribeReading_name home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/name
   subscribeReading_rssi home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/rssi
   subscribeReading_servicedata home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedata
   subscribeReading_servicedatauuid home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/servicedatauuid
   subscribeReading_tem home/OpenMQTTGateway_ESP32_BLE/BTtoMQTT/C47C8D66EC25/tem


Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 August 2019, 19:40:49
ok, RSSI bei -98 ist schon seeeeehr schwacher Empfang, das wundert mich nicht, dass das öfter nicht geht... ansonsten sind doch alle Readings da... ich würde mal versuchen die Flower-Sens und den ESP testweise näher zum Router zu bekommen...

Wenn das dann besser wird, entweder ESP32 mit externer Antenne nehem oder Repeater dazwischen setzen

Grüsse Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 20 August 2019, 19:57:58
Zitat von: cs-online am 20 August 2019, 19:40:49
ok, RSSI bei -98 ist schon seeeeehr schwacher Empfang, das wundert mich nicht, dass das öfter nicht geht... ansonsten sind doch alle Readings da... ich würde mal versuchen die Flower-Sens und den ESP testweise näher zum Router zu bekommen...

Wenn das dann besser wird, entweder ESP32 mit externer Antenne nehem oder Repeater dazwischen setzen

Grüsse Christian

Die gleiche Situation habe ich auch wenn der FlowerCare direkt daneben liegt auch wenn sich dann nur der Rssi ändert.

Aber man sieht ja an den Readings Zeiten das Zeitweise gar nichts kommt...

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 20 August 2019, 22:07:42
und wie weit ist der ESP vom Router entfernt ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 21 August 2019, 11:18:27
ich habe schon in einem anderen Thread meine TEstergebnisse gepostet, hiernochmal weil es passt:

habe mal etwas mit meinen ESP32 getestet
1) OpenMQTTGateway: Es werden keine Batteriewerte übertragen, wird es auf Sicht auch nicht geben da irgendwie der Sketch damit instabil wird
2) MiFlora: https://github.com/Djebouh/flora ist ein Fork von Sidddy, erweiter um einen BLE Scan dass man die Sensor MacAdressen nicht im Sketch fest verankern muss: Klappt soweit ganz gut, auch mit Batteriewerten. Aber!!! der BLE Chip auf dem ESP ist um längen grottiger als auf dem Raspi Zero W. Mit dem ESP erreiche ich maximal 5m - aber nur mit freier Sicht. Der RasPi kommt echte 10m. Damit erreiche ich meine Grenzbereiche nicht mehr. Ist also nur interessant für Nahbereiche

Btw: der ESP kostet ab ca 5€, der Raspi Zero W ab 14€ incl versand plus 3€ eine 4GB Disk. Da lohnt sich kaum der Stress....
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 21 August 2019, 12:17:41
BTLE ist wohl auch nur für Entfernungen bis 10m gedacht, wenn ich das richtig verstanden habe......ich frage meine Sensoren im Gewächshaus auch über einen ZeroW im Gwächshaus ab, allerdings über ssh von meinem FHEM-Server. Der ZeroW ist allerdings im WLAN recht schwach, das kann aber auch am Repeater dazwischen liegen...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 21 August 2019, 12:42:44
Zitat von: Tobias am 21 August 2019, 11:18:27
ich habe schon in einem anderen Thread meine TEstergebnisse gepostet, hiernochmal weil es passt:

habe mal etwas mit meinen ESP32 getestet
1) OpenMQTTGateway: Es werden keine Batteriewerte übertragen, wird es auf Sicht auch nicht geben da irgendwie der Sketch damit instabil wird
2) MiFlora: https://github.com/Djebouh/flora ist ein Fork von Sidddy, erweiter um einen BLE Scan dass man die Sensor MacAdressen nicht im Sketch fest verankern muss: Klappt soweit ganz gut, auch mit Batteriewerten. Aber!!! der BLE Chip auf dem ESP ist um längen grottiger als auf dem Raspi Zero W. Mit dem ESP erreiche ich maximal 5m - aber nur mit freier Sicht. Der RasPi kommt echte 10m. Damit erreiche ich meine Grenzbereiche nicht mehr. Ist also nur interessant für Nahbereiche

Btw: der ESP kostet ab ca 5€, der Raspi Zero W ab 14€ incl versand plus 3€ eine 4GB Disk. Da lohnt sich kaum der Stress....

Das mit der Reichweite von dem ESP kann ich nur zustimmen, bei einer Reichweite von ca.2m durch eine Scheibe ist schon fast Schluss, ich dachte es wäre eine einfachere Alternative zum Pi Zero.

Mfg Steffen
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 21 August 2019, 13:43:39
Also im Gegensatz zum Pi geht das bei mit mit dem ESP32 wunderbar, die ganze Wohnung wird ohne Probleme erkannt, und das sind mehr als 10 Meter. Das war auch der Grund warum ich auf den ESP umgestiegen bin.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 21 August 2019, 15:05:48
habt Ihr da welche mit oder ohne externe Antennen ?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 21 August 2019, 16:15:20
Ich hab ehrlich gesagt nur so ein DevKit, also ohne Antenne.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Steffen am 21 August 2019, 18:56:51
Hallo!

Ich teste gerade auch das Tool "MiFlora" und muss sagen, gefällt mir sehr gut.

Habe nochmal eine frage an euch, wechseln bei euch die "Lux" werte auch schnell hin und her? Bei mir war zu einem Zeitpunkt 16000 dann 5min später 63000. Der Sensor steht in der Sonne ohne Schatten.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 21 August 2019, 22:08:16
ich hatte letztes Jahr 4 stk. gekauft, die hatten weisse Kappen, die waren recht stabil mit allen Werten. Dann hab ich im Frühjahr einen davon kaputt geflasht :-( also zwei neu bestellt, haben andere FW drauf und so grau/cremige Kappen, die springen bei Feuchte teilweise 20% rauf/runter... Aber in der Helligkeit kann auch bei Sonne schon sein, dass die Intensität sich innerhalb weniger Minuten ändert... Hast du keinenzweiten, mit dem du einen Vergleich machen kannst ?

was ist das denn für ein Tool "MiFlora" ?

Grüsse Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 22 August 2019, 08:06:33
Zitat von: cs-online am 21 August 2019, 22:08:16
so grau/cremige Kappen, die springen bei Feuchte teilweise 20% rauf/runter...

Gut zu wissen, ich hab einen von 4 mit grünlicher Kappe wo beim Batterie Tausch schon die ganzen Nasen abgebrochen sind und der springt auch um 20%. Es scheint da wohl billige Kopien zu geben...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 22 August 2019, 18:23:44
ähm... könnte auch grünlich sein, hab ne rot/grün-Schwäche, da sind diese Farben für mich nicht so klar definierbar...

aber die Batterien sind bei denen relativ schnell leer, also keine Kaufempfehlung...
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 23 August 2019, 13:30:38
HI Daniel,
ich habe auch nur so ein DevKot, ohne externe Antenne. Ich habe wie gesagt die Empfangsprobelem mit dem form vom Sidddy Sketch gehabt. Die Reichweite habe ich mit OpenMqttGateway nicht getestet.
Welchen Sketch und Version setzt du ein?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 23 August 2019, 13:41:54
Ich hab nur OpenMQTT (CODE-OpenMQTTGateway-V091.zip) benutzt ja:

Bibliothek PubSubClient in Version 2.7 im Ordner: C:\Users\danielw\Documents\Arduino\libraries\PubSubClient  wird verwendet
Bibliothek ArduinoJson in Version 5.13.5 im Ordner: C:\Users\danielw\Documents\Arduino\libraries\ArduinoJson  wird verwendet
Bibliothek WiFi in Version 1.0 im Ordner: C:\Users\danielw\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\WiFi  wird verwendet
Bibliothek ArduinoOTA in Version 1.0 im Ordner: C:\Users\danielw\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\ArduinoOTA  wird verwendet
Bibliothek Update in Version 1.0 im Ordner: C:\Users\danielw\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\Update  wird verwendet
Bibliothek BLE in Version 0.4.16 im Ordner: C:\Users\danielw\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\BLE  wird verwendet
Bibliothek ESPmDNS in Version 1.0 im Ordner: C:\Users\danielw\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2\libraries\ESPmDNS  wird verwendet
Der Sketch verwendet 1551478 Bytes (78%) des Programmspeicherplatzes. Das Maximum sind 1966080 Bytes.
Globale Variablen verwenden 66568 Bytes (20%) des dynamischen Speichers, 261112 Bytes für lokale Variablen verbleiben. Das Maximum sind 327680 Bytes.
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Tobias am 23 August 2019, 16:59:59
danke,
irgendwie stürzt der ESP32 ab sobald ich versuche mich auf seinem AP zu connecten :(
auch mit dem preCompiled Package :(

EDIT: ist es normal das nur die kodierten Servicedaten per mqtt gesendet werden?
{"id":"c4:7c:8d:62:8e:a2","rssi":-87,"distance":18.07764,"servicedata":"3102980006a28e628d7cc40d","servicedatauuid":"0000fe95-0000-1000-8000-00805f9b34fb"}
Wie bekommt man jetzt daraus "echte" Daten?
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: ext23 am 23 August 2019, 20:19:00
Mit dem AP geht beim ESP32 nicht, den WifiManager soll man da nicht benutzen, ich hab meine WLAN Daten fest einkompiliert.

Ich habe das auf "simple" umgestellt, dann nutzt er kein JSON.

/Daniel
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: cs-online am 24 August 2019, 14:42:51
Zitat von: Tobias am 23 August 2019, 16:59:59
danke,
irgendwie stürzt der ESP32 ab sobald ich versuche mich auf seinem AP zu connecten :(
auch mit dem preCompiled Package :(

EDIT: ist es normal das nur die kodierten Servicedaten per mqtt gesendet werden?
{"id":"c4:7c:8d:62:8e:a2","rssi":-87,"distance":18.07764,"servicedata":"3102980006a28e628d7cc40d","servicedatauuid":"0000fe95-0000-1000-8000-00805f9b34fb"}
Wie bekommt man jetzt daraus "echte" Daten?

Du legst ein Hilfs-Device an:
define BTLE_JSON expandJSON BTLE.*:{.*} (name|lux|moi|tem|bat|rssi|fer|servicedatauuid)

dann wird alles, was in dem json drin ist und mit den Filtern in der letzten Klammer passt, als Reading in dem z.B. dummy, in das du das json schreiben lässt, reingeschrieben, wenn das dummy wie in diesem Beispiel mit BTLE anfängt, also z.B. BTLE_sensor1... ggf. musst du das expandJSON-Modul noch von Hand zu FHEM zufügen, wenn es nicht vorhanden ist...

Grüsse Christian
Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: mrkrise am 25 März 2021, 10:40:38
Hi,
altes Thema aktuelles Problem.  8)
Ich habe bisher immer den Raspi in der Nähe der Sensoren gehabt und konnte so per BT die Sensoren auslesen.
Dieses Jahr wollte ich dann mal besonders schlau sein und habe mir das Xiaomi Gateway 3 besorgt. Jedoch verzweifle ich momentan daran. Ich bekomme die Sensoren einfach nicht via Gateway 3 mir dem Raspi verbunden. Hat da schon jemand Erfahrungswerte?

Titel: Antw:Bluetooth auf Wlan Umsetzung (für Xiaomi Pflanzsensor)
Beitrag von: Henno am 07 April 2022, 10:37:10
Hallo zusammen,

ich habe mich auch mal daran versucht.
Ich habe noch ein paar Mi Flora die schon ein paar Jahre in der Ecke liegen.

MQTT Gateway ist eingerichtet und findet die Sensoren auch.
Allerdings verstehe ich nicht wie ich die einzelnen Sensoren nun in FHEM anlege.

Wenn ich anstelle von MQTT Gateway diesen Sketch https://github.com/Djebouh/flora auf den ESP32 mache, wird in FHEM ein device angelegt und alle Sensoren laden in diesem einem Device, so natürlich nur schlecht nutzbar.

MQTT Gateway wäre mir eigentlich auch lieber.

Wie habt ihr das umgesetzt?