SDM120 Modbus RTU reading Power__W aktualisiert sich nicht von alleine

Begonnen von e_brandt, 13 Oktober 2022, 17:52:45

Vorheriges Thema - Nächstes Thema

e_brandt

Zitat von: Nobbynews am 14 Oktober 2022, 00:47:36
Sehr merkwürdig..
Hängt noch etwas anderes am Bus?
Bitte noch ein list vom IODev.

noch ist nichts anderes am Bus, hier ein list vom IODev
Internals:
   CFGFN     
   DEF        /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KB6XF-if00-port0@2400
   DeviceName /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KB6XF-if00-port0@2400
   EXPECT     idle
   FD         24
   FUUID      63498784-f33f-43c0-47a8-02c39e8ed83988e9
   LASTOPEN   1665763204.65156
   NAME       ModbusLine
   NOTIFYDEV  global
   NR         535
   NTFY_ORDER 50-ModbusLine
   PARTIAL   
   STATE      opened
   SerialConn 1
   TYPE       Modbus
   devioLoglevel 3
   eventCount 2
   nextOpenDelay 60
   Helper:
     DBLOG:
       state:
         DBLogging:
           TIME       1665763204.66641
           VALUE      CONNECTED
   READ:
   READINGS:
     2022-10-14 18:00:04   state           opened
Attributes:
   DbLogExclude .*

e_brandt

Ich frage nochmal ganz blöde in die Runde...Muss ich noch irgendwelche Attribute setzen oder müssen die Readings einfach so kommen. Ich habe bisjetzt nichts weiter an Attr gesetzt?

Ich bin leider noch immer nicht sooo fit mit Fhem.

Nobbynews

#17
Setz' mal verbose im device auf 5 und poste den Log-Ausschnitt.
attr HA_SDM120M_1 verbose 5

