Blue Zigbee 2-1 'powerType' error in Z2M?

Dumb question, but the switch should detect the power type; there’s not different firmware between Blues for different hubs, so how would you set a readonly setting that the switch won’t allow you to change (or can you?)

It does, the setting you have to set manually is the switchType not the powerType. powerType is detected.

ugh…it’s Monday. I read switchtype to and thought powertype. My bad! Disregard my last.

1 Like

Clicking on single-pole doesn’t do anything. It doesn’t stay selected once I click somewhere else. Refreshing powerType doesn’t change the null value, either. The switch is responsive to other commands, but these do nothing for me atm

1 Like

This is my experience as well. I’ve selected “Single Pole” for switchType yet powerType is not automatically being selected.

Here’s my full state in Z2M:

{
“autoTimerOff”: 0,
“brightness”: 254,
“defaultLed1ColorWhenOn”: 0,
“firmwareUpdateInProgressIndicator”: “Enabled”,
“invertSwitch”: “No”,
“ledColorWhenOff”: 170,
“ledColorWhenOn”: 170,
“ledIntensityWhenOff”: 5,
“ledIntensityWhenOn”: 2,
“linkquality”: 215,
“localProtection”: “Disabled”,
“onOffLedMode”: “All”,
“outputMode”: “On/Off”,
“smartBulbMode”: “Disabled”,
“state”: “OFF”,
“stateAfterPowerRestored”: 0,
“switchType”: “Single Pole”,
“update”: {
“state”: “idle”
},
“update_available”: false,
“activeEnergyReports”: null,
“activePowerReports”: null,
“defaultLed1ColorWhenOff”: null,
“defaultLed1IntensityWhenOff”: null,
“defaultLed1IntensityWhenOn”: null,
“defaultLed2ColorWhenOff”: null,
“defaultLed2ColorWhenOn”: null,
“defaultLed2IntensityWhenOff”: null,
“defaultLed2IntensityWhenOn”: null,
“defaultLed3ColorWhenOff”: null,
“defaultLed3ColorWhenOn”: null,
“defaultLed3IntensityWhenOff”: null,
“defaultLed3IntensityWhenOn”: null,
“defaultLed4ColorWhenOff”: null,
“defaultLed4ColorWhenOn”: null,
“defaultLed4IntensityWhenOff”: null,
“defaultLed4IntensityWhenOn”: null,
“defaultLed5ColorWhenOff”: null,
“defaultLed5ColorWhenOn”: null,
“defaultLed5IntensityWhenOff”: null,
“defaultLed5IntensityWhenOn”: null,
“defaultLed6ColorWhenOff”: null,
“defaultLed6ColorWhenOn”: null,
“defaultLed6IntensityWhenOff”: null,
“defaultLed6IntensityWhenOn”: null,
“defaultLed7ColorWhenOff”: null,
“defaultLed7ColorWhenOn”: null,
“defaultLed7IntensityWhenOff”: null,
“defaultLed7IntensityWhenOn”: null,
“defaultLevelLocal”: null,
“defaultLevelRemote”: null,
“dimmingSpeedDownLocal”: null,
“dimmingSpeedDownRemote”: null,
“dimmingSpeedUpLocal”: null,
“dimmingSpeedUpRemote”: null,
“doubleTapUpEvent”: null,
“energy”: null,
“loadLevelIndicatorTimeout”: null,
“maximumLevel”: null,
“minimumLevel”: null,
“periodicPowerAndEnergyReports”: null,
“physicalOnOffDelay”: null,
“power”: null,
“powerType”: null,
“rampRateOffToOnLocal”: null,
“rampRateOffToOnRemote”: null,
“rampRateOnToOffLocal”: null,
“rampRateOnToOffRemote”: null
}

1 Like

@ThatTallGuy In my test environment, I am able to see the powerType, but there seems to be an issue where the UI doesn’t update with the new state. Try pressing the blue refresh button next to the powerType, that should perform a “get” from the UI and then change the state of any of the numeric based parameters. Does it update for you then?

@epow Try the same thing for the switchType param as well. Get → change a numeric value.

