dominikamann / oekofen-pellematic-compact

A Ökofen Pellematic Compact Integration based on JSON/TCP-Inteface for Home Assistant.
Apache License 2.0
34 stars 7 forks source link

DIsplay problem with status messages that include non-ASCII characters #78

Closed cperrier closed 3 weeks ago

cperrier commented 3 weeks ago

This problem seems similar to issue 49, but indeed the opposite. In #49 it looks like status messages receved from the boiler ar ISO 8859-1 encoded and not properly displayed.

My problem is the opposite : apparently my boiler sends UTF-8 encoded status messages but they are displayed like this:

Mode réduit actif|T ext supérieure à la limite de réduit

which is clearly UTF-8 encoded strings that aren't properly decoded ("é" is a "é")

This apparently begin after I updated to 4.x firmware a few weeks ago.

I see in #49 that you requested "the JSON result of your Ökofen Interface" and never got it from the bug reporter. I willl happily send this.....as soon as I find how to get it...:-)

Ultchad commented 3 weeks ago

To get the JSON: When you configured your service, you put the URL with your boiler password like this: "http://[YOU_IP]:4321/[YOUR_PASSWORD]/all"

Put this URL in your browser and you will get the JSON (at home , on the same network as the boiler)

cperrier commented 3 weeks ago

Oh, sure... Here is the JSON, then:

{
  "system":{
    "L_ambient":108, 
    "L_errors":0, 
    "L_usb_stick":0, 
    "L_boiler_temp":450, 
    "L_existing_boiler":0, 
    "mode":1
  },
  "weather":{
    "L_temp":100, 
    "L_clouds":9, 
    "L_forecast_temp":100, 
    "L_forecast_clouds":9, 
    "L_forecast_today":1, 
    "L_starttime":920, 
    "L_endtime":1540, 
    "L_source":"https://www.openweathermap.org", 
    "L_location":"<obfuscated>", 
    "cloud_limit":55, 
    "hysteresys":-40, 
    "offtemp":20, 
    "lead":120, 
    "refresh":0, 
    "oekomode":1
  },
  "forecast":{
    "L_w_0":"mer., 6 nov. 15:12|10|9|8 km/h|01d|800|C|07:50|17:25", 
    "L_w_1":"mer., 6 nov. 16:00|10|9|8 km/h|01d|800|C", 
    "L_w_2":"mer., 6 nov. 19:00|10|16|10 km/h|02n|801|C", 
    "L_w_3":"mer., 6 nov. 22:00|9|16|10 km/h|02n|801|C", 
    "L_w_4":"jeu., 7 nov. 01:00|8|11|8 km/h|02n|801|C", 
    "L_w_5":"jeu., 7 nov. 04:00|8|0|8 km/h|01n|800|C", 
    "L_w_6":"jeu., 7 nov. 07:00|7|0|9 km/h|01n|800|C", 
    "L_w_7":"jeu., 7 nov. 10:00|11|0|10 km/h|01d|800|C", 
    "L_w_8":"jeu., 7 nov. 13:00|14|2|15 km/h|01d|800|C", 
    "L_w_9":"jeu., 7 nov. 16:00|14|0|11 km/h|01d|800|C", 
    "L_w_10":"jeu., 7 nov. 19:00|10|0|12 km/h|01n|800|C", 
    "L_w_11":"jeu., 7 nov. 22:00|8|0|10 km/h|01n|800|C", 
    "L_w_12":"ven., 8 nov. 01:00|8|0|8 km/h|01n|800|C", 
    "L_w_13":"ven., 8 nov. 04:00|7|0|7 km/h|01n|800|C", 
    "L_w_14":"ven., 8 nov. 07:00|7|1|7 km/h|01n|800|C", 
    "L_w_15":"ven., 8 nov. 10:00|10|0|5 km/h|01d|800|C", 
    "L_w_16":"ven., 8 nov. 13:00|14|0|7 km/h|01d|800|C", 
    "L_w_17":"ven., 8 nov. 16:00|15|2|6 km/h|01d|800|C", 
    "L_w_18":"ven., 8 nov. 19:00|11|4|6 km/h|01n|800|C", 
    "L_w_19":"ven., 8 nov. 22:00|10|4|5 km/h|01n|800|C", 
    "L_w_20":"sam., 9 nov. 01:00|10|3|5 km/h|01n|800|C", 
    "L_w_21":"sam., 9 nov. 04:00|9|3|6 km/h|01n|800|C", 
    "L_w_22":"sam., 9 nov. 07:00|9|20|6 km/h|02n|801|C", 
    "L_w_23":"sam., 9 nov. 10:00|12|74|6 km/h|04d|803|C", 
    "L_w_24":"sam., 9 nov. 13:00|15|58|8 km/h|04d|803|C"
  },
  "hk1":{
    "L_roomtemp_act":193, 
    "L_roomtemp_set":190, 
    "L_flowtemp_act":365, 
    "L_flowtemp_set":381, 
    "L_comfort":0, 
    "L_state":16, 
    "L_statetext":"Mode réduit actif",
    "L_pump":1, 
    "sensor_avg":10, 
    "remote_override":0, 
    "mode_off":0, 
    "mode_auto":3, 
    "mode_dhw":0, 
    "time_prg":0, 
    "temp_setback":190, 
    "temp_heat":210, 
    "temp_vacation":120, 
    "name":"Maison", 
    "oekomode":1
  },
  "pe1":{
    "L_temp_act":450, 
    "L_temp_set":431, 
    "L_ext_temp":-32768, 
    "L_frt_temp_act":1028, 
    "L_frt_temp_set":80, 
    "L_frt_temp_end":80, 
    "L_br":0, 
    "L_ak":0, 
    "L_not":1, 
    "L_stb":1, 
    "L_modulation":0, 
    "L_runtimeburner":0, 
    "L_resttimeburner":0, 
    "L_currentairflow":0, 
    "L_lowpressure":526, 
    "L_lowpressure_set":630, 
    "L_fluegas":27, 
    "L_uw_speed":100, 
    "L_state":805306400, 
    "L_statetext":"Mise à l'arrêt|T chaud>T marche chaud|Préparation ECS active",
    "L_type":6, 
    "L_starts":1341, 
    "L_runtime":3955, 
    "L_avg_runtime":176, 
    "L_uw_release":350, 
    "L_uw":100, 
    "L_storage_fill":5581, 
    "L_storage_min":400, 
    "L_storage_max":6000, 
    "L_storage_hopper":20, 
    "L_pellets_today":9, 
    "L_pellets_yesterday":8, 
    "suction_clean_time":"19:00", 
    "mode":1
  },
  "error":{
  }
}
Ultchad commented 3 weeks ago