Zum Vergleich schon mal mein Log-Auszug:
2022.10.15 05:47:35 4: SDM120: GetUpdate (V4.4.11 - 5.10.2022) called from Fhem internal timer
2022.10.15 05:47:35 4: SDM120: UpdateTimer called from GetUpdate with cmd next sets timer to call update function in 30.0 sec at 05:48:05.105, interval 30
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash full object list: h12 h18 h2 h20 h28 h63744 h63760 h63776 h86 i0 i12 i18 i24 i258 i264 i30 i342 i344 i6 i70 i72 i74 i76 i78 i84 i86 i88 i90 i92 i94
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Voltage__V, delay not over (delay 150, 89.8729929924011 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i6 len 2 Current__A
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i12 len 2 Power__W
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i18 len 2 Power__VA
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i24 len 2 Power__VAr
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip PowerFactor, delay not over (delay 300, 119.877537965775 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i70 len 2 Frequency__Hz
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i72 len 2 Energy_import__kWh
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i74 len 2 Energy_export__kWh
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Energy_import__kVArh, delay not over (delay 510, 89.0037457942963 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Energy_export__kVArh, delay not over (delay 510, 89.002876996994 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will request i84 len 2 Power_Sum_demand__W
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Power_Max_demand__W, delay not over (delay 330, 299.142822980881 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Power_Import_demand__W, delay not over (delay 330, 299.141946792603 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Power_Max_Import_demand__W, delay not over (delay 330, 299.141073942184 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Power_Export_demand__W, delay not over (delay 330, 299.140225887299 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Power_Max_Export_demand__W, delay not over (delay 330, 299.139285802841 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Current_demand__A, delay not over (delay 210, 88.268129825592 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Current_Max_demand__A, delay not over (delay 390, 118.371245861053 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Energy_total__kWh, delay not over (delay 60, 28.1106939315796 passed)
2022.10.15 05:47:35 5: SDM120: CreateUpdateHash will skip Energy_total__kVArh, delay not over (delay 60, 28.1087257862091 passed)
2022.10.15 05:47:35 4: SDM120: CombineUpdateHash objHash keys before combine: i74,i18,i84,i70,i6,i12,i72,i24
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash tries to combine read commands
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i12 len 2 Power__W to span 8, drop read for i12
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i18 len 2 Power__VA to span 14, drop read for i18
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i24 len 2 Power__VAr to span 20, drop read for i24
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash cant combine i6 len 2 Current__A with i70 len 2 Frequency__Hz, span 66 would be bigger than max 30
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh to span 4, drop read for i72
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i70 len 2 Frequency__Hz with i74 len 2 Energy_export__kWh to span 6, drop read for i74
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash combine i70 len 2 Frequency__Hz with i84 len 2 Power_Sum_demand__W to span 16, drop read for i84
2022.10.15 05:47:35 5: SDM120: CombineUpdateHash keys are now i70,i6
2022.10.15 05:47:35 4: SDM120: GetUpdate will now create requests for i6 len 20 (combined i6 len 2 Current__A with i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr), i70 len 16 (combined i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh and i74 len 2 Energy_export__kWh and i84 len 2 Power_Sum_demand__W)
2022.10.15 05:47:35 4: SDM120: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 5, read fc 4 i6, len 20, master device SDM120, reading Current__A (getUpdate for combined i6 len 2 Current__A with i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr)
2022.10.15 05:47:35 4: SDM120: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 5, read fc 4 i70, len 16, master device SDM120, reading Frequency__Hz (getUpdate for combined i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh and i74 len 2 Energy_export__kWh and i84 len 2 Power_Sum_demand__W)
2022.10.15 05:47:35 5: SDM120: ParseDataString called from HandleResponse with data hex 3deb851f0000000000000000418b3333000000000000000041bb4c64000000000000000041780000, type i, adr 6, op read
2022.10.15 05:47:35 5: SDM120: SplitDataString called from ParseDataString with data hex 3deb851f0000000000000000418b3333000000000000000041bb4c64000000000000000041780000, type i, adr 6, valuesLen 20, op read
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i8
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i9
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i10
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i11
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i14
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i15
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i16
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i17
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i20
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i21
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i22
2022.10.15 05:47:35 5: SDM120: SplitDataString has no information about handling i23
2022.10.15 05:47:35 5: SDM120: CreateDataObjects called from ParseDataString with objList i6,i12,i18,i24
2022.10.15 05:47:35 5: SDM120: CreateDataObjects sortedList i6,i12,i18,i24
2022.10.15 05:47:35 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:35 5: SDM120: CreateDataObjects unpacked 3deb851f with f> to 0.115000002086163
2022.10.15 05:47:35 5: SDM120: FormatVal for CreateDataObjects formats 0.115000002086163 with format %.2f A, result is 0.12 A
2022.10.15 05:47:35 4: SDM120: CreateDataObjects assigns value 0.12 A to Current__A
2022.10.15 05:47:35 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:35 5: SDM120: CreateDataObjects unpacked 418b3333 with f> to 17.3999996185303
2022.10.15 05:47:35 5: SDM120: FormatVal for CreateDataObjects formats 17.3999996185303 with format %.f W, result is 17 W
2022.10.15 05:47:35 4: SDM120: CreateDataObjects assigns value 17 W to Power__W
2022.10.15 05:47:35 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:35 5: SDM120: CreateDataObjects unpacked 41bb4c64 with f> to 23.4123001098633
2022.10.15 05:47:35 5: SDM120: FormatVal for CreateDataObjects formats 23.4123001098633 with format %.1f VA, result is 23.4 VA
2022.10.15 05:47:35 4: SDM120: CreateDataObjects assigns value 23.4 VA to Power__VA
2022.10.15 05:47:35 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:35 5: SDM120: CreateDataObjects unpacked 41780000 with f> to 15.5
2022.10.15 05:47:35 5: SDM120: FormatVal for CreateDataObjects formats 15.5 with format %.1f VAr, result is 15.5 VAr
2022.10.15 05:47:35 4: SDM120: CreateDataObjects assigns value 15.5 VAr to Power__VAr
2022.10.15 05:47:35 5: SDM120: ParseDataString created 4 readings
2022.10.15 05:47:36 5: SDM120: ParseDataString called from HandleResponse with data hex 424828f642c6245a0000000042b71eb80000000000000000000000004215b234, type i, adr 70, op read
2022.10.15 05:47:36 5: SDM120: SplitDataString called from ParseDataString with data hex 424828f642c6245a0000000042b71eb80000000000000000000000004215b234, type i, adr 70, valuesLen 16, op read
2022.10.15 05:47:36 5: SDM120: SplitDataString has no information about handling i80
2022.10.15 05:47:36 5: SDM120: SplitDataString has no information about handling i81
2022.10.15 05:47:36 5: SDM120: SplitDataString has no information about handling i82
2022.10.15 05:47:36 5: SDM120: SplitDataString has no information about handling i83
2022.10.15 05:47:36 5: SDM120: CreateDataObjects called from ParseDataString with objList i70,i72,i74,i76,i78,i84
2022.10.15 05:47:36 5: SDM120: CreateDataObjects sortedList i70,i72,i74,i76,i78,i84
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 424828f6 with f> to 50.0400009155273
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 50.0400009155273 with format %.2f Hz, result is 50.04 Hz
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 50.04 Hz to Frequency__Hz
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 42c6245a with f> to 99.0709991455078
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 99.0709991455078 with format %.3f kWh, result is 99.071 kWh
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 99.071 kWh to Energy_import__kWh
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 00000000 with f> to 0
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 0 with format %.3f kWh, result is 0.000 kWh
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 0.000 kWh to Energy_export__kWh
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 42b71eb8 with f> to 91.5599975585938
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 91.5599975585938 with format %.3f kVArh, result is 91.560 kVArh
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 91.560 kVArh to Energy_import__kVArh
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 00000000 with f> to 0
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 0 with format %.3f kVArh, result is 0.000 kVArh
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 0.000 kVArh to Energy_export__kVArh
2022.10.15 05:47:36 5: SDM120: CreateParseInfoCache called
2022.10.15 05:47:36 5: SDM120: CreateDataObjects unpacked 4215b234 with f> to 37.4240264892578
2022.10.15 05:47:36 5: SDM120: FormatVal for CreateDataObjects formats 37.4240264892578 with format %.1f, result is 37.4
2022.10.15 05:47:36 4: SDM120: CreateDataObjects assigns value 37.4 to Power_Sum_demand__W
2022.10.15 05:47:36 5: SDM120: ParseDataString created 6 readings
2022.10.15 05:48:05 4: SDM120: GetUpdate (V4.4.11 - 5.10.2022) called from Fhem internal timer
2022.10.15 05:48:05 4: SDM120: UpdateTimer called from GetUpdate with cmd next sets timer to call update function in 30.0 sec at 05:48:35.108, interval 30
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash full object list: h12 h18 h2 h20 h28 h63744 h63760 h63776 h86 i0 i12 i18 i24 i258 i264 i30 i342 i344 i6 i70 i72 i74 i76 i78 i84 i86 i88 i90 i92 i94
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Voltage__V, delay not over (delay 150, 119.877296209335 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will request i6 len 2 Current__A
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will request i12 len 2 Power__W
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will request i18 len 2 Power__VA
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will request i24 len 2 Power__VAr
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip PowerFactor, delay not over (delay 300, 149.881841182709 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Frequency__Hz, delay not over (delay 60, 29.1003501415253 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_import__kWh, delay not over (delay 60, 29.0985660552979 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_export__kWh, delay not over (delay 60, 29.0968780517578 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_import__kVArh, delay not over (delay 510, 29.0951490402222 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_export__kVArh, delay not over (delay 510, 29.0933032035828 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will request i84 len 2 Power_Sum_demand__W
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Power_Max_demand__W, delay not over (delay 330, 329.147126197815 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Power_Import_demand__W, delay not over (delay 330, 329.146250009537 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Power_Max_Import_demand__W, delay not over (delay 330, 329.145377159119 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Power_Export_demand__W, delay not over (delay 330, 329.144529104233 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Power_Max_Export_demand__W, delay not over (delay 330, 329.143589019775 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Current_demand__A, delay not over (delay 210, 118.272433042526 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Current_Max_demand__A, delay not over (delay 390, 148.375549077988 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_total__kWh, delay not over (delay 60, 58.1149971485138 passed)
2022.10.15 05:48:05 5: SDM120: CreateUpdateHash will skip Energy_total__kVArh, delay not over (delay 60, 58.1130290031433 passed)
2022.10.15 05:48:05 4: SDM120: CombineUpdateHash objHash keys before combine: i12,i6,i18,i84,i24
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash tries to combine read commands
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i12 len 2 Power__W to span 8, drop read for i12
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i18 len 2 Power__VA to span 14, drop read for i18
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash combine i6 len 2 Current__A with i24 len 2 Power__VAr to span 20, drop read for i24
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash cant combine i6 len 2 Current__A with i84 len 2 Power_Sum_demand__W, span 80 would be bigger than max 30
2022.10.15 05:48:05 5: SDM120: CombineUpdateHash keys are now i6,i84
2022.10.15 05:48:05 4: SDM120: GetUpdate will now create requests for i6 len 20 (combined i6 len 2 Current__A with i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr), i84 len 2 (Power_Sum_demand__W)
2022.10.15 05:48:05 4: SDM120: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 5, read fc 4 i6, len 20, master device SDM120, reading Current__A (getUpdate for combined i6 len 2 Current__A with i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr)
2022.10.15 05:48:05 4: SDM120: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 5, read fc 4 i84, len 2, master device SDM120, reading Power_Sum_demand__W (getUpdate for Power_Sum_demand__W len 2)
2022.10.15 05:48:05 5: SDM120: ParseDataString called from HandleResponse with data hex 3deb851f0000000000000000418c0000000000000000000041bc17ba00000000000000004179999a, type i, adr 6, op read
2022.10.15 05:48:05 5: SDM120: SplitDataString called from ParseDataString with data hex 3deb851f0000000000000000418c0000000000000000000041bc17ba00000000000000004179999a, type i, adr 6, valuesLen 20, op read
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i8
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i9
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i10
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i11
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i14
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i15
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i16
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i17
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i20
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i21
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i22
2022.10.15 05:48:05 5: SDM120: SplitDataString has no information about handling i23
2022.10.15 05:48:05 5: SDM120: CreateDataObjects called from ParseDataString with objList i6,i12,i18,i24
2022.10.15 05:48:05 5: SDM120: CreateDataObjects sortedList i6,i12,i18,i24
2022.10.15 05:48:05 5: SDM120: CreateParseInfoCache called
2022.10.15 05:48:05 5: SDM120: CreateDataObjects unpacked 3deb851f with f> to 0.115000002086163
2022.10.15 05:48:05 5: SDM120: FormatVal for CreateDataObjects formats 0.115000002086163 with format %.2f A, result is 0.12 A
2022.10.15 05:48:05 4: SDM120: CreateDataObjects assigns value 0.12 A to Current__A
2022.10.15 05:48:05 5: SDM120: CreateParseInfoCache called
2022.10.15 05:48:05 5: SDM120: CreateDataObjects unpacked 418c0000 with f> to 17.5
2022.10.15 05:48:05 5: SDM120: FormatVal for CreateDataObjects formats 17.5 with format %.f W, result is 18 W
2022.10.15 05:48:05 4: SDM120: CreateDataObjects assigns value 18 W to Power__W
2022.10.15 05:48:05 5: SDM120: CreateParseInfoCache called
2022.10.15 05:48:05 5: SDM120: CreateDataObjects unpacked 41bc17ba with f> to 23.5115852355957
2022.10.15 05:48:05 5: SDM120: FormatVal for CreateDataObjects formats 23.5115852355957 with format %.1f VA, result is 23.5 VA
2022.10.15 05:48:05 4: SDM120: CreateDataObjects assigns value 23.5 VA to Power__VA
2022.10.15 05:48:05 5: SDM120: CreateParseInfoCache called
2022.10.15 05:48:05 5: SDM120: CreateDataObjects unpacked 4179999a with f> to 15.6000003814697
2022.10.15 05:48:05 5: SDM120: FormatVal for CreateDataObjects formats 15.6000003814697 with format %.1f VAr, result is 15.6 VAr
2022.10.15 05:48:05 4: SDM120: CreateDataObjects assigns value 15.6 VAr to Power__VAr
2022.10.15 05:48:05 5: SDM120: ParseDataString created 4 readings

Nobbynews

#18
Zitat von: e_brandt am 14 Oktober 2022, 18:01:21
noch ist nichts anderes am Bus, hier ein list vom IODev
Irgendetwas ist an Deiner Konfiguration in die Hose gegangen.
Wenn ich das IODev mit meinem vergleiche, fehlt neben dem schon angesprochenen FVERSION auch noch
MODE       master
....
REMEMBER:
     lid        1
     lname      SDM72
     lrecv      1665819012.61326
     lsend      1665819012.58294
   defptr:
     SDM120     5
     SDM72      1

Frage:
FEHM ist aktuell?
Device::SerialPort ist installiert? -> müsste ja sein, da Readings reinkommen
Was verbirgt sich inter der FTDI-Hardware? RS232?  -> Der SDM hat RS485.
ZitatRS232 ist voll-duplex und kann Daten in beide Richtungen übertragen, d.h. empfangen und senden. RS485 ist halb-duplex und kann immer nur in eine Richtung übertragen. Daher benötigt man einen Master, der die den Datenfluss steuert / kontrolliert.
Die beiden Leitungen A und B richtig angeklemmt?
Schon mal einen Neustart gemacht?

e_brandt

Zitat von: Nobbynews am 15 Oktober 2022, 09:43:22
Irgendetwas ist an Deiner Konfiguration in die Hose gegangen.
Wenn ich das IODev mit meinem vergleiche, fehlt neben dem schon angesprochenen FVERSION auch noch
MODE       master
....
REMEMBER:
     lid        1
     lname      SDM72
     lrecv      1665819012.61326
     lsend      1665819012.58294
   defptr:
     SDM120     5
     SDM72      1

Frage:
FEHM ist aktuell?
Device::SerialPort ist installiert? -> müsste ja sein, da Readings reinkommen
Was verbirgt sich inter der FTDI-Hardware? RS232?  -> Der SDM hat RS485.Die beiden Leitungen A und B richtig angeklemmt?
Schon mal einen Neustart gemacht?

Also der Adapter ist ein USB zu RS485 von Waveshare. 
Fhem ist aktuell.
Leitungen a-b habe ich schon gedreht, dann kommt garnix mehr.
Termination 120 Ohm alle Varianten ausprobiert (mit 1, vorne hinten und garkeinem)

Hier ein Log vom sdm1202022.10.15 10:44:59 4: HA_SDM120Scheune: GetUpdate (V4.4.11 - 5.10.2022) called from Fhem internal timer
2022.10.15 10:44:59 4: HA_SDM120Scheune: UpdateTimer called from GetUpdate with cmd next sets timer to call update function in 30.0 sec at 10:45:29.090, interval 30
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash full object list: h12 h18 h2 h20 h28 h63744 h63760 h63776 h86 i0 i12 i18 i24 i258 i264 i30 i342 i344 i6 i70 i72 i74 i76 i78 i84 i86 i88 i90 i92 i94
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i0 len 2 Voltage__V
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i6 len 2 Current__A
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i12 len 2 Power__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i18 len 2 Power__VA
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i24 len 2 Power__VAr
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i30 len 2 PowerFactor
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i70 len 2 Frequency__Hz
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i72 len 2 Energy_import__kWh
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i74 len 2 Energy_export__kWh
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i76 len 2 Energy_import__kVArh
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i78 len 2 Energy_export__kVArh
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i84 len 2 Power_Sum_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i86 len 2 Power_Max_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i88 len 2 Power_Import_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i90 len 2 Power_Max_Import_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i92 len 2 Power_Export_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i94 len 2 Power_Max_Export_demand__W
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will skip Current_demand__A, delay not over (delay 210, 25.8381078243256 passed)
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will skip Current_Max_demand__A, delay not over (delay 390, 145.832911014557 passed)
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i342 len 2 Energy_total__kWh
2022.10.15 10:44:59 5: HA_SDM120Scheune: CreateUpdateHash will request i344 len 2 Energy_total__kVArh
2022.10.15 10:44:59 4: HA_SDM120Scheune: CombineUpdateHash objHash keys before combine: i344,i92,i76,i72,i78,i84,i74,i88,i86,i94,i12,i18,i24,i6,i30,i90,i70,i342,i0
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash tries to combine read commands
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i0 len 2 Voltage__V with i6 len 2 Current__A to span 8, drop read for i6
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i0 len 2 Voltage__V with i12 len 2 Power__W to span 14, drop read for i12
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i0 len 2 Voltage__V with i18 len 2 Power__VA to span 20, drop read for i18
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i0 len 2 Voltage__V with i24 len 2 Power__VAr to span 26, drop read for i24
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash cant combine i0 len 2 Voltage__V with i30 len 2 PowerFactor, span 32 would be bigger than max 30
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash cant combine i30 len 2 PowerFactor with i70 len 2 Frequency__Hz, span 42 would be bigger than max 30
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh to span 4, drop read for i72
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i74 len 2 Energy_export__kWh to span 6, drop read for i74
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i76 len 2 Energy_import__kVArh to span 8, drop read for i76
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i78 len 2 Energy_export__kVArh to span 10, drop read for i78
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i84 len 2 Power_Sum_demand__W to span 16, drop read for i84
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i86 len 2 Power_Max_demand__W to span 18, drop read for i86
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i88 len 2 Power_Import_demand__W to span 20, drop read for i88
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i90 len 2 Power_Max_Import_demand__W to span 22, drop read for i90
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i92 len 2 Power_Export_demand__W to span 24, drop read for i92
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i70 len 2 Frequency__Hz with i94 len 2 Power_Max_Export_demand__W to span 26, drop read for i94
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash cant combine i70 len 2 Frequency__Hz with i342 len 2 Energy_total__kWh, span 274 would be bigger than max 30
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash combine i342 len 2 Energy_total__kWh with i344 len 2 Energy_total__kVArh to span 4, drop read for i344
2022.10.15 10:44:59 5: HA_SDM120Scheune: CombineUpdateHash keys are now i30,i70,i342,i0
2022.10.15 10:44:59 4: HA_SDM120Scheune: GetUpdate will now create requests for i0 len 26 (combined i0 len 2 Voltage__V with i6 len 2 Current__A and i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr), i30 len 2 (PowerFactor), i70 len 26 (combined i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh and i74 len 2 Energy_export__kWh and i76 len 2 Energy_import__kVArh and i78 len 2 Energy_export__kVArh and i84 len 2 Power_Sum_demand__W and i86 len 2 Power_Max_demand__W and i88 len 2 Power_Import_demand__W and i90 len 2 Power_Max_Import_demand__W and i92 len 2 Power_Export_demand__W and i94 len 2 Power_Max_Export_demand__W), i342 len 4 (combined i342 len 2 Energy_total__kWh with i344 len 2 Energy_total__kVArh)
2022.10.15 10:44:59 4: HA_SDM120Scheune: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 2, read fc 4 i0, len 26, master device HA_SDM120Scheune, reading Voltage__V (getUpdate for combined i0 len 2 Voltage__V with i6 len 2 Current__A and i12 len 2 Power__W and i18 len 2 Power__VA and i24 len 2 Power__VAr)
2022.10.15 10:44:59 4: HA_SDM120Scheune: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 2, read fc 4 i30, len 2, master device HA_SDM120Scheune, reading PowerFactor (getUpdate for PowerFactor len 2)
2022.10.15 10:44:59 4: HA_SDM120Scheune: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 2, read fc 4 i70, len 26, master device HA_SDM120Scheune, reading Frequency__Hz (getUpdate for combined i70 len 2 Frequency__Hz with i72 len 2 Energy_import__kWh and i74 len 2 Energy_export__kWh and i76 len 2 Energy_import__kVArh and i78 len 2 Energy_export__kVArh and i84 len 2 Power_Sum_demand__W and i86 len 2 Power_Max_demand__W and i88 len 2 Power_Import_demand__W and i90 len 2 Power_Max_Import_demand__W and i92 len 2 Power_Export_demand__W and i94 len 2 Power_Max_Export_demand__W)
2022.10.15 10:44:59 4: HA_SDM120Scheune: DoRequest called from GetUpdate created new request, read buffer empty,
request: id 2, read fc 4 i342, len 4, master device HA_SDM120Scheune, reading Energy_total__kWh (getUpdate for combined i342 len 2 Energy_total__kWh with i344 len 2 Energy_total__kVArh)
2022.10.15 10:45:01 5: HA_SDM120Scheune: ParseDataString called from HandleResponse with data hex bf779b6d, type i, adr 30, op read
2022.10.15 10:45:01 5: HA_SDM120Scheune: SplitDataString called from ParseDataString with data hex bf779b6d, type i, adr 30, valuesLen 2, op read
2022.10.15 10:45:01 5: HA_SDM120Scheune: CreateDataObjects called from ParseDataString with objList i30
2022.10.15 10:45:01 5: HA_SDM120Scheune: CreateDataObjects sortedList i30
2022.10.15 10:45:01 5: HA_SDM120Scheune: CreateParseInfoCache called
2022.10.15 10:45:01 5: HA_SDM120Scheune: CreateDataObjects unpacked bf779b6d with f> to -0.967215359210968
2022.10.15 10:45:01 5: HA_SDM120Scheune: FormatVal for CreateDataObjects formats -0.967215359210968 with format %.1f, result is -1.0
2022.10.15 10:45:01 4: HA_SDM120Scheune: CreateDataObjects assigns value -1.0 to PowerFactor
2022.10.15 10:45:01 5: HA_SDM120Scheune: ParseDataString created 1 readings
2022.10.15 10:45:04 5: HA_SDM120Scheune: ParseDataString called from HandleResponse with data hex 450179df44040010, type i, adr 342, op read
2022.10.15 10:45:04 5: HA_SDM120Scheune: SplitDataString called from ParseDataString with data hex 450179df44040010, type i, adr 342, valuesLen 4, op read
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateDataObjects called from ParseDataString with objList i342,i344
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateDataObjects sortedList i342,i344
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateParseInfoCache called
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateDataObjects unpacked 450179df with f> to 2071.61694335938
2022.10.15 10:45:04 5: HA_SDM120Scheune: FormatVal for CreateDataObjects formats 2071.61694335938 with format %.3f kWh, result is 2071.617 kWh
2022.10.15 10:45:04 4: HA_SDM120Scheune: CreateDataObjects assigns value 2071.617 kWh to Energy_total__kWh
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateParseInfoCache called
2022.10.15 10:45:04 5: HA_SDM120Scheune: CreateDataObjects unpacked 44040010 with f> to 528.0009765625
2022.10.15 10:45:04 5: HA_SDM120Scheune: FormatVal for CreateDataObjects formats 528.0009765625 with format %.3f kVArh, result is 528.001 kVArh
2022.10.15 10:45:04 4: HA_SDM120Scheune: CreateDataObjects assigns value 528.001 kVArh to Energy_total__kVArh
2022.10.15 10:45:04 5: HA_SDM120Scheune: ParseDataString created 2 readings

Nobbynews

Zitat von: e_brandt am 15 Oktober 2022, 10:47:06
Also der Adapter ist ein USB zu RS485 von Waveshare. 
Fhem ist aktuell.
Leitungen a-b habe ich schon gedreht, dann kommt garnix mehr.
Termination 120 Ohm alle Varianten ausprobiert (mit 1, vorne hinten und garkeinem)
Gut, dann kann das schon mal ausschließen.

Aber warum heißt der Zähler jetzt "HA_SDM120Scheune" ?
Umbenannt von "HA_SDM120M_1"?
Das Log sieht mMn OK aus.

e_brandt

Ich habe auch die devices noch einmal gelöscht un d von vorn angefange, es ändert sich nichts, dieses fversion kommt nicht.

hier nochmal ein list vom sdm120

Internals:
   CFGFN     
   DEF        1 30
   FUUID      634a6f2c-f33f-43c0-d811-18fc3bb5d50d33eb
   IODev      ModbusLine
   Interval   30
   MODBUSID   1
   MODE       master
   MODULEVERSION Modbus 4.4.11 - 5.10.2022
   NAME       HA_SDM120Scheune
   NOTIFYDEV  global
   NR         536
   NTFY_ORDER 50-HA_SDM120Scheune
   PROTOCOL   RTU
   STATE      opened
   TYPE       ModbusSDM120
   eventCount 43
   FRAME:
   Helper:
     DBLOG:
       state:
         DBLogging:
           TIME       1665822509.0161
           VALUE      opened
   READ:
   READINGS:
     2022-10-15 10:49:33   Current_Max_demand__A 19.19
     2022-10-15 10:52:33   Current_demand__A 2.83
     2022-10-15 10:28:29   Demand_Period__minutes 60
     2022-10-15 10:52:34   Energy_total__kVArh 528.016 kVArh
     2022-10-15 10:52:34   Energy_total__kWh 2071.662 kWh
     2022-10-15 10:28:30   Modbus_Node_adr 2
     2022-10-15 10:28:30   Modbus_Parity_Stop 1stop.bit_no.parity
     2022-10-15 10:28:31   Modbus_Speed__baud 2400
     2022-10-15 10:50:31   PowerFactor     -1.0
     2022-10-15 10:32:24   Power__W        -1071 W
     2022-10-15 10:28:33   System_Measurement_mode import+export
     2022-10-15 10:28:30   System_Pulse_Width__ms 60 ms
     2022-10-15 10:28:32   System_Pulse_constant 0.001kWh/imp
     2022-10-15 10:28:31   TimeOfScrollDisplay 0 sec
     2022-10-15 10:53:21   state           opened
   REMEMBER:
     lrecv      1665823981.44446
     lsend      1665824011.15893
   gotReadings:
     Energy_total__kVArh 528.016 kVArh
     Energy_total__kWh 2071.662 kWh
   lastRead:
     h12        1665822510.20511
     h18        1665822510.20755
     h2         1665822509.25679
     h20        1665822510.20911
     h28        1665822511.03205
     h63744     1665822511.8641
     h63760     1665822512.69441
     h63776     1665822513.52593
     i12        1665822744.73717
     i258       1665823953.30074
     i264       1665823773.26054
     i30        1665823831.28038
     i342       1665823954.14909
     i344       1665823954.15056
Attributes:
   DbLogExclude .*
   room       Modbus
   verbose    1


vom MODBUSLINE

Internals:
   DEF        /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KB6XF-if00-port0@2400
   DeviceName /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AG0KB6XF-if00-port0@2400
   EXPECT     idle
   FD         16
   FUUID      63498784-f33f-43c0-47a8-02c39e8ed83988e9
   LASTOPEN   1665821939.16843
   MODE       master
   NAME       ModbusLine
   NOTIFYDEV  global
   NR         429
   NTFY_ORDER 50-ModbusLine
   PARTIAL   
   PROTOCOL   RTU
   STATE      opened
   SerialConn 1
   TYPE       Modbus
   devioLoglevel 3
   eventCount 1
   nextOpenDelay 60
   FRAME:
   QUEUE:
   READ:
     BUFFER     
   READINGS:
     2022-10-15 10:18:59   state           opened
   REMEMBER:
     lid        1
     lname      ModbusLine
     lrecv      1665823981.44356
     lsend      1665824227.19843
   defptr:
     HA_SDM120Scheune 1
     ScheuneSDM120_Master 1
Attributes:
   DbLogExclude .*
   room       Modbus


vom modbusattr:

Internals:
   CFGFN     
   DEF        1 30 RTU
   FUUID      634a6e30-f33f-43c0-8fdb-f19e71112c71578a
   IODev      ModbusLine
   Interval   30
   MODBUSID   1
   MODE       master
   MODULEVERSION Modbus 4.4.11 - 5.10.2022
   NAME       ScheuneSDM120_Master
   NOTIFYDEV  global
   NR         498
   NTFY_ORDER 50-ScheuneSDM120_Master
   PROTOCOL   RTU
   STATE      active
   TYPE       ModbusAttr
   eventCount 3
   Helper:
     DBLOG:
       state:
         DBLogging:
           TIME       1665822256.68624
           VALUE      opened
   READINGS:
     2022-10-15 10:24:30   state           active
Attributes:
   DbLogExclude .*
   room       Modbus

e_brandt

Zitat von: Nobbynews am 15 Oktober 2022, 10:57:19
Gut, dann kann das schon mal ausschließen.

Aber warum heißt der Zähler jetzt "HA_SDM120Scheune" ?
Umbenannt von "HA_SDM120M_1"?
Das Log sieht mMn OK aus.

ja, habe ich jetzt umbenannt, zur allgemeinen Verwirrung :o

Nobbynews

#23
Zitat von: e_brandt am 15 Oktober 2022, 10:59:18
Ich habe auch die devices noch einmal gelöscht un d von vorn angefange, es ändert sich nichts, dieses fversion kommt nicht.
Dafür sieht der Rest aber mMn schon besser aus.
Laut Log-Auszug hat der Zähler aber die ID 2.

Das device ModbusATTR benötigts Du für die Verwendung des  Moduls nicht.

Einige Readings werden nur einmal täglich erneuert. Das kann also dauern.

e_brandt

Zitat von: Nobbynews am 15 Oktober 2022, 11:06:09
Dafür sieht der Rest aber mMn schon besser aus.
Laut Log-Auszug hat der Zähler aber die ID 2.

Das device ModbusATTR benötigts Du für die Verwendung des  Moduls nicht.

Einige Readings werden nur einmal täglich erneuert. Das kann also dauern.

Ja, mit der ID war jetzt mein Fehler, nur kurz im Eifer des Gefechtes.

Was heißt die werden nur einmal täglich erneuert? Mir geht es um das Reading Power__W , das möchte ich schon eher auch alle 30 sec haben.
Kann ich das irgendwo sehen bzw. einstellen? Wie gesagt mit get kommt der wert ja auch sofort.

Ich möchte mich schon mal bei euch ganz doll für tolle Hilfe bedanken. :D

Nobbynews

Zitat von: e_brandt am 15 Oktober 2022, 11:32:43
Was heißt die werden nur einmal täglich erneuert? Mir geht es um das Reading Power__W , das möchte ich schon eher auch alle 30 sec haben.
Power__W sollte eigentlich alle 30s kommen.
Aber z.B. Modbus_Parity_Stop kommt nur einmal täglich.

Warum das mit Power__W nicht so richtig klappt, erschließt sich mir nicht.
Allerdings betreibe ich den Zähler auch mit 9600bd und nicht mit 2400bd. Das liegt halt an dem ebenfalls am Bus hängenden SDM72 der meiner Erinnerung nach standardmäßig damit läuft.
Du kannst ja mal zur Probe den Zähler auf 9600bd umstellen. Das geht ja auch vom Modul aus, nur muss der SDM120 vorab am Zähler in den Programmiermodus gebracht werden (siehe Beschreibung).
Und die def von ModbusLine ist ja schnell geändert. Ggf. den Adaper vom USB abziehen, damit die neue Geschwindigkeit angepasst wird.

e_brandt

Was soll ich sagen....

wenn ich das auf 9600 baud stelle funktioniert der Mist, ich könnte kot.....

Das habe ich umgestellt weil der eigentliche Plan ist an den Bus einen Wärmemengenzähler dranzuhängen. Den bekomme ich aber nicht auf 9600 gestellt.

Nobbynews

#27
Zitat von: e_brandt am 15 Oktober 2022, 11:51:44

wenn ich das auf 9600 baud stelle funktioniert der Mist, ich könnte kot.....

Das habe ich umgestellt weil der eigentliche Plan ist an den Bus einen Wärmemengenzähler dranzuhängen. Den bekomme ich aber nicht auf 9600 gestellt.
Schön das es jetzt funktioniert.
Der SDM kann ja auch 4800bd. Vielleicht reicht das ja schon für die 30s aus.
Ansonsten ggf. einen zweiten Adapter wie z.b.
https://www.makershop.de/module/kommunikation-module/rs485-adapter/

Dann bitte noch den thread mit einem [gelöst] versehen.