Nothing for me… I also tried directly reading the attribute via the dev console tab, and it never populates the value box when I click “Read.” Looks like this before and after the Read request:

Edit: doesn’t appear that console does anything. I can choose attributes that I know are set (like ramp rate) and it gives me nothing. At any rate the swirly-arrow refresh buttons don’t change anything for me on the Exposes tab.

Nothing like this:

1 Like

Ugh <facepalm> my log level was too restrictive. Changed it to info and it shows powerType 1, switchType 0. Strange that the same is never reflected on the Exposes tab…

I’m not seeing any errors in the latest version of the converter… looks just like the other enums:

image

Yeah, I think there is something odd going on with the exposes tab. For me it just doesn’t update when it is supposed to. I will take a look later tonight and see if I can see anything that needs to be changed. It might be when it is set, the wrong value is being transposed to the MQTT data store. The converter tries to make some of the parameters more user friendly rather than straight numeric values.

1 Like

As requested, I hit the arrows circle icon next to ‘powerType’ on the Exposes tab. I didn’t immediately see powerType updated. However, looks like it updated within the past 30 minutes because now I see the powerType as “Non Neutral” under both Exposes and State tabs. Thanks!

If you are installing in a non-neutral configuration just note that energy reporting is not available and will always show null.

1 Like

I am seeing a lot of these in the home assistant logs (running mosquitto and zigbee2mqtt as addons in haos). Perhaps your theory about the wrong value being transposed is valid?

Logger: homeassistant.components.mqtt.select
Source: components/mqtt/select.py:164
Integration: MQTT (documentation, issues)
First occurred: 8:33:23 PM (179 occurrences)
Last logged: 9:30:36 PM

Invalid option for select.0x040xxx_smartbulbmode: '1' (valid options: ['Disabled', 'Smart Bulb Mode'])
Invalid option for select.0x040xxx_switchtype: '0' (valid options: ['Single Pole', '3-Way Dumb Switch', '3-Way Aux Switch'])

FYI-- I’m going to keep this thread open unless you think it should be closed and the details moved to a different thread as it appears there’s some other issues outside my original one.

Inovelli VZM31SN - fw 2.05 Support by nathanfiscus · Pull Request #4910 · Koenkk/zigbee-herdsman-converters (github.com)

4 Likes

So this is weird on my end, still (running firmware 2.08 and z2m 1.28.4-dev, in docker with image ID d8e7e0d65c2a - that’s latest dev branch as of yesterday). It looks like zigbee2mqtt is messing up when it comes to interpret the values for powerType and others. Looking in the web interface (and in mqtt, via home-assistant) all my powerType fields are Null, despite the switches being installed with a Neutral. When I hit the refresh button next to powerType, the websocket messages show that my browser sends the following:

{"topic":"LTS-BA-1-guest-room-main/get","payload":{"powerType":""}}

and receives the following messages (including logs - each of these JSON objects is a separate websockets message):

