VCGENCMD dosen't work after 2024.2 update

Hey!

I am using a pyscript that gets the CPU temperature from my Raspeberry PI 4.
After 2023.6 update, the vcgencmd changed place from /opt/vc/bin/vcgencmd to /usr/bin/vcgencmd, so the last time this broke - i just replaced this path and it started working again.

But since 2024.2 update it seems to be moved/replaced again, and i can’t find the path for it.

I have tried which, locate, find etc in the terminal but with no luck.

Does anyone have some suggestion to where it may have been moved?
Or, if it’s possible to use another way to read the CPU temperature.
Here is the pyscript i am using - https://pastebin.com/raw/TM3vLrS0

Thanks!

I experience the same issue and have created a bug: https://github.com/home-assistant/operating-system/issues/3172

Oh! Thank you for the information, I will follow the issue there.

Thanks to @agners on GitHub for finding the issue and making a request.
This issue will be fixed in 2024.2.2 as frenck just approved.

More info can be found here

@DjJoakim how did your script look like?

Until 2023.5 I used this:

  - platform: command_line
    name: CPU Clock
    unique_id: 0ac68efe-6a23-4622-acc1-1085002168a5
    command: "/opt/vc/bin/vcgencmd measure_clock arm | cut -c15-24 | rev | cut -c 7- | rev"
    unit_of_measurement: "MHz"
    scan_interval: 30
    command_timeout: 15
    value_template: "{{ value }}"

which is now not working anymore for command line sensors. I noticed the move from /opt/vc/bin/vcgencmd to /usr/bin/vcgencmd as well, but this now seems to be only available from inside the HA container (I’m running HA OS) while the former /opt/vc/bin/vcgencmd was available to the CL sensor without any issues.

For sure some new restrictions kicked in with 2023.6, I could neither find which nor a solution to this.


Edit: nevermind, seems I found the solution (I use similar ones for other parts). I transfered the command_line sensor to a MQTT sensor. I use the advanced SSH addon’s init_commands like this:

  - >-
    while [ 1 = 1 ]; do docker exec homeassistant /usr/bin/vcgencmd
    measure_clock arm | cut -c15-24 | rev | cut -c 7- | rev | mosquitto_pub -t
    homeassistant/sensor/system/cpu_clock -r -u 'mqtt_username' -P 'mqtt_password'
    -l -i 'SSH-addon_init-command_7' && sleep 60; done &

and continue to use the sensor this way:

    - name: CPU Clock
      unique_id: 0ac68efe-6a23-4622-acc1-1085002168a5
      #entity_id: sensor.cpu_clock
      unit_of_measurement: MHz
      icon: mdi:cpu-64-bit
      state_topic: "homeassistant/sensor/system/cpu_clock"
      state_class: measurement
      entity_category: diagnostic
      value_template: "{{ value }}"

This is a working solution for all HA OS users.

Unfortunately this undocumented 2023.6 change/restriction costs me more than 1 hour to only fix this single sensor.

Glad you sorted it out.
You can see the script I am running in my main post.

I saw it, but running HA OS it has no benefit unfortunately. I guess you run supervised or even Core only.