fredlcore / BSB-LAN

LAN/WiFi interface for Boiler-System-Bus (BSB) and Local Process Bus (LPB) and Punkt-zu-Punkt Schnittstelle (PPS) with a Siemens® controller used by Elco®, Brötje® and similar heating systems
239 stars 88 forks source link

Testing the recent version: problems, probable issues, questions... #196

Closed 1coderookie closed 3 years ago

1coderookie commented 3 years ago

Hi guys, I opened this issue as a possibility to report and discuss several problems, probable issues and questions of/about the recent version(s) of BSB-LAN. I hope it's ok for you ;)

@dukess: Because I always had some issues that seemed to only appear within my system (@fredlcore had none of these problems), I just tested the recent version (2.0.14-20201117142051) with a complete fresh system: a not yet used Due and a new EEPROM (straight from the seller). Neither of these had ever contact with BSB-LAN, so I just imitated the absolute 'new' user, who starts over at the first time ever.

I used the default settings of the config.h file, so I didn't change anything there. The flashing itself via Arduino IDE was flawless. After the reboot I switched to the configuration page (url/C). Then I changed two settings via the webinterface:

  1. I set 'Read config from EEPROM' to 'Ein' (= on) and
  2. I set 'Write parameters to system' from 'Aus' (= off) to 'Ein (Engineer + OEM)'. Then of course I clicked on 'Daten absenden' (= send data / save config), the button at the end of the page to save the settings. The URL changed to url/CI as usual, showing me the new settings.

Because one of the problems in the past was that the settings obviously weren't saved, I clicked on 'Einstellungen' (= settings; url/C) again to see, if the new settings now have been saved.
But: The system doesn't react anymore. The page seems to be loading (judged by the item of the browser tab) and the serial monitor shows "Reading EEPROM..." - but nothing happens anymore since then. See the full output of this sequence of the serial monitor, which stops after 'Reading EEPROM...':

