Hauptmenü

Neueste Beiträge

#1
Sonstige Systeme / Aw: Support-Thread Modul 36_Sh...
Letzter Beitrag von Starkstrombastler - 01 April 2026, 23:11:11
Zitat von: Jörg am 01 April 2026, 19:05:24attr KG_Waermepumpe_sg_ready_1_WWKI300 interval 43200
/rpc/EM1... wird nur gemäß Interval abgeholt, und das ist bei dir 12 Stunden.
#2
Sonstiges / Aw: Google Authenticator geht ...
Letzter Beitrag von mistepke - 01 April 2026, 23:10:43
Danke für die Hilfe.

Hier mein docker-compose.yml file:

networks:
  intranet:
    external: true

services:
  fhem:
    container_name: fhem
    restart: always
    image: fhem/fhem
    labels:
      com.centurylinklabs.watchtower.enable: "true"
    networks:
      - intranet
    devices:
      - /dev/ttyUSB0:/dev/ttyUSB0
    ports:
      - 8083:8083
      - 8084:8084
      - 1883:1883
      - 7073:7073
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - /srv/docker/fhem/data:/opt/fhem
    - /media/USB:/media/USB

  homebridge:
    depends_on:
    - fhem
    container_name: homebridge

    image: homebridge/homebridge:latest
    labels:      com.centurylinklabs.watchtower.enable: "true"
    restart: always
    network_mode: host
    volumes:

    - /etc/localtime:/etc/localtime:ro
    - /srv/docker/homebridge/data:/homebridge
    - /srv/docker/homebridge/data:/var/homebridge

  mariadb:
    command: --connect-timeout=60 --max_allowed_packet=1G>
    container_name: mariadb
    restart: always
    image: mariadb:10.6
    labels:
      com.centurylinklabs.watchtower.enable: "true"
    networks:
      - intranet
    ports:
      - 3306:3306
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - /srv/docker/mariadb/data:/var/lib/mysql

  phpmyadmin:
    container_name: phpmyadmin
    image: phpmyadmin
    labels:
      com.centurylinklabs.watchtower.enable: "true"
    restart: always
    networks:
    - intranet
    environment:

      PMA_HOST: mariadb
    ports:
      - 8080:80
    depends_on:
      - mariadb

  portainer:
    container_name: portainer
    restart: always
    image: portainer/portainer-ce
    labels:
      com.centurylinklabs.watchtower.enable: "true"
    ports:
      - 9443:9443 # CONTAINER PORT MUST BE 9443 and not 9>
    networks:
    - intranet
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/var/run/docker.sock
    - /srv/docker/portainer/data:/data

  watchtower:
    container_name: watchtower
    restart: always

    restart: always
    command: --schedule "0 30 0 * * *" --cleanup
    environment:
      WATCHTOWER_LABEL_ENABLE: "true"
    image: containrrr/watchtower
    labels:
      com.centurylinklabs.watchtower.enable: "false"
    network_mode: "bridge"
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/var/run/docker.sock




Zitat von: passibe am 01 April 2026, 22:56:37Gib uns bitte mal dein compose file.

Ich kann das hier
Zitat von: mistepke am 01 April 2026, 18:47:32Im Docker Container habe ich die notwendigen Pakete mit:

sudo apt-get install libconvert-base32-perl libauthen-oath-perl libcrypt-urandom-perl

nachinstalliert. Hat auch nichts geholfen.
und das hier
Zitat von: mistepke am 01 April 2026, 19:07:502026.04.01 18:53:21 1:  reload: Error:Modul 98_GoogleAuth deactivated:
 Can't locate Authen/OATH.pm in @INC (you may need to install the Authen::OATH module) (@INC entries checked: . ./FHEM ./lib /usr/src/app/core/lib/perl5/aarch64-linux-gnu /usr/src/app/core/lib/perl5 /usr/src/app/3rdparty/lib/perl5/aarch64-linux-gnu /usr/src/app/3rdparty/lib/perl5 /usr/local/lib/perl5/site_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/site_perl/5.38.5 /usr/local/lib/perl5/vendor_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/vendor_perl/5.38.5 /usr/local/lib/perl5/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/5.38.5 ./FHEM/lib) at ./FHEM/98_GoogleAuth.pm line 87.
