lepresenced auf ESP32

Begonnen von Lucky2k12, 07 März 2021, 13:10:37

Vorheriges Thema - Nächstes Thema

Lucky2k12

Hallo,

Ich hatte, wie viele andere auch, lange mit der Stabilität von lepresenced auf meinen Raspis zu kämpfen und habe mir mehrere Alternativen angeschaut.
Mein Anwendungsfall: Auswerten der Signale von GTags und Mi Bändern der Familienmitglieder.

Getestete Alternativen zum Raspi:

- CSL Bluetooth  USB-Stick: Funktioniert reibungslos an meinem Thin Client HP T610.

- Tasmota auf ESP32: Unterstützt mittlerweile auch BLE Scans, erkannte iBeacons werden per MQTT gemeldet.
  Problem hierbei: um ein MiBand3 empfangen zu können, muss BLEAddrFilter = 1 gesetzt werden,
  allerdings werden dann auch alle Covid-App Messages empfangen, die laufend die MAC Adresse variieren und so das MQTT Device mit neuen Readings geflutet.
  -> für mich nicht geeignet

- Orange Pi Zero: Läuft bei mir als OctoPrint Server am 3D Drucker mit Armbian Focal und hat integriertes Bluetooth.
  Ich habe das BT leider nicht zum Laufen gebracht, Hinweise willkommen.

- ESP32_BLETracker: Firmware für ESP32 Module:  https://github.com/shogunxam/ESP32_BLETracker
  Die Firmware kann wahlweise MQTT oder lepresenced. Der lepresenced Modus läuft bei mir seit einigen Tagen stabil,   
  (außer dem integrierten Webserver, der immer mal wieder ein power cycle braucht).  MQTT habe ich nur kurz getestet
  man kann eine Whitelist der auszuwertenden MAC Adressen anlegen
  Ich habe die Module mit externer Antenne ausgestattet (Reichweite ist so für ein Stockwerk ausreichend) und zwecks Stromversorgung in meine CO2  Ampeln implantiert
  -> Aktuell meine bevorzugte Lösung

Gruß
Lucky
HP T610, HM, Jeelink, LGW, mapleCUL868+434

chri16

Ich komme ehrlich gesagt mit der Platform.io nicht klar.

Normalerweise hab ich immer mit Arduino IDE gearbeitet und auch mehrere Sketche auf ESP8266 am laufen, hier scheitere ich aber.
Kannst du vielleicht erklären, wie ich das gebuildet bekomme bzw. wie ich das in Arduino IDE verwenden kann?

betateilchen

Die Verwendung mit der Arduino IDE ist doch auf der verlinkten github Seite perfekt beschrieben?
Aus eigener Erfahrung kann ich sagen, dass die Beschreibung einwandfrei funktioniert.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

chri16

Danke betateilchen,
ich war gestern einfach zu blind und habe den ganzen Tag am PC gesessen ::)
Hatte gestern einfach die INO Datei übersehen  :o

DerBodo

Zitat von: Lucky2k12 am 07 März 2021, 13:10:37
- ESP32_BLETracker: Firmware für ESP32 Module:  https://github.com/shogunxam/ESP32_BLETracker
  Die Firmware kann wahlweise MQTT oder lepresenced. Der lepresenced Modus läuft bei mir seit einigen Tagen stabil,   
  (außer dem integrierten Webserver, der immer mal wieder ein power cycle braucht).  MQTT habe ich nur kurz getestet
  man kann eine Whitelist der auszuwertenden MAC Adressen anlegen
  Ich habe die Module mit externer Antenne ausgestattet (Reichweite ist so für ein Stockwerk ausreichend) und zwecks Stromversorgung in meine CO2  Ampeln implantiert
  -> Aktuell meine bevorzugte Lösung

Hey Lucky,

welche Module hast du und wie hast du die Antenne angebracht (vlt mal ein Bild) mit einem ESP Pro Stockwerk wäre das schon sehr praktisch.

Danke !

ergerd

Hallo,

da mein lepresenced auf einem Pi Zero häufig disconnected anzeigte, habe ich auf einen ESP32 den Scetch geflasht.
Funktioniert bei mir aber mehr schlecht als recht. I.d.R. bekommt er nicht mit, wenn ich wieder nach Hause komme.
Erst wenn ich ein
set RainersGTag statusRequest
absetze werden die Readings aktualisiert.

Hier ein List des Devices:

Internals:
   ADDRESS    7c:2f:80:af:27:2a
   DEF        lan-bluetooth 7c:2f:80:af:27:2a 192.xxx.xx.xx:5333 60
   DeviceName 192.xxx.xx.xx:5333
   FD         19
   FUUID      5e04a33f-f33f-f250-893e-c7e34ca3e77d3120
   INTERVAL_NORMAL 60
   INTERVAL_PRESENT 60
   MODE       lan-bluetooth
   NAME       RainersGTag
   NOTIFYDEV  global
   NR         311
   NTFY_ORDER 50-RainersGTag
   PARTIAL   
   STATE      present
   TYPE       PRESENCE
   READINGS:
     2021-09-07 09:37:57   batteryPercent  100
     2021-08-27 11:26:12   batteryPercentAge 4
     2021-09-07 12:24:12   command_accepted yes
     2021-09-07 12:28:16   daemon          BLETracker V3.4R
     2021-09-07 12:28:16   device_name     7c:2f:80:af:xx:xx
     2021-09-07 00:01:34   model           lan-bluetooth
     2021-09-07 12:28:16   presence        present
     2021-09-07 12:28:16   rssi            -74
     2021-09-07 12:28:16   state           present
   helper:
     CURRENT_STATE present
     CURRENT_TIMEOUT normal
