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 5.4k 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.
    • 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 Online
        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.31.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 Online
          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.31.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

            Great job! It could work for me. Unfortunately it’s dark outside but I can see the gauge on my mirror.

            I don’t even dare to ask, but do you have a hint how about resizing it? I tried it with width and height but it won’t work.

             {
                module: "MMM-HoymilesPVMonitor",
                disabled: false,
                header: "PV Monitor",
                position: "top_left",
                width: "100px",
                height: "105px",
                config: {
                  dtuIp: "192.168.178.150",        // IP address of your Hoymiles DTU
                  maxPower: 800,                  // Maximum system power in watts
                  updateInterval: 5 * 60 * 1000   // Update interval in milliseconds (default: 5 minutes)
                }
              },
            
            

            Many thanks and kind regards

            Florian

            S evroomE 2 Replies Last reply Reply Quote 0
            • S Do not disturb
              sdetweil @Jose1701
              last edited by

              @Jose1701 said in MMM-Hoymiles-Wifi:

              width: "100px",
              height: "105px",
              

              those are outside the config:{} section, that means they are for the MM runtime…
              but we don’t process width/height

              if you want to do this you need to learn to use css(cascading style sheet) to customize the html presentation
              ALL updated css goes in css/custom.css

              a css entry in custom.css is

              selector_clause {
                 styles to apply to elements selected by the selector clause
              }
              

              we add the modulename as a class to the web content so that one can ‘select’ only for that module

              key selector clause elements
              starts with . means element has classname=xxx
              starts with # means element has id=xxxx
              does not start with either, means html element name, div, span, p, h1, img…

              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

                Alright, I will try to get some info in the internet. Never done sth with css.

                Thanks

                S 2 Replies Last reply Reply Quote 0
                • S Do not disturb
                  sdetweil @Jose1701
                  last edited by

                  @Jose1701 I understand , the browser provides a developer environment with different capabilities

                  logger
                  code execution
                  and elements viewer, css tester env

                  see the second link in my signature below for a starter course on the elements tab.

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

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

                    @Jose1701

                    No, sorry, no idea.
                    What Sam says, but that needs knowledge.
                    But I opened an issue/request, so let’s see if it will be granted:
                    https://github.com/CuddlyCow/MMM-HoymilesPVMonitor/issues

                    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.31.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

                      ok. Thank you for your patience and help.

                      1 Reply Last reply Reply Quote 0
                      • S Do not disturb
                        sdetweil @Jose1701
                        last edited by

                        @Jose1701 also. Sometimes the author documents it on the readme, sometimes the author provides their own css you can override w custom.css entries

                        Sometimes it’s all grunt work….

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 5 / 6
                        • 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