BEGIN failed--compilation aborted at ./FHEM/98_GoogleAuth.pm line 87.
nämlich aus zwei Gründen nicht nachvollziehen:

1. Das Nachinstallieren von Paketen war auf die von dir beschriebene Weise noch nie sinnvoll möglich (in einen laufenden Container "hineininstallierte" Pakete sind nämlich weg, wenn der Container neu erstellt wird). Ab Image-Version 4 muss man dazu ein eigenes Image bauen; die alte Methode über APT_PKGS, etc. funktioniert nicht mehr: https://github.com/fhem/fhem-docker?tab=readme-ov-file#since-version-4. Darauf hat Sidey auch schon hingewiesen.

2. Ist das aber für Google Authenticator überhaupt nicht notwendig, weil jedenfalls Authen::OATH standardmäßig vorhanden ist und define GoogleAuth GoogleAuth jedenfalls im aktuellen Docker Image (5-bookworm) problemlos ausgeführt werden kann.
Ob ein Perl-Paket installiert ist, kann man mit perldoc -l <PAKET> testen.
Wenn ich bei mir in der FHEM-Kommandozeile (Image-Tag 5-bookworm)"perldoc -l Authen::OATH"eingebe (wichtig, mit Anführungszeichen!), erscheint bei mir der Pfad /usr/src/app/core/lib/perl5/Authen/OATH.pm im FHEM-Logfile.

Gleiches Ergebnis mitsudo docker exec -it <FHEM_CONTAINER> perldoc -l Authen::OATHauch hier wird der Pfad zurückgegeben.

Deshalb bitte dein compose file posten. Wenn du docker run nutzt, bitte nimm dir erstmal die Zeit und steig auf docker compose um. docker run sollte mE nicht für dauerhaft laufende Dienste verwendet werden; das eignet sich eher zum testen oder für one-shot-Befehle:

Zitat von: passibe am 09 Januar 2026, 21:12:30Am besten man nutzt nicht docker run, sondern docker compose und ein entsprechendes compose file.

Mit docker run sind sämtliche Parameter mit denen man den container startet nur extrem schlecht reproduzierbar (allenfalls über die Terminal-history). Das ist meiner Meinung nach alles eher ungeeignet für Container, die ständig laufen sollen und von deren (Docker-)Konfiguration man auch ein vernünftiges Backup haben will.
#3
DOIF / Energy-Card
Letzter Beitrag von Damian - 01 April 2026, 23:06:56
Mein erster Entwurf, zum Anschauen gif-Animation unten anklicken.
#4
readingsGroup / readingsHistory / readingsgroup für ASC - Leersp...
Letzter Beitrag von smoudo - 01 April 2026, 23:01:44
Hi,

ich betreibe eine Readingsgroup zum einfachen einstellen der Zeiten und Aktionen für verschiedene Rollo Devices.
Das ganze besteht aus 2x Velux Rollos und 3x Shelly. Bei den Shellys fügt die RG leerspalten ein, was sehr unübersichtlich ist.
Kann mir jemand auf die Sprünge helfen wo die Leerspalten herkommen? Anbei ein Bild zur Verdeutlichung und ein List der RG
Internals:
   DEF        <Gerät>,<Position>,<Zeit_Auf_Früh>,<Zeit_Auf_Spät>,<Zeit_Auf_WE/Hol>,<Zeit_Zu_Früh>,<Zeit_Zu_Spät>,<Modus_Zu>,<Modus_Auf>
