Funktionsanfrage: hminfo erweiterungen firmware Versionsprüfung

Begonnen von no_Legend, 18 Januar 2016, 11:44:07

Vorheriges Thema - Nächstes Thema

kleinerDrache

#180
Mein FHEM ist auch Aktuell (gerade nochmal geprüft) aber wie du schon sagst unterschiedliche systeme,kann ja auch an der Perl Version liegen (nutze einen Cubietruck mit Armbian auch Aktuell).

Der Grundkörper der Datei Stammt aus der Template und ich habe lediglich den Code aus der Wiki zwischen } und 1 eingefügt und ja jetzt geht alles mit dem zusätzlichen () ohne bekomme ich besagte Fehlermeldung im Log und es werden keine Links und auch keine Liste meiner Devices angelegt (hab einen Device der ein Update braucht)
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

Otto123

naja eigentlich nimmt man die myUtilsTemplate.pm im FHEM Editor, die sieht etwas anders aus als Deine "jungfräuliche".

Wenn die links nicht angelegt werden, hast Du zwar keine Fehlermeldung, aber es funktioniert auch nicht.

Sorry, dann ist () keine Lösung.
Nochmal die Frage: Externer Editor? Nicht im Unix Format erzeugt? Wobei ich nicht sicher weiß, ob das bei .pm Dateien ein Problem ist.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kleinerDrache

#182
sorry vergessen mit rein zuschreiben, interner Editor von FHEM (die erweiterte Variante). Hab gerade nochmal geschaut der Kopf ist der gleiche wie im FHEM-Wiki wenn die Datei im Original anders aussieht hab ich das wahrscheinlich irgendwann mal von da übernommen(ist immerhin schon ca 3 Jahre am Laufen der FHEM ;) ).

MIT () werden Links angelegt und ich kann auch runterladen. keine Fehlermeldung.

OHNE () werden KEINE Links angelegt. Fehlermeldung
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

peterk_de

Ich wollte mal ganz fix danke sagen. Anleitung aus Wiki funktioniert prima. Habe mit Erschrecken festgestellt, dass ich über 50 Devices updaten kann. Hätte diesen Thread irgendwie schonmal früher finden sollen ;)
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Otto123

@kleinerDrache Jetzt ziehen wir aber durch :)
Perlversion? Meine ist -> Perl     : v5.20.2 (fheminfo)

Irgendeinen Grund/Unterschied muss es doch geben. ich habe einen Wiki Account, ich schreib das gerne rein - aber nur wenn ich wirklich weiß warum :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kleinerDrache

na mich interessiert das auch sonst hätte ich gesagt funzt danke und nicht mehr reagiert *gg*

meine ist 5.22.1 (perl --version auf der Konsole) war da nicht irgendwas mit strengeren regeln für strict ?
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

kleinerDrache

Hier noch die Detailausgabe von "perl -V"

