Read the statement by Michael Teeuw here.
MMM-Hoymiles-Wifi
-
>> 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. -
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:~ $ -
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. -
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-WifiInstall 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", -
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
-
@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/heightif 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.cssa 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… -
-
@Jose1701 I understand , the browser provides a developer environment with different capabilities
logger
code execution
and elements viewer, css tester envsee the second link in my signature below for a starter course on the elements tab.
-
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 -
ok. Thank you for your patience and help.