(MQTT2_shellyplus2pm_.*|Velux_.*|.*Rolladen|Jalousie_.*):pct,!?ASC_Time_Up_Early,!?ASC_Time_Up_Late,!?ASC_Time_Up_WE_Holiday,!?ASC_Time_Down_Early,!?ASC_Time_Down_Late,!?ASC_Mode_Down,!?ASC_Mode_Up
   FUUID      697e9bbc-f33f-6b5c-0621-8d5456292659d9bf
   NAME       rg_ASC_Rolllaeden_Times
   NR         498
   NTFY_ORDER 50-rg_ASC_Rolllaeden_Times
   STATE      Initialized
   TYPE       readingsGroup
   changed    0
   mayBeVisible 1
   CONTENT:
     MQTT2_shellyplus2pm_2cbcbb2d7040 1
     MQTT2_shellyplus2pm_2cbcbb7c2f4c 1
     MQTT2_shellyplus2pm_30c9224ea21c 1
     Velux_0    1
     Velux_1    1
   CONTENT2:
   DEVICES:
     ARRAY(0x5d116abc)
     ARRAY(0x58c36568)
     ARRAY(0x5d1e2af0)
     ARRAY(0x5d308094)
     ARRAY(0x5c82754c)
     ARRAY(0x5d135380)
   fhem:
     lastDefChange 6
     last_update 1775076577.36226
   helper:
     DEF       
     commands:
       ASC_Mode_Down ASC_Mode_Down:always,absent,off
       ASC_Mode_Up ASC_Mode_Up:always,absent,off
       ASC_Time_Down_Early ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00
       ASC_Time_Down_Late ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30
       ASC_Time_Up_Early ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
       ASC_Time_Up_Late ASC_Time_Up_Late:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
       ASC_Time_Up_WE_Holiday ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00
       pct        pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100
     positions:
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Mode_Down 2:7
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Mode_Up 2:8
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Down_Early 2:5
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Down_Late 2:6
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_Early 2:2
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_Late 2:3
       MQTT2_shellyplus2pm_2cbcbb2d7040.ASC_Time_Up_WE_Holiday 2:4
       MQTT2_shellyplus2pm_2cbcbb2d7040.pct 2:1
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Mode_Down 3:7
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Mode_Up 3:8
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Down_Early 3:5
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Down_Late 3:6
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_Early 3:2
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_Late 3:3
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.ASC_Time_Up_WE_Holiday 3:4
       MQTT2_shellyplus2pm_2cbcbb7c2f4c.pct 3:1
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Mode_Down 4:7
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Mode_Up 4:8
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Down_Early 4:5
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Down_Late 4:6
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_Early 4:2
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_Late 4:3
       MQTT2_shellyplus2pm_30c9224ea21c.ASC_Time_Up_WE_Holiday 4:4
       MQTT2_shellyplus2pm_30c9224ea21c.pct 4:1
       Velux_0.ASC_Mode_Down 5:7
       Velux_0.ASC_Mode_Up 5:8
       Velux_0.ASC_Time_Down_Early 5:5
       Velux_0.ASC_Time_Down_Late 5:6
       Velux_0.ASC_Time_Up_Early 5:2
       Velux_0.ASC_Time_Up_Late 5:3
       Velux_0.ASC_Time_Up_WE_Holiday 5:4
       Velux_0.pct 5:1
       Velux_1.ASC_Mode_Down 6:7
       Velux_1.ASC_Mode_Up 6:8
       Velux_1.ASC_Time_Down_Early 6:5
       Velux_1.ASC_Time_Down_Late 6:6
       Velux_1.ASC_Time_Up_Early 6:2
       Velux_1.ASC_Time_Up_Late 6:3
       Velux_1.ASC_Time_Up_WE_Holiday 6:4
       Velux_1.pct 6:1
     values:
       formated:
         undef
         ARRAY(0x5d1bfd58)
         ARRAY(0x5d0ec280)
         ARRAY(0x5d1ce32c)
         ARRAY(0x5c7f6940)
         ARRAY(0x5d0ec5dc)
         ARRAY(0x5d1ce2dc)
         ARRAY(0x5c58c0a4)
         ARRAY(0x5d1df444)
       orig:
         undef
         ARRAY(0x5d1c8014)
         ARRAY(0x5d1c52e8)
         ARRAY(0x5c8242c0)
         ARRAY(0x5d1df3e0)
         ARRAY(0x5d1be534)
         ARRAY(0x5d1df0ac)
         ARRAY(0x5d1e6ce0)
         ARRAY(0x5d0b1fc4)
       prefixsuffix:
         undef
         ARRAY(0x5c8293c0)
         ARRAY(0x5d1c0014)
         ARRAY(0x5d0b5438)
         ARRAY(0x5d3078c4)
         ARRAY(0x5d0b1da8)
         ARRAY(0x5cb11870)
         ARRAY(0x5d0f0730)
         ARRAY(0x5d1c9a0c)
