FRITZ!OS version sensor in AVM FRITZ!Box Tools integration

I have a Lovelace card on which I display the uptime, firmware versions and other information of my routers and switches. Recently, there is a sensor to query the uptime of the FRITZ!Box, but I cannot find a way to determine the FRITZ!OS version. However, on the device overview page of the AVM FRITZ!Box Tools integration, the version is displayed so that it can apparently be queried.
I would be very pleased to have a sensor or an attribute with the FRITZ!OS version.

This is what my Lovelace card looks like so far:

Hello
nice card, I would like to try to integrate the parameters of the fritzbox in lovelace too.
I tried to take the up and downstream sensors and convert the connection speed into Mbit / s but I don’t think I understand exactly how to use them.
could you if possible show me how you configured the sensors to get those results?
Thank you

The routers I’m using are professional ones with SNMP support. Unfortunately FRITZ!Boxes don’t support SNMP, so you can’t read those values from them the same way I do.

Thanks for the reply.
In fact, I don’t know where to retrieve other values, let’s say that these would be enough just to get an idea of data traffic.
As you can see from the attached screen what unfortunately I do not understand is how to bring the values in Mbir because in Kbit / s it is really bad.

kBit/s : 1024 = MBit/s
This is the amount of traffic currently passing through the router.

But the “DSL-Synchr.” on my lovelace card are not traffic values, but the synchronisation rate of my DSL router.

Yes I knew the division to obtain (Kbit / s: 1024),
the problem is that surely I am not able to build the sensor to convert Kbit to Mbit.
I tried but it does not give me the result, probably I do not put the correct attributes.

Hi, you could use a template sensor like this:

sensor:
- platform: template
  sensors:
    current_fritz_download:
      value_template: "{{ (states('sensor.fritz_box_7590_ui_kib_s_received')|float / 1024) | round(1) }}"
      unit_of_measurement: "Mbit/s"
      friendly_name: "Download"
      icon_template: mdi:download

Sorry I’m late and thanks for the reply.
As a beginner, I was writing wrong when trying to copy an old sensor.
Thank you

yes if you want I can pass a part of the lovelace card that I adapted for the sensors I needed

Please keep in mind this is a Feature Request thread in the Feature Request section, not a discussion thread.

According to the underlying library (fritzconnection), the version number of FritzOS should already be available. This means, implementing it into the HA-component should be possible.

@breti Hint: You should always vote for your own suggestion. :wink: :smiley:

Thanks, Patrick :slight_smile:

The version is even read by HA because it’s shown in the device information box:

grafik

grafik

It’s just the sensor which is missing.

It’s already done by @chemelli. Just waiting for review and merge :slight_smile:

1 Like

Oh, cool :heart_eyes:

binary_sensor.fritz_box_7590_firmware_update with installed_version attribute is available now :smiley: Thanks a lot!

Hi,
is there something that i dont understand, if i check for attribute value only the installed version is working fine while the latest version not:
{{ state_attr(‘binary_sensor.fritz_box_7590_firmware_update’, ‘installed_version’ ) }} → result = 154.07.28

{{ state_attr(‘binary_sensor.fritz_box_7590_firmware_update’, ‘latest_available_version’ ) }} → result none

What is wrong?
thanks

Same here:

installed_version: 154.07.29
'latest_available_version:': ''
friendly_name: FRITZ!Box 7590 Firmware Update
device_class: update

I’m not sure if this is by design or a bug. Perhaps you should file an issue.

Just had a timely update appear on my Fritz!Box, and the sensor is working although the naming looks wrong to me (the inclusion of the “:” and the single quotes).

I’m currently now seeing this (obviously the English firmware is a little behind the German):

installed_version: 154.07.28
'latest_available_version:': 154.07.29
friendly_name: FRITZ!Box 7590 Firmware Update
device_class: update

And this automation is working for me as a notification:

alias: Fritzbox Update Available
description: ''
trigger:
  - platform: state
    entity_id: binary_sensor.fritz_box_7590_firmware_update
    to: 'on'
condition: []
action:
  - service: notify.mobile_app_phone
    data:
      message: >-
        Fritzbox update from {{
        state_attr('binary_sensor.fritz_box_7590_firmware_update','installed_version') }} to {{
        state_attr('binary_sensor.fritz_box_7590_firmware_update','latest_available_version:') }} available
mode: single

OK, so 'latest_available_version:'is empty if no new version is available.

There seems to be no open issue for the superfluous colon. I’ll open one.

The superfluous colon has already been fixed: https://github.com/home-assistant/core/pull/59791