14:28:45.582 -> EPROM option 9: 421
14:28:45.582 -> Address EEPROM option 10: 4Addressress EEPROM option 11: 423
14:28:45.582 -> Address EEPROM option 12: 427
14:28:45.582 -> Address EEPROM option 13: 428
14:28:45.582 -> Address EEPROM option 14: 588
14:28:45.582 -> Address EEPROM option 15: 589
14:28:45.582 -> Address EEPROM option 16: 593
14:28:45.582 -> Address EEPROM option 17: 753
14:28:45.582 -> Address EEPROM option 18: 759
14:28:45.582 -> Address EEPROM option 19: 760
14:28:45.582 -> Address EEPROM option 20: 764
14:28:45.582 -> Address EEPROM option 21⸮READY
14:28:45.774 -> Reading EEPROM...done.
14:28:45.774 -> EEPROM schema v.0 Program schema v.3
14:28:45.774 -> Address EEPROM option 0: 0
14:28:45.774 -> Address EEPROM option 1: 1
14:28:45.774 -> Address EEPROM option 2: 2
14:28:45.774 -> Address EEPROM option 3: 6
14:28:45.774 -> Address EEPROM option 4: 226
14:28:45.774 -> Address EEPROM option 5: 306
14:28:45.774 -> Address EEPROM option 6: 418
14:28:45.774 -> Address EEPROM option 7: 419
14:28:45.774 -> Address EEPROM option 8: 420
14:28:45.808 -> Address EEPROM option 9: 421
14:28:45.808 -> Address EEPROM option 10: 422
14:28:45.808 -> Address EEPROM option 11: 423
14:28:45.808 -> Address EEPROM option 12: 427
14:28:45.808 -> Address EEPROM option 13: 428
14:28:45.808 -> Address EEPROM option 14: 588
14:28:45.808 -> Address EEPROM option 15: 589
14:28:45.808 -> Address EEPROM option 16: 593
14:28:45.808 -> Address EEPROM option 17: 753
14:28:45.808 -> Address EEPROM option 18: 759
14:28:45.808 -> Address EEPROM option 19: 760
14:28:45.808 -> Address EEPROM option 20: 764
14:28:45.893 -> Address EEPROM option 21: 768
14:28:45.893 -> Address EEPROM option 22: 772
14:28:45.893 -> Address EEPROM option 23: 776
14:28:45.893 -> Address EEPROM option 24: 778
14:28:45.893 -> Address EEPROM option 25: 782
14:28:45.893 -> Address EEPROM option 26: 786
14:28:45.893 -> Address EEPROM option 27: 850
14:28:45.893 -> Address EEPROM option 28: 914
14:28:45.893 -> Address EEPROM option 29: 915
14:28:45.893 -> Address EEPROM option 30: 916
14:28:45.893 -> Address EEPROM option 31: 926
14:28:45.893 -> Address EEPROM option 32: 927
14:28:45.893 -> Address EEPROM option 33: 1087
14:28:45.893 -> Address EEPROM option 34: 1088
14:28:45.893 -> Address EEPROM option 35: 1092
14:28:45.893 -> Address EEPROM option 36: 1093
14:28:45.893 -> Address EEPROM option 37: 1094
14:28:45.893 -> Address EEPROM option 38: 1095
14:28:45.893 -> Address EEPROM option 39: 1099
14:28:45.893 -> Address EEPROM option 40: 1131
14:28:45.893 -> Address EEPROM option 41: 1163
14:28:45.893 -> Address EEPROM option 42: 1195
14:28:45.893 -> Address EEPROM option 43: 1227
14:28:45.893 -> Address EEPROM option 44: 1229
14:28:45.893 -> Address EEPROM option 45: 1230
14:28:45.893 -> Address EEPROM option 46: 1231
14:28:45.893 -> Size of cmdtbl1: 46032
14:28:45.893 -> Size of cmdtbl2: 44832
14:28:45.893 -> Size of cmdtbl3: 192
14:28:45.893 -> free RAM: 85807
14:28:45.893 -> Init One Wire bus...
14:28:45.893 -> numSensors: 0
14:28:45.918 -> PPS settings:
14:28:45.918 -> Starting SD..ok
14:29:10.971 -> 192.168.178.37
14:29:10.971 -> 255.255.255.0
14:29:10.971 -> 192.168.178.1
14:29:10.971 -> Waiting 3 seconds to give Ethernet shield time to get ready...
14:29:10.971 -> Calculating free space on SD...3771 MB free
14:29:15.421 -> Start network services
14:29:15.786 -> LAN->HEIZ QUR 6225 Konfiguration - Gerätefamilie: 
14:29:15.786 -> dc c2 00 0b 06 3d 05 00 02 52 88 
14:29:15.786 -> HEIZ->LAN ANS 6225 Konfiguration - Gerätefamilie: 96
14:29:15.786 -> dc 80 42 0e 07 05 3d 00 02 00 00 60 5e 3e 
14:29:15.818 -> #6225: 96
14:29:15.985 -> LAN->HEIZ QUR 6226 Konfiguration - Gerätevariante: 
14:29:15.985 -> dc c2 00 0b 06 3d 05 00 03 42 a9 
14:29:15.985 -> HEIZ->LAN ANS 6226 Konfiguration - Gerätevariante: 100
14:29:16.017 -> dc 80 42 0e 07 05 3d 00 03 00 00 64 68 0e 
14:29:16.017 -> #6226: 100
14:29:16.017 -> Device family: 96
14:29:16.017 -> Device variant: 100
14:29:16.017 -> 
14:29:16.017 -> Setup complete
14:29:16.714 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:16.747 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:16.813 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:16.846 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:19.932 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:19.965 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:20.031 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:20.031 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:23.120 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:23.152 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:23.218 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:23.218 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:26.336 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:26.336 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:26.435 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:26.435 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:29.522 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:29.555 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:29.621 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:29.621 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:32.740 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:32.740 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:32.839 -> HEIZ->EM1 INF      05040227 00 00 d8 00 
14:29:32.839 -> dc 80 03 0f 02 05 04 02 27 00 00 d8 00 44 68 
14:29:32.939 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:32.939 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:36.026 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:36.059 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:36.125 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:36.125 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:39.244 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:39.244 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:39.343 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:39.343 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:42.429 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:42.463 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:42.529 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:42.529 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:45.646 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:45.646 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:45.746 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:45.746 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:48.630 -> HEIZ->EM1 INF      05040227 00 00 00 00 
14:29:48.630 -> dc 80 03 0f 02 05 04 02 27 00 00 00 00 d8 e6 
14:29:48.829 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:48.862 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:48.929 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:48.962 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:52.045 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:52.045 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:52.145 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:52.145 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:55.229 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:55.262 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:55.328 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:55.328 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:29:58.446 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:29:58.446 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:29:58.545 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:29:58.545 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:00.270 -> GET / HTTP/1.1

14:30:00.270 -> /
14:30:00.270 -> URL: index.html
14:30:00.535 -> GET /favicon.ico HTTP/1.1

14:30:00.568 -> /favicon.ico
14:30:01.629 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:01.662 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:01.729 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:01.729 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:03.653 -> GET /C HTTP/1.1

14:30:03.686 -> /C
14:30:03.686 -> URL: C
14:30:03.786 -> EEPROM dump:
14:30:03.786 -> ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:06.704 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:06.704 -> GET /favicon.ico HTTP/1.1