{"payload":{"level":"debug","message":"Received MQTT message on 'zigbee2mqtt/LTS-BA-1-guest-room-main/get' with data '{\"powerType\":\"\"}'"},"topic":"bridge/logging"}
{"payload":{"level":"debug","message":"Publishing get 'get' 'powerType' to 'LTS-BA-1-guest-room-main'"},"topic":"bridge/logging"}
{"payload":{"level":"debug","message":"Received Zigbee message from 'LTS-BA-1-guest-room-main', type 'readResponse', cluster 'manuSpecificInovelliVZM31SN', data '{\"powerType\":1}' from endpoint 1 with groupID 0"},"topic":"bridge/logging"}
{"payload":{"action":null,"activeEnergyReports":null,"activePowerReports":null,"autoTimerOff":null,"brightness":254,"buttonDelay":0,"defaultLed1ColorWhenOff":null,"defaultLed1ColorWhenOn":null,"defaultLed1IntensityWhenOff":null,"defaultLed1IntensityWhenOn":null,"defaultLed2ColorWhenOff":null,"defaultLed2ColorWhenOn":null,"defaultLed2IntensityWhenOff":null,"defaultLed2IntensityWhenOn":null,"defaultLed3ColorWhenOff":null,"defaultLed3ColorWhenOn":null,"defaultLed3IntensityWhenOff":null,"defaultLed3IntensityWhenOn":null,"defaultLed4ColorWhenOff":null,"defaultLed4ColorWhenOn":null,"defaultLed4IntensityWhenOff":null,"defaultLed4IntensityWhenOn":null,"defaultLed5ColorWhenOff":null,"defaultLed5ColorWhenOn":null,"defaultLed5IntensityWhenOff":null,"defaultLed5IntensityWhenOn":null,"defaultLed6ColorWhenOff":null,"defaultLed6ColorWhenOn":null,"defaultLed6IntensityWhenOff":null,"defaultLed6IntensityWhenOn":null,"defaultLed7ColorWhenOff":null,"defaultLed7ColorWhenOn":null,"defaultLed7IntensityWhenOff":null,"defaultLed7IntensityWhenOn":null,"defaultLevelLocal":254,"defaultLevelRemote":null,"dimmingSpeedDownLocal":null,"dimmingSpeedDownRemote":null,"dimmingSpeedUpLocal":null,"dimmingSpeedUpRemote":20,"doubleTapClearNotifications":null,"doubleTapUpForFullBrightness":0,"energy":30.85,"firmwareUpdateInProgressIndicator":null,"invertSwitch":null,"last_seen":"2022-12-26T21:31:26.644Z","ledColorWhenOff":0,"ledColorWhenOn":null,"ledIntensityWhenOff":1,"ledIntensityWhenOn":0,"linkquality":83,"loadLevelIndicatorTimeout":null,"localProtection":null,"maximumLevel":null,"minimumLevel":null,"onOffLedMode":null,"outputMode":"Dimmer","periodicPowerAndEnergyReports":null,"power":500.9,"powerType":null,"rampRateOffToOnLocal":null,"rampRateOffToOnRemote":null,"rampRateOnToOffLocal":null,"rampRateOnToOffRemote":null,"relayClick":1,"remoteProtection":null,"smartBulbMode":null,"state":"ON","stateAfterPowerRestored":null,"switchType":"Single Pole","update":{"installed_version":16908808,"latest_version":16908808,"state":"idle"},"update_available":null},"topic":"LTS-BA-1-guest-room-main"}
{"payload":{"level":"info","message":"MQTT publish: topic 'zigbee2mqtt/LTS-BA-1-guest-room-main', payload '{\"action\":null,\"activeEnergyReports\":null,\"activePowerReports\":null,\"autoTimerOff\":null,\"brightness\":254,\"buttonDelay\":0,\"defaultLed1ColorWhenOff\":null,\"defaultLed1ColorWhenOn\":null,\"defaultLed1IntensityWhenOff\":null,\"defaultLed1IntensityWhenOn\":null,\"defaultLed2ColorWhenOff\":null,\"defaultLed2ColorWhenOn\":null,\"defaultLed2IntensityWhenOff\":null,\"defaultLed2IntensityWhenOn\":null,\"defaultLed3ColorWhenOff\":null,\"defaultLed3ColorWhenOn\":null,\"defaultLed3IntensityWhenOff\":null,\"defaultLed3IntensityWhenOn\":null,\"defaultLed4ColorWhenOff\":null,\"defaultLed4ColorWhenOn\":null,\"defaultLed4IntensityWhenOff\":null,\"defaultLed4IntensityWhenOn\":null,\"defaultLed5ColorWhenOff\":null,\"defaultLed5ColorWhenOn\":null,\"defaultLed5IntensityWhenOff\":null,\"defaultLed5IntensityWhenOn\":null,\"defaultLed6ColorWhenOff\":null,\"defaultLed6ColorWhenOn\":null,\"defaultLed6IntensityWhenOff\":null,\"defaultLed6IntensityWhenOn\":null,\"defaultLed7ColorWhenOff\":null,\"defaultLed7ColorWhenOn\":null,\"defaultLed7IntensityWhenOff\":null,\"defaultLed7IntensityWhenOn\":null,\"defaultLevelLocal\":254,\"defaultLevelRemote\":null,\"dimmingSpeedDownLocal\":null,\"dimmingSpeedDownRemote\":null,\"dimmingSpeedUpLocal\":null,\"dimmingSpeedUpRemote\":20,\"doubleTapClearNotifications\":null,\"doubleTapUpForFullBrightness\":0,\"energy\":30.85,\"firmwareUpdateInProgressIndicator\":null,\"invertSwitch\":null,\"last_seen\":\"2022-12-26T21:31:26.644Z\",\"ledColorWhenOff\":0,\"ledColorWhenOn\":null,\"ledIntensityWhenOff\":1,\"ledIntensityWhenOn\":0,\"linkquality\":83,\"loadLevelIndicatorTimeout\":null,\"localProtection\":null,\"maximumLevel\":null,\"minimumLevel\":null,\"onOffLedMode\":null,\"outputMode\":\"Dimmer\",\"periodicPowerAndEnergyReports\":null,\"power\":500.9,\"powerType\":null,\"rampRateOffToOnLocal\":null,\"rampRateOffToOnRemote\":null,\"rampRateOnToOffLocal\":null,\"rampRateOnToOffRemote\":null,\"relayClick\":1,\"remoteProtection\":null,\"smartBulbMode\":null,\"state\":\"ON\",\"stateAfterPowerRestored\":null,\"switchType\":\"Single Pole\",\"update\":{\"installed_version\":16908808,\"latest_version\":16908808,\"state\":\"idle\"},\"update_available\":null}'"},"topic":"bridge/logging"}

