FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: joffi am 14 Juli 2019, 23:43:38

Titel: Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 14 Juli 2019, 23:43:38
Hallo,
habe einen DIY Sensor für 7x Bodenfeuchtemessung zusammengebaut.
https://technikkram.net/2019/05/anleitung-diy-feuchtigkeitssensor-fuer-gartenbewaesserung-bausatz-homematic (https://technikkram.net/2019/05/anleitung-diy-feuchtigkeitssensor-fuer-gartenbewaesserung-bausatz-homematic)
Der Sensor meldet sich bei FHEM als HM_F31103 und Modell "unknown". Für HOMEMATIC hat Jerome Pech ein Addon geschrieben um es dort einzubinden.
Gibt es ein Modul, das man anpassen kann (dachte da an HMConfig_SenTHPL.pm).
Hat einer Erfahrung mit so etwas und kann mir einen Hinweis geben, wo ich mich einlesen kann, wie das ganze funktioniert?
Liebe Grüße
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: papa am 15 Juli 2019, 20:45:34
Bin bin gerade dabei, einige Geräte in dem AskSin++ Addon zu integrieren. Habe mal den aktuellen Stand eingecheckt. Der HB-UNI-Sen-CAP-MOIST-T ist da mit drin. Aber nur mit einen Channel. FHEM unterstützt die variable Anzahl der Kanaäle leider nicht. Bitte das ReadMe beachten und entspreched in FHEM installieren.