14:30:06.704 -> /favicon.ico
14:30:06.737 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:06.737 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:08.031 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:08.064 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:08.130 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:08.130 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:11.248 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:11.248 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:11.347 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:11.347 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:14.434 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:14.434 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:14.533 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:14.533 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:17.652 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:17.652 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:17.719 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:17.752 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:20.838 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:20.838 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:20.938 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:20.938 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:24.058 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:24.058 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:24.124 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:24.124 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:27.242 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:27.242 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:27.342 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:27.342 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:30.427 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:30.460 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:30.527 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:30.527 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:33.646 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:33.646 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:33.712 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:33.746 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:36.831 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:36.865 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:36.931 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:36.931 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:40.050 -> DISP->HEIZ QUR 8310 Diagnose Erzeuger - Kesseltemperatur: 
14:30:40.050 -> dc 8a 00 0b 06 3d 0d 05 19 4f 8c 
14:30:40.117 -> HEIZ->DISP ANS 8310 Diagnose Erzeuger - Kesseltemperatur: 41.0 °C
14:30:40.150 -> dc 80 0a 0e 07 0d 3d 05 19 00 0a 41 08 a5 
14:30:41.742 -> POST /CI HTTP/1.1

14:30:41.742 -> /CI
14:30:41.742 -> URL: CI
14:30:41.775 -> Option ID: 0
14:30:41.775 -> Option value: 150
14:30:41.775 -> Option ID: 6
14:30:41.775 -> Option value: 0
14:30:41.775 -> Option ID: 7
14:30:41.775 -> Option value: 66
14:30:41.775 -> Option ID: 8
14:30:41.775 -> Option value: 66
14:30:41.775 -> Option ID: 9
14:30:41.775 -> Option value: 0
14:30:41.775 -> Option ID: 10
14:30:41.775 -> Option value: 0
14:30:41.775 -> Option ID: 43
14:30:41.775 -> Option value: 82
14:30:41.775 -> Option ID: 17
14:30:41.775 -> Option value: 00:80:41:19:69:90
14:30:41.808 -> Option ID: 18
14:30:41.808 -> Option value: 1
14:30:41.808 -> Option ID: 19
14:30:41.808 -> Option value: 192.168.178.88
14:30:41.808 -> Option ID: 20
14:30:41.808 -> Option value: 255.255.255.0
14:30:41.808 -> Option ID: 21
14:30:41.808 -> Option value: 192.168.178.1
14:30:41.808 -> Option ID: 22
14:30:41.808 -> Option value: 192.168.178.1
14:30:41.808 -> Option ID: 23
14:30:41.808 -> Option value: 80
14:30:41.808 -> Option ID: 24
14:30:41.808 -> Option value: 0.0.0.0
14:30:41.808 -> Option ID: 25
14:30:41.808 -> Option value: 0.0.0.0
14:30:41.808 -> Option ID: 11
14:30:41.808 -> Option value: 0
14:30:41.808 -> Option ID: 12
14:30:41.808 -> Option value: 0
14:30:41.841 -> Option ID: 13
14:30:41.841 -> Option value: 8700,8326
14:30:41.841 -> Option ID: 14
14:30:41.841 -> Option value: 0
14:30:41.841 -> Option ID: 15
14:30:41.841 -> Option value: 3600
14:30:41.841 -> Option ID: 16
14:30:41.841 -> Option value: 8700,8743,8314
14:30:41.841 -> Option ID: 26
14:30:41.841 -> Option value: 
14:30:41.841 -> Option ID: 27
14:30:41.841 -> Option value: 
14:30:41.841 -> Option ID: 29
14:30:41.841 -> Option value: 7
14:30:41.841 -> Option ID: 30
14:30:41.841 -> Option value: 2,3
14:30:41.841 -> Option ID: 31
14:30:41.841 -> Option value: 0
14:30:41.841 -> Option ID: 32
14:30:41.841 -> Option value: 8700,8743,8314
14:30:41.841 -> Option ID: 33
14:30:41.874 -> Option value: 0
14:30:41.874 -> Option ID: 34
14:30:41.874 -> Option value: 192.168.178.5
14:30:41.874 -> Option ID: 3
14:30:41.874 -> Option value: KEQ0502326,KEQ0505080
14:30:43.466 -> Option ID: 35
14:30:43.466 -> Option value: 2
14:30:43.466 -> Option ID: 36
14:30:43.466 -> Option value: 1
14:30:43.499 -> Option ID: 45
14:30:43.499 -> Option value: 1
14:30:43.499 -> Option ID: 44
14:30:43.499 -> Option value: 0
14:30:43.499 -> Option ID: 37
14:30:43.499 -> Option value: 0
14:30:43.499 -> Option ID: 38
14:30:43.499 -> Option value: 192.168.178.20
14:30:43.499 -> Option ID: 39
14:30:43.499 -> Option value: User
14:30:43.499 -> Option ID: 40
14:30:43.499 -> Option value: Pass
14:30:43.499 -> Option ID: 41
14:30:43.499 -> Option value: BSB-LAN
14:30:43.499 -> Option ID: 42
14:30:43.499 -> Option value: MyHeater
14:30:43.499 -> Option ID: 46
14:30:43.499 -> Option value: 0
14:30:43.599 -> Adding known Max ID to list: 00000000
14:30:43.599 -> Adding known Max ID to list: 00000000
14:30:43.599 -> Adding known Max ID to list: 00000000
14:30:43.632 -> Adding known Max ID to list: 00000000
14:30:43.632 -> Adding known Max ID to list: 00000000
14:30:43.632 -> Adding known Max ID to list: 00000000
14:30:43.665 -> Adding known Max ID to list: 00000000
14:30:43.665 -> Adding known Max ID to list: 00000000
14:30:43.665 -> Adding known Max ID to list: 00000000
14:30:43.665 -> Adding known Max ID to list: 00000000
14:30:43.698 -> Adding known Max ID to list: 00000000
14:30:43.698 -> Adding known Max ID to list: 00000000
14:30:43.698 -> Adding known Max ID to list: 00000000
14:30:43.732 -> Adding known Max ID to list: 00000000
14:30:43.732 -> Adding known Max ID to list: 00000000
14:30:43.732 -> Adding known Max ID to list: 00000000
14:30:43.765 -> Adding known Max ID to list: 00000000
14:30:43.765 -> Adding known Max ID to list: 00000000
14:30:43.765 -> Adding known Max ID to list: 00000000
14:30:43.798 -> Adding known Max ID to list: 00000000
14:30:48.044 -> Connection to max_cul: failed
14:30:49.735 -> READY
14:30:49.835 -> Reading EEPROM...

