Bresser Wetterstation 868Mhz - wie in FHEM integrieren?

Begonnen von alen, 31 Oktober 2017, 17:59:19

Vorheriges Thema - Nächstes Thema

Mazz78

Obwohl ich es eigentlich nicht mag fremde Beiträge zu crashen, denke ich dass mein Problem hier am Besten aufgehoben ist...

Mein Problem ist, dass ich ungefähr 30 min lang nach dem Autocreate der Bresser die Wetterdaten erhalten habe, aber seitdem werden die Daten nicht mehr aktualisiert.

Meine Komponenten sind
Raspi 4
(Eigenbau-)nanoCUL mit SIGANLduino Firmware
Bresser Wetterstation 7in1

Nach einigen Startschwierigkeiten hab ich es dann mit Hängen und Würgen hinbekommen den nanoCul zu flashen und in initialize state zu bekommen
Nach dem Flashen des CUL wurde die Wetterstation über das Autocreate automatisch erkannt und angelegt.
Nach bestem Wissen und Gewissen habe ich dann die whitelist auf die 117 gesetzt (was der Bresser 7in1 entspricht) 

Ich habe zwar schon einiges gelesen, ich bin mir allerdings immer noch nicht genau über die Unterschiede/Vorzüge der verfügbaren Module/Firmwarestände im Klaren.

Was könnte denn hier das Problem sein ?
Und sieht das alles aus wie erwartet ? Oder gibts da Auffälligkeiten ?

List des nanoCUL
Internals:
   Clients    SD_WS
   ClientsKeepOrder 1
   DEF        /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
   DMSG       nothing
   DevState   initialized
   DeviceName /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600
   FD         34
   FUUID      6615101f-f33f-f943-6e5e-911ab2f36adced30
   LASTDMSG   nothing
   LASTDMSGID nothing
   NAME       nanoCUL_SIGNALduino
   NR         217
   PARTIAL   
   STATE      opened
   TIME       1712687650.30097
   TYPE       SIGNALduino
   cc1101_available 1
   eventCount 299
   sendworking 0
   version    V 3.5.0 SIGNALduino cc1101 (chip CC1101) - compiled at Jul  8 2022 18:09:56
   versionProtocols 1.56
   versionmodul 3.5.6+20231214
   .attraggr:
   .attreocr:
     . *
   .attrminint:
   MatchList:
     10:SD_WS07 ^P7#[A-Fa-f0-9]{6}[AFaf][A-Fa-f0-9]{2,3}
     11:SD_WS09 ^P9#F[A-Fa-f0-9]+
     12:SD_WS   ^W\d+x{0,1}#.*
     13:RFXX10REC ^(20|29)[A-Fa-f0-9]+
     14:Dooya   ^P16#[A-Fa-f0-9]+
     15:SOMFY   ^Ys[0-9A-F]+
     16:SD_WS_Maverick ^P47#[A-Fa-f0-9]+
     17:SD_UT   ^P(?:14|20|24|26|29|30|34|46|56|68|69|76|78|81|83|86|90|91|91.1|92|93|95|97|99|104|105|114|118|121|127|128|130|132)#.*
     18:FLAMINGO ^P13\.?1?#[A-Fa-f0-9]+
     19:CUL_WS  ^K[A-Fa-f0-9]{5,}
     1:IT       ^i......
     20:Revolt  ^r[A-Fa-f0-9]{22}
     21:FS10    ^P61#[A-F0-9]+
     22:Siro    ^P72#[A-Fa-f0-9]+
     23:FHT     ^81..(04|09|0d)..(0909a001|83098301|c409c401)..
     24:FS20    ^81..(04|0c)..0101a001
     25:CUL_EM  ^E0.................
     26:Fernotron ^P82#.*
     27:SD_BELL ^P(?:15|32|41|42|57|79|96|98|112)#.*
     28:SD_Keeloq ^P(?:87|88)#.*
     29:SD_GT   ^P49#[A-Fa-f0-9]+
     2:CUL_TCM97001 ^s[A-Fa-f0-9]+
     30:LaCrosse ^(\S+\s+9 |OK\sWS\s)
     31:KOPP_FC ^kr\w{18,}
     32:PCA301  ^\S+\s+24
     33:SD_Rojaflex ^P109#[A-Fa-f0-9]+
     3:SD_RSL   ^P1#[A-Fa-f0-9]{8}
     4:OREGON   ^(3[8-9A-F]|[4-6][0-9A-F]|7[0-8]).*
     5:CUL_TX   ^TX..........
     6:SD_AS    ^P2#[A-Fa-f0-9]{7,8}
     7:Hideki   ^P12#75[A-F0-9]+
     9:CUL_FHTTK ^T[A-F0-9]{8}
     X:SIGNALduino_un ^[u]\d+#.*
   QUEUE:
   READINGS:
     2024-04-09 20:34:13   cc1101_config   Freq: 868.350 MHz, Bandwidth: 203 kHz, rAmpl: 33 dB, sens: 8 dB, DataRate: 8.23 kBaud
     2024-04-09 20:34:13   cc1101_config_ext Modulation: 2-FSK, Syncmod: 16/16 sync word bits detected, Deviation: 57.13 kHz
     2024-04-09 20:34:13   cc1101_patable  C3E = 00 84 00 00 00 00 00 00 => 5_dBm
     2024-04-10 11:23:11   cmds             V R t X S P C r W s x e
     2024-04-10 20:56:28   ping            OK
     2024-04-09 20:34:12   state           opened
   additionalSets:
   keepalive:
     ok         1
     retry      0
   mcIdList:
   mnIdList:
     117
   msIdList:
   muIdList:
