Announcement

Collapse
No announcement yet.

ZMC v4 - Whole house audio for HS3

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    It seems there a bug in Homeseer with my Prolific USB to Serial Adapter. What brand are other people using?

    Hmm, tried an FTDI adapter too recently. Thinking this is a bug with either HS3 or Windows 10.
    Funny thing Windows via the MODE command thinks the port is closed and G-Ware works...
    Last edited by dtsouers; April 15, 2017, 08:28 PM. Reason: Tried another USB adapter...

    Comment


      I have had good luck with Digi and VSCom USB to Serial adapters.



      Have a read here:

      5 Steps for Selecting the Right USB to Serial adapter
      - Pete

      Auto mator
      Homeseer 3 Pro - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU 16Gb
      Homeseer Zee2 (Lite) - 3.0.0.548 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro
      HS4 Lite - Ubuntu 22.04 / Lenovo Tiny M900 / 32Gb Ram

      HS4 Pro - V4.1.18.1 - Ubuntu 22.04 / Lenova Tiny M900 / 32Gb Ram
      HSTouch on Intel tabletop tablets (Jogglers) - Asus AIO - Windows 11

      X10, UPB, Zigbee, ZWave and Wifi MQTT automation-Tasmota-Espurna. OmniPro 2, Russound zoned audio, Alexa, Cheaper RFID, W800 and Home Assistant

      Comment


        Originally posted by AshaiRey View Post

        I am experimenting with a cheap WiFi IP webcam and ContaCam plus my own very simple script to detect movement in certain zones in a large room and it work great. The detection angle is far wider then a PIR sensor and the range is better too. The processor load due this on my cheap Atom CPU at 1,49 GHz in my HS2 machine is 8%
        I saw this old post in this thread and am interested in doing something like this.

        I want to use some of my outdoor cameras to detect motion but I am concerned about the response time. How fast is the reaction time using ContaCam and HS3 to react to the motion detection? I currently use PIR motion detectors around my house to detect deer and trigger a couple of sprinkler zones to scare them away. The problem is I get a lot of false positives from the motion detectors which is one reason I am looking at using a camera. I also have an old wired driveway detector which is giving me a lot of false positives which I hope to replace with an ip camera.

        I need a motion detection response of a second or so. Is that possible with the ContaCam/HS3 approach?

        Comment


          Finally had some time start playing with this again. Is there a way to control the volume of an output? Do I need to make an event to call the script or is there another way? (Ideally I'd like to have a slider in HS Touch to control each output)

          Thanks!

          Comment


            Originally posted by noopara View Post
            I saw this old post in this thread and am interested in doing something like this.

            I want to use some of my outdoor cameras to detect motion but I am concerned about the response time. How fast is the reaction time using ContaCam and HS3 to react to the motion detection? I currently use PIR motion detectors around my house to detect deer and trigger a couple of sprinkler zones to scare them away. The problem is I get a lot of false positives from the motion detectors which is one reason I am looking at using a camera. I also have an old wired driveway detector which is giving me a lot of false positives which I hope to replace with an ip camera.

            I need a motion detection response of a second or so. Is that possible with the ContaCam/HS3 approach?
            I am sorry but i don't have HS3 so i can't give you any real numbers on response time. With HS2 i got a response under or at about a second. I mainly depends on the server. Was it running idle at the time the trigger happened then for instance the HD has to spin up again (in my case that is). That would take some time.
            - Bram

            Send from my Commodore VIC-20

            Ashai_Rey____________________________________________________________ ________________
            HS3 Pro 3.0.0.534
            PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

            Comment


              Originally posted by ckellyusa View Post
              Finally had some time start playing with this again. Is there a way to control the volume of an output? Do I need to make an event to call the script or is there another way? (Ideally I'd like to have a slider in HS Touch to control each output)

              Thanks!
              For volume control you can control the output, the input, the sound processor or the mixer cross point. This can be done with the script and a event.


              If you control the input, output or the mixer cross point you can control that single audio channel. For overal control you can change the level at the mixer processor or by controlling WinAmp/Window media player/iTunes or what ever sound source you use.


              When using a tablet with HS touch then connect the output of the slider device as input to an event that send the correct value to the XAP. I am not familair with how HS3 does this so i can help you with that.
              - Bram

              Send from my Commodore VIC-20

              Ashai_Rey____________________________________________________________ ________________
              HS3 Pro 3.0.0.534
              PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

              Comment


                What would the script look like to control a single audio channel (an output channel)?

                Comment


                  Seems to be a bug with HS3, older versions appear to work without errors.
                  Last edited by dtsouers; May 25, 2017, 07:00 PM.

                  Comment


                    Originally posted by ckellyusa View Post
                    What would the script look like to control a single audio channel (an output channel)?
                    At the top of the script i've documented the available commands that are included

                    ' SetGain ("SetGain","0|8|O|16|A")
                    ' - Parameter(s) <unit_code> <channel> <group> <value> <A or R>

                    so use domething like this in your event
                    AZ_ZMC3.vb("SetGain","0|8|O|16|A")

                    - Output 8, volume level 16 and the value is an absolute value
                    - Bram

                    Send from my Commodore VIC-20

                    Ashai_Rey____________________________________________________________ ________________
                    HS3 Pro 3.0.0.534
                    PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

                    Comment


                      The speech command seems to be turning on then turning off immediately with no sound be output.
                      I tested this by setting music to play on that input and a click sounds is heard. Do I need to run a speech proxy to halt processing while the sound plays?
                      Last edited by dtsouers; May 7, 2017, 08:11 PM.

                      Comment


                        Originally posted by dtsouers View Post
                        The speech command seems to be turning on then turning off immediately with no sound be output.
                        I tested this by setting music to play on that input and a click sounds is heard. Do I need to run a speech proxy to halt processing while the sound plays?
                        Please think about what you are trying to do.
                        You want to do some speech. Now speech is send via the HS SpeakerClient. This HS SpeakerClient has a tab where you can configure how speech is done and with voice to use. The HS SpeakerClient is connected to one sound card. Your music to another.
                        Now to send speech to the SpeakerClient via a script you can use hs.Speak("say some text", True)
                        The switch True tells the speaker client to wait until the speakerclient is finished speaking. This will halt the command hs.Speak() too. So speech must be finished before the script continues.

                        I get the impression that you didn't send any text to say.

                        A command like this placed in an event should give you some response in all connected rooms
                        AZ_ZMC4.vb("Main","ALL;SPEAK;Attention! Can you hear me now")

                        Where
                        Room0 in your ini file is labeled as All
                        The sound level is not altered and left at 0db

                        Tip, turn on the 'show text in a popup' option (or called something like that) in the speakerclient so it will show you what the speakerclient is outputting
                        - Bram

                        Send from my Commodore VIC-20

                        Ashai_Rey____________________________________________________________ ________________
                        HS3 Pro 3.0.0.534
                        PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

                        Comment


                          Figured it out, needed to set a green crosspoint for each room on the speakin.
                          However, it doesnt appear to mute the music.

                          Edit: the crosspoint shouldnt be included. Thinking this is an issue with the commands being run to quickly. Maybe the proxy is needed.
                          Last edited by dtsouers; May 25, 2017, 07:03 PM.

                          Comment


                            It's not clear to me what you are doing and how your setup looks like because the standard setup should work as it is tested many times already.

                            As said the XAP800 is a complex piece of hardware with so many settings to make. If you want to do it yourself then you need to have a good understanding of how these kind of mixer work.


                            So if you need to set a green crosspoint by hand then your setup isn't correct thus the script won't work as expected. The ini file must reflect your setup physically. This also has to be correct with the used in and outputs on the mixer

                            Btw, setting things by hand is a good way to test if the sounds is passing through the various parts of the mixer and to set the right sound levels.
                            - Bram

                            Send from my Commodore VIC-20

                            Ashai_Rey____________________________________________________________ ________________
                            HS3 Pro 3.0.0.534
                            PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

                            Comment


                              HSTouch Slider

                              Ok, I've tested the SetGain with events, and it works fine. I'm trying to apply the principle to HSTouch now but I'm getting error messages. The first image is the setup and the second image is the error. What should I change/try next?

                              Thanks!



                              Comment


                                Sorry for the late reply. I was busy with other things in life thate needed attention

                                About your HSTouch problem.
                                When you call the SetGain methode the script expects a parameter in the form of a string like this "0|8|O|16|A"

                                According to me you pass all the parameters seperatly now.
                                You have to concaticate them together into one string.

                                You have a few options to do this.
                                Making your own side script to do so. Call this from HST and send it to ZMC.
                                You can also try to do it in HST (not familiar with the HS3 version so i can't help)

                                Add an extra methode in ZMC v4 that will do the work for you.
                                It's best to make it a generic on that does the conversion an let it call the needed methode for you. I don't know about your coding skills.

                                A quick solution would be adding this code to the ZMC script. Just add it next to the SetGain methode that is there for easy lookup later on.

                                (Be aware that this is untested code)
                                In HST just change the methode name from SetGain to SetGainHST
                                Code:
                                 
                                '==============================
                                ' SetGain via HSTouch
                                '==============================
                                '
                                ' Sets the gain on the specified channel for the specified unit
                                ' Data is now coming from HSTouch
                                '
                                ' unitCode - the unit code of the target unit
                                ' channel - the target channel (1-8, A-D, 1-2, or * for all)
                                ' channelType - the type of channel (e.g. I for input, O for output,
                                '                                    S for subbus, p for processors)
                                ' level - the amount of gain to apply in dB (-20 to 20).
                                ' Type  - A for absolute or R for relative to current,
                                '
                                Sub SetGainHST(ByVal parameter1 As String, ByVal parameter2 As String, ByVal parameter3 As String, ByVal parameter4 As String, ByVal parameter5 As String)
                                    strdata = parameter1 + "|" + parameter2 + "|" + parameter3 + "|" + parameter4 + "|" + parameter5
                                    CMD = UNIT_CMD & GetUnitCode(strData) & " GAIN " & GetParameter(strData) & EOM
                                    If DEBUG = True Then hs.WriteLog(strScriptName, "SetGain request used : " & CMD)
                                    send(CMD)
                                End Sub
                                - Bram

                                Send from my Commodore VIC-20

                                Ashai_Rey____________________________________________________________ ________________
                                HS3 Pro 3.0.0.534
                                PIugins: ZMC audio | ZMC VR | ZMC IR | ZMC NDS | RFXcom | AZ scripts | Jon00 Scripts | BLBackup | FritzBox | Z-Wave | mcsMQTT | AK Ikea

                                Comment

                                Working...
                                X