Before I do something like /NE or a reboot now or before I'll describe the other problems I had with my other system in the past, I just wanted to report this behaviour because it already doesn't seem to work as expected.

1coderookie commented 3 years ago

And here a little screenshot of that QAA-line: Bildschirmfoto von 2020-12-03 13-38-34

1coderookie commented 3 years ago

Now in your EEPROM stored QAA50: 52 00 00 00 00 42 42

Just in case that it could be a helpful information: I never set the QAA50, I dind't change anything within the config.h, always used the default settings (which ist QAA70: byte QAA_TYPE = 0x53; // 0x53 = QAA70, 0x52 = QAA50)

fredlcore commented 3 years ago

You set it the moment you save the configuration. Then all the config options are written to EEPROM exactly as they are displayed in the config page. So even if you just set Read config from EEPROM to yes, the QAA50 value gets written. That's why you have to erase the EEPROM first.

dukess commented 3 years ago

Ok. I will try tomorrow (or may be today) erase eeprom and look on this one more time. BTW: we not need QAA_TYPE as variable, we can use it as definition (#define QAA_TYPE 0x52/0x53) for memory saving. I did it as variable on early stage but never use it as variable.

1coderookie commented 3 years ago

@fredlcore: Sorry, but I don't get it - I flashed the default config.h where the QAA70 is preset by default. To a brand new EEPROM. I also did /NE to erase the EEPROM. I never set the QAA50 anywhere - neither in the config.h nor via webinterface. I just didn't touch it. Still the QAA50 shows up. EDIT: So I just wonder where it comes from, because the default setting is QAA70 and I never ever changed anything anywhere..

What you said would only make sense to me, if the QAA50 would be set by default if PPS wasn't used and therefore the default value of the config.h would be ignored. If it's like that - it's fine with me. I just tested it with the default config.h, expected the same output within the webinterface as the config.h-values are and saw, that it's not the same. I think/thought that it's a bug and reported it here.

fredlcore commented 3 years ago

I'm only saying that the moment you change anything in the webinterface all options are written. So if at any point you were writing the config (as you did in some of your testing), the "wrong" QAA50 value was written to EEPROM, too. In the meantime there have been a few bugfixes that should prevent that behaviour, but nevertheless your logs indicate that the QAA50 value is in the EEPROM and will stay there until erased.

fredlcore commented 3 years ago

EDIT: I see that the 0x52 is still in the EEPROM dump after you issued /NE, so that's likely a problem. I don't exactly understand how the EEPROM is re-initialized after /NE because the "magic bytes" in the beginning are apparently written there, too, but the 0x52 should not be there if the value is initialized otherwise in _config.h.

1coderookie commented 3 years ago

So if at any point you were writing the config (as you did in some of your testing), the "wrong" QAA50 value was written to EEPROM, too. In the meantime there have been a few bugfixes that should prevent that behaviour,

Understood that - that's why I did the tests today with the latest version (after you merged the last pullrequest this morning, I think it was #201). So I expected this to be fixed. Because it wasn't and even showed up after /NE, I reported it again ;)