Attributes:
   event-on-change-reading . *
   group      IO_Devices
   hardware   nanoCC1101
   icon       cul_868
   rfmode     Bresser_7in1
   room       System
   updateChannelFW stable
   whitelist_IDs 117

List der Wetterstation (per Autocreate erstellt)
Internals:
   .FhemMetaInternals 1
   CODE       SD_WS_117
   DEF        SD_WS_117
   FUUID      66151443-f33f-f943-4bec-23795776e44ff177
   FVERSION   14_SD_WS.pm:v1.1.2-s26982/2024-03-11
   NAME       BresserWS
   NR         218
   STATE      Defined
   TYPE       SD_WS
   bitMSG     
   lastMSG   
   .attreocr:
     .*
   .attrminint:
     .*:60
   READINGS:
     2024-04-09 12:11:28   batteryChanged  1
     2024-04-09 13:42:30   batteryState    ok
     2024-04-09 13:42:30   brightness      11.08
     2024-04-09 13:42:30   humidity        69
     2024-04-09 13:42:30   rain            344
     2024-04-09 13:42:30   state           T: 10.8 H: 69 W: 1.2 R: 344 B: 11.08
     2024-04-09 13:42:30   temperature     10.8
     2024-04-09 12:11:28   type            Bresser_7in1
     2024-04-09 13:42:30   uv              0.7
     2024-04-09 13:42:30   windDirectionDegree 216
     2024-04-09 13:42:30   windDirectionText SW
     2024-04-09 13:42:30   windGust        1.2
     2024-04-09 13:42:30   windSpeed       1.2
Attributes:
   event-min-interval .*:60
   event-on-change-reading .*
   icon       weather_directions
   max-deviation-hum 50
   max-deviation-temp 50
   room       Wetter
   showtime   1
RaPi 4 / Buster / FHEM 6
CUL868 / JeeLink868
Banana M1 (Bananian) + ser2net + Stiebel Eltron LWZ403
FIRMATA -> Gartenbewässerung /-licht
ALEXA

elektron-bbs

Interessant wären die RSSI-Werte des Sensors. Diese bekommst du, wenn du bei deinem nanoCUL_SIGNALduino das Attribut "addvaltrigger" auf 1 setzt.
Die Frequenz beim SIGNALduino passt auch nicht so richtig. 868,300 MHz wäre besser. Evtl. muss diese auch leicht nach oben oder unten korrigiert werden. Ich habe schon Abweichungen bis zu +-25 kHz beobachtet.
Intel(R) Atom(TM) CPU N270 mit 2 SIGNALduino nanoCC1101 + ESPEasy 2x serial server SIGNALduino nanoCC1101, Raspberry Pi 2 mit 2 CUL Stackable CC1101, Raspberry Pi 3 mit SIGNALduino radino + nano328 + 2 x SIGNAL-ESP CC1101 + 2 x rf_Gateway

Mazz78

#347
Danke für deine Anregung
Hab den addvaltrigger gesetzt, allerding wurden die RSSI nicht angezeigt.
Es schien als ob sich irgendwas "aufgehängt" hat.
Ich hab den SIGNALduino und die Wetterstation gelöscht und neu angelegt.
Jetzt werden die RSSI angezeigt.
Und es werden auch die Wetterdaten regelmäßig aktualisiert  8)

Die RSSI Werte sind bestimmt nicht optimal
Ich versuch mal mit Verbauposition des CUL und verschiedenen Antennen zu spielen

Internals:
  .FhemMetaInternals 1
  .lastTimebatteryChanged 1712911255.07323
  .lastTimebatteryState 1712915379.95784
  .lastTimebrightness 1712915354.96463
  .lastTimehumidity 1712915404.95335
  .lastTimerain 1712915379.95784
  .lastTimestate 1712915404.95335
  .lastTimetemperature 1712915404.95335
  .lastTimeuv 1712915354.96463
  .lastTimewindDirectionDegree 1712915392.45831
  .lastTimewindDirectionText 1712915279.97121
  .lastTimewindGust 1712915392.45831
  .lastTimewindSpeed 1712915392.45831
  CFGFN     
  CODE      SD_WS_117
  DEF        SD_WS_117
  FUUID      6618f38a-f33f-f943-8674-4db87826919cfd38
  FVERSION  14_SD_WS.pm:v1.1.2-s26982/2024-03-11
  LASTInputDev nanoCUL_SIGNALduino
  MSGCNT    263
  NAME      BresserWS
  NR        222
  STATE      T: 16.7 H: 53 W: 0.9 R: 344 B: 83.976
  TYPE      SD_WS
  bitMSG    0010111100011110111111010100011100000001011100001011001000000000100100000000100100000000001101000100000000000000000101100111000001010011000010000011100101110110000001010101000000000000
  eventCount 263
  lastMSG    2F1EFD470170B200900900344000167053083976055000
  lastReceive 1712915404.9533
  nanoCUL_SIGNALduino_DMSG W117#2F1EFD470170B200900900344000167053083976055000
  nanoCUL_SIGNALduino_MSGCNT 263
  nanoCUL_SIGNALduino_Protocol_ID 117
  nanoCUL_SIGNALduino_RAWMSG MN;D=85B457EDABDA18AA3AA3AA9EEAAABCDAF9A293DCAFFAAA;R=247;
  nanoCUL_SIGNALduino_RSSI -78.5
  nanoCUL_SIGNALduino_TIME 2024-04-12 11:50:04
  .attraggr:
  .attreocr:
    .*
  .attrminint:
    .*:300
  READINGS:
    2024-04-12 10:40:55  batteryChanged  1
    2024-04-12 11:50:04  batteryState    ok
    2024-04-12 11:50:04  brightness      83.976
    2024-04-12 11:50:04  humidity        53
    2024-04-12 10:40:55  model          Bresser 7-in-1 outdoor sensor
    2024-04-12 11:50:04  rain            344
    2024-04-12 11:50:04  state          T: 16.7 H: 53 W: 0.9 R: 344 B: 83.976
    2024-04-12 11:50:04  temperature    16.7
    2024-04-12 10:40:55  type            Bresser_7in1
    2024-04-12 11:50:04  uv              5.5
    2024-04-12 11:50:04  windDirectionDegree 17
    2024-04-12 11:50:04  windDirectionText NNE
    2024-04-12 11:50:04  windGust        0.9
    2024-04-12 11:50:04  windSpeed      0.9