Attributes:
   commands   {pct => 'pct:0,10,20,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100',
 ASC_Time_Down_Early => 'ASC_Time_Down_Early:15:00,15:15,15:30,15:45,16:00,16:15,16:30,16:45,17:00,17:15,17:30,17:45,18:00,18:15,18:30,18:45,19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00',
 ASC_Time_Down_Late  => 'ASC_Time_Down_Late:19:00,19:15,19:30,19:45,20:00,20:15,20:30,20:45,21:00,21:15,21:30,21:45,22:00,22:15,22:30,22:45,23:00,23:15,23:30',
 ASC_Time_Up_WE_Holiday => 'ASC_Time_Up_WE_Holiday:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
 ASC_Time_Up_Early => 'ASC_Time_Up_Early:05:00,05:05,05:30,05:55,06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
 ASC_Time_Up_Late => 'ASC_Time_Up_Late:06:00,06:15,06:30,06:45,07:00,07:15,07:30,07:45,08:00,08:15,08:30,08:45,09:00,09:15,09:30,09:45,10:00',
 ASC_Mode_Down => 'ASC_Mode_Down:always,absent,off',

 ASC_Mode_Up => 'ASC_Mode_Up:always,absent,off' }

Vielen Dank

Matze

#5
Sonstiges / Aw: Google Authenticator geht ...
Letzter Beitrag von passibe - 01 April 2026, 22:56:37
Gib uns bitte mal dein compose file.

Ich kann das hier
Zitat von: mistepke am 01 April 2026, 18:47:32Im Docker Container habe ich die notwendigen Pakete mit:

sudo apt-get install libconvert-base32-perl libauthen-oath-perl libcrypt-urandom-perl

nachinstalliert. Hat auch nichts geholfen.
und das hier
Zitat von: mistepke am 01 April 2026, 19:07:502026.04.01 18:53:21 1:  reload: Error:Modul 98_GoogleAuth deactivated:
 Can't locate Authen/OATH.pm in @INC (you may need to install the Authen::OATH module) (@INC entries checked: . ./FHEM ./lib /usr/src/app/core/lib/perl5/aarch64-linux-gnu /usr/src/app/core/lib/perl5 /usr/src/app/3rdparty/lib/perl5/aarch64-linux-gnu /usr/src/app/3rdparty/lib/perl5 /usr/local/lib/perl5/site_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/site_perl/5.38.5 /usr/local/lib/perl5/vendor_perl/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/vendor_perl/5.38.5 /usr/local/lib/perl5/5.38.5/aarch64-linux-gnu /usr/local/lib/perl5/5.38.5 ./FHEM/lib) at ./FHEM/98_GoogleAuth.pm line 87.
BEGIN failed--compilation aborted at ./FHEM/98_GoogleAuth.pm line 87.
nämlich aus zwei Gründen nicht nachvollziehen:

1. Das Nachinstallieren von Paketen war auf die von dir beschriebene Weise noch nie sinnvoll möglich (in einen laufenden Container "hineininstallierte" Pakete sind nämlich weg, wenn der Container neu erstellt wird). Ab Image-Version 4 muss man dazu ein eigenes Image bauen; die alte Methode über APT_PKGS, etc. funktioniert nicht mehr: https://github.com/fhem/fhem-docker?tab=readme-ov-file#since-version-4. Darauf hat Sidey auch schon hingewiesen.

2. Ist das aber für Google Authenticator überhaupt nicht notwendig, weil jedenfalls Authen::OATH standardmäßig vorhanden ist und define GoogleAuth GoogleAuth jedenfalls im aktuellen Docker Image (5-bookworm) problemlos ausgeführt werden kann.
Ob ein Perl-Paket installiert ist, kann man mit perldoc -l <PAKET> testen.
Wenn ich bei mir in der FHEM-Kommandozeile (Image-Tag 5-bookworm)"perldoc -l Authen::OATH"eingebe (wichtig, mit Anführungszeichen!), erscheint bei mir der Pfad /usr/src/app/core/lib/perl5/Authen/OATH.pm im FHEM-Logfile.