fredlcore commented 3 years ago

Correct :) - see my EDIT above.

1coderookie commented 3 years ago

Yep, just wanted to mention that I used the latest version which already included the latest QAA-bugfixes from this morning ;)

dukess commented 3 years ago

Just FYI:

Note: program was runned on Mega. QAA_TYPE = 0x53 After /NE: 96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Here we see PPS settings "without" values. But here must be one byte with 53 value. But in web config QAA type displayed correct

After /CI:

96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 53 00 00 00 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

All ok.

Switch to type 0x52 and /CI 96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 52 00 00 00 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Ok.

Change to type QAA_TYPE = 0x52 in config.h After /NE:

96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Same thing as above. But in web config QAA type displayed correct After /CI:

96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 52 00 00 00 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Switch to type 0x53 and /CI 96 03 31 7c 1d a2 4b 45 51 30 35 30 32 33 32 36 00 4b 45 51 30 35 30 35 30 38 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 53 00 00 00 00 42 42 00 00 03 00 01 fc 21 86 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

All ok. After reboot QAA type ok.

BUT: this code never(?) work: no debug messages, no EEPROM updates.

  for (int i=PPS_TWS;i<=PPS_BRS;i++) {
    if(pps_values[i] == (int16_t)0xFFFF) pps_values[i] = 0;
    if (pps_values[i] > 0 && pps_values[i]< (int16_t)0xFFFF && i != PPS_RTI) {
      printFmtToDebug(PSTR("Slot %d, value: %u\r\n"), i, pps_values[i]);
    }
  }
  if(pps_values[PPS_QTP] == 0 || UseEEPROM != 0x96) {
    pps_values[PPS_QTP] = QAA_TYPE;
    writeToEEPROM(CF_ROOM_DEVICE);
  }

mystic.

dukess commented 3 years ago

Update: i checked it and code above working. Really QAA_type was writing in EEPROM in two different places. It not critical but not fine.And i have no idea how to defeat it. :-)

1coderookie commented 3 years ago

At least it's reassuring for me to know, that my description now somehow makes sense and that there really is a reason for that QAA-behaviour somewhere ;) But seriously: at least it's good that it's nothing critical (if this weird 'writing in EEPROM in two different places'-behaviour really only affects the QAA-type!?). Would the problem disappear somehow, if we would take the QAA-model out of the webinterface? So that one only has the ability to set the type within the config.h?

Btw @fredlcore: The QAA70 offers more functionality than the QAA50. So I was wondering why BSB-LAN offers also the function to imitate the QAA50 and if it wouldn't be sufficient to only set the QAA70 as the fixed type of room unit to be imitated by BSB-LAN. Possible benefit: In that case we could maybe completely get rid of the QAA50 and the error..?

When it comes down to the differences of the functionality between these two room units: did you ever try if the controller would take a command from BSB-LAN imitating a QAA50 which an original QAA50 doesn't even offer? Here's a screenshot from a manual about the differences: Bildschirmfoto von 2020-12-04 10-24-20

1coderookie commented 3 years ago

@dukess: Btw, did I get you right that you were using the webconfig with a Mega? So it is possible (somehow) to use webconfig on the Mega? Because this question came up in the forum and I didn't do any tests yet with v2.x and the Mega..

So I will proceed testing with Due and the recent version, but maybe not today and at this weekend, time is a bit short right now for me in these days..

fredlcore commented 3 years ago

@1coderookie: I only have a QAA70 and therefore can't really test the difference or whether some telegrams are different. Therefore I left the option for QAA50 in there. We could probably get rid of QAA50 eventually, but it would still be better to fix the error anyways...

dukess commented 3 years ago

But seriously: at least it's good that it's nothing critical (if this weird 'writing in EEPROM in two different places'-behaviour really only affects the QAA-type!?).

QAA_type saved twice in EEPROM: first time as "standalone" variable (pps_values[PPS_QTP]) and second time as part of pps_values array. In theory we can change one value in EEPROM cell for making different values but after /CI they will be synchronized. I can add conditions for physical excluding of "standalone" variable reading and writing to EEPROM but here no big reason do it now.

