Announcement

Collapse
No announcement yet.

Advise much appreciated: wanting to run HS3PRO and Kodi on NUC8i5BEK

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

  • Advise much appreciated: wanting to run HS3PRO and Kodi on NUC8i5BEK

    Dear all,

    I have been running HS3PRO for many years on my Win 7 system and I have been using the same machine to use it as media center with Windows MediaCenter and Kodi.
    I recently have been tinkering with VirtualBox and Ubuntu and managed to get HS3PRO working on a VM on my laptop so decided to purchase a NUC8i5BEK to replace my existing system as support for Windows 7 is going to end by April next year (if I'm not mistaken).

    This leads me to the following options I'm contemplating:
    Option HostOS App GuestOS App
    1 Windows 10 Pro Kodi VirtualBox / Ubuntu 18.04 HS3PRO
    2 Windows 10 Pro Kodi One OS only HS3PRO
    3 Ubuntu 18.04 Kodi One OS only HS3PRO
    4 Ubuntu 18.04 HS3PRO VirtualBox / Windows 10 Pro Kodi







    I could also go for a completely different setup as I have a rasberry pie 4 on order on which I could either run Kodi or HS3Pro.....

    I reboot my current system once a week to ensure stability of the HomeSeer installation and I frequently notice a lag in the system's response (motion sensors trigger but the lights do not respond instantly but sometimes seconds later). I'm not sure if this lag in response is system related or a z-wave problem but it is one of the reasons why I am considering to switch to a linux version of homeseer.

    This is my current setup:
    Current Date/Time: 8/18/2019 3:56:35 PM W. Europe Daylight Time
    HomeSeer Version: HS3 Pro Edition 3.0.0.548 (Windows)
    HomeSeer: Is Registered
    Operating System: Microsoft Windows 7 Ultimate - Work Station
    OS Version: 6.1.7601 Service Pack: 1.0
    System Uptime: 1 Day 16 Hours 14 Minutes 40 Seconds
    Number of Devices: 248
    Number of Events: 197
    Plug-Ins Enabled: CM15A:,BLShutdown:,IPThermostat:,BLGarbage:,BLCpuAdvisor:,Z-Wave:,MeiHarmonyHub:,SDJ-Health:,BLBackup:,Plugwise:
    Processor Type and Speed: Intel64 Family 6 Model 42 Stepping 7 at 2.42 GHz
    Modules/Threads: 124 Modules, 94 Threads
    Available Threads: 399
    System Processes/Load: 89 Processes, 4% Load
    Free / Total Physical Memory: 5.86 GBytes / 7.90 GBytes (74% free)
    Free / Total Virtual Memory: 13.71 GBytes / 15.81 GBytes (87% free)
    HomeSeer Memory Used: 117 Mbytes
    Plug-In Memory Used: 10 EXE Plug-Ins using 269 Mbytes
    My main two priorities are stability and energy use (as homeseer obviously runs 24/7 and I only sparingly use Kodi).

    Can anyone advise me what hardware setup to choose and what your cosiderations would be?

    Many thanks

  • #2
    FWIW: I am using an Intel NUC 8i3BEH for my HS3 installation, running ONLY Ubuntu 18.04 LTS as OS. I also run Squeezebox Server (well I guess it us called Logitech Media Server). I have an uptime of 47 days. No problem with any delays. I am very happy with this setup!

    Note: I used to have an Ubuntu server where I had another virtual server with yet another Ubuntu running. That gave me minor problems with the z wave connection (USB over IP, which is part of the kernel in Ubuntu), and problems to establish that communication on reboooooooooot....

    Comment


    • #3
      I'm using a Gigabyte BRIX GB-BXBT-2807 which has a Celeron N2807 dual-core in it and only used a few watts of power (main reason I went this route for 24/7 usage).

      It looks the exact same as the official HomeSeer NUC, and I got it for $75 at Newegg on BlackFriday about 5 years ago, and installed Windows 10 on it. System was able to play a 4K movie in HDR with 11.1 Atmos track at 80Mbps rates, although the iGPU does most of the heavy lifting then.

      Using it for HomeSeer now, and had a problem with lights not coming up instantly and blamed the under-powered system as CPU would spike to 100% on occasion, but after I added more repeater devices I decided it might also be Z-Wave network related, and simply did a few optimize scans in quick successions, and then a full optimize scan, and now in less than a quarter of a second, before I'm able to take another step of walking into the bedroom the light turns on.

      That is not bad considering the Fibaro eye-ball motion sensor has to send the motion detected signal to HomeSeer via Z-Wave. Then HomeSeer has to trigger the appropriate event. Send out the Z-Wave signal and then the Aeon-Labs external dimmer has to turn on the light based on time (during day 100%, and at night 15%).

      PS:The 100% CPU spikes were caused by a mixture of RDP, Mouse without Borders, Windows Defender being too aggressive, and some other minor issues that I hadn't tweaked yet. Switched to launching HomeSeer via Task Scheduler now as a background task with adjusted priority set to high.

      Comment


      • #4
        My initial setup was a NUC (7th Gen I think) running Microsoft Hyper-V server. On top of that I had a HomeSeer VM running on Windows Server 2016, as well as a Plex server also running on Windows Server 2016.

        I also had some other VMs running on the same host, such as NextCloud. CPU was never an issue, only (small) struggle was RAM allocation so just make sure you buy enough. The NUC was an excellent low power consumption platform for this purpose.

        Any time I had problems with Z-Wave response, it was always down to the health of the mesh network. Sometimes a noisy node, sometimes bad route route configuration, sometimes a node that had gotten unplugged by accident. Lag issues were never a result of the server itself. Since my Z-Wave network has expanded in node count, these issues have all but disappeared. Having a network that is all Z-Wave plus only also helps.

        How are you planning to integrate the Z-Wave interface, a Z-Net? Or some other USB over IP software?

        If you are planning to run Microsoft OS's in the guests, consider using Hyper-V server. It's a stripped down version of Server 2016/2019 core that only performs hyper-visor roles, but it's completely free. It's also a proper tier 1 hyper-visor.

        If you're going to stick with Ubuntu as the host, surely you'd be better off using KVM/QEMU? Virtualbox is a tier 2 hyper visor AFAIK and is possibly the cause of some of the lag you've described.

        Comment


        • #5
          Thanks all for your help so far. Looks like I have various options.

          @Fellhahn: I'm not familiar with Microsoft Hyper-V server but it looks like that might be a great option for me too. I'm downloading the software as we speak and Thursday I expect to receive my NUC so I can start installing it.

          WRT the Z-Wave network: apologies for the ignorance but I was expecting to be abe to plug-in my Aetec US Z-wave controller in the NUC and use it as a USB device in homeseer on the guest OS. Isn't that possible?

          Once again thanks all for the input. I will report back when I have my first results.

          Comment


          • #6
            Started with Microsoft Media center many years ago. Then switched over to XBMC and then KODI. I consider the KODI boxes mini STBs today with their connection to HD Homerun boxes.

            First XBMC boxes were running on AOpen Digital engines which did fine for a few years. Always ran XBMC / KODI on Ubuntu (never in Windows or Android).

            Here running now el cheapo Arm 9 core TVBoxes with CoreElec KODI doing 4K HD just fine. Media storage is on one NAS (videos, pictures and music). CoreElec is pure KODI, no fluff. Such that these are KODI appliances.

            Tiny boxes today with Gb NICs, Wireless and Bluetooth. CoreElec runs on an SD card just fine.

            Doing Netflix and Amazon AOD on the KODI boxes just fine.

            Homeseer 3 Pro is running on two another boxes in Ubuntu 18.04.

            These two boxes today also run Windows 7e (Virtual boxes) for Microsoft SAPI voices (speaker) which is connected to the distributed audio system (Russound).

            Running X10, UPB, ZWave, Zigbee and MQTT here these days. ZWave is a remote RPi with a ZWave dot me card in it. It's been in the attic for years now.
            - Pete

            Auto mator
            Homeseer 3 Pro - 3.0.0.534 (Linux) - Ubuntu 18.04/W7e 64 bit Intel Haswell CPU - Mono 6.4X
            Homeseer Zee2 (Lite) - 3.0.0.534 (Linux) - Ubuntu 18.04/W7e - CherryTrail x5-Z8350 BeeLink 4Gb BT3 Pro - Mono 6.4X

            X10, UPB, Zigbee, ZWave and Wifi MQTT automation.

            Comment


            • #7
              Originally posted by mroovers View Post
              Thanks all for your help so far. Looks like I have various options.

              @Fellhahn: I'm not familiar with Microsoft Hyper-V server but it looks like that might be a great option for me too. I'm downloading the software as we speak and Thursday I expect to receive my NUC so I can start installing it.

              WRT the Z-Wave network: apologies for the ignorance but I was expecting to be abe to plug-in my Aetec US Z-wave controller in the NUC and use it as a USB device in homeseer on the guest OS. Isn't that possible?

              Once again thanks all for the input. I will report back when I have my first results.
              Just be aware Hyper-V server is a CLI only server, no desktop GUI. You will want/need another PC (ie your laptop) running at least Windows 10. Install the Hyper-V administration tools on your laptop, then point the admin console at the Hyper-V server to perform VM configuration. I'm assuming you are not running a MS domain so you may have to jump through a few hoops getting the authentication sorted out.
              Also, "sconfig" is your friend on server core installations. It's a CLI menu style application that will allow you to configure all the basics on the server, set machine name, IP address, enable remote management etc.

              No, you cannot just pass a USB device through to a guest OS. I think some tier 2 hypervisors allow you to do this, and I believe VMWare allows it but only for USB storage devices. Ie thumb drives and external HDDs. You will find a lot of articles online talking about using "USB redirection", mostly all rubbish and doesn't apply to proper USB redirection at all. Most articles discuss a system of accessing a USB device plugged into your local machine (ie laptop) from a guest VM when you are in a remote desktop session. Obvious problem, as soon as you log out of the remote session or turn off your local device, the USB device is disconnected. Completely useless for server situations that need constant access to the USB device. This was a problem we faced at my work for years with USB HASP keys (hardware based software licenses).

              You have four options to solve this:

              Buy a Z-Net from HomeSeer, which makes your controller network accessible. The problem, I think these are US frequency only.

              https://shop.homeseer.com/products/z...ork-controller

              A hardware based network USB redirector, such as those made by Digi, these are typically too expensive for private consumers:

              https://www.digi.com/products/models/aw02-g300

              A software USB redirector. This still uses the network stack, you run a server service on the physical host which has the USB plugged in, and a client service on the guest OS, it connects via TCP, which in this case is simply running across the host virtual switch. I used this method for 12+ months and it worked well. There are a few software options, I believe some free ones if you go the Linux route, I used VirtualHere:

              https://www.virtualhere.com/windows_server_software

              Finally, with Server 2016/2019, we have access to a new feature called Discrete Device Assignment, which allows for detaching a PCIe device from the host and giving a guest VM exclusive access to it. This feature is intended for accessing GPUs and NVMe storage in VMs, but it can work for USB PCIe controllers as well. I am now using this and did a write up on it here a few months ago. I think a similar feature may exist in Xen server. Unfortunately this will not help in your current situation as a NUC does not have PCIe ports for you to install a card into.

              https://forums.homeseer.com/forum/ho...st-vm-it-works

              Basically the software redirector is your best bet in your current situation.
              But if you ever upgrade to a full sized server with a proper ATX board, DDA is great. I have a four port hub passed through which directly attaches my Z-Wave SmartStick, RFXCOM TRX, and a Wiegand-USB converter for security pin pads.

              Comment


              • #8
                Originally posted by Fellhahn View Post

                Just be aware Hyper-V server is a CLI only server, no desktop GUI. You will want/need another PC (ie your laptop) running at least Windows 10. Install the Hyper-V administration tools on your laptop, then point the admin console at the Hyper-V server to perform VM configuration. I'm assuming you are not running a MS domain so you may have to jump through a few hoops getting the authentication sorted out.
                Also, "sconfig" is your friend on server core installations. It's a CLI menu style application that will allow you to configure all the basics on the server, set machine name, IP address, enable remote management etc.

                No, you cannot just pass a USB device through to a guest OS. I think some tier 2 hypervisors allow you to do this, and I believe VMWare allows it but only for USB storage devices. Ie thumb drives and external HDDs. You will find a lot of articles online talking about using "USB redirection", mostly all rubbish and doesn't apply to proper USB redirection at all. Most articles discuss a system of accessing a USB device plugged into your local machine (ie laptop) from a guest VM when you are in a remote desktop session. Obvious problem, as soon as you log out of the remote session or turn off your local device, the USB device is disconnected. Completely useless for server situations that need constant access to the USB device. This was a problem we faced at my work for years with USB HASP keys (hardware based software licenses).

                You have four options to solve this:

                Buy a Z-Net from HomeSeer, which makes your controller network accessible. The problem, I think these are US frequency only.

                https://shop.homeseer.com/products/z...ork-controller

                A hardware based network USB redirector, such as those made by Digi, these are typically too expensive for private consumers:

                https://www.digi.com/products/models/aw02-g300

                A software USB redirector. This still uses the network stack, you run a server service on the physical host which has the USB plugged in, and a client service on the guest OS, it connects via TCP, which in this case is simply running across the host virtual switch. I used this method for 12+ months and it worked well. There are a few software options, I believe some free ones if you go the Linux route, I used VirtualHere:

                https://www.virtualhere.com/windows_server_software

                Finally, with Server 2016/2019, we have access to a new feature called Discrete Device Assignment, which allows for detaching a PCIe device from the host and giving a guest VM exclusive access to it. This feature is intended for accessing GPUs and NVMe storage in VMs, but it can work for USB PCIe controllers as well. I am now using this and did a write up on it here a few months ago. I think a similar feature may exist in Xen server. Unfortunately this will not help in your current situation as a NUC does not have PCIe ports for you to install a card into.

                https://forums.homeseer.com/forum/ho...st-vm-it-works

                Basically the software redirector is your best bet in your current situation.
                But if you ever upgrade to a full sized server with a proper ATX board, DDA is great. I have a four port hub passed through which directly attaches my Z-Wave SmartStick, RFXCOM TRX, and a Wiegand-USB converter for security pin pads.
                Thanks a lot. So would I be able to run Hyper-V server and then install an ubuntu guest OS and a Windows 10 guest OS on the same box, have homeseer on the ubuntu guest OS and use Virtualhere to connect to the USB Aeotec z-wave controller right?

                RoChess : I will use your suggestion to review my Z-wave devices (I believe I have two that are not responsive) and perform some optimizations to see if I can improve the responsiveness.

                Can't wait to get started to tommorow 🙂

                Comment


                • #9
                  Originally posted by mroovers View Post

                  Thanks a lot. So would I be able to run Hyper-V server and then install an ubuntu guest OS and a Windows 10 guest OS on the same box, have homeseer on the ubuntu guest OS and use Virtualhere to connect to the USB Aeotec z-wave controller right?
                  Yes that should work fine. Just be sure to install the x64 architectures of your guest OS's (I htink ubuntu still has a x86/32bit distro), to match the x64 of the host server.

                  Comment


                  • #10
                    Hi all,

                    It's turning out to be quite a learning curve. Yesterday I managed to get Hyper-V Server running and after endless tries I finally managed to get an Ubuntu VM and Windows 10 Pro VM up (the biggest hurdles were to get the NIC working on Hyper-V Server and to installe Windows 10 - Gen 2 VM did not seem to work with the ISO I had so I had to create a Gen 1 Win 10 VM and migrated it to Gen 2).

                    Anyway, I now have a couple of more challenges for which I'm looking for help:

                    1) There are quite a number of devices for which I cannot seem to get the right driver installed on Hyper-V Server (se attached image)
                    2) The Virtualhere client on Ubunu cannot find the Virtualhere server on the Hyper-V host
                    3) Ubuntu seems to consume quite a lot of memory (VM is capped at 6 GB mem but frequently goes to that limit... not sure why).


                    @Fellhahn: any idea how I can get the drivers for the failed devices working? I tried to point Windows Admin Centre to the extracted files from the Intel driver site but that doesn't seem to work.

                    Attached Files

                    Comment


                    • #11
                      Oh man I totally forgot about the NUC lan issues, sorry
                      You did the whole editing the inf file and disabling driver signing thing?

                      That's a lot of unknown devices, I'd expect a few but not that many. Hence why I'm asking if the network adaptor is functioning.

                      Some devices you may never need, so you could potentially turn them off in the NUC Bios, save you some effort diagnosing what's what. WLAN and Bluetooth come to mind.

                      Are you familiar with googling VID/PID numbers to identify what an unknown device is? That typically lets you identify exactly which driver you might need.

                      If you have a bunch of installers downloaded from Intel, you can run them in a remote desktop session on the Hyper-V server (or local console if you have a monitor and keyboard attached.

                      Although core/Hyper-V server are a CLI interface they will still draw the wizard windows when you launch an exe or msi from the CLI.

                      Comment


                      • #12
                        Fellhahn Yep I did the whole editing the inf file thing ... :-)
                        I would imagine that the network adapter is working as both my host and my guest machines have network access. I can RDP to them and access the internet from them. I will try the installers from Intel from the RDP session to the host and see how far I get.

                        I'm not familiar with googling VID/PID number so if you have a link I can use to read up on it that would be great. One other thing I am still curious about is how I will end up with Kodi running on a TV screen attached to this unit. In other words how can I get the output from one of the guest VMs sent to the HDMI out?

                        Thanks for your help so far.

                        Comment


                        • #13
                          In the admin centre, under devices, in the device details, you are looking for a value structured something like this:

                          VID_138A&PID_003C

                          VID = vendor ID, PID = product ID, so the two together should tell you what a product is and who made it. There's no official public global database that I know of but if you type the vid PID into Google, for the common Intel devices at least you should find information on it.

                          I didn't realise you were planning to connect this server to a TV, that's my bad probably didn't read the original post close enough. I'm not aware of a way to connect a guest VM video out except via the PCIe direct assignment I mentioned earlier, which is not possible with a NUC afaik.

                          Does Kodi not use a client/server model? I'm a Plex user myself and I know little about Kodi. If memory serves the two are distant cousins as Plex was branched from the original XBMC project?

                          With Plex there is a central media server that does not perform any actual media player role. Various client apps and frontends connect to it to play the media that it catalogs and, if needed, transcodes. There's a Plex client on practically everything now, smart TVs, Xbox, PS4, android, iOS, desktop, Roku. The whole platform is free if you are only streaming locally inside your own network.

                          Comment


                          • #14
                            Also not sure why your Ubuntu server is eating ram like crazy. Maybe check the VM memory settings in hyperv, is dynamic memory enabled? If so have you set an upper limit for the dynamic range?

                            Comment


                            • #15
                              I have tried multiple setups and am now using Windows 10 PRO as the host OS with the hyper-v server feature enabled in which I run Ubuntu with HS3 PRO. I also use virtualhere to connect my AeonLabs Z-Wave USB stick to the guest VM and it works!

                              I have not migrated my original Windows HS3PRO to the Ubunty guest OS yet as I'm a bit worried about the latency and complexity introduced by sharing the USB stick via Virtualhere. Does anyone have any experiences with this?

                              Once again many thanks for the advise so far.

                              Comment

                              Working...
                              X