https://github.com/pa-pa/AskSinPP/tree/master/examples/custom/contrib/FHEM
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 15 Juli 2019, 23:18:03
Hi,
nett dass du dich so schnell meldest.
Mein Sensor hat das Model "F311". Nachdem ich es in der HMConfig_AskSin...pm angepasst habe wird der Sensor auch definiert. Allerdings bekomme ich keine Werte.
Hier die Ausgabe des seriellen Monitors vom Arduino:
AskSin++ V4.1.0 (Jul 14 2019 18:40:57)
Address Space: 32 - 319
CC init1
CC Version: 14
- ready
iVcc: 3372
eVcc: 3753
Config Freq: 0x21661A
ID: F31103  Serial: JPCAPM0003
*LOW BAT Limit: 22
*Wake-On-Radio: 0
*Sendeintervall: 30
Config changed List1
*HIGHValue (#1): 830
*LOWValue  (#1): 420
Config changed List1
*HIGHValue (#2): 830
*LOWValue  (#2): 420
Config changed List1
*HIGHValue (#3): 830
*LOWValue  (#3): 420
Config changed List1
*HIGHValue (#4): 830
*LOWValue  (#4): 420
Config changed List1
*HIGHValue (#5): 830
*LOWValue  (#5): 420
Config changed List1
*HIGHValue (#6): 830
*LOWValue  (#6): 420
Config changed List1
*HIGHValue (#7): 830
*LOWValue  (#7): 420
+Sensor    (#7) V: 830
+Humidity  (#7) %: 0
+Battery   (#7) V: 38
<- 0E 01 84 70 F31103 000000 00 00 00 07 26  - 3311
+Sensor    (#6) V: 833
+Humidity  (#6) %: 0
+Battery   (#6) V: 38
<- 0E 02 84 70 F31103 000000 00 00 00 06 26  - 3954
+Sensor    (#5) V: 840
+Humidity  (#5) %: 0
+Battery   (#5) V: 38
<- 0E 03 84 70 F31103 000000 00 00 00 05 26  - 4595
+Sensor    (#4) V: 787
+Humidity  (#4) %: 11
+Battery   (#4) V: 38
<- 0E 04 84 70 F31103 000000 00 00 0B 04 26  - 5238
+Sensor    (#3) V: 799
+Humidity  (#3) %: 8
+Battery   (#3) V: 38
<- 0E 05 84 70 F31103 000000 00 00 08 03 26  - 5879
+Sensor    (#2) V: 802
+Humidity  (#2) %: 7
+Battery   (#2) V: 38
<- 0E 06 84 70 F31103 000000 00 00 07 02 26  - 6522
+Sensor    (#1) V: 806
+Humidity  (#1) %: 6
+Battery   (#1) V: 38
<- 0E 07 84 70 F31103 000000 00 00 06 01 26  - 7163

Für die 7 Chanels wird also immer gesendet hier für Channel 1
<- 0E 07 84 70 F31103 000000 00 00 06 01 26  - 7163
Kannst Du mir sagen, was diese Werte bedeuten? Das einzige was mir klar ist, ist F31103 (ID des Senders)
Liebe Grüße
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: papa am 16 Juli 2019, 07:48:06
Sicherlich weil das Addon einen CAP-MOST-T implementiert. Der hat im Kanal 1 einen Temperatursensor und dadurch auch ein unterschiedliches Nachrichtenformat. Du kannst nicht einfach das Model ändern und glaucb dass dann alles wie von Hexenhand funktioniert.
Außerdem scheint für jeden Kanal eine extra Nachricht gesendet zu werden. Das ist bei dem aktuellen Sketch auch nicht mehr der Fall.
Welche Version des Sketches verwendest Du denn ?
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 17 Juli 2019, 01:16:00
Hallo,
habe heute den aktuellen Sketch von Jerome auf die 7 Analog-Kanäle angepasst und hochgeladen. Jetzt sendet er nur noch eine Zeile mit 8 Kanälen (1. ist für die Batterie. Dann habe ich dein Modul hergenommen, und F312   mit Temperatursensor auf F311 kopiert und angepasst (obwohl ich nicht so genau wusste was ich tat:)).###########################
## Eingefügt FP 16.07.2019
###########################
$HMConfig::culHmModel{"F311"} = {name=>"HB-UNI-Sen-CAP-MOIST",st=>'custom',cyc=>'',rxt=>'',lst=>'',chn=>"Batery:1:1,Feuchte:2:8"};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST00"}{fwUpdate} = "<filename>";
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST01"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST02"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST03"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST04"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST05"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST06"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST07"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST08"} = {};
$HMConfig::culHmRegModel{"HB-UNI-Sen-CAP-MOIST"}   = { lowBatteryLimit=>1, transmitInterval=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST01"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST02"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST03"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST04"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST05"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST06"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST07"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST08"} = { highValue=>1, lowValue=>1 };

$customMsg{"HB-UNI-Sen-CAP-MOIST"} = sub {
  my ($msg,$target) = @_;
  my @evtEt=();
  my $cnum = $msg->payloadByte(1) & 0x3f; # get channel from byte 1 of payload
  #Log 1,"cnum ".$cnum;#FP
  #Log 1,"msg ".$msg;
  my $device = main::CUL_HM_id2Hash($msg->from);
  #Log 1,"cnum ".$device;#FP
  push @evtEt,[$device,1,"battery:".(($msg->payloadByte(0) & 0x80)==0x80 ? "low" : "ok")];
  my $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
  #Log 1,"channel ".$channel; #FP
  if( defined($channel) ) {
    #my $temp = $msg->payloadWord(2);
    my $bat = $msg->payloadByte(4);
    push @evtEt,[$channel,1,"batVoltage:".$bat/10 ." V"];
    #push @evtEt,[$channel,1,"temperature:".$temp/10];
    push @evtEt,[$channel,1,"state:".$bat/10];
  }
  for( my $offset=3; $offset < length($msg->payload)/2; $offset += 2 ) {
    $cnum = $msg->payloadByte($offset) & 0x3f; # get channel for next value
#Log 1,"cnum1 ".$cnum; #FP
    $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
#Log 1,"channel ".$channel; #FP
    if( defined($channel) ) {
      my $moist = $msg->payloadByte($offset+1);
      push @evtEt,[$channel,1,"humidity:".$moist." %"];
      push @evtEt,[$channel,1,"state:".$moist];
    }
    else {
      Log 1,"No channel for ".$msg->channelId($cnum);
    }
  }
  return @evtEt;
};

Nun bekomme ich die 8 Analog-Werte nach FHEM.
Das einzige was mich noch glücklicher machen würde ist, wenn ich mit regset highValue 795 die Sensoren auch noch kalibrieren könnte.
Kannst Du mir da auch weiterhelfen?
Aber erstmal vielen vielen  Dank für deinen Tip mit dem aktuellen Sketch!!
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: papa am 18 Juli 2019, 09:22:44
Bist Du Dir sicher, dass da die richtigen Werte ankommen ? Ich habe gerade keine Zeit - auf jeden Fall muss der Battery-Kanal erst mla weg:

$HMConfig::culHmModel{"F311"} = {name=>"HB-UNI-Sen-CAP-MOIST",st=>'custom',cyc=>'',rxt=>'',lst=>'',chn=>"Feuchte:1:7"};

Und dann müssen die Daten noch richtig zu den Kanälen zugeordnet werden. Bin mir aber nicht sicher, ob das so passt.

$customMsg{"HB-UNI-Sen-CAP-MOIST"} = sub {
  my ($msg,$target) = @_;
  my @evtEt=();
  my $cnum = $msg->payloadByte(1) & 0x3f; # get channel from byte 1 of payload
  #Log 1,"cnum ".$cnum;#FP
  #Log 1,"msg ".$msg;
  my $device = main::CUL_HM_id2Hash($msg->from);
  #Log 1,"cnum ".$device;#FP
  push @evtEt,[$device,1,"battery:".(($msg->payloadByte(0) & 0x80)==0x80 ? "low" : "ok")];
  my $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
  #Log 1,"channel ".$channel; #FP
  for( my $offset=0; $offset < length($msg->payload)/2; $offset += 2 ) {
    $cnum = $msg->payloadByte($offset) & 0x3f; # get channel for next value
#Log 1,"cnum1 ".$cnum; #FP
    $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
#Log 1,"channel ".$channel; #FP
    if( defined($channel) ) {
      my $moist = $msg->payloadByte($offset+1);
      push @evtEt,[$channel,1,"humidity:".$moist." %"];
      push @evtEt,[$channel,1,"state:".$moist];
    }
    else {
      Log 1,"No channel for ".$msg->channelId($cnum);
    }
  }
  return @evtEt;
};
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 19 Juli 2019, 00:35:54
Ja ich bin mir sicher, dass die Werte richtig sind.
Mein Sender sendet 8 Kanäle, wobei der 1. Kanal der Batterie Wert ist.
<- 1A 01 86 53 F31100 000000 00 41 22 42 06 43 04 44 02 45 03 46 03 47 01 48 01  - 1568
Wenn ich deinen Vorschlag übernehme, wird der Batteriewert in Feuchte_01 geschrieben.
Ich habe dein Modul jetzt wie folgt abgeändert:
###########################
## Eingefügt FP 16.07.2019
###########################
$HMConfig::culHmModel{"F311"} = {name=>"HB-UNI-Sen-CAP-MOIST",st=>'custom',cyc=>'',rxt=>'c:l',lst=>'1',chn=>"Batterie:1:1,Feuchte:2:8"};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST00"}{fwUpdate} = "<filename>";
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST01"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST02"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST03"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST04"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST05"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST06"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST07"} = {};
$HMConfig::culHmChanSets{"HB-UNI-Sen-CAP-MOIST08"} = {};
$HMConfig::culHmRegModel{"HB-UNI-Sen-CAP-MOIST"}   = { lowBatteryLimit=>1, transmitInterval=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST01"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST02"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST03"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST04"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST05"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST06"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST07"} = { highValue=>1, lowValue=>1 };
$HMConfig::culHmRegChan {"HB-UNI-Sen-CAP-MOIST08"} = { highValue=>1, lowValue=>1 };

$customMsg{"HB-UNI-Sen-CAP-MOIST"} = sub {
  my ($msg,$target) = @_;
  my @evtEt=();
  my $cnum = $msg->payloadByte(1) & 0x3f; # get channel from byte 1 of payload
  #Log 1,"cnum ".$cnum;#FP
  #Log 1,"msg ".$msg;
  my $device = main::CUL_HM_id2Hash($msg->from);
  #Log 1,"cnum ".$device;#FP
  push @evtEt,[$device,1,"battery:".(($msg->payloadByte(0) & 0x80)==0x80 ? "low" : "ok")];
  my $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
  #Log 1,"channel ".$channel; #FP
  if( defined($channel) ) {
    #my $temp = $msg->payloadWord(2);
    my $bat = $msg->payloadByte(2);
    push @evtEt,[$channel,1,"batVoltage:".$bat/10 ." V"];
    #push @evtEt,[$channel,1,"temperature:".$temp/10];
    push @evtEt,[$channel,1,"state:".$bat/10];
  }
  for( my $offset=3; $offset < length($msg->payload)/2; $offset += 2 ) {
    $cnum = $msg->payloadByte($offset) & 0x3f; # get channel for next value
#Log 1,"cnum1 ".$cnum; #FP
    $channel = $main::modules{CUL_HM}{defptr}{$msg->channelId($cnum)};
#Log 1,"channel ".$channel; #FP
    if( defined($channel) ) {
      my $moist = $msg->payloadByte($offset+1);
      push @evtEt,[$channel,1,"humidity:".$moist." %"];
      push @evtEt,[$channel,1,"state:".$moist];
    }
    else {
      Log 1,"No channel for ".$msg->channelId($cnum);
    }
  }
  return @evtEt;
};

Damit klappt alles. Auch kann ich die Regs setzten. Allerdings werden die Werte erst übernommen, nachdem ich einmal den Konfig-Button am Sender gedrückt habe.
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: papa am 19 Juli 2019, 10:16:53
Na super. Dann kann ich das ja mal mit aufnehmen.
Es kann sein, dass der Sensor nur alle X Nachrichten eine Ack fordert. Dann würden auch die Register übertragen werden.
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 20 Juli 2019, 02:06:01
Danke für deine Hilfe!
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: thgorjup am 05 Mai 2020, 21:20:14
Hallo,
hier passiert zwar nichts mher, aber vielleicht kann mir doch jemand meine Frage beantworten.

Ich bekomme 4 Channels angezeigt:


channel_01 HM_F31100_Data
channel_02 HM_F31100_Moisture_01
channel_03 HM_F31100_Moisture_02
channel_04 HM_F31100_Moisture_03


channel_01:  Zeigt mir immer eine Spannung an, welche ich nicht zuordnen kann. Irgendwie sinnlos, da diese auch ständig zwischen 2-11V schwankt.
channel_02:  Zeigt mir z.B. 48% an
channel_03:  Zeigt mir z.B. 91% an. Dieser Wert ändert sich mit der Feuchte des "Capacitive Soil Moisture Sensors"
channel_04:  Ist mit channel_03 identisch.

Ich habe nur einen CAP-SOIL-M Sensor und keinen Temperaturfühler.
Wie kann ich channel_02 und channel_03 interpretieren?

Danke und Gruß
Thomas

Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: papa am 05 Mai 2020, 22:10:41
Channel 1 sollte die Batteriespannung anzeigen. Channel 3 & 4 können einfach ignoriert werden, wenn nichts dran ist.
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: thgorjup am 05 Mai 2020, 22:19:16
Hallo Papa,

die Batteriespannung kann aber nicht 8,9V oder 10.9 V sein. Ich habe 3,3V dran hängen.

Aktuelle Werte:
channel_01: 10,9V
channel_02: 49%
channel_03: 83%
channel_04: 100% (meine letzte Aussage war wohl falsch. Ist immer 100% und somit zu vernachlässigen)




Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 06 Mai 2020, 02:17:22
Hi,
kanste du mal deine empfangene RAWMSG posten?
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: thgorjup am 07 Mai 2020, 00:40:20
@joffi: Kannst du bitte kurz erklären wie ich das auslese?
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: joffi am 10 Mai 2020, 12:46:50
Hi,
im Sensor sollte das bei Internals stehen (bei mir):
HMLAN1_RAWMSG
   
EF31100,0000,0234AB7A,FF,FFA8,048453F311002CD5F200411B4260435344634562464A473C485F

Du kannst aber auch im seriellen Monitor beim Arduino IDE nachschauen was der Sensor sendet.
Ich hae eiene 7 Kanal Sender, der im ersten Kanal die Batteriespannung sendet. Die Werte stehwn ab 41-1B (Batterie Spannung) dann kommen die 7 Feuchtesensoren: 42 - 60, 43-53, 44-63 usw bis 48-5F
Dann könnte man schauen, ob das Modul von PAPA die Werte richtig interpretiert.
Titel: Antw:Modul für HB-UNI-Sen-CAP-MOIST
Beitrag von: edition am 18 August 2020, 17:11:06
Guten Tag

Ich klinke mich einmal in diesen Beitrag ein, weil ich genau das gleiche Problem habe, was auch joffi hatte.

Nach dem Anlernen dea Sensors wird dieser als HM_F31100 im Raum CUL_HM abgelegt. Hier ei List:


Internals:
   DEF        F31100
   FUUID      5f3a86e9-f33f-62ad-daa6-8d550a3e55fdf3ac
   IODev      SCC
   LASTInputDev SCC
   MSGCNT     4
   NAME       HM_F31100
   NOTIFYDEV  global
   NR         581
   NTFY_ORDER 50-HM_F31100
   SCC_MSGCNT 4
   SCC_RAWMSG A0E058453F3110000000000412D4200::-34:SCC
   SCC_RSSI   -34
   SCC_TIME   2020-08-17 17:36:53
   STATE      RESPONSE TIMEOUT:RegisterRead
   TYPE       CUL_HM
   chanNo     01
   lastMsg    No:05 - t:53 s:F31100 d:000000 00412D4200
   protCmdDel 3
   protLastRcv 2020-08-17 17:36:53
   protRcv    4 last_at:2020-08-17 17:36:53
   protResnd  9 last_at:2020-08-17 17:17:27
   protResndFail 3 last_at:2020-08-17 17:17:32
   protSnd    3 last_at:2020-08-17 17:17:12
   protState  CMDs_done_Errors:1
   rssi_at_SCC cnt:4 min:-46.5 max:-33.5 avg:-36.87 lst:-34
   READINGS:
     2020-08-17 15:33:13   D-firmware      1.0
     2020-08-17 15:33:13   D-serialNr      JPCAPM0000
     2020-08-18 13:49:19   RegL_00.       
     2020-08-17 17:17:12   cfgState        updating
     2020-08-17 17:17:32   commState       CMDs_done_Errors:1
     2020-08-17 17:17:32   state           RESPONSE TIMEOUT:RegisterRead
   helper:
     HM_CMDNR   5
     PONtest    1
     cSnd       01000FFFF3110000040000000000,01000FFFF3110000040000000000
     mId        no
     supp_Pair_Rep 0
     cfgChk:
       idRc01     RegL_00.
     cmds:
       TmplKey    :no:1597672380.32461
       TmplTs     1597672380.32461
       cmdKey     1:1:0::HM_F31100:no:01:
       cmdLst:
         clear      [readings|all]
         getConfig  noArg
         getRegRaw  [List0|List1|List2|List3|List4|List5|List6] ... [-PeerChannel-]
         peerBulk   -peer1,peer2,...- [set|unset]
         regBulk    -list-.-peerChn- -addr1:data1- -addr2:data2- ...
         regSet     [prep|exec] -regName- -value- ... [-peerChannel-]
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         update     noArg
         virtual    -noButtons-
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
     expert:
       def        0
       det        0
       raw        1
       tpl        0
     io:
       newChn     +F31100,00,00,00
       nextSend   1597678613.45852
       prefIO     
       rxt        0
       vccu       
       p:
         F31100
         00
         00
         00
     mRssi:
       mNo        05
       io:
         SCC:
           -26
           -26
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       chn        1
       dev        1
     rssi:
       at_SCC:
         avg        -36.875
         cnt        4
         lst        -34
         max        -33.5
         min        -46.5
     tmpl:
Attributes:
   IODev      SCC
   autoReadReg 4_reqStatus
   expert     rawReg
   firmware   1.0
   model      unknown
   room       CUL_HM
   serialNr   JPCAPM0000
   subType    no


Ich bin dem Link aus Antwort 1 gefolgt und habe die HMConfig_AskSinPPCustom.pm und HMMsg.pm nach /opt/fhem/FHEM kopiert. Rechte auf 666 Benutzer:Gruppe auf fhem:dialout gesetzt und fhem neu gestartet. Ändern tut sich allerdings nichts. Ein getConfig erzeugt lediglich das RESPONSE TIMEOUT:RegisterRead!

Jetzt kommen die Fragen auf: Was ist falsch?
Habe ich unter fhem etwas vergessen? Oder liegt es daran, das ich keinen CC1101 sondern einen TRX868 (breit) verwendet habe, ohne im Sketch etwas anzupassen? Habe ich beim löten Mist gebaut?
Zu erwähnen wäre auch noch, das ich damit schon im letzten Jahr begonnen habe. Da war die alternative TRX868 noch genannt. Darum habe ich auch den Sketch vom Juni 2019 genommen.
Wo sollte ich mit der Fehlersuche beginnen?

edition

Da noch nimand geantwortet hat, editiere ich einmal.

Ich bin jetzt vom Produktivsystem auf ein Testsystem umgestiegen. Frisch installiert und nur mit NanoCUL in Homematic Konfiguration ausgestattet. Die beiden Dateien habe ich wieder eingefügt. Auch hier zeigt sich nach dem Anlernen des Sensors das gleiche Bild.

Ein Blick ins Logfile zeigt folgenden Fehler beim Start von fhem:
2020.08.19 15:04:12 1: Error loading file: ./FHEM/HMConfig_AskSinPPCustom.pm:
Excessively long <> operator at ./FHEM/HMConfig_AskSinPPCustom.pm line 20.

Und beim Anlernen des Sensors werden folgende Fehler generiert:
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in hash element at ./FHEM/10_CUL_HM.pm line 8945.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in concatenation (.) or string at ./FHEM/10_CUL_HM.pm line 8948.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in string eq at ./FHEM/10_CUL_HM.pm line 8640.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in pattern match (m//) at ./FHEM/10_CUL_HM.pm line 8656.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in pattern match (m//) at ./FHEM/10_CUL_HM.pm line 8660.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in pattern match (m//) at ./FHEM/10_CUL_HM.pm line 8663.
2020.08.19 15:31:51 1: PERL WARNING: Use of uninitialized value $md in string eq at ./FHEM/10_CUL_HM.pm line 8672.
2020.08.19 15:31:56 1: PERL WARNING: Use of uninitialized value in join or string at ./FHEM/10_CUL_HM.pm line 9038.
2020.08.19 15:31:59 1: PERL WARNING: Use of uninitialized value $st in hash element at ./FHEM/10_CUL_HM.pm line 3883.
2020.08.19 15:31:59 1: PERL WARNING: Use of uninitialized value $md in hash element at ./FHEM/10_CUL_HM.pm line 3884.
2020.08.19 15:31:59 1: PERL WARNING: Use of uninitialized value $st in hash element at ./FHEM/10_CUL_HM.pm line 3895.
2020.08.19 15:31:59 1: PERL WARNING: Use of uninitialized value $md in hash element at ./FHEM/10_CUL_HM.pm line 3896.

Ich gehe davon aus, das dass zusammen hängt. Auf der Suche nach einer Erklärung für die erste Fehlermeldung bin ich allerdings noch nicht weit gekommen.

edition

Nochmal editiert

Fehler gefunden: In den beiden Dateien (HMConfig_AskSinPPCustom.pm und HMMsg.pm) war nach dem herunterladen nicht der Inhalt, der drin sein sollte. Irgendetwas ist beim Download schief gelaufen, oder ich habe falsch geklickt. Mit dem richtigen Inhalt funktioniert alles.

edition