Would the problem disappear somehow, if we would take the QAA-model out of the webinterface? So that one only has the ability to set the type within the config.h?

This contradicts the idea of moving the configuration setting to web interface. :)

Btw, did I get you right that you were using the webconfig with a Mega?

@1coderookie Yep. In program was used external interface (with LANG C) and compiled these modules: WEBSERVER, IPWE, Verbose DEBUG, LOGGER, MAX_CUL, CONFIG_IN_EEPROM, WEBCONFIG. So program size was 237663 bytes. MQTT support "eat" 4,6 Kb, ONE_WIRE_BUS - 3,2Kb, DHT_BUS - 2,8 Kb, AVERAGES - 2,9 Kb. I.e. this solution will suit not for all users.

@fredlcore BTW: what you think about removing /T (Update: /B and /A too) command (because all sensors can be accesses through programs 20000-20700)?

fredlcore commented 3 years ago

Just for my understanding: Where does the value in pps_values array come from? Shouldn't it be erased after flash and then set to QAA_TYPE?

As for removing /T, /B and /A, I think we can remove them. If not now (where everybody is changing their configuration anyways), when then ;)?

malansk commented 3 years ago

I you remove the /T URL command, how can I read the sensor values from from WebGui ? I only have PPS, so I'm not shure how I can access the programs 20000-20700 ?

Same problem would happen with removal of /B (although with my PPS system I dont't get Brennerstatus anyway, but some other PPS system maybe do).

dukess commented 3 years ago

Where does the value in pps_values array come from? Shouldn't it be erased after flash and then set to QAA_TYPE?

Initially It come from _config.h. pps_settings will be erased only with /NE.

As for removing /T, /B and /A, I think we can remove them.

Roger.

malansk commented 3 years ago

@dukess In V2.0.14, ff I try to read One Wire Sensor with http://192.168.178.88/P20301 I only get Error Message "Bus-System: PPS Nur Lesen".

So If you really want to remove /T please make the One Wire Sensors accessible even if Bus system is set to PPS (not BSB/LPB).

1coderookie commented 3 years ago

As for removing /T, /B and /A, I think we can remove them. If not now (where everybody is changing their configuration anyways), when then ;)?

Why should we remove them? Does it take so much memory? Sure we can access them through parameter numbers (we already could before v2.x though), but if I rember correctly, one has to query not only one parameter now for e.g. getting the sensor-id and the value for a 1wire sensor at the same time. When querying /T, we get all sensors with the ids and the values at one time. In my opinion there are minimum two advantages of the /T etc functions: 1) It's easy when it comes down to the first usage or the replacement of a sensor, because one can see all ids&sensors and the changing value to identify a specific sensor just by using url/T. 2) Some of the code examples for other home automation systems in the manual use /T (or /B or /A in other examples) to query all sensors and then read out the ids&values they need from that output. If we delete /T and so on, these examples will become completely disfunctional. Also existing solutions of users, who already use these functions based on these examples and who just want to update to v2.x will encounter problems that they may not solve by themselve, because they are just not capable of adjusting the code..

So, I would say: please let these functions as they are..

1coderookie commented 3 years ago

..and btw: I think also some of the modules for other home automation systems then FHEM which were developed by users also need these functions. If we delete them now, these modules will also encouter problems or will not longer work as expected..

malansk commented 3 years ago

Yes, that is also my usecase. Since my heating system has no Rücklauftemperatursensor, I use three One-Wire sensors (Rückauftemperatur nach Mischer, Rücklauftemperatur vor Mischer, Heizkellertemperatur) connected to BSB-Lan.

I use Homematic smarthome system with CuxD example script from the manual to read the values of these sensors with URL command /T. Then I have alle the relevant values in the Homematic system and can store them in common database for analysis with CCU Historian Datalogger.

Please let the /T function as it is.

dukess commented 3 years ago