Note the message starting with “action” - the powerType field is unset, but the preceding debug message does say that it received the powerType field back, with the right value. The web interface never updates the powerType field to anything other than “Null”.

Is this an incompatibility issue with the 2.08 firmware again, as in Blue 2-1 + zigbee2mqtt: local changes not reflected in remote state?

1 Like

I’m seeing similar, my HASS logs are filled with this:

Invalid option for select.garage_switchtype: '1' (valid options: ['Single Pole', '3-Way Dumb Switch', '3-Way Aux Switch'])
Invalid option for select.office_relayclick: 'Disabled' (valid options: ['Disabled (Click Sound On)', 'Enabled (Click Sound Off)'])
Invalid option for select.mudroom_switchtype: '1' (valid options: ['Single Pole', '3-Way Dumb Switch', '3-Way Aux Switch'])
Invalid option for select.mudroom_doubletapupforfullbrightness: '0' (valid options: ['Button Press Event Only', 'Button Press Event + Set Load to 100%'])
Invalid option for select.mudroom_relayclick: '1' (valid options: ['Disabled (Click Sound On)', 'Enabled (Click Sound Off)'])
1 Like

Was there ever a determination on why this error occurs? I have similar errors in hass log. (41k occurances) where one of the blue’s attributes is throwing an invalid option error. (button delay and doubletapupforfullbrightness for example). Any insight would be appreciated. i’ve been searching for anything on this and this thread is all i can find. Thanks!

I didn’t go digging for the exact cause, but the invalid option error in the logs seemed to me like it was a value that didn’t get migrated when the Z2M converters updated. You should be able to fix these by going into the Z2M interface, selecting the relevant switch, and adjusting the values it’s complaining about manually. Any update will be in the expected range so as soon as that applies it should stop complaining.

Re-selecting the settings did not fix this issue for me.

But when I got looking at it, it was errors on entities that I didn’t really need. For example, the errors posted above by @FuzzyMistborn are entities created by z2m in HA to allow you to configure the initial settings on the device through the entity. The select.garage_switchtype is an input_select entity to change the switch from single pole to 3way either through an HA dashboard or an automation… Beyond the very first time setting this switch up, how often will someone plan to change the switch back and forth between single pole and 3way? Probably never.

The simple solution is to go into HA, search select.garage_switchtype, go under advanced settings for that entity and disable it. No more errors in the logs, and helps clean up some 10,000 entities that z2m automatically creates that we really don’t need to use. And if you do want to change it from single pole to 3 way for some reason, just go into z2m and change it like 99.9% of us would do anyways.