Attributes:
   DbLogExclude .*
   devStateIcon present:rc_GREEN.svg absent:rc_RED.svg maybe.*:rc_YELLOW.svg
   event-on-change-reading .*
   group      Anwesenheit
   room       PRESENCE


Hat jemand eine Idee was falsch sein könnte?

Danke und Grüße
ergerd
FHEM auf RasPi 4, CUNO, ZigBee, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, LaCrosseGateway, PCA301, ConBee II, LuftdatenInfo, OneWireGW, Div. ESPs u. Shellys

Lucky2k12

Zitat von: DerBodo am 03 September 2021, 11:19:22
Hey Lucky,

welche Module hast du und wie hast du die Antenne angebracht (vlt mal ein Bild) mit einem ESP Pro Stockwerk wäre das schon sehr praktisch.

Danke !
Hallo DerBodo,

Ich bin nach der Anleitung hier vorgegangen und habe auch optisch ähnliche Module/Antennen von Aliexpress verwendet:
https://randomnerdtutorials.com/esp32-cam-connect-external-antenna/

Gruß
Lucky
HP T610, HM, Jeelink, LGW, mapleCUL868+434

Lucky2k12

Zitat von: ergerd am 07 September 2021, 12:34:00
da mein lepresenced auf einem Pi Zero häufig disconnected anzeigte, habe ich auf einen ESP32 den Scetch geflasht.
Funktioniert bei mir aber mehr schlecht als recht. I.d.R. bekommt er nicht mit, wenn ich wieder nach Hause komme.
Erst wenn ich ein
set RainersGTag statusRequest
absetze werden die Readings aktualisiert.

Hat jemand eine Idee was falsch sein könnte?

Ich würde mal im Webfrontend oder auf der seriellen console nach den RSSI Werten schauen, um auszuschließen, dass die Empfangssituation zu schlecht ist. Falls der GTag dort erkannt wird, muss es an FHEM liegen.
Der Autor des Pakets ist auch recht aktiv und unterstützt gerne, falls es an der Firmware liegen sollte.

Gruß Lucky
HP T610, HM, Jeelink, LGW, mapleCUL868+434

mi.ke

#8
Hallo,
ich versuche für ein größeres Gelände eine Anwesenheitserkennung zu basteln.
Hier für wäre Lösung "lepresenced auf ESP32" perfekt.

Leider bin ich nicht so im Thema mit der Ardunio Programmierung geschweige denn Platformio.
Hab nach der Anleitung hier https://github.com/shogunxam/ESP32_BLETracker#arduino-ide-notes-outdated Schritt für Schritt versucht, leider ohne Erfolg.

Bekomme diverse Fehlermeldungen, in Summe läuft es wohl auf diese hinaus:
invalid conversion from 'char' to 'const char*' [-fpermissive]

Achtung, ich hab keine Ahnung von der Materie und auch leider gar nicht die Zeit, um das Thema zu erlernen.
Wäre jemand trotzdem bereit mir zu helfen?

Am liebsten wäre es mir, wenn ich eine fertiges funktionierendes Paket bekommen könnte oder mir jemand die 5 oder 6 ESPs flashen könnte.

Danke und Grüße
mi.ke
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara

db

Ein Fix für das Problem mit dem Compiler Error bei Arduino ist jenseits meiner Fähigkeiten...
Aber der Build mit PlatformIO funktioniert.
Der Problem mit der Bereitstellung einer fertigen Binary ist, dass die Zugangsdaten ins WLAN hart codiert sind/werden müssen.
Insofern kann sich da jeder nur seine eigene Binary backen.

mi.ke

Ich hab mittlerweile eine Lösung gefunden und diese funktioniert ohne Probleme

Tasmota 11.1.0.3(bluetooth)

Auf einen ESP32 geflashed, danach frei konfigurierbar.
Hatte zuvor schon die Tasmotalösung für MQTT2 Anbindung.
FHEM 5.9 | RPi4 + 5 x RPi(Z) + FB7590 + FB 6890 LTE via LAN und WAN (VPN) verbunden.
2 x CUL868 + 3 x RFXTRX(e) + 6 x HMwLanGW + 4 x z2tGw + 5 x LGW + 2 x IRBlast + CO2 +++
FS20, FHT, FMS, Elro(mod), CM160, Revolt, LGTV, STV, AVR, withings, HM-sec-*, HM-CC-RT-DN, AMAD, PCA301, arlo, Aqara