Attributes:
  event-min-interval .*:300
  event-on-change-reading .*
  group      Wetterstation
  room      Wetter
RaPi 4 / Buster / FHEM 6
CUL868 / JeeLink868
Banana M1 (Bananian) + ser2net + Stiebel Eltron LWZ403
FIRMATA -> Gartenbewässerung /-licht
ALEXA

beaune

Hallo,

ich habe gerade die Batterien im Außensensor gewechselt. Das hat auch gut geklappt, das ID Reading hat sich geändert, es werden wieder Daten empfangen, der Batteriestatus wird wieder als ok abgezeigt usw. Im Log sehe ich jetzt allerdings folgendes:
ERROR - rain diff too large (old 565.2, new 0, diff 565.2, age 403)Ist ja nachvollziehbar, dass der Außensensor seinen Zählwert verloren hat und nun bei Null wieder anfängt zu zählen. fhem hat aber auch recht, dass die Differenz zu groß ist und es falsch wäre, die Null als neuen Wert zu übernehmen. Wie löst man das am besten? Kann ich den von fhem zuletzt gespeicherten Wert auf Null setzen, so dass dann neue Zählwerte vom Außensensor wieder übernommen werden?

Ralf9

Ist das 14_SD_WS.pm Modul einigermaßen aktuell? mit version kann Du es abfragen.

Nach einem Batteriewechsel sollte im Log so was ähnliches stehen:
Bei der ersten Nachricht nach dem Batteriewechsel
SD_WS_108 ERROR - rain diff too large (old 31.2, new 0, diff 31.2, age 19)

Bei der zweiten Nachricht nach dem Batteriewechsel
SD_WS_108 ERROR - rain diff too large (old 31.2, new 0, diff 31.2, age 98)
SD_WS_108 reset rain, rain: 0 lastrain: 31.2, new rainOffset: 31.2

Danach gibts das reading ".rainOffset" dort steht der rain Wert vor dem Batterie wechsel.
Readings mit einem Punkt am Anfang werden standardmäßig nicht angezeigt.
Zum Anzeigen entweder ein List vom Bresser device
oder das global Attribut "showInternalValues" auf 1 setzen
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

beaune

Vielen Dank, genauso ist es auch. Hab mal wieder einiges mehr verstanden :-)

loetmeister

#351
Hallo an alle Bresser Nutzer.  ;)

Würde dieser 7 in 1 Sensor auch mit SignalDuino / 14_SD_WS funktionieren?
Ist der Sensor nur mechanisch anders oder auch vom Protokoll? Funk ist auch 868 MHz...

EDIT: Die Frage ist vermutlich etwas unklar - da beide Sensoren "7-in-1-Aussensensor" genannt werden... und ich leider nicht weiß welches das neue oder das alte Model ist...
Wenn ich einfach mal annehme, die niedrigere Artikelnummer ist der alte Sensor (7803200) - dann ist das der 7-in-1-Aussensensor welcher erfolgreich in FEHM eingebunden und hier im Thread behandelt wurde?
Meine neue Frage ist dann, läuft auch der Sensor mit der Artikelnummer 7803300?
Es gab eine ähnliche Frage vor ein paar Monaten, der Link auf den Bresser Shop ist aber leider nicht mehr gültig... sorry falls es schon mal beantwortet wurde. ;D


Artikelnummer:   7803200
https://www.bresser.de/Wetter-Zeit/BRESSER-7-in-1-Aussensensor-fuer-7003200-4-Tage-4CAST-WLAN-Wetterstation.html

Artikelnummer:   7803300
https://www.bresser.de/Wetter-Zeit/Zubehoer-bresser-1/Sensoren/BRESSER-7-in-1-Aussensensor-fuer-7003300-WLAN-Comfort-Wetterstation.html

Gruß
Thomas

loetmeister

Hi,

hab mir mal den Sensor Artikelnummer: 7803200 besorgt und teste nun mit Ralfs SIGNALduino. Empfang klappt, scheint aber einen anderen Nachrichtenaufbau zu haben..?
Die Frequenz musste ich auch leicht anheben, um mit der Standard bWith etwas zu empfangen.

versionmodul
v3.4.17-ralf_07.11.23