Summary of my perl5 (revision 5 version 22 subversion 1) configuration:
   
  Platform:
    osname=linux, osvers=3.16.0, archname=arm-linux-gnueabihf-thread-multi-64int
    uname='linux localhost 3.16.0 #1 smp debian 3.16.0 armv7l gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dcc=arm-linux-gnueabihf-gcc -Dcpp=arm-linux-gnueabihf-cpp -Dld=arm-linux-gnueabihf-gcc -Dccflags=-DDEBIAN -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Dldflags= -Wl,-Bsymbolic-functions -Wl,-z,relro -Dlddlflags=-shared -Wl,-Bsymbolic-functions -Wl,-z,relro -Dcccdlflags=-fPIC -Darchname=arm-linux-gnueabihf -Dprefix=/usr -Dprivlib=/usr/share/perl/5.22 -Darchlib=/usr/lib/arm-linux-gnueabihf/perl/5.22 -Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5 -Dvendorarch=/usr/lib/arm-linux-gnueabihf/perl5/5.22 -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.22.1 -Dsitearch=/usr/local/lib/arm-linux-gnueabihf/perl/5.22.1 -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dsiteman1dir=/usr/local/man/man1 -Dsiteman3dir=/usr/local/man/man3 -Duse64bitint -Dman1ext=1 -Dman3ext=3perl -Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Ud_ualarm -Uusesfio -Uusenm -Ui_libutil -Uversiononly -DDEBUGGING=-g -Doptimize=-O2 -dEs -Duseshrplib -Dlibperl=libperl.so.5.22.1'
    hint=recommended, useposix=true, d_sigaction=define                                                                                                                                                                                                                       
    useithreads=define, usemultiplicity=define                                                                                                                                                                                                                                 
    use64bitint=define, use64bitall=undef, uselongdouble=undef                                                                                                                                                                                                                 
    usemymalloc=n, bincompat5005=undef                                                                                                                                                                                                                                         
  Compiler:                                                                                                                                                                                                                                                                   
    cc='arm-linux-gnueabihf-gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',                                                                                           
    optimize='-O2 -g',                                                                                                                                                                                                                                                         
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include'                                                                                                                                                                     
    ccversion='', gccversion='5.3.1 20160311', gccosandvers=''                                                                                                                                                                                                                 
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678, doublekind=3                                                                                                                                                                                           
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8, longdblkind=0                                                                                                                                                                                         
    ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8                                                                                                                                                                                       
    alignbytes=8, prototype=define                                                                                                                                                                                                                                             
  Linker and Libraries:                                                                                                                                                                                                                                                       
    ld='arm-linux-gnueabihf-gcc', ldflags =' -fstack-protector-strong -L/usr/local/lib'                                                                                                                                                                                       
    libpth=/usr/local/lib /usr/lib/gcc/arm-linux-gnueabihf/5/include-fixed /usr/include/arm-linux-gnueabihf /usr/lib /lib/arm-linux-gnueabihf /lib/../lib /usr/lib/arm-linux-gnueabihf /usr/lib/../lib /lib                                                                   
    libs=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt                                                                                                                                                                                                             
    perllibs=-ldl -lm -lpthread -lc -lcrypt                                                                                                                                                                                                                                   
    libc=libc-2.21.so, so=so, useshrplib=true, libperl=libperl.so.5.22                                                                                                                                                                                                         
    gnulibc_version='2.21'                                                                                                                                                                                                                                                     
  Dynamic Linking:                                                                                                                                                                                                                                                             
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'                                                                                                                                                                                                         
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib -fstack-protector-strong'                                                                                                                                                                                         
                                                                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                               
