Jump to content
Gen2 Devices: FW Update Required / Gen2 Geräte: FW-Update erforderlich ×

Shellies 2.5 mqtt announcement issue


outandwild

Recommended Posts

p.s. it would have been great if you had "homeassistant" sub form or even add some HA configuration code snippets within shelly docs.

Hey folks, I'm dealing with a bit of a head-scratcher here with my Shelly 2.5 devices. They were all good until the recent HA updates and some firmware tweaks last year. Now, I'm facing this weird issue where the shellies respond to commands just fine, but their status updates are MIA.

I can still boss them around directly through MQTT, but HA seems clueless about their status, showing them as perpetually "unavailable." I did some digging and noticed that the /info and /announce topics only pop up messages right before and after a reboot. Tweaking the mqtt_update_period didn't make any difference.

Here's a glimpse of what the MQTT traffic looks like around a reboot. Notice how the announce message is a no-show except around these times. Also, here are the settings I'm using.
 

$ mosquitto_sub -h 10.0.0.123 -p 1883 -t “shellies/shellyswitch25-aaaaaa/#” -v -u “user” -P ‘pass’

shellies/shellyswitch25-aaaaaa/online true

shellies/shellyswitch25-aaaaaa/announce {
“id”: “shellyswitch25-aaaaaa”,
“model”: “SHSW-25”,
“mac”: “4FC4FFaaaaaa”,
“ip”: “10.0.0.123”,
“new_fw”: false,
“fw_ver”: “20231107-163214/v1.14.1-rc1-g0617c15”,
“mode”: “roller”
}

shellies/shellyswitch25-aaaaaa/info {
“wifi_sta”:
{
“connected”: true,
“ssid”: “ssid”,
“ip”: “10.0.0.123”,
“rssi”: -58
},
“cloud”:
{
“enabled”: false,
“connected”: false
},
“mqtt”:
{
“connected”: true
},
“time”: “”,
“unixtime”: 0,
“serial”: 1,
“has_update”: false,
“mac”: “2CF432aaaaaa”,
“cfg_changed_cnt”: 0,
“actions_stats”:
{
“skipped”: 0
},
“rollers”:
[
{
“state”: “stop”,
“source”: “input”,
“power”: 0.00,
“is_valid”: true,
“safety_switch”: false,
“overtemperature”: false,
“stop_reason”: “normal”,
“last_direction”: “close”,
“current_pos”: 0,
“calibrating”: false,
“positioning”: true
}
],
“meters”:
[
{
“power”: 0.00,
“overpower”: 0.00,
“is_valid”: true,
“timestamp”: 0,
“counters”:
[
0.000,
0.000,
0.000
],
“total”: 0
},
{
“power”: 0.00,
“overpower”: 0.00,
“is_valid”: true,
“timestamp”: 0,
“counters”:
[
0.000,
0.000,
0.000
],
“total”: 0
}
],
“inputs”:
[
{
“input”: 1,
“event”: “”,
“event_cnt”: 0
},
{
“input”: 1,
“event”: “”,
“event_cnt”: 0
}
],
“temperature”: 41.31,
“overtemperature”: false,
“tmp”:
{
“tC”: 41.31,
“tF”: 106.36,
“is_valid”: true
},
“temperature_status”: “Normal”,
“update”:
{
“status”: “unknown”,
“has_update”: false,
“new_version”: “”,
“old_version”: “20231107-163214/v1.14.1-rc1-g0617c15”
},
“ram_total”: 50728,
“ram_free”: 37516,
“fs_size”: 233681,
“fs_free”: 144325,
“voltage”: 239.76,
“uptime”: 1
}

shellies/shellyswitch25-aaaaaa/roller/0 stop
shellies/shellyswitch25-aaaaaa/roller/0/pos 0
shellies/shellyswitch25-aaaaaa/roller/0/stop_reason normal
shellies/shellyswitch25-aaaaaa/roller/0/power 0.00
shellies/shellyswitch25-aaaaaa/relay/power 0.00
shellies/shellyswitch25-aaaaaa/roller/0/energy 0
shellies/shellyswitch25-aaaaaa/relay/energy 0
shellies/shellyswitch25-aaaaaa/input/1 1
shellies/shellyswitch25-aaaaaa/input/0 1
shellies/shellyswitch25-aaaaaa/temperature 38.45
shellies/shellyswitch25-aaaaaa/temperature_f 101.21
shellies/shellyswitch25-aaaaaa/overtemperature 0
shellies/shellyswitch25-aaaaaa/temperature_status Normal
shellies/shellyswitch25-aaaaaa/voltage 239.76

shellies/shellyswitch25-aaaaaa/announce {
“id”: “shellyswitch25-aaaaaa”,
“model”: “SHSW-25”,
“mac”: “2CF432aaaaaa”,
“ip”: “10.0.0.123”,
“new_fw”: true,
“fw_ver”: “20231107-163214/v1.14.1”,
“mode”: “roller”
}

shellies/shellyswitch25-aaaaaa/roller/0 stop
shellies/shellyswitch25-aaaaaa/roller/0/pos 0
shellies/shellyswitch25-aaaaaa/roller/0/stop_reason normal
shellies/shellyswitch25-aaaaaa/roller/0/power 0.00
shellies/shellyswitch25-aaaaaa/relay/power 0.00
shellies/shellyswitch25-aaaaaa/roller/0/energy 0
shellies/shellyswitch25-aaaaaa/relay/energy 0
shellies/shellyswitch25-aaaaaa/input/1 1
shellies/shellyswitch25-aaaaaa/input/0 1
shellies/shellyswitch25-aaaaaa/temperature 38.45
shellies/shellyswitch25-aaaaaa/temperature_f 101.21
shellies/shellyswitch25-aaaaaa/overtemperature 0
shellies/shellyswitch25-aaaaaa/temperature_status Normal
shellies/shellyswitch25-aaaaaa/voltage 230.76