cc1101_config freq:868.450MHz bWidth:203KHz rAmpl:33dB sens:8dB (DataRate:8232.12Baud)
cc1101_config_ext Modulation:2-FSK (SYNC_MODE:16/16 sync) DEVIATN:57.129kHz
ccpatable 868.450 MHz, C3E = 00 84 00 00 00 00 00 00
config ccmode=4 b=0
rfmode Bresser_5in1_u_7in1__B28_N7_8220 => ok,N=7,ccmode=4
version V 3.3.5-dev210522 SIGNALduino cc1101 (b0) - compiled at Jun 19 2024 21:33:14


2024.06.19 23:27:41 4: sigDuino/msg READ: ␂MN;D=767F297DB33A18AAAAAAAAAAB8DA8BEACFAAAAAAAAAAAAAAAA000000;N=7;R=59;␃
2024.06.19 23:27:41 4: sigDuino Parse_MN: Found 2-FSK Protocol id 108 length 56 RSSI = -44.5 -> Bresser 5in1
2024.06.19 23:27:41 4: sigDuino ParseMN: method error! Bresser 5in1: Checksum Error pos=0
2024.06.19 23:27:41 4: sigDuino Parse_MN: Found 2-FSK Protocol id 115 length 56 RSSI = -44.5 -> Bresser comfort 6in1 (5in1 neu)
2024.06.19 23:27:41 4: sigDuino ParseMN: method error! Bresser 5in1_neu: crc Error crc=F347 crcRef=767F
2024.06.19 23:27:41 4: sigDuino Parse_MN: Found 2-FSK Protocol id 207 length 56 RSSI = -44.5 -> Bresser Profi 7in1
2024.06.19 23:27:41 5: sigDuino Bresser_7in1: dmsg=DCD583D71990B2000000000012702140650000000000000000 crc16 ok
2024.06.19 23:27:41 4: sigDuino ParseMN: ID=207 dmsg=W207#83D71990B2000000000012702140650000000000000000
2024.06.19 23:27:41 5: sigDuino Dispatch: W207#83D71990B2000000000012702140650000000000000000, test gleich
2024.06.19 23:27:41 4: sigDuino Dispatch: W207#83D71990B2000000000012702140650000000000000000, -44.5 dB, dispatch
2024.06.19 23:27:41 5: sigDuino: dispatch W207#83D71990B2000000000012702140650000000000000000
2024.06.19 23:27:41 4: SD_WS_Parse: Protocol: 207, rawData: 83D71990B2000000000012702140650000000000000000
2024.06.19 23:27:41 2: SD_WS_WH2: unknown message, please report. converted to bits: 1000001111010111000110011001000010110010000000000000000000000000000000000000000000010010011100000010000101000000011001010000000000000000000000000000000000000000000000000000000000000000
2024.06.19 23:27:41 4: SD_WS_Parse: Protocol: 207, rawData: 83D71990B2000000000012702140650000000000000000
2024.06.19 23:27:41 2: SD_WS_WH2: unknown message, please report. converted to bits: 1000001111010111000110011001000010110010000000000000000000000000000000000000000000010010011100000010000101000000011001010000000000000000000000000000000000000000000000000000000000000000
2024.06.19 23:27:41 3: sigDuino: Unknown code W207#83D71990B2000000000012702140650000000000000000, help me!

PS: 00_SIGNALduino und 14_SD_WS.pm sind von Ralf9/RFFHEM/dev/FHEM/...

Gruß,
Thomas

Ralf9

#353
Ich habs mal bei mir dem Dummysduino getestet, es wird vom 14_SD_WS Modul verarbeitet:
2024.06.20 10:56:00.271 4: sduinoD/msg get raw: MN;D=767F297DB33A18AAAAAAAAAAB8DA8BEACFAAAAAAAAAAAAAAAA000000;N=7;R=59;
2024.06.20 10:56:00.271 4: sduinoD Parse_MN: Found 2-FSK Protocol id 207 length 56 RSSI = -44.5 -> Bresser Profi 7in1
2024.06.20 10:56:00.271 4: sduinoD Dispatch: W207#83D71990B200000000001270214065000000000000, -44.5 dB, dispatch
2024-06-20 10:56:00.276 Global global UNDEFINED SD_WS_207_83D7 SD_WS SD_WS_207_83D7

dann habe ich ein define gemacht "define SD_WS_207_83D7 SD_WS SD_WS_207_83D7"

2024.06.20 10:58:03.957 4: sduinoD/msg get raw: MN;D=767F297DB33A18AAAAAAAAAAB8DA8BEACFAAAAAAAAAAAAAAAA000000;N=7;R=59;
...
2024.06.20 10:58:03.957 5: sduinoD Bresser_7in1: dmsg=DCD583D71990B200000000001270214065000000000000 crc16 ok
2024.06.20 10:58:03.957 4: sduinoD ParseMN: ID=207 dmsg=W207#83D71990B200000000001270214065000000000000
2024.06.20 10:58:03.957 5: sduinoD Dispatch: W207#83D71990B200000000001270214065000000000000, test gleich
2024.06.20 10:58:03.957 4: sduinoD Dispatch: W207#83D71990B200000000001270214065000000000000, -44.5 dB, dispatch
2024.06.20 10:58:03.957 5: sduinoD: dispatch W207#83D71990B200000000001270214065000000000000
2024.06.20 10:58:03.958 4: sduinoD: SD_WS_Parse protocol 207, rawData 83D71990B200000000001270214065000000000000
2024.06.20 10:58:03.958 4: sduinoD: SD_WS_Parse decoded protocol-id 207 (Bresser_7in1), sensor-id 83D7
2024.06.20 10:58:03.958 4: sduinoD: using longid for 0 device SD_WS_207_83D7
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 T: 21.4 H: 65 Ws: 0 Wg: 0 Wd: SSW Lux: 0 UV: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 temperature: 21.4
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 humidity: 65
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windSpeed: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windSpeed_kmh: 0.0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windDirectionDegree: 199
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windDirectionText: SSW
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windGust: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 windGust_kmh: 0.0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 batteryState: ok
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 batteryChanged: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 rain: 1.2
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 uv: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 lux: 0
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 id: 83D7
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 DMSG: W207#83D71990B200000000001270214065000000000000
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 RAWMSG: MN;D=767F297DB33A18AAAAAAAAAAB8DA8BEACFAAAAAAAAAAAAAAAA000000;N=7;R=59;
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 Protocol_ID: 207
2024-06-20 10:58:03.961 SD_WS SD_WS_207_83D7 RSSI: -44.5