Can you tell me the version of the pelletronic touch. (it's for me, I'm trying to see the differences between the versions), it looks like a v3 but I don't have utf-8

(if you want you can edit to frame your JSON with 3 ` like that ``` at start and end, and it will appear as code)

Ultchad commented 3 weeks ago

I have my response on your other issuer #80 "4.04a" Thanks If i time i want test your JSON

dominikamann commented 3 weeks ago

Hi @cperrier

please try release https://github.com/dominikamann/oekofen-pellematic-compact/releases/tag/v3.3.6. I added the possibility to use a different character set for decoding.

See https://github.com/dominikamann/oekofen-pellematic-compact/discussions/67

dominikamann commented 3 weeks ago

image

cperrier commented 3 weeks ago

Doh, I never saw this configuration screen. Sorry for being a bit dumb, but where should I go in order to change this new setting (at least I managed to install 3.3.6.....not really sure that I did so "the right way".....but it's the one running on my HA instance, at least) ?

Christian

dominikamann commented 3 weeks ago

There is currently no way to change the settings over the UI for an already existing/added heater. You have two options:

cperrier commented 3 weeks ago

OK, thanks for the hint (which I saw recently by trying to find out where is stored the URL of the boiler after I configured it for the first time).

I managed to make the change by editing core.config_entries and set "charset":"utf-8"

And here are my nice badges now:

image

cperrier commented 3 weeks ago

Therefore closing (not sure what is the commonly accepted practice in the community for bug closing but that seems to be the "thing to do". Danke Sehr, Dominik!

cperrier commented 3 weeks ago

Really closing..:-)