Same problem would happen with removal of /B (although with my PPS system I dont't get Brennerstatus anyway, but some other PPS system maybe do

@malansk This is an important thing, thank you for reminding. Need to unlock K49 for PPS.

fredlcore commented 3 years ago

I think it's of course necessary to unlock K49 for PPS, but all other arguments can be easily resolved, because you can query all your sensors still in one page if you call for example http://x.x.x.x/20000-20999 I'm not even sure that it will break any existing external module structurally because all users have to do is change the parameters they are calling. All modules can already query "normal" parameters, so the sensors just fit in nicely. We won't even need any special examples anymore. It will save space in both BSB-LAN as well as the external modules (if they want to remove the then unnecessary code) and therefore these legacy URL calls should go.

dukess commented 3 years ago

Does it take so much memory? @1coderookie ~2 Kb.

I can offer other decision: we can wrap /T /B /A code in

if !defined NO_LEGACY

...

endif

and end user can do their choice.

fredlcore commented 3 years ago

That would still leave unnecessary code in the source. I really would like to take this 2.0 version to get rid of all the stuff that we have dragged on for years and which have been at times ugly workarounds. You have done a great job cleaning up a lot of this stuff. If we drag this on now, we will at least have it until version 3.0 for no good reason.

malansk commented 3 years ago

So in my current polling script:

================================== **

! BSB-Adapter Wert abfragen by Bratmaxe ! 29.10.2018 - V0.1 - Erste Version ! 11.11.2019 - V0.2 - Auslesen von Temperatursensoren hinzugefügt ! 15.11.2019 - V0.3 - Änderung der Ausleseart der Temperatursensoren mithilfe der ID

string CuxGeraetAbfrage = "CUX2801001:13"; ! GeräteAdresse des CuxD Execute Gerätes, welches die Abfragen ausführt string CuxGeraetLogging = ""; ! GeräteAdresse des CuxD Execute Gerätes, welches das Logging ausführt, Leer ("") lassen, wenn kein Cuxd-Highcharts Logging gewünscht string IPAdresseBSB = "192.168.178.88"; !IP_Adresse des BSB-Adapters string Wort = "T"; !Parameternummer: Beispiel Außentemperatur = 8700, Betriebsmodus = 700, eigene Temperatursensoren = T string TemperatursensorID = "287a77a730190184"; !Wenn Wort = "T", dann hier die ID des auszulesenden Temperatursensors eingeben, wird sonst ignoriert! string Variablename = "Rücklauf_vor_Kessel_Heizung"; ! Name der Systemvariable boolean Durchschnitt24h = false; ! true = Durchschnittswert holen, false = aktuellen Wert holen - diese muss vorher in der BSB_lan_config.h konfiguriert wurden sein!!! (Bei Wort = T wird dieser Parameter ignoriert)

**

I only would need to change: string Wort = "20301"; instead of: string Wort = "T";

I think I could do that :-)

However I don't know if the 1:1 relation would be ensured, now the script look explicitly for the ID of the propper sensor. With the 2031 parameter , I'm not shure if the sensor order would stay the same e.g. after reboot or after adding / removing sensors from the system (as mentioned on page 109 of the BSB-Lan manual).

For my system probably no issue, but there might be other usecases where users use a more dynamic configuration in regard of how many sensor are attached.

dukess commented 3 years ago

Enabling category 49 (User sensors) for PPS https://github.com/fredlcore/bsb_lan/pull/203

malansk commented 3 years ago

Thank you :-)

fredlcore commented 3 years ago

Yes, I think that should do it - as for the sorting of the sensors, I think it would be worth trying it out. We call the function in the 1Wire library which returns all the sensors in an array, but I'm not sure if the array is always sorted in the same way. If not, we could add code that it would do so, so that should not be a stumbling block. In any case it should of course be ensured that each sensor stays in its position - at least until new sensors are being added (in case we sort alphabetically or so).

fredlcore commented 3 years ago

Pull Request is merged now, so maybe you can check it out, @malansk, if it works with parameter numbers instead of /T?

1coderookie commented 3 years ago

That would still leave unnecessary code in the source.

If you guys want to delete that function, it's fine with me, but I'm not able to adjust the code examples for the different systems - just for your information. If you (fredlcore) announce this changement in the FHEM forum, hopefully the guys who wrote the examples/modules will read it and take care of that.. ;)

But looking on what you said about the memory and the unneccessary code, I have to pull up again the case with the possibility to choose between the QAA70&QAA50. Maybe you didn't get what I meant, because you wrote:

@1coderookie: I only have a QAA70 and therefore can't really test the difference or whether some telegrams are different. Therefore I left the option for QAA50 in there.

I wasn't talking about differences in the telegrams, because the QAA50 doesn't offer any option which the QAA70 doesn't have, see the screenshot above. If one wants BSB-LAN to imitate the room unit to control as much as possible, he would never choose the QAA50, because that one is just 'dumb' compared to the bigger QAA70. So up to me it doesn't really makes sense to even offer this possibility to choose between a 'dumb' room unit and one which offers much more options to control something or to set/change any settings within the controller. One would always choose the type which offers the most functionality. And if the end user is insecure and doesn't really know about these differences, he wouldn't touch this option anyway I guess (also because just by the name the QAA70 seems to be 'bigger' ;) .. Taking that option of the QAA50 away would also make the code smaller, would save space etc.pp. and could even be a solution to get rid of the problem that the QAA50 is set/displayed while the QAA70 should be.

1coderookie commented 3 years ago