Verwendest Du das aktuelle 14_SD_WS Modul?
update all https://raw.githubusercontent.com/Ralf9/SIGNALduinoAdv_FHEM/master/controls_ralf9_sd_ws.txthttps://github.com/Ralf9/SIGNALduinoAdv_FHEM/blob/master/FHEM/14_SD_WS.pm

Gruß Ralf
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

loetmeister

Hallo Ralf,

danke! Hatte übersehen das 14_SD_WS.pm nicht aktuell war... hatte beides von
https://github.com/Ralf9/RFFHEM/tree/dev/FHEM

mit https://raw.githubusercontent.com/Ralf9/SIGNALduinoAdv_FHEM/master/FHEM/14_SD_WS.pm
# $Id: 14_SD_WS.pm 21666 2024-04-12 17:00:00Z Ralf9 $
funktioniert es wie es soll. Messwerte muss ich mir morgen bei Licht ansehen.  ::)

PS: Die verschiedenen Versionen & Quellen für SIGNALduino und den verschieden Modulen ist zum Einstieg etwas verwirrend. :)

Gruß,
Thomas

Beta-User

Moin zusammen,

experimentiere grade mit einem MapleDuino und SIGNALDuinoAdv rum. Neben dem Maple gibt es noch einen "alten" CC1101-Signalduino auf ATMega32-Basis. Eigentlich hatte ich angenommen, mit dem Maple (2 CC1101, 433&868MHz) meinen neuen Ecowitt Außensensor (WS90) empfangen zu können. Sollte - soweit ich das verstanden habe - eigentlich "Bresser"-kopatibel sein... 

Klappte leider nicht auf Anhieb, von daher habe ich die Basisstation im Moment weiter in Betrieb und hab das 50_GW1000_TCP.pm- Modulchen aus https://forum.fhem.de/index.php?topic=124794.0 soweit geflickt, dass es auch mit dem GW2000 kommuniziert. Aber eigentlich wäre weiter das Ziel, den Maple ans Laufen zu bekommen.

Jetzt zu meinen Fragen und Feststellungen:

Zum einen wirft mir FHEM das hier ins log:
2024.06.20 11:46:13 1: PERL WARNING: Constant subroutine main::SDUINO_INIT_WAIT_XQ redefined at /usr/lib/x86_64-linux-gnu/perl-base/constant.pm line 171.
2024.06.20 11:46:13 1: PERL WARNING: Constant subroutine main::SDUINO_INIT_WAIT redefined at /usr/lib/x86_64-linux-gnu/perl-base/constant.pm line 171.
2024.06.20 11:46:13 1: PERL WARNING: Constant subroutine main::SDUINO_VERSION redefined at /usr/lib/x86_64-linux-gnu/perl-base/constant.pm line 171.
2024.06.20 11:46:13 1: PERL WARNING: Constant subroutine main::SDUINO_MC_DISPATCH_VERBOSE redefined at /usr/lib/x86_64-linux-gnu/perl-base/constant.pm line 171.
2024.06.20 11:46:13 1: PERL WARNING: Subroutine cartesian_product redefined at ./FHEM/00_SIGNALduinoAdv.pm line 2399.
2024.06.20 11:46:13 1: PERL WARNING: Subroutine SIGNALduino_filterMC redefined at ./FHEM/00_SIGNALduinoAdv.pm line 5649.
2024.06.20 11:46:13 1: PERL WARNING: Subroutine SIGNALduino_filterSign redefined at ./FHEM/00_SIGNALduinoAdv.pm line 6349.
2024.06.20 11:46:13 1: PERL WARNING: Subroutine SIGNALduino_compPattern redefined at ./FHEM/00_SIGNALduinoAdv.pm line 6422.
Da scheint also die Trennung des namespace noch nicht abgeschlossen zu sein (Maple steht in der config weiter hinten, es werden also die neuen Funktionen genutzt), das ist der Startvorgang nach update all wie von Ralf gestern hier gepostet (der Schritt fehlt wohl noch im Wiki).

Weiter bin ich aus dem Wiki bzw. den Forenbeiträgen hier nicht so recht schlau geworden, wie denn die CC1101-Module sinnvollerweise zu initialisieren sind, muss mir das aber nochmal in Ruhe ansehen und behellige euch dann wieder, falls es nicht klappt. Sonst gibt es ggf. einen Vorschlag für's Wiki...

