Same problem here, two devices, obtaining key and token from MSSmartHome. One has firmware v1.0.0 and the other one v.3.0.8. Both claim latest firmware is installed.
Yeah I can confirm that when manually getting the Token and Key, I get a different result compared to when letting the binding getting the Key and Token by itself. Im my case, it is grabbed from the MSmartHome enviroment. The app does give a notification that the account is in use by another platform (even though it is closedâŠ) when entering the credentials into the binding.
The manually grabbed Key & Token work while the binding Key & Token donât seem to work.
Also started noticing some errors coming through lately. I have two systems connected which seem to work flawelessly. However when going into thing configuration I see the AC generating quite some COMMS errors.
every few minutes itâll go offline due to a broken pipe error. The weird thing is that it is only for one of the two ACâs. It does still respond to the commands though.
2022-10-01 23:48:28.434 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed) to ONLINE
2022-10-01 23:50:35.569 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Device not responding with its status.
2022-10-01 23:50:55.571 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Device not responding with its status. to UNKNOWN
2022-10-01 23:50:55.827 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from UNKNOWN to OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed)
2022-10-01 23:51:05.828 [INFO ] [ler.MideaACHandler$ConnectionManager] - Connected to mideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398b at 192.168.1.116
2022-10-01 23:51:05.831 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed) to ONLINE
2022-10-01 23:53:13.188 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Device not responding with its status.
2022-10-01 23:53:33.191 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Device not responding with its status. to UNKNOWN
2022-10-01 23:53:33.443 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from UNKNOWN to OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed)
2022-10-01 23:53:43.444 [INFO ] [ler.MideaACHandler$ConnectionManager] - Connected to mideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398b at 192.168.1.116
2022-10-01 23:53:43.447 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed) to ONLINE
2022-10-01 23:55:50.858 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Device not responding with its status.
2022-10-01 23:56:10.860 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Device not responding with its status. to UNKNOWN
2022-10-01 23:56:11.112 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from UNKNOWN to OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed)
2022-10-01 23:56:21.114 [INFO ] [ler.MideaACHandler$ConnectionManager] - Connected to mideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398b at 192.168.1.116
2022-10-01 23:56:21.116 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing âmideaac:ac:mideaac__192_168_1_116__14293651226835__net_ac_398bâ changed from OFFLINE (COMMUNICATION_ERROR): Broken pipe (Write failed) to ONLINE
For folks that have multiple units regardless of V2 or V3 or the installed firmware revision could you try staggering the polling time (default is 10 seconds) as well as the Timeout setting (default is 4 seconds) I was able to repo the broken pipe error randomly on 2 different things sporadically and after I increased the timeout from 4 seconds to 6 seconds on one thing and on the other from thing from 4 seconds to 7 seconds I have not seen the broken pipe error since changing it several weeks ago.
FYI
I have 3 devices in my environment 2 A/Câs that have version 2 USB dongles and 1 A/C that is has a version 3 USB dongle and all seem to remain functional even with the errors but obviously did not update item values or return changes when it is in connection timeout otherwise, they all play nicely. Now since making that tweak even my noise in the logs has also subsided.
Best Regards,
Hi Oldman, I am trying to summerize my situation. I had 2 major problem with the current version.
(sorry for my English, i hope it will be clear)
- I had never been able to connect to more then one device at the same time. I built my own devel envirionment to start debuging this issue and found a serious problem in the code. There is a function - getEncKey - in the (static )Security class which when called always overwritten its own (static) SecretKeySpec variable. So once another devices was initialized this key got a new value and the previosly initialized device was no longer able to use this variable. I re wrote the code without these static variables and classes. This finally helped.
- My second problem was that it seemed my devices sent a wrong response in every hour. This resulted false values fom temperature sensors. Since the code always expected for a 25 bytes length value, I decided to throw an error if it was not.
I have 7 (!) v3 devices with 3 different firmware. All work fine. No longer disconnections, no false data.
Regards, Zoltan
This widget made based on a Daikin widget and optimized for v3
uid: midea2
tags: []
props:
parameters:
- description: Location (room) or device name
label: Title
name: title
required: false
type: TEXT
- context: item
description: Item for power channel
label: Power
name: itemPower
required: false
type: TEXT
- context: item
description: Item for analyze button
label: Analyze
name: itemAnalyze
required: false
type: TEXT
multiple: true
- context: item
description: Item for indoor temperature channel
label: Indoor temperature
name: itemIndoorTemp
required: false
type: TEXT
- context: item
description: Item for outdoor temperature channel
label: Outdoor temperature
name: itemOutdoorTemp
required: false
type: TEXT
- context: item
description: Item for target temperature channel
label: Target temperature
name: itemTargetTemp
required: false
type: TEXT
- description: Set minimum target temperature (default = 0)
label: Minimum Temperature
name: MinimumTemperature
required: false
type: INTEGER
- description: Set maximum target temperature (default = 100)
label: Maximum Temperature
name: MaximumTemperature
required: false
type: INTEGER
- description: Set Target Temperature Stepsize (default = 1)
label: Target Temperature Stepsize
name: TemperatureStepsize
required: false
type: DECIMAL
- context: item
description: Item for operation mode channel
label: Operation mode
name: itemMode
required: false
type: TEXT
- context: item
description: Item for fan speed channel
label: Fan speed
name: itemFanSpeed
required: false
type: TEXT
- context: item
description: Item for swing channel
label: Swing mode
name: itemSwing
required: false
type: TEXT
- description: Hide timer button and options
label: Hide Timer Function
name: hideTimerFunction
required: false
type: BOOLEAN
- description: Hide chart button
label: Hide chart Function
name: hideChartFunction
required: false
type: BOOLEAN
- context: item
description: Switch item for timer
label: Switch Timer ON/OFF
name: itemTimerSwitch
required: false
type: TEXT
advanced: true
- context: item
description: Item for timer duration
label: Timer Duration
name: itemTimerDuration
required: false
type: TEXT
advanced: true
- description: Timer minimum duration
label: Timer minimum
name: TimerMinimum
required: false
type: DECIMAL
advanced: true
- description: Timer maximum duration
label: Timer maximum
name: TimerMaximum
required: false
type: DECIMAL
advanced: true
- description: Timer step
label: Timer step
name: TimerStep
required: false
type: DECIMAL
advanced: true
- description: Timer scale steps
label: Timer scale steps
name: TimerScaleSteps
required: false
type: DECIMAL
advanced: true
- description: Timer scale sub steps
label: Timer scale sub steps
name: TimerScaleSubSteps
required: false
type: DECIMAL
advanced: true
- description: Hide solarplant power
label: Hide Solarplant AC power measurement
name: hideSolarplant
required: false
type: BOOLEAN
- context: item
description: AC Power item for solarplant
label: Solarplant AC Power
name: itemSolarplantACPower
required: false
type: TEXT
advanced: true
parameterGroups: []
timestamp: Sep 27, 2022, 5:45:49 PM
component: f7-card
config:
class:
- no-padding
outline: true
title: =props.title
slots:
default:
- component: f7-row
config:
class:
- margin-top-half
- margin-left-half
- margin-right-half
- margin-bottom
slots:
default:
- component: f7-col
config:
large: "33"
width: "50"
slots:
default:
- component: f7-segmented
config:
class:
- segmented-strong
style:
--f7-button-border-radius: 4px
--f7-button-fill-hover-bg-color: var(--f7-theme-color)
--f7-button-padding-horizontal: 0px
--f7-button-padding-vertical: 0px
--f7-segmented-strong-between-buttons: 5px
--f7-segmented-strong-bg-color: transparent
--f7-segmented-strong-button-font-weight: 300
--f7-segmented-strong-button-hover-bg-color: rgba(var(--f7-theme-color-rgb), 0.07)
--f7-segmented-strong-padding: 0px
slots:
default:
- component: oh-button
config:
action: toggle
actionCommand: ON
actionCommandAlt: OFF
actionItem: =props.itemPower
class:
- padding-top-half
- display-flex
- flex-direction-column
fill: "=(items[props.itemPower].state === 'ON') ? true : false"
icon-f7: power
iconSize: 15
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
--f7-button-border-width: 1px
font-size: 8px
height: auto
text: BE/KI
- component: oh-button
config:
action: toggle
actionCommand: ON
actionCommandAlt: OFF
actionItem: =props.itemTimerSwitch
class:
- display-flex
- flex-direction-column
- padding-top-half
fill: "=(items.ac_timer_on_off.state === 'ON') ? true : false"
iconF7: timer
iconSize: 15px
outline: false
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
--f7-button-border-width: 1px
font-size: 8px
height: auto
text: TIMER
visible: =!props.hideTimerFunction
- component: oh-button
config:
action: analyzer
actionAnalyzerItems: =props.itemAnalyze
class:
- display-flex
- flex-direction-column
- padding-top-half
iconF7: chart_bar_alt_fill
iconSize: 15px
outline: false
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
--f7-button-border-width: 1px
font-size: 8px
height: auto
text: GRAF
visible: =!props.hideChartFunction
- component: f7-col
config:
width: "33"
slots:
default:
- component: f7-row
config:
class:
- padding-right-half
slots:
default:
- component: f7-col
config:
width: "25"
slots:
default:
- component: f7-icon
config:
class:
- float-right
color: var(--f7-theme-color)
f7: house
size: 15
- component: f7-col
config:
width: "75"
slots:
default:
- component: Label
config:
class:
- float-right
style:
font-size: 12px
overflow: hidden
text-overflow: elipsis
white-space: nowrap
text: =items[props.itemIndoorTemp].state
- component: f7-row
config:
class:
- padding-right-half
slots:
default:
- component: f7-col
config:
width: "25"
slots:
default:
- component: f7-icon
config:
class:
- float-right
color: var(--f7-theme-color)
f7: tree
size: 15
- component: f7-col
config:
width: "75"
slots:
default:
- component: Label
config:
class:
- float-right
style:
font-size: 12px
overflow: hidden
text-overflow: elipsis
white-space: nowrap
text: =items[props.itemOutdoorTemp].state
- component: f7-row
config:
class:
- padding-right-half
visible: =!props.hideSolarplant
slots:
default:
- component: f7-col
config:
width: "25"
slots:
default:
- component: f7-icon
config:
class:
- float-right
color: var(--f7-theme-color)
f7: sun_max
size: 15
- component: f7-col
config:
width: "75"
slots:
default:
- component: Label
config:
class:
- float-right
style:
font-size: 12px
overflow: hidden
text-overflow: elipsis
white-space: nowrap
text: =items[props.itemSolarplantACPower].state
- component: f7-row
config:
class:
- justify-content-center
slots:
default:
- component: oh-knob
config:
item: =props.itemTargetTemp
max: =props.MaximumTemperature
min: =props.MinimumTemperature
primaryColor: "=(items[props.itemPower].state === 'ON') ? '#e64a19' : 'grey'"
responsive: false
secondaryColor: var(--f7-card-outline-border-color)
size: 150
stepSize: =props.TemperatureStepsize
strokeWidth: "12"
- component: f7-segmented
config:
class:
- margin-left-half
- margin-right-half
- margin-top
- margin-bottom-half
style:
--f7-button-border-radius: 4px
--f7-button-font-size: 8px
--f7-button-font-weight: 300
--f7-button-outline-border-width: 1px
--f7-button-padding-horizontal: 0px
--f7-button-padding-vertical: 0px
--f7-button-text-color: "=themeOptions.dark === 'light' ? 'black' : 'white'"
visible: true
slots:
default:
- component: oh-repeater
config:
for: modeRow
fragment: true
in:
- command: AUTO
icon: arrow_2_squarepath
text: AUTO
- command: COOL
icon: thermometer_snowflake
text: HĆ°TĂS
- command: HEAT
icon: thermometer_sun
text: FĆ°TĂS
- command: DRY
icon: drop_fill
text: SZĂRĂT
- command: FAN_ONLY
icon: wind
text: VENTI
sourceType: array
slots:
default:
- component: oh-button
config:
action: command
actionCommand: =loop.modeRow.command
actionItem: =props.itemMode
class:
- display-flex
- flex-direction-column
- padding-top-half
fill: "=(items[props.itemMode].state === loop.modeRow.command) ? true : false"
iconF7: =loop.modeRow.icon
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
height: auto
text: =loop.modeRow.text
- component: oh-button
config:
action: variable
actionVariable: options
actionVariableValue: "=vars.options || vars.options === undefined ? false : true"
class:
- display-flex
- flex-direction-column
fill: "=vars.options || vars.options === undefined ? false : true"
iconF7: ellipsis_vertical
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
height: auto
width: 50%
- component: f7-segmented
config:
class:
- margin-left-half
- margin-right-half
- margin-top
- margin-bottom-half
style:
--f7-button-border-radius: 4px
--f7-button-font-size: 8px
--f7-button-font-weight: 300
--f7-button-outline-border-width: 1px
--f7-button-padding-horizontal: 0px
--f7-button-padding-vertical: 0px
--f7-button-text-color: "=themeOptions.dark === 'light' ? 'black' : 'white'"
visible: =vars.options === false
slots:
default:
- component: oh-repeater
config:
for: optionsRow
fragment: true
in:
- icon: wind ellipsis_vertical
option: fanspeed
- icon: move ellipsis_vertical
option: swing
sourceType: array
slots:
default:
- component: oh-button
config:
action: variable
actionVariable: =loop.optionsRow.option
actionVariableValue: "=vars[loop.optionsRow.option] || vars[loop.optionsRow.option] === undefined ? false : true"
class:
- display-flex
- flex-direction-column
fill: "=vars[loop.optionsRow.option] || vars[loop.optionsRow.option] === undefined ? false : true"
iconF7: =loop.optionsRow.icon
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
height: auto
- component: oh-button
config:
action: variable
actionVariable: timer_menu
actionVariableValue: "=vars.timer_menu || vars.timer_menu === undefined ? false : true"
fill: "=vars.timer_menu || vars.timer_menu === undefined ? false : true"
iconF7: timer ellipsis_vertical
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
visible: =!props.hideTimerFunction
- component: f7-segmented
config:
class:
- margin-left-half
- margin-right-half
- margin-top
- margin-bottom-half
style:
--f7-button-border-radius: 4px
--f7-button-font-weight: 300
--f7-button-outline-border-width: 1px
--f7-button-padding-horizontal: 0px
--f7-button-padding-vertical: 0px
--f7-button-text-color: "=themeOptions.dark === 'light' ? 'black' : 'white'"
visible: "=vars.fanspeed === false && vars.options === false ? true : false"
slots:
default:
- component: oh-repeater
config:
for: fanspeedRow
fragment: true
in:
- command: AUTO
icon: arrow_2_squarepath
- command: LOW
text: Halk
- command: MEDIUM
text: Közepes
- command: HIGH
text: Max
sourceType: array
slots:
default:
- component: oh-button
config:
action: command
actionCommand: =loop.fanspeedRow.command
actionItem: =props.itemFanSpeed
class:
- display-flex
- flex-direction-column
fill: "=(items[props.itemFanSpeed].state === loop.fanspeedRow.command) ? true : false"
iconF7: =loop.fanspeedRow.icon
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
height: auto
text: =loop.fanspeedRow.text
- component: f7-segmented
config:
class:
- margin-left-half
- margin-right-half
- margin-top
- margin-bottom-half
style:
--f7-button-border-radius: 4px
--f7-button-font-weight: 300
--f7-button-outline-border-width: 1px
--f7-button-padding-horizontal: 0px
--f7-button-padding-vertical: 0px
--f7-button-text-color: "=themeOptions.dark === 'light' ? 'black' : 'white'"
visible: "=vars.swing === false && vars.options === false ? true : false"
slots:
default:
- component: oh-repeater
config:
for: swingRow
fragment: true
in:
- command: OFF
text: OFF
- command: VERTICAL
icon: resize_v
- command: HORIZONTAL
icon: resize_h
- command: BOTH
icon: view_3d
sourceType: array
slots:
default:
- component: oh-button
config:
action: command
actionCommand: =loop.swingRow.command
actionItem: =props.itemSwing
class:
- display-flex
- flex-direction-column
fill: "=(items[props.itemSwing].state === loop.swingRow.command) ? true : false"
iconF7: =loop.swingRow.icon
iconSize: 15px
outline: true
style:
--f7-button-border-color: var(--f7-card-outline-border-color)
height: auto
text: =loop.swingRow.text
- component: f7-row
config:
class:
- margin-left-half
- margin-right-half
- margin-bottom-half
visible: "=vars.timer_menu === false && vars.options === false && !props.hideTimerFunction === true ? true : false"
slots:
default:
- component: f7-col
slots:
default:
- component: oh-slider-card
config:
item: =props.itemTimerDuration
label: true
max: =props.TimerMaximum
min: =props.TimerMinimum
outline: true
scale: true
scaleSteps: =props.TimerScaleSteps
scaleSubSteps: =props.TimerScaleSubSteps
step: =props.TimerStep
unit: min
Hi Zoltan,
Thank You for the explanation (it was very clear).
Yes, I can see the first condition you describe as a problem. I can also see why I never encountered it during my testing (as I only have 1 V3 version device all the rest are V2 devices) and @JacekDob would never have seen it either (he has no V3 devices all of his are V2 devices).
Perhaps you and @JacekDob could sync and created a merged version.
As for the second issue yes, I have also seen a few cases where it returned an unexpected length not as frequent as your seeing but I do see them occurring at random intervals. (Seems even original python code had same issue based on GitHub comments by the dev that wrote the solution in Python). His solution was to retain previous values and silently handle the error and then wait for next polling event to occur. I am sure there may be other ways retry logic perhaps.
Regards,
Justan Oldman
Has anyone communicated with the heat pump using this plug (Rotenso Aquami multisplit, but itâs identical to Midea)? When I search for devices using Autoscan, I find my device and I can add it, I download KEY and Token from NetHome Plus provider. Instance goes Online but immediately switches to Offline and reports âCOMMUNICATION_ERROR. Device not responding with its status.â
Appliance type âC3â version 3. Communication via NetHome Plus works properly. My air conditioning communicates via this plug without problems. I use OH v3.3.0 and MideaAC LAN v3.3.0.202205311943.
Hi @zulus,
The current version of this binding is based on python script which sets a limitation of only supporting device that return a type of ac if your device is returning C3 as the type it will not work with this current version of the code base. You may be able to crack open the jar and add the correct byte value for C3 as a valid type to return but no one that has worked in this code had a heat pump to test the code with that kind of device.
Hi,
With the NetHome Plus and only one V3 device, it is not possible to get the right TokenâŠ
Iâll always receive
Authentication reponse unexpected data length (13 instead of 72)!
Invalid Token. Correct Token in configuration
regards,
Walter
Is anyone also having problem with the outdoor temperature? Its always showing -25 C or 102.5 C?
@zdanhauser
I got the same issues running 2 V3 devices.
I would be verry happy, if you could explain to me, what exactly I have to change on my running binding.
Thanks in advance.
It is not uncommon at all that I receive this kind of messages in the log after sending some item changes:
13:06:25.304 [WARN ] [dler.MideaACHandler$ConnectionManager] - Error processing response: null
13:06:35.310 [WARN ] [ng.mideaac.internal.security.Security] - Not an 8370 message
13:07:37.707 [WARN ] [ng.mideaac.internal.security.Security] - Sign does not match
What do that mean?
Circumstances:
- Mac OS X 10.13.6, Java 11.0.16, Karaf 4.3.7
- 4 pieces os version 3 Midea Air Conditioners (Firmware: 150029092122 x 3 and 150029082115 x 1)
- All four things are online.
- Using @zdanhauser 's widget (Thanks a lot)
Issue:
Most of the times the Air Conditioner does not turn on or turn off, but the UI changes (âpreticted to becomeâ ?). Same with all the other channels. For example the indoorTemperature sometimes updated, but not stable at all. (Sometimes OH receives the old value back from the AC and chanhes back to UI. Sometimes not. Sometimes Indoortemperature of one of the ACs begins to send temperature data.
Possible other/related reason:
UI throws java.util.concurrent.TimeoutException
every few seconds with a bunch of [org.eclipse.jetty.util.Scanner ] - scan accepted
debug lines. Again and again.
See: Does this debug log entry look correct? (appears every few seconds) - #2 by borazslo
Hi there! Some months ago I looked through the code and found a lot of variables defined in the wrong place. Then I compiled my own plugin and sent the modified source and all my suggessions to Jacek. Mine works fine since then.
Is there a link to the PR for these modifications?
Iâve published @zdanhauser 's new code on github. (I know that it should be PR sometime.) (Tested on OH 3.4.0, with 4 pieces of MideaAC v3, firmware 150029092122 )
@SmartHomeFriend , @liko : Please try that out.
@Vanja_Vrsic: I have the some problem. It can be related to the frequent changing of data.length of the response.
Hi,
For me it always resets itself to default value (unkown mode, 16° target temp, etc) the original and zdanhauser version as well.
I use a Fisher AC, which is the same as Midea Oasis Plus, it is working with msmarthome app.
With JacekDob version:
2023-01-16 21:16:22.256 [WARN ] [ler.MideaACHandler$ConnectionManager] - Error processing response: null
2023-01-16 21:16:22.257 [WARN ] [ler.MideaACHandler$ConnectionManager] - Error processing response: null
2023-01-16 21:16:32.258 [WARN ] [g.mideaac.internal.security.Security] - Not an 8370 message
2023-01-16 21:16:32.286 [WARN ] [g.mideaac.internal.security.Security] - Not an 8370 message
With zdanhauser version:
2023-01-16 21:27:32.271 [ERROR] [ler.MideaACHandler$ConnectionManager] - Response data is 26 long instead of 25!
2023-01-16 21:27:42.412 [ERROR] [ler.MideaACHandler$ConnectionManager] - Response data is 26 long instead of 25!
2023-01-16 21:27:52.552 [ERROR] [ler.MideaACHandler$ConnectionManager] - Response data is 26 long instead of 25!
For humidifier I use midea-beautiful-air, I will try to use that with my AC. At least I can set target temp with that.
(btw lof of hungarian guys here )
Iâve experinced this issue. With zdanhauserâs version usually it resets to default value after switching on / off, but not always. And I can change the tartget temp, etc. after these resets. It is the problem of the data processor script. That script demands data of length 25, but it is very common to receive other lengths. zdanhauserâs version tries to process the too long/short messages as well (after the error message), but makes mistakes.
Please check (and show us) the detailed log with: log:set TRACE org.openhab.binding.mideaac
Sorry, I removed the binding, because I started to work with the same items but values come from python script.
It seems ok with midea-beautiful-air, just slow, because of this.
Thanks, it works for me bro! Did try the new version, the reported logs are changed.
Got the new version installed, and it can see and talk to the unit. But I canât reliably control it. Pulling the logs shows âResponse data is 26 long instead of 25!â Related log entries: 2023-02-05 11:36:52.390 [TRACE] [ler.MideaACHandler$ConnectionManager] - Perform - Pastebin.com