Homekit Infused (HKI) Framework v3.5.3

Tags: #<Tag:0x00007f73a55864c8>

Yes, it can be found here just under video. My repo is also on GH here If you have any questions or suggestions, feel free to PM me. Thanks!

Will you integrate with this so we can auto-update as you iterate?

I don’t think it will do much good though. It is mostly a lovelace setup what I made here. And as everyone has different entities and such it will be very hard to maintain and give support for this.

I am guessing the HACS is more of use with a custom component/card. But who knows, I will look into it and what it really is. But at the moment I am kind of busy cleaning up a lot of code and adding vacuum cleaners to my setup.

Congratulations. Very good, thanks for sharing. What did you use for the day count?

@dougbaptista In the screenshot I use a custom component which I think I did not share. The reason why is because the component is very limited and I am converting it to a python script I found. This does the same thing, but also resets the timer when the day reaches 0. Unlike the component which needs to be manually changed every time.

I will share the python script later today, you could then just use a simple entities card to show the dates as the script creates entities for you.

I am sorry for the delay, but I didn’t make the it in time to release a new version of my setup. Since you were asking how I did the date_time sensor. Here is what I use in my setup now. Easy to setup and will refresh automatically when the date is reached.


Thank you again. Now I want to search more about the “remote” that you have used.

Hello. How can you change the color of status bar like Home assistant 's theme??

So, I have returned from my vacation in Poland and back to do some work again.

@dougbaptista the remote is just a collection of button cards. I am converting all my buttons to be dynamic at the moment and I am halfway through with that work. Keep an eye on the thread and I will update my github repo in a few days. It has a split config so you can find card examples with more ease.

@H_i_Anh_Nguy_n Do you mean the header? (which is black in my example and grey on some others) or do you mean the status bar in iOS?

@jimz011 - Thanks for this, I’ll definitely learn a lot and take a lot of inspiration from your code.

I can’t see a way to use some of your code with multiple users. Specifically, you’re using input_selects and state-switch to click buttons and hide/show content. The issue is that the input selects are shared across users - so user A clicks a button, content is hidden or shown for all users. To user B, this will look like things just disappearing or reappearing. Any thoughts around this?


Figured it out - the answer is to use “hash” with state-switch and eliminate the input_select. See the “hash” section here: https://github.com/thomasloven/lovelace-state-switch

Thank you! One thing I did not understand. The “anchors:” Do you have any documents for this? You’ve created styles through it. Is it any component?

Don’t worry about the anchors no more, they won’t be in the next release. Anchors are just a some kind of way of templating in lovelace. However I have split my lovelace config into multiple files now and anchors need to be in every page where they are used (so it would require me to duplicate the code on multiple pages). I will be using a decluttering card in the next release. Saves a bunch of lines in code is cleaner and way more dynamic. I hope to have it done before the end of the week.

In the meantime I would not recommend using anchors unless you use a single file for your lovelace config and if you do not plan to use the more dynamic decluttering card in the future. I however highly recommend you to do so as that card is great. What this basically means is that with the decluttering card I will basically use a single button template for all of my buttons in my setup, I am still figuring out a few things with this card so it might take some time.

I have been on vacation/holiday, sorry for the delay :wink:

@jimz011 I see you are dutch. Have you post youre config on forum of Tweakers? I think a lot of people theire are also interested in youre configuaration.

1 question Though:
How did you create those buttons ‘‘round’’ with the button card ?

Yes I am Dutch and I have posted my setup on tweakers several times, though tweakers is not the right medium to post setups as there is no way to format code, so my setup is linked on tweakers.

You need to use border-radius for rounded corners in the styles. You can do this with card-modder or card-mod as well as within the button card.

I applied everything the same as your setup. My HA is very similar and working similar to yours.

The anchors work perfectly. I just wanted to know how you knew about this feature.

But now that you’ve told me about the “decluttering card” I’ll have to see how it works.

Thank you very much for your returns.

Actually a few people on the button-card thread told me about this. Apparently it is a feature within yaml. Though it doesn’t really work that well for me anymore since I have split my lovelace config in multiple files. Though it is a great way to make templates. But there is not really any documentation for it as far as I know. The decluttering card however has a clear documentation and I know it is a custom card, but hey most useful cards are custom cards no?

Here are a couple good resources on YAML anchors:

1 Like

Hi all, I wanted to give you guys a heads up. I will push out the long overdue update to my setup tonight.

Warning! The update will break most of the current setup as I have removed 3 custom cards. It will however work exactly as before but just with less clutter and less custom tools.
I have managed to shave off another 2000 lines of code and still manage to get extra features added compared to the previous version.

It is ofcourse compatible with the newest version of HA. Expect the update around 01.00 AM CEST.


Hi everyone I am very pleased to announce the new release for this setup. It took a while and I am terribly sorry for that but here you go, a very big update to an endless project. Enjoy!