Hier noch mein aktueller Zustand, für den Fall, dass für Wissende was offenkundig falsch sein sollte...
define MapleDuino SIGNALduinoAdv /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00@115200
attr MapleDuino group Interfaces
attr MapleDuino hardware Maple_sduino_USB
attr MapleDuino icon cul
attr MapleDuino room Steuerung->Interfaces
#  Clients    :CUL_TCM97001:SD_WS:SD_WS07:SD_WS09:Hideki:LaCrosse:OREGON:CUL_EM:CUL_WS:CUL_TX:SD_AS:IT: :FS10:FS20:SOMFY:FLAMINGO:SD_WS_Maverick:KOPP_FC:PCA301:SD_BELL:SD_GT:SD_RSL:SD_UT:WMBUS:HMS: :IFB:CUL_FHTTK:FHT:RFXX10REC:Revolt:Dooya:Fernotron:SD_Keeloq:SD_Rojaflex:Siro:LTECH:CUL_MAX:SD_Tool:SIGNALduino_un:
#  ClientsKeepOrder 1
#  DEF        /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00@115200
#  DMSG      nothing
#  DevState  initialized
#  DeviceName /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00@115200
#  FD        20
#  FUUID      665b2fae-f33f-d171-9ae8-195b467b587f606b
#  IDsNoDispatch 2,31,43.1,72.1,82,87,88
#  LASTDMSG  nothing
#  LASTDMSGID nothing
#  NAME      MapleDuino
#  NR        772
#  PARTIAL   
#  STATE      opened
#  TIME      1718876773.53144
#  TYPE      SIGNALduinoAdv
#  b_ccconf  b=2 rx=0 freq:868.350MHz bWidth:203KHz rAmpl:33dB sens:8dB (DataRate:8232.12Baud) [boffs=0140*]
#  b_ccconfFSK N=7 ccmode=4 sync=2DD4 Modulation:2-FSK (SYNC_MODE:16/16 sync) DEVIATN:57.129kHz
#  cc1101_frequency 868.350
#  eventCount 606
#  sendworking 0
#  version    V 4.2.2-dev220712 SIGNALduinoAdv cc1101 (R: Ai B2*) - compiled at Jul 12 2022 21:29:35
#  versionmodul v3.5.0-ralf_03.01.24
#  versionprotoL v3.5.0-ralf_03.01.24
#  .attraggr:
#  .attrminint:
#  MatchList:
#    01:IT      ^i......
#    02:CUL_TCM97001 ^s[A-Fa-f0-9]+
#    03:SD_RSL  ^P1#[A-Fa-f0-9]{8}
#    04:OREGON  ^(3[8-9A-F]|[4-6][0-9A-F]|7[0-8]).*
#    05:CUL_TX  ^TX..........
#    06:SD_AS  ^P2#[A-Fa-f0-9]{7,8}
#    07:Hideki  ^P12#75[A-F0-9]+
#    09:CUL_FHTTK ^T[A-F0-9]{8}
#    10:SD_WS07 ^P7#[A-Fa-f0-9]{6}[AFaf][A-Fa-f0-9]{2,3}
#    11:SD_WS09 ^P9#F[A-Fa-f0-9]+
#    12:SD_WS  ^W\d+x{0,1}#.*
#    13:RFXX10REC ^(20|29)[A-Fa-f0-9]+
#    14:Dooya  ^P16#[A-Fa-f0-9]+
#    15:SOMFY  ^Ys[0-9A-F]+
#    16:SD_WS_Maverick ^P47#[A-Fa-f0-9]+
#    17:SD_UT  ^P(?:14|20|22|24|26|29|30|34|46|56|68|69|76|78|81|83|86|90|91|91.1|92|93|95|97|99|104|105|114|118|121|124|127|128|130|132|199)#.*
#    18:FLAMINGO ^P13\.?1?#[A-Fa-f0-9]+
#    19:CUL_WS  ^K[A-Fa-f0-9]{5,}
#    20:Revolt  ^r[A-Fa-f0-9]{22}
#    21:FS10    ^P61#[A-F0-9]+
#    22:Siro    ^P72#[A-Fa-f0-9]+
#    23:FHT    ^81..(04|09|0d)..(0909a001|83098301|c409c401)..
#    24:FS20    ^81..(04|0c)..0101a001
#    25:CUL_EM  ^E0.................
#    26:Fernotron ^P82#.*
#    27:SD_BELL ^P(?:15|32|41|42|57|79|96|98|112)#.*
#    28:SD_Keeloq ^P(?:87|88)#.*
#    29:SD_GT  ^P49#[A-Fa-f0-9]+
#    30:LaCrosse ^(\S+\s+9 |OK\sWS\s)
#    31:KOPP_FC ^kr..................
#    32:PCA301  ^\S+\s+24
#    33:SD_Rojaflex ^P109#[A-Fa-f0-9]+
#    34:WMBUS  ^b.*
#    35:HMS    ^810e04......a001
#    36:IFB    ^J............
#    37:LTECH  ^P31#[A-Fa-f0-9]{26,}
#    38:CUL_MAX ^Z.*
#    90:SD_Tool ^pt([0-9]+(\.[0-9])?)(#.*)?
#    X:SIGNALduino_un ^[u]\d+#.*
#  QUEUE:
#  READINGS:
#    2024-06-20 11:39:08  cc1101_config  freq:868.450MHz bWidth:203KHz rAmpl:33dB sens:8dB (DataRate:8232.12Baud)
#    2024-06-20 11:39:08  cc1101_config_ext Modulation:2-FSK (SYNC_MODE:16/16 sync) DEVIATN:57.129kHz
#    2024-06-19 06:55:24  ccreg          C31 = 18
#    2024-06-19 07:12:03  cmdBank        \n\nThe bank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
#    2024-06-19 06:58:05  cmds            ?S ? b CE CD CG CR CS CW C eC e P r R S t T V W x XE XQ
#    2024-06-20 11:41:21  config          ccmode=4 b=2
#    2024-06-19 06:59:58  freeram        8096
#    2024-06-21 07:53:56  ping            OK
#    2024-06-19 07:10:45  raw            Unsupported command
#    2024-06-20 11:41:06  rfmode          Bresser_5in1_u_7in1__B28_N7_8220 => ok,N=7,ccmode=4
#    2024-06-20 11:46:19  state          opened
#  getcmd:
#  keepalive:
#    ok        0
#    retry      0
#  mcIdList:
#    10
#    11
#    12
#    18
#    43
#    47
#    52
#    57
#    58
#    96
#    119
#    129
#    212
#  mnIdList:
#    100
#    101
#    102
#    103
#    107
#    108
#    109
#    112
#    115
#    116
#    123
#    125
#    126
#    201
#    202
#    203
#    204
#    205
#    206
#    207
#    208
#    209
#    210
#    214
#    215
#  msIdList:
#    0
#    0.1
#    0.2
#    0.3
#    0.4
#    0.5
#    1
#    3
#    3.1
#    4
#    6
#    7
#    13
#    13.2
#    14
#    15
#    17
#    20
#    23
#    25
#    32.1
#    33
#    33.1
#    33.2
#    35
#    41
#    49
#    51
#    53
#    54.1
#    55
#    65
#    68
#    74.1
#    90
#    91.1
#    93
#    106
#    113
#    118.1
#    124.1
#    127.1
#    128.1
#    130
#  muIdList:
#    8
#    9
#    13.1
#    16
#    17.1
#    19
#    20.1
#    21
#    22
#    24
#    26
#    27
#    28
#    29
#    30
#    32
#    34
#    36
#    37
#    38
#    39
#    40
#    42
#    44
#    44.1
#    45
#    46
#    48
#    49.1
#    49.2
#    50
#    54
#    56
#    59
#    60
#    61
#    62
#    64
#    66
#    67
#    69
#    70
#    71
#    72
#    73
#    74
#    78
#    79
#    80
#    81
#    83
#    84
#    85
#    86
#    89
#    91
#    92
#    94
#    95
#    97
#    98
#    99
#    104
#    105
#    110
#    111
#    114
#    118
#    120
#    121
#    122
#    124
#    127
#    128
#    132
#    198
#    200
#    200.1
#  rfmodesets:
#    rfmode    Avantek_433__B8_N9_FSK,Bresser_5in1_u_7in1__B28_N7_8220,Bresser_6in1__B20_N7_8220,DP100_WH51_WH57_433__B16_N16_17241,DP100_WH51_WH57_868__B16_N6_17241,HoneywActivL__SlowRf_FSK,KOPP_FC__B20_N4_4785,Lacrosse_mode1_WS1080_TX38__B12_N1_17241,Lacrosse_mode2__B12_N2_9579,PCA301_mode3__B32_N3_6631,Rojaflex_433__B12_N8_GFSK,SlowRF_ccFactoryReset,W136__B24_N10_4798,WH24_WH25__B20_N1_17241,WMBus_S__N11_ab_firmware_V422,WMBus_T_u_C__N12_ab_firmw_V422,WS1600_TX22_mode5__B16_N5_8842,custom
#  rfmodesetsTesting:
#    rfmodeTesting Avantek_433__B5_N9_FSK,Bresser_5in1_u_7in1__B26_N7_8220,Bresser_6in1__B18_N7_8220,DP100_WH51_WH57_433__B14_N16_17241,DP100_WH51_WH57_868__B14_N6_17241,Elero__N13_ab_firmw_V335_u_V422,Inkbird_433__B18_N14_FSK,Lacrosse_mode1_TX38__B5_N1_17241,Lacrosse_mode1_WS1080_TX38__B10_N1_17241,Lacrosse_mode2__B5_N2_9579,MAX__N15,PCA301_mode3__B12_N3_6631,W136__B24_N10_4798,WH24_WH25__B16_N1_17241,WS1600_TX22_mode5__B5_N5_8842
#
setstate MapleDuino opened
setstate MapleDuino 2024-06-20 11:39:08 cc1101_config freq:868.450MHz bWidth:203KHz rAmpl:33dB sens:8dB (DataRate:8232.12Baud)
setstate MapleDuino 2024-06-20 11:39:08 cc1101_config_ext Modulation:2-FSK (SYNC_MODE:16/16 sync) DEVIATN:57.129kHz
setstate MapleDuino 2024-06-19 06:55:24 ccreg C31 = 18
setstate MapleDuino 2024-06-19 07:12:03 cmdBank \n\nThe bank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
setstate MapleDuino 2024-06-19 06:58:05 cmds ?S ? b CE CD CG CR CS CW C eC e P r R S t T V W x XE XQ
setstate MapleDuino 2024-06-20 11:41:21 config ccmode=4 b=2
setstate MapleDuino 2024-06-19 06:59:58 freeram 8096
setstate MapleDuino 2024-06-21 07:53:56 ping OK
setstate MapleDuino 2024-06-19 07:10:45 raw Unsupported command
setstate MapleDuino 2024-06-20 11:41:06 rfmode Bresser_5in1_u_7in1__B28_N7_8220 => ok,N=7,ccmode=4
setstate MapleDuino 2024-06-20 11:46:19 state opened

Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