Characteristics of this binary (from libperl):                                                                                                                                                                                                                                 
  Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS                                                                                                                                                                                                                   
                        PERL_DONT_CREATE_GVSV                                                                                                                                                                                                                                 
                        PERL_HASH_FUNC_ONE_AT_A_TIME_HARD                                                                                                                                                                                                                     
                        PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP                                                                                                                                                                                                                 
                        PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV                                                                                                                                                                                                             
                        USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES                                                                                                                                                                                                           
                        USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE                                                                                                                                                                                                         
                        USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO                                                                                                                                                                                                         
                        USE_PERL_ATOF USE_REENTRANT_API                                                                                                                                                                                                                       
  Locally applied patches:                                                                                                                                                                                                                                                     
        DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS default for modules installed from CPAN.                                                                                                                                                           
        DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove overly restrictive DB_File version check.                                                                                                                                                             
        DEBPKG:debian/doc_info - Replace generic man(1) instructions with Debian-specific information.                                                                                                                                                                         
        DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak enc2xs to follow symlinks and ignore missing @INC directories.
        DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove Errno version check due to upgrade problems with long-running processes.
        DEBPKG:debian/libperl_embed_doc - http://bugs.debian.org/186778 Note that libperl-dev package is required for embedded linking
        DEBPKG:fixes/respect_umask - Respect umask during installation
        DEBPKG:debian/writable_site_dirs - Set umask approproately for site install directories
        DEBPKG:debian/extutils_set_libperl_path - EU:MM: set location of libperl.a under /usr/lib
        DEBPKG:debian/no_packlist_perllocal - Don't install .packlist or perllocal.pod for perl or vendor
        DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to the binary targets.
        DEBPKG:debian/instmodsh_doc - Debian policy doesn't install .packlist files for core or vendor.
        DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH as per Debian policy.
        DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to /etc/perl/Net as /usr may not be writable.
        DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
        DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the list of libraries wanted to what we actually need.
        DEBPKG:fixes/net_smtp_docs - [rt.cpan.org #36038] http://bugs.debian.org/100195 Document the Net::SMTP 'Port' option
        DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp skip include directories in /usr/local
        DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/747628 Point users to Debian packages of deprecated core modules
        DEBPKG:debian/squelch-locale-warnings - http://bugs.debian.org/508764 Squelch locale warnings in Debian package maintainer scripts
        DEBPKG:debian/skip-upstream-git-tests - Skip tests specific to the upstream Git repository
        DEBPKG:debian/patchlevel - http://bugs.debian.org/567489 List packaged patches for 5.22.1-9 in patchlevel.h
        DEBPKG:debian/skip-kfreebsd-crash - http://bugs.debian.org/628493 [perl #96272] Skip a crashing test case in t/op/threads.t on GNU/kFreeBSD
        DEBPKG:fixes/document_makemaker_ccflags - http://bugs.debian.org/628522 [rt.cpan.org #68613] Document that CCFLAGS should include $Config{ccflags}
        DEBPKG:debian/find_html2text - http://bugs.debian.org/640479 Configure CPAN::Distribution with correct name of html2text
        DEBPKG:debian/perl5db-x-terminal-emulator.patch - http://bugs.debian.org/668490 Invoke x-terminal-emulator rather than xterm in perl5db.pl
        DEBPKG:debian/cpan-missing-site-dirs - http://bugs.debian.org/688842 Fix CPAN::FirstTime defaults with nonexisting site dirs if a parent is writable
        DEBPKG:fixes/memoize_storable_nstore - [rt.cpan.org #77790] http://bugs.debian.org/587650 Memoize::Storable: respect 'nstore' option not respected
        DEBPKG:debian/regen-skip - Skip a regeneration check in unrelated git repositories
        DEBPKG:debian/makemaker-pasthru - http://bugs.debian.org/758471 Pass LD settings through to subdirectories
        DEBPKG:fixes/pod_man_reproducible_date - http://bugs.debian.org/759405 Support POD_MAN_DATE in Pod::Man for the left-hand footer
        DEBPKG:debian/locale-robustness - http://bugs.debian.org/782068 [perl #124310] Make t/run/locale.t survive missing locales masked by LC_ALL
        DEBPKG:fixes/podman-utc - http://bugs.debian.org/780259 Make the embedded date from Pod::Man reproducible
        DEBPKG:fixes/podman-utc-docs - http://bugs.debian.org/780259 Documentation and test suite updates for UTC fix
        DEBPKG:fixes/podman-empty-date - http://bugs.debian.org/780259 Support an empty POD_MAN_DATE environment variable
        DEBPKG:fixes/podman-pipe - http://bugs.debian.org/777405 Better errors for man pages from standard input
        DEBPKG:debian/pod2man-customized - Update porting/customized.dat for pod2man modifications
        DEBPKG:debian/makemaker-manext - http://bugs.debian.org/247370 Make EU::MakeMaker honour MANnEXT settings in generated manpage headers
        DEBPKG:debian/makemaker_customized - Update t/porting/customized.dat for files patched in Debian
        DEBPKG:debian/do-not-record-build-date - [6baa8db] http://bugs.debian.org/774422 [perl #125830] Allow overriding the compile time in "perl -V" output
        DEBPKG:fixes/podman-source-date-epoch - http://bugs.debian.org/801621 Make Pod::Man honor the SOURCE_DATE_EPOCH environment variable
        DEBPKG:fixes/podman-source-date-epoch-cleanups - http://bugs.debian.org/801621 Coding style and documentation for SOURCE_EPOCH_DATE
        DEBPKG:fixes/podman-source-date-epoch-testfix - http://bugs.debian.org/807086 Guard for building with SOURCE_DATE_EPOCH or POD_MAN_DATE set
        DEBPKG:debian/devel-ppport-reproducibility - http://bugs.debian.org/801523 Sort the list of XS code files when generating RealPPPort.xs
        DEBPKG:fixes/encode-unicode-bom - http://bugs.debian.org/798727 [rt.cpan.org #107043] Address https://rt.cpan.org/Public/Bug/Display.html?id=107043
        DEBPKG:debian/encode-unicode-bom-doc - http://bugs.debian.org/798727 Document Debian backport of Encode::Unicode fix
        DEBPKG:debian/kfreebsd-softupdates - http://bugs.debian.org/796798 Work around Debian Bug#796798
        DEBPKG:fixes/autodie-scope - http://bugs.debian.org/798096 Fix a scoping issue with "no autodie" and the "system" sub
        DEBPKG:debian/debugperl-compat-fix - [perl #127212] http://bugs.debian.org/810326 Disable PERL_TRACK_MEMPOOL for debugging builds
        DEBPKG:fixes/CVE-2015-8607_file_spec_taint_fix - http://bugs.debian.org/810719 [perl #126862] ensure File::Spec::canonpath() preserves taint
        DEBPKG:fixes/mkstemp-umask - http://bugs.debian.org/810924 [perl #127322] [e57270b] Fix umask for mkstemp(3) calls
        DEBPKG:fixes/crosscompile-no-targethost - [perl #127234] Fix the Configure escape with usecrosscompile but no targethost
        DEBPKG:fixes/podlators-no-encode - [rt.cpan.org #111156] Degrade gracefully if utf8 is requested but Encode is not available
        DEBPKG:debian/cross-time-hires - [rt.cpan.org #111391] Add an environment variable to skip running configuration probes
        DEBPKG:fixes/encode-unicode-pod - Unicode.pm: Fix POD error
        DEBPKG:fixes/memoize-pod - [rt.cpan.org #89441] Fix POD errors in Memoize
        DEBPKG:fixes/ok-pod - Added encoding for pod.
        DEBPKG:fixes/CVE-2016-2381_duplicate_env - remove duplicate environment variables from environ
  Built under linux
  Compiled at Mar 13 2016 11:54:18
  @INC:
    /etc/perl
    /usr/local/lib/arm-linux-gnueabihf/perl/5.22.1
    /usr/local/share/perl/5.22.1
    /usr/lib/arm-linux-gnueabihf/perl5/5.22
    /usr/share/perl5
    /usr/lib/arm-linux-gnueabihf/perl/5.22
    /usr/share/perl/5.22
    /usr/local/lib/site_perl
    /usr/lib/arm-linux-gnueabihf/perl-base
    .
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

Otto123

ok, da denke ich morgen nochmal drüber nach.

Wird wohl so sein  ::)

Gute Nacht
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

kleinerDrache

mach das, wäre dankbar wenn ich dann auch erfahren könnte warum und wieso ;)

Gute nacht
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

Otto123

na klar doch melde mich auf alle Fälle zurück.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

peterk_de

#190
Was haltet ihr davon, das ganze noch etwas weiter zu spinnen und FHEM nicht nur die neueste korrekte Firmware für ein Device ermitteln zu lassen, sondern sie gleich auch automatisch downzuloaden, zu entpacken und per Aufruf von set ... fwUpdate <korrekterPfad> zu installieren? Ist doch sonst viel zu viel Weltraumäffchenarbeit ;-)

Ich hab da mal fix was gebastelt:

1. Voraussetzungen: eq3-HTTPMOD gemäß Wiki installiert und funktioniert, set ... fwUpdate in FHEM funktioniert und Linux-OS (getestet mit Ubuntu 16.04)

2. Folgende neuen Funktionen in die 99_myUtils.pm kopieren, ggf. $cachePath anpassen (Speicherort für die Firmwarefiles, muss existieren und für FHEM beschreibbar sein):


sub hm_fwupdate($) {

  my ($updatedevice) = @_;

  my $name = "eq3"; # Name of HTTPMOD-Device, see FHEMWiki
  my $cachePath = "/opt/fhem/cache"; # Where to download firmware files.

  my $ret = "Updating Firmware of $updatedevice: ";
  my $check = ReadingsVal($name,"newFwForDevices","???");   
  if($check ne "no fw-updates needed!") {               
    my @devices = split(',',$check);         
    my $updateFound = 0;
    foreach my $devStr (@devices) {
      my ($dev,$md,$ofw,$idx,$nfw,$date) = $devStr =~ m/^([^\s]+)\s\(([^\s]+)\s\|\sfw_(\d+\.\d+)\s=>\sfw(\d\d)_([\d\.]+)\s\|\s([^\)]+)\)$/;             
      if ($dev eq $updatedevice) {
        $updateFound = 1;
        my $link = ReadingsVal($name,"fw_link-".$idx,"???");   
        my ($filename) = $link =~ /\/([^\/]+)\.tgz/;
        my $fullfilename = "$cachePath/$filename.eq3";
        my $callParams = "$cachePath|$updatedevice|$link|$filename";
        if (-e $fullfilename) {
          $ret .= "New Firmware available and already downloaded, installing it. See Log for progress. \n";
          hm_fwupdate_install($callParams);
        } else {
          $ret .= "New Firmware available. Downloading it to $fullfilename and installing it afterwards. See Log for progress. \n";
          BlockingCall("hm_fwupdate_download", $callParams, "hm_fwupdate_install", 60, "hm_fwupdate_error", $callParams);
        }
        last;
      }   
    }
    if (!$updateFound) {
      $ret .= "Nothing to do for $updatedevice, consider updating $name HTTPMOD-Device first (set $name reread)!";
    } 
  }  else {
    $ret .= "Currently no updates available at all, consider updating $name HTTPMOD-Device first (set $name reread)!";
  }
  return $ret;
}

sub hm_fwupdate_download($) {
my ($callParams) = @_;
my ($cachePath,$updatedevice,$link,$filename) = split(/\|/,$callParams);

Log(3, "Starting Download... Calling /usr/bin/wget -q -O - $link | /bin/tar xvz -C $cachePath");
system("/usr/bin/wget -q -O - $link | /bin/tar xvz -C $cachePath");

return $callParams;
}

sub hm_fwupdate_install($) {
my ($callParams) = @_;
my ($cachePath,$updatedevice,$link,$filename) = split(/\|/,$callParams);
my $fullfilename = "$cachePath/$filename.eq3";

  if (-e $fullfilename) {

    my $updateCmd = "set $updatedevice fwUpdate $fullfilename 30";
    Log(3, "hm_fwupdate: Firmwarefile for $updatedevice found, calling $updateCmd ...");

    fhem($updateCmd);

  } else {
    Log(1, "hm_fwupdate_install: Error Downloading/Unpacking Firmware for $updatedevice  ($callParams)");
  }

}

sub hm_fwupdate_error($) {
my ($callParams) = @_;
my ($cachePath,$updatedevice,$link,$filename) = split(/\|/,$callParams);

Log(1, "hm_fwupdate_error: Error Downloading/Unpacking Firmware for $updatedevice  ($callParams)");
}


3. Devices ab sofort aus FHEM mit folgendem Befehl oben in der Kommandozeile updaten:


{hm_fwupdate("thermostatFlur")}


Das guckt der Reihe nach 1.) ins eq3-Device, ob es für thermostatFlur neue FW gibt, lädt diese dann 2.) runter (merkt aber, ob schonmal runtergeladen und nimmt dann die vorhandene Datei) und 3.) updatet dann gleich das device per set ... fwUpdate