In any case it should of course be ensured that each sensor stays in its position - at least until new sensors are being added (in case we sort alphabetically or so).

Iirc, the sensors are listed by the alphabetical&numerical order of the specific sensorID. That's why I asked you to add the function of displaying the ID within /T in the past, because without it the sensors just changed the order if any replacement/addition took place and one probably didn't realize right away that the order changed.

malansk commented 3 years ago

I have changed the one line in Bratmaxes script to use P20305 instead of the "T" & ID logic, so far it is working. But the script also does several thing e.g. create system variables on the CCU3:

! Systemvariabel Info ermitteln string Info = ""; if (Wort == "T") { Info = "SensorID: " + TemperatursensorID; } else { Info = stdout.Substr(0,stdout.Find(":")); } !Info = Info.Substr(Wort.Length(), stdout.Length()); !WriteLine("DPInfo = " # Info); !Debug: Welcher DPInfo-Wert wurde gefunden

I'm not shure if this would still work if I would like to add some more sensors in the future (probably yes since I have also created some other variables e.g. 1501 - PPS Präsenztaste).

Maybe ask in FHEM Forum if Bratmaxe would adapt his scripts ?

fredlcore commented 3 years ago

@1coderookie: The thing is that I don't know if there are heating systems which are not going to work with the QAA70. PPS is such a strange protocol and system, that I don't want to make any bets on that. Also, there may be cases where a user has a QAA50 room unit and wants to get into write mode without detaching the QAA50. For that, the bus ID must of course be the one of the QAA50. Plus, there is no extra code for the QAA50. All you would save is the one line text in the webinterface. Yes, if I know 100% that we will never going to use that, I'll get rid of it. Your QAA50 display problem is a different issue and it would be a dirty hack just to get away with the entry without solving any underlying issue first.

With a multiline regex, it would still be possible in the "parameter view" to match the sensor ID with the value.

EDIT: Didn't reply to the other part of your comment: As I said (and as @malansk has confirmed), there is no need for dedicated examples anymore. The sensors behave like any other parameter. So people don't have to think in terms of /T, /B or /A anymore but just in terms of parameter numbers, so the other examples will just fit.

fredlcore commented 3 years ago

@malansk: The Wort == "T" part looks like it needs to be adapted, but I guess this is just the kind of code that also could be left without doing harm because the module should be able to create system variables for "normal" parameters as well (like the Präsenztaste you mentioned). So if you query 20305 there, it should work right away. That's the beauty of this new approach :).

1coderookie commented 3 years ago

Ah ok, I understand that. Btw: so it is possible to let a 'real' room unit be attached to the controller and using writing mode? Because this is what the config.h states: // PPS: // - set 'pps_write' to "1" to enable writing to heater - only use this if there is no other room controller (such as QAA50/QAA70) active.

dukess commented 3 years ago

About sensor sorting https://forum.arduino.cc/index.php?topic=268443.0 "U. D." notifications@github.com 4 декабря 2020 г. 18:35:30 написал:

In any case it should of course be ensured that each sensor stays in its position - at least until new sensors are being added (in case we sort alphabetically or so).

Iirc, the sensors are listed by the alphabetical&numerical order of the specific sensorID. That's why I asked you to add the function of displaying the ID within /T in the past, because without it the sensors just changed the order if any replacement/addition took place and one probably didn't realize right away that the order changed.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

fredlcore commented 3 years ago

Yes, it is not recommended because you would have to mirror the values in the QAA as well as BSB-LAN and BSB-LAN could then send the QAA70-only functions. Not a widespread scenario, but it may be an option for some.

fredlcore commented 3 years ago

@1coderookie: Could you please check if any of the concrete issues you have raised are still open? Otherwise I would close this issue now. Also, GitHub just informed me that they now offer "Discussions", something like a mini-forum where more general matters and questions can be discussed. If there are still open matters, please let's all open one issue for one thing only. Then it's easier to keep track and know when issues can be closed.

1coderookie commented 3 years ago

QAA-Modell in Webconfig shows QAA70 with one adapter, with another one it shows QAA50 (probably I have to do another /NE on that one - I'll check again in the future), the other problems I mentioned seem to be solved - imo issue can be closed.

malansk commented 3 years ago

For me it also shows QAA70 in the web interface. I have QAA70 also defined in config.h. I never tried to change this to QAA50 in the WEB-UI or in config.h since it would probably rease all my time settings from the heating controller and I would sit in the cold :-)

fredlcore commented 3 years ago

I assume that most of the major aspects in this issue are now fixed. If the QAA-setting bug still exists (or anything else comes up) please open a separate issue for that so we can track it better. Thanks!