KölnSolar

Zitat2024-06-19 07:12:03  cmdBank        \n\nThe bank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
Das scheint mir das Problem zu sein.

Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Beta-User

Zitat von: KölnSolar am 21 Juni 2024, 08:07:46
Zitat2024-06-19 07:12:03  cmdBank        \n\nThe bank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
Das scheint mir das Problem zu sein.

Grüße Markus
Hmmm, vielleicht...

Aber wie korrigiert man das jetzt richtig? Irgendwas scheint mir verbogen und die Rückmeldungen aus dem get-Kommando sind auch irgendwie nicht so recht konsistent: "get cmdBank s" gibt ein Dialogfeld zurück, in dem das hier steht:

cmdBank:

Bank__ 0 1 2 3 4 5 6 7 8 9
Radio_ - - B*- - - - - - -
N_____ 0 0 7 - - - - - - -
ccmode 0 4 4 - - - - - - -

0 - SlowRF
1 - M1_IT+
2 - Bress51
Das zugehörige erzeugte Reading schaut dann aber so aus:

setstate MapleDuino 2024-06-21 08:23:32 cmdBank \
\
Bank__ 0 1 2 3 4 5 6 7 8 9\
Radio_ - - B*- - - - - - -\
N_____ 0 0 7 - - - - - - -\
ccmode 0 4 4 - - - - - - -\
\
0 - SlowRF\
1 - M1_I

