Custom Integration: HDHomeRun

No complaints on anything so far whilst the beta has been out so I’ve just published 2022.5.1 in HACS now.

2 Likes

@uvjim is it possible to add the reboot functionality into your integration? So that at the push of a button the HDHomeRun reboots? It is part of the libhdhomerun package. From a Linux command prompt I run the following:

hdhomerun_config %device_id% set /sys/restart self

I think this could be really useful feature to add

It certainly is possible. I didn’t really want to sneak it into this one with all the other changes as this is the first release that introduces the libhdhomerun compatibility.

I’ll take a look when I get a spare moment.

1 Like

Cool, thanks.
From my own testing, everything seems to be ok. Only things I’ve noticed is there’s no installed version sensor anymore or update available sensor. These were nice to haves to be able to see when there’s an update that can be applied unless I’m getting confused with your integration and one I had installed before?

Oh, they should be there (see screenshot). How was the device added?

2022.5.2b0 is out: -

  • allow set requests in pyhdr
  • Allow restart of device
  • add button entity to restart device
  • dedupe entity creation where possible
  • improve logging and typing in pyhdhr
  • update cli

You’ll need to ensure that HACS is set to see beta versions.

2 Likes

@Townsmcp - did you manage to find the entities?

@uvjim I did - found it in the Integration under Configuration. Didnt realise it had changed to that to be more all-in-one :slight_smile:
Just testing out the reboot HDHomeRun button - working well so far :slight_smile:

1 Like

@uvjim all working well for the reboot :slight_smile: I ran Get Channels on Apple TV, pressed the entity button while TV was being shown and lost the connection - exactly as expected :slight_smile: Thanks for implementing that feature - I think a lot of people with a HDHomeRun will get a lot of use from it (nightly reboots can now be scheduled etc)

Love this integration! It is exactly what I was looking for. :grin: Have been having a small issue though. When I first start or restart Home Assistant the HDHomeRun Integration works well and shows accurate tuner status. After some time (save 5 mins), however, the tuner status goes stale and will not update / refresh unless I reboot Home Assistant.

Any suggestions on what I can try to fix this?

Jose

Is there anything in the logs at all?

That is the odd thing. I don’t see anything in the logs. Happy to upload them if you like, but they don’t seem to contain any reference to HDHome Run or Silicon Dust

Could you enable debug logging please and then send over the logs?
Instructions are in the README but…

logger:
  default: warning
  logs:
    custom_components.hdhomerun: debug

Then restart core should do it.

I installed this via HACS, it looks like everything went well but its not showing up in add integrations. Is anyone else having this issue?
image

The files were placed correctly from what I can see

Figured it out, found it in the logs

2022-06-23 10:13:53 ERROR (SyncWorker_1) [homeassistant.loader] The custom integration 'hdhomerun' does not have a version key in the manifest file and was blocked from loading. See https://developers.home-assistant.io/blog/2021/01/29/custom-integration-changes#versions for more details

image

That’s not this integration. Did you add the GitHub repository from the first post as a custom repository in HACS?

LOL thats very confusing, HACS has an integration built into the master repo, i thought that was this


They look almost identical LOL

1 Like

Thanks for this excellent custom component @uvjim
It “just works” with hassos unlike the “default” hdhr integration thats in hacs repo - that requires libhdhomerun to be installed to use it.

Just realised that I’d not released the previous beta however, there were some updates that needed doing so…

2022.8.1 is now out: -

  • allow set requests in pyhdr
  • Allow restart of device
  • add button entity to restart device
  • dedupe entity creation where possible
  • improve logging and typing in pyhdhr
  • update cli
  • apply linting requirements
  • move main for pyhdhr
  • use async_forward_entry_setups if available
  • fix entity_domain linting
  • adopt new naming convention
1 Like

It’s been a long time since I did any work on this integration… I’ve just pushed a beta that starts to make use of the new translation capabilities for the entity names etc. Some of the code has been tidied up a bit and a fix put in that was making UDP discovery a little slower than it should have been.

What’s Changed

  • update device firmware version after upgrade by @uvjim in #80
  • selector translations by @uvjim in #82
  • tidy up domain imports by @uvjim in #83
  • tidy platform setup by @uvjim in #84
  • pyhdhr fix discovery by @uvjim in #85
  • use selectors in the config flow by @uvjim in #86
  • add entity translations by @uvjim in #87
  • set state_class for numeric sensor entities by @uvjim in #88
  • state translations for tuner status by @uvjim in #89

Breaking Changes

  • the required minimum version of version Home Assistant has been changed to 2023.2.0 as this allows all of the translation features that are in use now.
2 Likes