I've been trying to set up a cover in HA, but it's just showing up as an unavailable button. Here's the device config and HA config I'm using for that

mqtt:
cover:
name: “Some Cover”
unique_id: some_cover
state_topic: “shellies/shellyswitch25-aaaaaa/roller/0”
command_topic: “shellies/shellyswitch25-aaaaaa/roller/0/command”
position_topic: “shellies/shellyswitch25-aaaaaa/roller/0/pos”
set_position_topic: “shellies/shellyswitch25-aaaaaa/roller/0/command/pos”
availability:
- topic: “shellies/shellyswitch25-aaaaaa/announce”
payload_available: “true”
payload_not_available: “false”
qos: 2
retain: true
payload_open: “open”
payload_close: “close”
payload_stop: “stop”
position_open: 0
position_closed: 100
optimistic: false

 

{“device”:{“type”:“SHSW-25”,“mac”:“2CF432686E0E”,“hostname”:“shellyswitch25-686E0E”,“num_outputs”:2,“num_meters”:2,“num_rollers”:1,“mode”:“roller”},“wifi_ap”:{“enabled”:false,“ssid”:“shellyswitch25-AAFFCC”,“key”:“”},“wifi_sta”:{“enabled”:true,“ssid”:“busillis”,“ipv4_method”:“static”,“ip”:“192.168.1.123”,“gw”:“192.168.1.1”,“mask”:“255.255.255.0”,“dns”:“192.168.1.1”},“wifi_sta1”:{“enabled”:false,“ssid”:null,“ipv4_method”:“dhcp”,“ip”:null,“gw”:null,“mask”:null,“dns”:null},“ap_roaming”:{“enabled”:false,“threshold”:-70},“mqtt”:{“enable”:true,“server”:“192.168.1.321:1883”,“user”:“space”,“id”:“shellyswitch25-AAFFCC”,“reconnect_timeout_max”:60.000000,“reconnect_timeout_min”:2.000000,“clean_session”:true,“keep_alive”:60,“max_qos”:0,“retain”:false,“update_period”:30},“coiot”:{“enabled”:true,“update_period”:15,“peer”:“192.168.1.321:5683”},“sntp”:{“server”:“time.google.com”,“enabled”:true},“login”:{“enabled”:true,“unprotected”:false,“username”:“space”},“pin_code”:“”,“name”:null,“fw”:“20231107-163214/v1.14.1-rc1-g0617c15”,“factory_reset_from_switch”:true,“pon_wifi_reset”:false,“discoverable”:true,“build_info”:{“build_id”:“20231107-163214/v1.14.1-rc1-g0617c15”,“build_timestamp”:“2023-11-07T16:32:14Z”,“build_version”:“1.0”},“cloud”:{“enabled”:false,“connected”:false},“timezone”:“Europe/Zagreb”,“lat”:42.845333,“lng”:11.359555,“tzautodetect”:true,“tz_utc_offset”:3600,“tz_dst”:true,“tz_dst_auto”:true,“time”:“19:39”,“unixtime”:169444555,“led_status_disable”:false,“debug_enable”:false,“allow_cross_origin”:true,“actions”:{“active”:false,“names”:[“btn_on_url”,“btn_off_url”,“longpush_url”,“shortpush_url”,“out_on_url”,“out_off_url”,“btn_on_url”,“btn_off_url”,“longpush_url”,“shortpush_url”,“out_on_url”,“out_off_url”,“roller_open_url”,“roller_close_url”,“roller_stop_url”]},“hwinfo”:{“hw_revision”:“prod-2019-03”,“batch_id”:1},“mode”:“roller”,“max_power”:1840,“longpush_time”:800,“relays”:[{“name”:null,“appliance_type”:“General”,“ison”:false,“has_timer”:false,“default_state”:“off”,“btn_type”:“toggle”,“btn_reverse”:0,“auto_on”:0.00,“auto_off”:0.00,“max_power”:0,“schedule”:false,“schedule_rules”:},{“name”:null,“appliance_type”:“General”,“ison”:false,“has_timer”:false,“default_state”:“off”,“btn_type”:“toggle”,“btn_reverse”:0,“auto_on”:0.00,“auto_off”:0.00,“max_power”:0,“schedule”:false,“schedule_rules”:}],“rollers”:[{“maxtime”:20.00,“maxtime_open”:37.00,“maxtime_close”:37.00,“default_state”:“stop”,“swap”:true,“swap_inputs”:false,“input_mode”:“openclose”,“button_type”:“toggle”,“btn_reverse”:1,“state”:“stop”,“power”:0.00,“is_valid”:true,“safety_switch”:false,“schedule”:false,“schedule_rules”:,“obstacle_mode”:“disabled”,“obstacle_action”:“stop”,“obstacle_power”:200,“obstacle_delay”:1,“ends_delay”:2500,“safety_mode”:“while_opening”,“safety_action”:“stop”,“safety_allowed_on_trigger”:“none”,“off_power”:2,“positioning”:true}],“favorites_enabled”:true,“favorites”:[{“name”:“Position 1”,“pos”:0},{“name”:“Position 2”,“pos”:0},{“name”:“Position 3”,“pos”:0},{“name”:“Position 4”,“pos”:0}],“eco_mode_enabled”:false}

 

 

 

Any advice?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Erstelle neue...