Bitte gern einmal Beta-Testen und Feedback geben :-) Kann
man natürlich auch super als 1-Klick-Updatelösung in Readingsgroup und co einbauen.

Eine Erweiterungsidee hab ich auch schon (setze ich gern bei Interesse um): Generierung des copy-und-paste fertigen flash-ota-Befehls für die Shell mit korrektem Pfad, Seriennummer etc, für diejenigen, bei denen es in FHEM nicht klappt (wie bei mir manchmal ;-))
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

kleinerDrache

Schickes Ding

würde aber bei z.B. dem Dimmer HM-LC-Dim1TPBU-FM nicht funktionieren, da dieser Stromlos gemacht werden muss um ein Update zu starten. Für alle Devices bei denen ein update funktioniert ohne diese stromlos zu machen oder per Tastenkombi in einen UpdateModus zu versetzen sehr cool.
Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT

Otto123

Also ich habe den Dimmer HM-LC-Dim1TPBU-FM voriges Jahr mit update versorgt, ging ohne alles wie bei allen anderen. Allerdings hatte ich schon 2.2 drauf, davor war es wohl so mit stromlos machen. Hab ich hier zumindest gelesen. https://www.elv.de/topic/neue-firmware-hm103020-hm-lc-dim1tpbu-fm-funk-dimmaktor.html

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

peterk_de

also wenn set device fwUpdate funktioniert, klappt das wie ich beschrieben habe  auch, ob nun mit sromlos machen oder nicht - dauert nur ein paar sekunden länger falls der download noch nicht geschehen ist, so dass man es ggf. 2 mal machen muss wegen timeout nachm booten des devices.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

kleinerDrache

Ok meine Dimmer hat im Moment Firmware 2.7 und laut dem Updatecheck gibt es neue Firmware mit 2.9.7 . Diese kann ich so nicht einfach updaten. Liegt aber denke ich dann nicht an Deiner Erweiterung sondern eher an meinem HM-CFG-USB2 (läuft mit Hmland).

Raspi 2 - Hmusb2 , 2xJeeLink , EnOcean pi: Serie14 Geräte , 6xHM-Sec-Rhs , 6xHM-CC-RT-DN, verschiedene MySensor Nodes, ein bischen MQTT