MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-Hoymiles-Wifi

    Scheduled Pinned Locked Moved Development
    58 Posts 6 Posters 10.3k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • evroomE Offline
      evroom @Jose1701
      last edited by evroom

      @Jose1701

      Yes, so an instance is already running.
      You added it to pm2 too?

      pm2 status

      If yes, then you do not need to run it manually.
      If no, then kill the (p)pid.

      sudo kill -9 [ppid]

      MagicMirror version: 2.33.0
      Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
      Raspbian GNU/Linux 12 (bookworm)

      Test environment:
      MagicMirror version: v2.33.0
      Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
      Raspbian GNU/Linux 12 (bookworm)

      J 1 Reply Last reply Reply Quote 0
      • J Offline
        Jose1701 @evroom
        last edited by

        @evroom

        Well, I’ve done that now. At the moment it is night so I can’t see any output.
        Will see if it works tomorrow …

        Thank you. I will post if it runs then.

        J evroomE 2 Replies Last reply Reply Quote 0
        • J Offline
          Jose1701 @Jose1701
          last edited by

          Can’t get it to work.

          I don’t know what I’m doing wrong…

          Now, Portscan ist about that:

          
          tcp        0      0 127.0.0.1:5000          0.0.0.0:*               LISTEN      1139/python
          tcp        0      0 127.0.0.1:5000          127.0.0.1:37002         ESTABLISHED 1139/python
          tcp        0      0 127.0.0.1:57592         127.0.0.1:5000          TIME_WAIT   -
          tcp        0      0 127.0.0.1:37002         127.0.0.1:5000          ESTABLISHED 6097/exe
          
          
          evroomE 1 Reply Last reply Reply Quote 0
          • evroomE Offline
            evroom @Jose1701
            last edited by evroom

            @Jose1701

            First I would disable the module:

            $ vi ~/MagicMirror/config/config.js
            
                module: "MMM-Hoymiles-Wifi",
                disabled: true,
            
            $ pm2 restart MagicMirror
            

            I build this command to try to get more info on port 5000:

            $ for pid in `lsof -i :5000 | grep -v 'PID' | awk '{print $2}' | sort -u`; do echo $pid; ps -Flww -p  $pid; done
            

            Hopefully the Forum tool does not change it.

            Furthermore please verify and supply the following data:

            $ cd /home/admin/MagicMirror/modules/MMM-Hoymiles-Wifi
            

            Check path:

            $ which hoymiles-wifi
            $ echo $PATH
            

            Check if the path is in the PATH.
            If not, do (using the path from ‘which’):

            $ export PATH=$PATH:/home/admin/.local/bin
            

            Check config.js:

            $ grep ':5000' ~/MagicMirror/config/config.js
            

            Expected is:

            { src: 'http://127.0.0.1:5000' },
            

            Check HoymilesWifi.sh:

            $ grep 'dtu_ip_address' HoymilesWifi.sh
            

            Expected is your DTU IP address, for example:

            python hoymiles_data.py --dtu_ip_address 192.168.178.50 --max 800
            

            Test run (hoymiles-wifi):

            $ hoymiles-wifi --host 192.168.178.50  identify-inverters
            

            Expected is a response.

            Test run (HoymilesWifi.sh)

            $ ./HoymilesWifi.sh
            

            Expected is:

            * Serving Flask app 'hoymiles_data'
            * Debug mode: off
            INFO:werkzeug:WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
            * Running on http://127.0.0.1:5000
            INFO:werkzeug:Press CTRL+C to quit
            

            If you wait a bit some more output is shown.

            If it works, then I would suggest to stop the ./HoymilesWifi.sh command and do:

            $ cd /home/admin/MagicMirror/modules/MMM-Hoymiles-Wifi
            $ pm2 start HoymilesWifi.sh
            $ pm2 save
            
            $ pm2 status HoymilesWifi
            
            $ pm2 logs HoymilesWifi --lines 10
            

            If everything is okay, the enable the module again:

            $ vi ~/MagicMirror/config/config.js
            
                module: "MMM-Hoymiles-Wifi",
                disabled: false,
            
            $ pm2 restart MagicMirror
            

            MagicMirror version: 2.33.0
            Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
            Raspbian GNU/Linux 12 (bookworm)

            Test environment:
            MagicMirror version: v2.33.0
            Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
            Raspbian GNU/Linux 12 (bookworm)

            evroomE J 3 Replies Last reply Reply Quote 0
            • evroomE Offline
              evroom @evroom
              last edited by evroom

              To be honest, for me the MM does not display anything.
              Although it is dark, I still expected the graphic with 0 or so.
              Or I have to wait a bit longer.

              I used
              https://github.com/schris88/MMM-Hoymiles-Wifi/
              and all the above is correct and running.

              A year ago I made a fork and made some changes, of which I think are present in the schris88 version as well.

              https://github.com/evroom/MMM-Hoymiles-Wifi/
              I will give this one a try when I have time.

              PS: it seems that when the microinverter is off-line, you will not see anything. Need to wait for it to be active again.

              MagicMirror version: 2.33.0
              Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              Test environment:
              MagicMirror version: v2.33.0
              Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
              Raspbian GNU/Linux 12 (bookworm)

              1 Reply Last reply Reply Quote 0
              • J Offline
                Jose1701 @evroom
                last edited by

                @evroom said in MMM-Hoymiles-Wifi:

                $ grep ‘dtu_ip_address’ HoymilesWifi.sh

                Until that line everything is ok. After that it says:

                
                grep: HoymilesWifi.sh: No such file or directory
                
                
                S 1 Reply Last reply Reply Quote 0
                • J Offline
                  Jose1701 @evroom
                  last edited by

                  @evroom said in MMM-Hoymiles-Wifi:

                  $ hoymiles-wifi --host 192.168.178.50 identify-inverters

                  This works:

                  Identify-inverters Response:
                  {'1412a015f1e3': 'HMS-800W/1000W-2T'}
                  
                  

                  After that: ./HoymilesWifi.sh

                   * Serving Flask app 'hoymiles_data'
                   * Debug mode: off
                  Address already in use
                  Port 5000 is in use by another program. Either identify and stop that program, or start the server with a different port.
                  
                  
                  1 Reply Last reply Reply Quote 0
                  • S Do not disturb
                    sdetweil @Jose1701
                    last edited by

                    @Jose1701 typo

                     grep 'dtu_ip_address' Hoymiles-Wifi.sh
                    

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    J 1 Reply Last reply Reply Quote 0
                    • J Offline
                      Jose1701 @sdetweil
                      last edited by

                      @sdetweil

                      Im getting this:

                      
                      python hoymiles_data.py --dtu_ip_address 192.168.178.150 --max 800
                      
                      
                      S evroomE 2 Replies Last reply Reply Quote 0
                      • S Do not disturb
                        sdetweil @Jose1701
                        last edited by

                        @Jose1701 he just wanted to see the IP address the module was connecting to , which is hard coded in that line

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • evroomE Offline
                          evroom @Jose1701
                          last edited by evroom

                          @Jose1701

                          First of all, where I write

                          /home/admin/
                          

                          please use

                          ~/
                          

                          (tilde sign)

                          And can you please send me:

                          cd ~/MagicMirror/modules/MMM-Hoymiles-Wifi
                          git branch
                          git remote -v
                          

                          Every time you get that port in use error, run the long command to see what programs are using the port.
                          And of course do not use HoymilesWifi.sh when it is also active under pm2.

                          I am starting to wonder if the module works at all.
                          I finally got a picture, but it showed an error in it.

                          MagicMirror version: 2.33.0
                          Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                          Raspbian GNU/Linux 12 (bookworm)

                          Test environment:
                          MagicMirror version: v2.33.0
                          Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                          Raspbian GNU/Linux 12 (bookworm)

                          J 1 Reply Last reply Reply Quote 0
                          • evroomE Offline
                            evroom @Jose1701
                            last edited by

                            @Jose1701

                            You also might try this module:

                            https://github.com/CuddlyCow/MMM-HoymilesPVMonitor

                            I may give it a try myself.

                            MagicMirror version: 2.33.0
                            Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                            Raspbian GNU/Linux 12 (bookworm)

                            Test environment:
                            MagicMirror version: v2.33.0
                            Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                            Raspbian GNU/Linux 12 (bookworm)

                            J 1 Reply Last reply Reply Quote 0
                            • J Offline
                              Jose1701 @evroom
                              last edited by

                              @evroom

                              * master
                              origin  https://github.com/schris88/MMM-Hoymiles-Wifi (fetch)
                              origin  https://github.com/schris88/MMM-Hoymiles-Wifi (push)
                              
                              

                              I used the ~ symbol.

                              1 Reply Last reply Reply Quote 0
                              • J Offline
                                Jose1701 @evroom
                                last edited by

                                @evroom

                                Well I tried that but I’m to silly to install it.

                                florian@raspberrypi:~/MagicMirror/modules/MMM-Hoymiles-Wifi $ pip3 install hoymiles-wifi
                                error: externally-managed-environment
                                
                                × This environment is externally managed
                                ╰─> To install Python packages system-wide, try apt install
                                    python3-xyz, where xyz is the package you are trying to
                                    install.
                                
                                    If you wish to install a non-Debian-packaged Python package,
                                    create a virtual environment using python3 -m venv path/to/venv.
                                    Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make
                                    sure you have python3-full installed.
                                
                                    For more information visit http://rptl.io/venv
                                
                                note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
                                hint: See PEP 668 for the detailed specification.
                                
                                
                                florian@raspberrypi:~/MagicMirror/modules/MMM-Hoymiles-Wifi $ sudo apt install python3 hoymiles-wifi
                                Error: Unable to locate package hoymiles-wifi
                                florian@raspberrypi:~/MagicMirror/modules/MMM-Hoymiles-Wifi $
                                
                                
                                
                                evroomE 1 Reply Last reply Reply Quote 0
                                • evroomE Offline
                                  evroom @Jose1701
                                  last edited by

                                  @Jose1701

                                  You installed that already, so no need to install it again.
                                  Probably using:

                                  python -m pip install -r requirements.txt --break-system-packages
                                  

                                  The schris88 requirements.txt contains the hoymiles-wifi package.

                                  MagicMirror version: 2.33.0
                                  Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                                  Raspbian GNU/Linux 12 (bookworm)

                                  Test environment:
                                  MagicMirror version: v2.33.0
                                  Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                                  Raspbian GNU/Linux 12 (bookworm)

                                  J 1 Reply Last reply Reply Quote 0
                                  • J Offline
                                    Jose1701 @evroom
                                    last edited by

                                    @evroom

                                    By unsing this, I get the following error:

                                    python -m pip install -r requirements.txt --break-system-packages
                                    
                                    Defaulting to user installation because normal site-packages is not writeable
                                    ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt'
                                    
                                    
                                    evroomE 1 Reply Last reply Reply Quote 0
                                    • evroomE Offline
                                      evroom @Jose1701
                                      last edited by evroom

                                      @Jose1701

                                      >> You installed that already, so no need to install it again.
                                      >>The schris88 requirements.txt contains the hoymiles-wifi package.
                                      

                                      If you want to repeat it under the new module name, then you will need to copy the requirements.txt file from the previous module.
                                      But again, since you already did this, no need to repeat.

                                      MagicMirror version: 2.33.0
                                      Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                                      Raspbian GNU/Linux 12 (bookworm)

                                      Test environment:
                                      MagicMirror version: v2.33.0
                                      Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                                      Raspbian GNU/Linux 12 (bookworm)

                                      J 1 Reply Last reply Reply Quote 0
                                      • J Offline
                                        Jose1701 @evroom
                                        last edited by

                                        @evroom

                                        Okay. But in the end I can’t get it to work. Don’t know whats wrong …

                                        Does this has to do with that:

                                        florian@raspberrypi:~ $ pm2 restart MagicMirror
                                        Use --update-env to update environment variables
                                        [PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
                                        [PM2] [MagicMirror](0) ✓
                                        ┌────┬─────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
                                        │ id │ name            │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
                                        ├────┼─────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
                                        │ 1  │ HoymilesWifi    │ default     │ 2.33.0  │ fork    │ 3691100  │ 0      │ 367… │ stopped   │ 0%       │ 0b       │ florian  │ disabled │
                                        │ 0  │ MagicMirror     │ default     │ 2.33.0  │ fork    │ 3691094  │ 0s     │ 3    │ online    │ 0%       │ 3.0mb    │ florian  │ enabled  │
                                        └────┴─────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
                                        florian@raspberrypi:~ $
                                        
                                        
                                        
                                        
                                        evroomE 1 Reply Last reply Reply Quote 0
                                        • evroomE Offline
                                          evroom @Jose1701
                                          last edited by

                                          @Jose1701

                                          Yeah, stopped is not good.
                                          I will need to get it working myself before I can give more useful information on what to check.
                                          Will keep you posted.

                                          MagicMirror version: 2.33.0
                                          Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                                          Raspbian GNU/Linux 12 (bookworm)

                                          Test environment:
                                          MagicMirror version: v2.33.0
                                          Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                                          Raspbian GNU/Linux 12 (bookworm)

                                          evroomE 1 Reply Last reply Reply Quote 0
                                          • evroomE Offline
                                            evroom @evroom
                                            last edited by

                                            @Jose1701

                                            Remove the old module from the config:

                                            $ vi ~/MagicMirror/config/config.js
                                            
                                            Remove the "MMM-Hoymiles-Wifi" config, or set:
                                            
                                                module: "MMM-Hoymiles-Wifi"
                                                disabled: true,
                                            
                                            Delete HoymilesWifi from pm2:
                                            
                                            $ pm2 stop HoymilesWifi
                                            $ pm2 delete HoymilesWifi
                                            $ pm2 save
                                            
                                            If desired, completely remove the old module:
                                            
                                            $ cd ~/MagicMirror/modules/
                                            $ rm -rf MMM-Hoymiles-Wifi
                                            

                                            Install MMM-HoymilesPVMonitor:

                                            $ cd ~/MagicMirror/modules
                                            
                                            $ git clone https://github.com/CuddlyCow/MMM-HoymilesPVMonitor.git
                                            
                                            $ cd MMM-HoymilesPVMonitor
                                            
                                            $ git branch
                                            * main
                                            
                                            $ git remote -v
                                            origin	https://github.com/CuddlyCow/MMM-HoymilesPVMonitor.git (fetch)
                                            origin	https://github.com/CuddlyCow/MMM-HoymilesPVMonitor.git (push)
                                            
                                            $ which hoymiles-wifi
                                            /home/admin/.local/bin/hoymiles-wifi
                                            
                                            $ echo $PATH
                                            /home/admin/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games
                                            
                                            $ vi ~/MagicMirror/config/config.js
                                            
                                              {
                                                module: "MMM-HoymilesPVMonitor",
                                                disabled: false,
                                                header: "PV Monitor",
                                                position: "top_left",
                                                config: {
                                                  dtuIp: "192.168.178.50",        // IP address of your Hoymiles DTU
                                                  maxPower: 800,                  // Maximum system power in watts
                                                  updateInterval: 5 * 60 * 1000   // Update interval in milliseconds (default: 5 minutes)
                                                }
                                              }
                                            
                                            
                                            $ grep 'dtuIp' ~/MagicMirror/config/config.js
                                                  dtuIp: "192.168.178.50",        // IP address of your Hoymiles DTU
                                            
                                            
                                            $ ls -als public/history_daily.json
                                            4 -rw-r--r-- 1 admin admin 115 Nov  6 08:47 public/history_daily.json
                                            
                                            $ cat public/history_daily.json
                                            [
                                              {
                                                "timestamp": "2025-11-06 08:47",
                                                "power": 40,
                                                "energy_daily": 0.03,
                                                "energy_total": 0.8
                                              }
                                            
                                            $ pm2 flush
                                            
                                            $ pm2 restart MagicMirror
                                            
                                            $ pm2 status MagicMirror
                                            ┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
                                            │ id │ name           │ namespace   │ version │ mode    │ pid      │ uptime │ ↺    │ status    │ cpu      │ mem      │ user     │ watching │
                                            ├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
                                            │ 0  │ MagicMirror    │ default     │ 2.33.0  │ fork    │ 26202    │ 4m     │ 3    │ online    │ 0%       │ 2.1mb    │ admin    │ enabled  │
                                            └────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
                                            
                                            $ pm2 logs MagicMirror --lines 100
                                            
                                            0|MagicMir | [2025-11-06 08:47:43.474] [INFO]  [MMM-HoymilesPVMonitor.js:17:9] MMM-HoymilesPVMonitor started with DTU-IP: 192.168.178.50
                                            :
                                            :
                                            0|MagicMir | [2025-11-06 08:47:49.226] [LOG]   [MMM-HoymilesPVMonitor] Running Python script: python3 /home/admin/MagicMirror/modules/MMM-HoymilesPVMonitor/dtu_data.py --ip 192.168.178.50 --max 800 --out /home/admin/MagicMirror/modules/MMM-HoymilesPVMonitor/public/history_daily.json
                                            0|MagicMir | [2025-11-06 08:47:51.682] [LOG]   [MMM-HoymilesPVMonitor] Python script output: [WARNING] Could not load history: Expecting value: line 2 column 1 (char 1)
                                            0|MagicMir | [2025-11-06 08:47] [INFO] Live DTU data appended: {'timestamp': '2025-11-06 08:47', 'power': 40, 'energy_daily': 0.03, 'energy_total': 0.8}
                                            :
                                            :
                                            0|MagicMir | [2025-11-06 08:52:42.141] [LOG]   [MMM-HoymilesPVMonitor] Running Python script: python3 /home/admin/MagicMirror/modules/MMM-HoymilesPVMonitor/dtu_data.py --ip 192.168.178.50 --max 800 --out /home/admin/MagicMirror/modules/MMM-HoymilesPVMonitor/public/history_daily.json
                                            0|MagicMir | [2025-11-06 08:52:43.287] [LOG]   [MMM-HoymilesPVMonitor] Python script output: [2025-11-06 08:52] [INFO] Live DTU data appended: {'timestamp': '2025-11-06 08:52', 'power': 41, 'energy_daily': 0.03, 'energy_total': 0.8}
                                            
                                            $ cat public/history_daily.json
                                            [
                                              {
                                                "timestamp": "2025-11-06 08:47",
                                                "power": 40,
                                                "energy_daily": 0.03,
                                                "energy_total": 0.8
                                              },
                                              {
                                                "timestamp": "2025-11-06 08:52",
                                                "power": 41,
                                                "energy_daily": 0.03,
                                                "energy_total": 0.8
                                              }
                                            

                                            Tested on:

                                            $ cat /proc/device-tree/model; echo
                                            Raspberry Pi 3 Model B Plus Rev 1.3
                                            
                                            $ vcgencmd get_config total_mem
                                            total_mem=1024
                                            
                                            $ grep version ~/MagicMirror/package.json
                                            	"version": "2.33.0",
                                            

                                            MagicMirror version: 2.33.0
                                            Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                                            Raspbian GNU/Linux 12 (bookworm)

                                            Test environment:
                                            MagicMirror version: v2.33.0
                                            Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                                            Raspbian GNU/Linux 12 (bookworm)

                                            J 1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 2 / 3
                                            • First post
                                              Last post
                                            Enjoying MagicMirror? Please consider a donation!
                                            MagicMirror created by Michael Teeuw.
                                            Forum managed by Sam, technical setup by Karsten.
                                            This forum is using NodeBB as its core | Contributors
                                            Contact | Privacy Policy