Changes (29/06/2019):

BREAKING CHANGES THROUGHOUT THE ENTIRE SETUP!!! If you have previously used my setup I have to warn you that the configuration for this setup is entirely different. Yes the result looks pretty much the same, but the current config is easier to manage and most important, it is almost 2000 lines of code less than before even with the added features! Unfortunately on the outside the setup looks a lot like the previous one, that is because I am pretty happy with the current design. This release is mostly based upon optimization, speed and attention to detail and future-proofing as everything is updated with current mods/cards/etc.


  • The entire interface is now dynamic, sizing happens based on the screen size, no longer are buttons a fixed dimension. This fixes spacing problems on larger screen phones like for example an iPhone Plus/Max, but also tablets benefit from this. And the beauty is that all buttons stay the same aspect ratio regardless of device. So say goodbye to weird rectangle looking buttons when viewed on larger screens and you can now enjoy square buttons at all times.
  • Removed the following custom-cards: state-switch, useful-markdown-card, card-modder
  • Added card-mod, markdown-mod and vacuum-cleaner-card
  • Split lovelace setup into several files for easier management and a less cluttered setup, ui-lovelace.yaml will only reference to the new files, you will not need to edit this file afterwards in a long time. You will need to save this file (regardless if there were any changes) if you make changes in other files. That way it will reload lovelace, else it will keep the old config loaded until refreshed. It might be harder to catch errors because it will even load if you delete all the files within the lovelace folder until you refresh it! so be cautious when working with this. Yes it takes a step extra, but it is worth the effort as editing views, popup-cards or anything else is so easy now and best of all very easy to find. Find the new files in the lovelace folder!
  • Removed anchors, this was necessary to split the lovelace file as anchors need to be at the root of every yaml file (at least that is what I understood of it)
  • Added decluttering-card as a replacement to anchors and boy you are going to love this! Why? Well ALL the buttons in the entire setup are based of two templates. Check the code as to what I mean exactly because this one is huge!
  • Added birthday sensor, it is a python_script which will create a sensor for you, notifications for the frontpage will arrive in the future. You can find the script in the python_scripts folder. You will need to create an automation, an example can be found at the bottom of my automations.yaml file
  • Added vacuum-card as I have a Roborock S55 integrated in my setup now. This will get improved in the future as I am not happy with the current way it works. Nevertheless it is very much usable.
  • Cleaned up a lot and I seriously mean a lot of code, no more weird stacks in stacks in stacks which served no purpose. All of the previous card-modder and useful-markdown-cards have been rewritten to be used with the core versions of this. Thomas Loven made a mod which does the same thing as the old ones but instead of it being a custom card it is a mod to the core card. In other words all of my current setup use this kind of code now.
  • Unified all spacings between screens, whereas before on pages with 4 buttons the borders on the left and right. This is more in line with the Apple Homekit interface and this also means that the borders on each page are the same for every view, popup, card etc. And because the cards used are dynamic now you won’t even notice a difference (though it is a tad bit smaller on iPhone X(s) devices.
  • Removed state-switch card in favor of core conditional cards. Lightens up the setup and functions exactly the same way. Though if you use user based cards (e.g. you have a different homescreen than your spouse based on user logged in) I would not recommend you to remove this as this I do not know how to achieve the same thing with conditional cards. However I do not use user based cards so in my setup conditional cards will do exactly what the state-switch did in my previous configuration.
  • Reworked other view with a revamped menu, color to the page will be added in the near future.
  • Some small fixes, optimisations and a lot of attention to detail

!Important Note!
Apple has released the first beta’s of tvOS 13, the Apple component in Home Assistant will NO LONGER WORK with tvOS 13. This also means, no more state updates, no remote control, no dimming lights when started playing, no more automations possible whatsoever with the Apple TV. If you rely on this DON’T EVER UPDATE TO tvOS 13. Apple has removed a few services from the ATV which involves Home Sharing and was necessary for the pyatv component to work. They will most likely never create an alternative to this and thus you are warned. If you want to downgrade your Apple TV you can still do this until Apple stops signing that firmware so if you haven’t downgraded before halfway september know that you will probably be stuck with a broken remote control in HA or broken automations that were based on the ATV’s states.

@dougbaptista Here is the decluttering example I was telling you about, you should use this instead of anchors :stuck_out_tongue:

@iantrich I have templated the crap out of the button-card with the decluttering-card as I know you liked my Homekit button design in the past I am certain you will love this!

@CM000n This release fixes the spacing between buttons and screen borders, I saw you had an iPhone Plus model and the buttons on the right look weird on it. Because the buttons are dynamic now this is no longer an issue on larger phones (and I have ofc tested it on my old iPhone 7 Plus)

@everyoneelse Enjoy this massive update and never hesitate to ask questions, just please have patience as I am not a customer service xD!