Welcome! the custom_components folder should be in the same directory as your configuration.yaml, then htd_mc sub-folder under that
Mine looks like this:
configuration.yaml (and my other .yaml files FWIW) are in config
folder
Welcome! the custom_components folder should be in the same directory as your configuration.yaml, then htd_mc sub-folder under that
Mine looks like this:
configuration.yaml (and my other .yaml files FWIW) are in config
folder
Perfect. So how does HA know to “pick up” the files in that directory? Is there an include statement that needs to be added in ‘configuration.yaml’ or is this intelligently used by HA when the service is restarted?
Edited for clarity
Edit2: Oh, and thank you for the prompt response, @Markus99
Unsure exactly, guess it’s built in to ‘look’ there at start-up. Make sure to put the appropriate values into your configuration.yaml and then reboot.
Swinging back by to report that this integration installed flawlessly. Got to working within minutes! Thanks for the support!
Hi all, I’m planning a whole-house audio system and I came across this thread while investigating whether it was possible to integrate the HTD MC-66 into Home Assistant. Sounds like it is, thanks to @hikirsch’s great work.
Can anyone confirm whether it’s possible with this integration to include commands such as zone on/off and zone source setting via automation scripts? What I want to achieve is, for example:
Thanks for any insight you can provide.
I can’t speak to any kind of Alexa integrations, as I don’t use it.
I’ve been using this integration for a few months and it’s been solid for me. Can script out whatever you want and use default HA automations/rules to trigger whatever you’d like. It works well to turn on / off zones, change zone sources, and volume (though volume changes in fairly large ‘chunks’ b/c HA uses 0-100 and HTD/MCA-66 uses 0-60).
So, yes, you’re able to do what you’re listing above given your ability to craft automations / scripts to execute
What I don’t have to reenter the names and all setttings into the MC app ever AGAIN!!!
Wow! Whoo Hooo finally have HTD integrated into my HA. Works a treat! I can dump the junk MC app for good!
Thank you for the great integration.
Been working really great all summer, woohoo!
Just upgraded to .113.3 and seeing this error (though it may have been present prior to this upgrade).
Hey Mark -
I was able to update this on my repo today. Let me know if this has any issues.
–Adam
Awesome, great work Adam, thx!
Updated this am and seems to be working well - though will reach out if I see anything odd.
Thx again!
Has anyone tried to implement this using the HTD Lync system as opposed to the older controllers?
Sorry, this was really only designed for the MCA series. I don’t own a Lync system to test with.
I have a Lync12 using the same GW-SL1 interface. From what I’ve found, it uses similar commands but slightly different strings. I’m going to be a bit busy the next few weeks, but after that I may take a stab at getting this working. I’ll keep everyone posted.
EDIT: This does appear to work. My problem was I have the original MC-66 which only allows 1 thing to be logged in at once. I had another app with this device opened. I knew you could only have 1 logged in at once, but I thought some entities would show up. Apparently nothing shows up if it isn’t accessable. I logged into my other MC-66 which is a 2nd version that allows 10 logins at once and it popped up instantly in HA.
#1 is this still working? looks like the last message was only 16 days ago.
#2 how do i get it to work?! little sad one guy got it working in just minutes.
I am running HA on Pi. Version .116.0
I have downloaded the 4 files and put them in
config\custom_components\htd_mc
I see the server has created a
config\custom_components\htd_mc\__pycache__
and added 3 more files in there.
I have edited the configuration.yaml
htd_mc:
- host: 192.168.10.103
port: 10006
zones:
- Master Bath
- Hallway
- Guest 1
- Guest 2
- Gameroom
- Garage
sources:
- one
- two
- three
- four
- five
- six
It maybe working, just don’t know how to add or find them? I don’t see anything under an entity
Added into HA (Rpi 3b+) V0.115.6 and was not showing up with anything as Patrick115 stated. Figured it was the same issue with Gen1 gw-sl1 (2016ish) only allowing a single connection; logged out of app, restarted HA and we have success. Been up for a few hours now and seems to work well. Will update if I run into any further issues.
Thanks!
Hoping for a little help. I’m brand new and got HA for the sole purpose of connecting the MCA, so maybe I’m missing something basic. I followed the instructions and I’m getting this error in my log.
Logger: homeassistant.components.media_player
Source: custom_components/htd_mc/htd_mc.py:186
Integration: Media player (documentation, issues)
First occurred: 11:14:40 PM (1 occurrences)
Last logged: 11:14:40 PM
Error while setting up htd_mc platform for media_player
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 193, in _async_setup_platform
await asyncio.shield(task)
File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/htd_mc/media_player.py", line 43, in setup_platform
entities.append(HtdDevice(k, client, sources, i + 1, zones[i]))
File "/config/custom_components/htd_mc/media_player.py", line 55, in __init__
self.update()
File "/config/custom_components/htd_mc/media_player.py", line 70, in update
self.zone_info = self.client.query_zone(self.zone)
File "/config/custom_components/htd_mc/htd_mc.py", line 159, in query_zone
return self.send_command(cmd, zone)
File "/config/custom_components/htd_mc/htd_mc.py", line 186, in send_command
mySocket.connect((self.ip_address, self.port))
ConnectionRefusedError: [Errno 111] Connection refused
Have you figured out how to make these a device? I am trying to make some automation scripts, but looks like they have to be devices to work. They work great from the HA GUI, but the goal would be to make automations not open the gui every time to use them. I am sure it is easy and possible, I just don’t understand HA that well.
They’re created as switch and media_player entities and can be controlled then as such.
Personally I built a ‘pool party’ script that will turn on my HTD amp and then turn on some zones (media_player’s in HA) and set the source. I use a zwave switch to control my HTD Amp, so I turn that on first, then work thru some zones like this:
pool_party_on:
sequence:
- service: switch.turn_on
entity_id: switch.speakers_downstairs
- delay: 00:00:10
- service: switch.turn_on
entity_id: switch.htd_outside_couch
- delay: 00:00:03
- service: media_player.select_source
data:
entity_id: media_player.htd_outside_couch
source: Up - Chromecast
- delay: 00:00:01
- service: switch.turn_on
entity_id: switch.htd_outside_fireplace
- delay: 00:00:03
- service: media_player.select_source
data:
entity_id: media_player.htd_outside_fireplace
source: Up - Chromecast
The snippet is only two zones, but you get my point. The link above to HA shows how you can ‘volume_set,
volume_mute,
volume_up’, etc…
Hope this helps!
Thank you so much. This was just enough info for even me as a newbie to figure it out. I tried the scene and that worked, but went with the automation in the end. My goal will be to adjust lights and turn off music and whatever when emby starts playing. I started with this test of just turning off the music. This automation turns off my zone 3 when emby changes from idle to playing and then a 2nd automation to turn the music back on when the show is over.
- id: '1604598619133'
alias: Computer Music Off
description: room music off with player
trigger:
- platform: state
entity_id: media_player.emby_samsungs9
from: idle
to: playing
condition: []
action:
- service: media_player.turn_off
data: {}
entity_id: media_player.grey_guest
mode: single
- id: '1604680893702'
alias: Computer Music on
description: room music on with player
trigger:
- platform: state
entity_id: media_player.emby_samsungs9
from: playing
to: idle
condition: []
action:
- service: media_player.turn_on
data: {}
entity_id: media_player.grey_guest
mode: single
I’m so excited to find this thread! I have had an MCA-66 for years and have been frustrated that I couldn’t fully integrate it with other parts of my home automation. I used the iRule app for a long time but that became unstable and unsupported so I built an Android prototype in Kotlin to give myself control of all my zones. While it is a pain to have to get music going, then open a separate app to control the zones, the app is very fast since it is local. Since it worked well, I haven’t done anything more until recently when I wanted to get everything integrated.
I did not want to go to HTD’s HomeSeer integration because I figured that would take forever to respond to commands. I figured I would go with Home Assistant and could figure something out…but I am not a Python person so I am very happy to find that this custom component exists!
My memory is a little foggy, but I recall in my troubleshooting of my app, I had to tweak some serial settings on my iTach IP2SL to get it to send commands flawlessly when throwing lots of commands at it at once. I also recall struggling with the command to get status back from the amp…and I don’t think I ever solved that.
Anyway, I’m excited to have this task for today. Hopefully I can get it up and running.