Wie gesagt, ich muss mir die Doku dazu nochmal in Ruhe ansehen, leider ist dafür grade keine wirkliche Zeit.

So wie ich es im Moment verstanden habe, muss zur Initialisierung der Module (und Bänke?!?) jeweils immer ein raw-Befehl verwendet werden und dazu auch immer angegeben werden, welches CC-Modul gemeint ist. Für 868MHz auf der Standard-Mapleduino-Platine wäre das A<n>. Der Fehler scheint mir zu sein, dass ich aus der Doku erst mal geschlossen hatte, dass man erst das CC-Modul selektiert und dann alle config-Befehle jeweils an dieses CC gehen. Das nachfolgende Setzen von rfmode scheint das offenbar auch nicht richtig zu stellen. Na ja, ein ander mal...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Ralf9

Zitatbank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
Am Anfang ist nur Bank 0 mit SlowRF initialisiert, wenn dann auf eine noch nicht initialisierte Bank umgeschaltet wird, kommt diese Meldung.
Danach kann mit "set rfmode" oder "set rfmodeTesting" der passende rfmode zum sduino gesendet werden.
FHEM auf Cubietruck mit Igor-Image, SSD und  hmland + HM-CFG-USB-2,  HMUARTLGW Lan,   HM-LC-Bl1PBU-FM, HM-CC-RT-DN, HM-SEC-SC-2, HM-MOD-Re-8, HM-MOD-Em-8
HM-Wired:  HMW_IO_12_FM, HMW_Sen_SC_12_DR, Selbstbau IO-Module HBW_IO_SW
Maple-SIGNALduino, WH3080,  Hideki, Id 7

Beta-User

Zitat von: Ralf9 am 21 Juni 2024, 13:05:54
Zitatbank 2 was not complete initialized, therefore the bank and radio is reseted to sduino defaults (raw e). ccFactoryReset done
Am Anfang ist nur Bank 0 mit SlowRF initialisiert, wenn dann auf eine noch nicht initialisierte Bank umgeschaltet wird, kommt diese Meldung.
Danach kann mit "set rfmode" oder "set rfmodeTesting" der passende rfmode zum sduino gesendet werden.
Hmmm, demnach wäre alles richtig...?

Habe mal ein debug auf 1 gesetzt und einen reset veranlasst. Da kommt dann folgendes: 
2024.06.21 14:10:29 3: MapleDuino reset
2024.06.21 14:10:29 3: Opening MapleDuino device /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00
2024.06.21 14:10:29 3: Setting MapleDuino serial parameters to 115200,8,N,1
2024.06.21 14:10:29 1: MapleDuino/define: /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00@115200
2024.06.21 14:10:29 1: MapleDuino/init: /dev/serial/by-id/usb-STMicroelectronics_MAPLEMINI_F103CB_CDC_in_FS_Mode_0052B5A95347-if00@115200
2024.06.21 14:10:29 3: MapleDuino device opened
2024.06.21 14:10:31 3: MapleDuino/init: disable receiver (XQ)
2024.06.21 14:10:32 3: MapleDuino/init: get version, retry = 0
2024.06.21 14:10:32 3: MapleDuino/init: firmwareversion with ccBankSupport and multi cc1101 found -> send br
2024.06.21 14:10:32 2: MapleDuino: initialized. v3.5.0-ralf_03.01.24
2024.06.21 14:10:32 3: MapleDuino/init: enable receiver (XE)
Wenn ich dann die cmdBank mit s abrufe, kommt das hier:

cmdBank:

Bank__ 0 1 2 3 4 5 6 7 8 9
Radio_ - - B*- - - - - - -
N_____ 0 0 7 - - - - - - -
ccmode 0 4 1 - - - - - - -

0 - SlowRF
1 - M1_IT+
2 - Bress51 

Drücke ich Tasten an meiner 433MHz-Fernbedienung für den Dunstabzug, müßte doch eigentlich was im log stehen und in den Internals zu diesem Device irgendwas von "MapleDuino_xxx" zu finden sein? Da ist aber nur "SignalDuino_RSSI" etc. zu finden. Standort ist fast identisch.

Hat meine Hardware einen Hau oder sind die CC1101 falsch herum konfiguriert?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files