Gleiches Ergebnis mitsudo docker exec -it <FHEM_CONTAINER> perldoc -l Authen::OATHauch hier wird der Pfad zurückgegeben.

Deshalb bitte dein compose file posten. Wenn du docker run nutzt, bitte nimm dir erstmal die Zeit und steig auf docker compose um. docker run sollte mE nicht für dauerhaft laufende Dienste verwendet werden; das eignet sich eher zum testen oder für one-shot-Befehle:

Zitat von: passibe am 09 Januar 2026, 21:12:30Am besten man nutzt nicht docker run, sondern docker compose und ein entsprechendes compose file.

Mit docker run sind sämtliche Parameter mit denen man den container startet nur extrem schlecht reproduzierbar (allenfalls über die Terminal-history). Das ist meiner Meinung nach alles eher ungeeignet für Container, die ständig laufen sollen und von deren (Docker-)Konfiguration man auch ein vernünftiges Backup haben will.
#6
Sonstiges / Aw: Google Authenticator geht ...
Letzter Beitrag von mistepke - 01 April 2026, 22:45:10
In diesem Git-Hub kann man im Script erkenne wo die Doku ist und welche Module man braucht: https://github.com/mhop/fhem-mirror/blob/master/fhem/FHEM/98_GoogleAuth.pm

Und: https://fhem.de/commandref.html#GoogleAuth

Zitat von: Sidey am 01 April 2026, 22:31:56
Zitat von: mistepke am 01 April 2026, 21:36:27Die Frage ist aber wie?


Perl Pakete gemäß Anleitung nachinstallieren über cpm.
https://github.com/fhem/fhem-docker?tab=readme-ov-file#add-custom-packages

Da ich das Google Authenticator Plugin nicht kenne. Wo kommt das her?
Wenn es eine Quelle gibt, dann schau ich mal was ich machen kann, damit die Abhängigkeit im Docker Image enthalten ist



Grüße Sidey
#7
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 01 April 2026, 22:40:40
Zitat von: denis.robel am 01 April 2026, 22:36:09
Zitat von: denis.robel am 01 April 2026, 22:16:18Das kling gut. Da ich aber noch totaler Newbe in Bezug auf Solarforecast bin: Wo hinterlege ich die ganzen Modellparameter aus Deinem Code. Das müsste ich ja für mich auch noch irgendwie erledigen...

Ok hab es missverstanden. Das sind die Parameter, die man nach dem Training abfragen kann, richtig?

Ja ist so
#8
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von 300P - 01 April 2026, 22:40:03
Hier meine komplette aiControl beispielhaft - kann/muss nicht passen:

Für die AI:FANN werden die aiCon..... genutzt

aiTrainStart=3
aiStorageDuration=3600
aiTreesPV=30
aiConActivate=1
aiConAlpha=0.8
aiConTrainStart=7:3
aiConActFunc=ELLIOT_SYMMETRIC
aiConHiddenLayers=80-40
aiConLearnRate=0.002
aiConMomentum=0.8
aiConShuffleMode=2
aiConShufflePeriod=20
aiConSteepness=1.0
aiConTrainAlgo=INCREMENTAL
aiConProfile=v1_heatpump_active_pv
aiConBitFailLimit=0.20

#9
Solaranlagen / Aw: 76_SolarForecast - Informa...
Letzter Beitrag von denis.robel - 01 April 2026, 22:36:09
Zitat von: denis.robel am 01 April 2026, 22:16:18Das kling gut. Da ich aber noch totaler Newbe in Bezug auf Solarforecast bin: Wo hinterlege ich die ganzen Modellparameter aus Deinem Code. Das müsste ich ja für mich auch noch irgendwie erledigen...

Ok hab es missverstanden. Das sind die Parameter, die man nach dem Training abfragen kann, richtig?
#10
Einplatinencomputer / Aw: Suche altes Jessy Image fü...
Letzter Beitrag von passibe - 01 April 2026, 22:32:22
Vielleicht das hier probieren?

https://armbian.lv.auroradev.org/archive/cubietruck/archive/

Basiert zwar auf Debian Bookworm bzw. Ubuntu Jammy Jellyfish, aber dürfte sich beides eignen, um einen Hardwaredefekt auszuschließen.