@sdetweil I did not manage to do a backup because the system was way too slow. I did a fresh install of everything.
I did follow the guide you pasted and am still having that issue where it turns on by itself.
@sdetweil I did not manage to do a backup because the system was way too slow. I did a fresh install of everything.
I did follow the guide you pasted and am still having that issue where it turns on by itself.
@sdetweil using the shutdown function.
nvm… i reinstall the entire os on the hdd and now its working but i lost quite bit.
I have installed the MM via your script as well.
in anycase, i cant get my cron job of turning off the screen as intended.
i have the below 2 script.
the problem is when i turn it off manually or via cron, the screen turns back on automatically if MM is running (either via npm or pm2).
if MM is not running, the screen stays off.
what can i do?
display_off.sh
#!/bin/bash
export WAYLAND_DISPLAY=wayland-0
export XDG_RUNTIME_DIR=/run/user/1000
/usr/bin/wlr-randr --output HDMI-A-2 --off
display_on.sh
#!/bin/bash
export WAYLAND_DISPLAY=wayland-0
export XDG_RUNTIME_DIR=/run/user/1000
/usr/bin/wlr-randr --output HDMI-A-2 --on --transform 90
@mumblebaj hey, do you know why my off job when i triggered it either manually or via the cron job, it turns the monitor off, but after a few seconds it turns it on immediately again…?
@sdetweil i dont have a spare sd card currently. should i reinstall the os on the hdd? or this doesnt represent an os failture? does this sound more like a hdd failure rather than the rpi or os failure?
hi
just came back from a 2 weeks holiday and turn on my magicmirror but it seems to be somewhat dead.
the mouse and keyboard is not responding but i am able to control via bitvise albeit it is very very slow. so i suspect something is wrong with the rpi 5.
every command i type in bitvise, it takes very long to trigger the command. my os is install on an external usb drive along with plex.
i tried taking out the external drive and connect to the pc to perform chkdsk but the pc doesnt recongise the disk …?
now my magicmirror is stuck in the main screen wallpaper. i tried to do a pm2 start MagicMirror but hit with a process 0 error.
note that all these are done via remotely on bitvise.
im not sure where to begin to troubleshoot. any advise anyone?
@sdetweil many thanks for your help once again sam!
@sdetweil it worked! is that your expectation?
@sdetweil this safe?
SHELL=/bin/bash
LANGUAGE=en_US.UTF-8
NO_AT_BRIDGE=1
XDG_SESSION_TYPE=tty
MOTD_SHOWN=pam
LANG=en_US.UTF-8
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.swp=00;90:*.tmp=00;90:*.dpkg-dist=00;90:*.dpkg-old=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:
XDG_SESSION_CLASS=user
TERM=xterm
SHLVL=1
XDG_SESSION_ID=6
XDG_RUNTIME_DIR=/run/user/1000
LC_ALL=en_US.UTF-8
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
SSH_TTY=/dev/pts/0
_=/usr/bin/env
@sdetweil uhm which are the info that are sensitive?
so im actually wayland instead of x11?
@sdetweil dont know man, gets even weirder.
i cant turn on mm using the terminal on the pi directly.
i tried npm run start:x11 and it will just close off with a /home/hsa/MagicMirror/node_modules/electron/dist/electron exited with signal SIGSEGV
i can now only turn on my mm using pm2 on my ssh terminal…
btw i have a cron job, not sure if this is causing the issue
crontab -e
38 00 * * * /home/HSA/display_on.sh
37 00 * * * /home/HSA/display_off.sh
display_off.sh
#!/bin/bash
export WAYLAND_DISPLAY=wayland-1
export XDG_RUNTIME_DIR=/run/user/1000
/usr/bin/wlr-randr --output HDMI-A-2 --off
display_on.sh
#!/bin/bash
export WAYLAND_DISPLAY=wayland-1
export XDG_RUNTIME_DIR=/run/user/1000
/usr/bin/wlr-randr --output HDMI-A-2 --on --transform 90
hsa@HSA:~/MagicMirror $ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
hsa@HSA:~/MagicMirror $ uname -a
Linux HSA 6.12.75+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.12.75-1+rpt1~bookworm (2026-03-11) aarch64 GNU/Linux
hsa@HSA:~/MagicMirror $
@sdetweil ok it runs now. what do i do next?
edit sorry obviously stupid. just pm2 start and we are GOLD :D
thanks again!
@sdetweil did not manage to open MM
> magicmirror@2.36.0 start:wayland
> WAYLAND_DISPLAY="${WAYLAND_DISPLAY:=wayland-1}" ./node_modules/.bin/electron js/electron.js --ozone-platform=wayland
[2026-05-02 02:39:50.838] [LOG] [app] Starting MagicMirror: v2.36.0
[2026-05-02 02:39:50.845] [LOG] [utils] Loading config ...
[2026-05-02 02:39:51.547] [INFO] [systeminformation]
#### System Information ####
- SYSTEM: manufacturer: Raspberry Pi Foundation; model: Raspberry Pi 5 Model B Rev 1.0; virtual: false; MM: v2.36.0
- OS: platform: linux; distro: Debian GNU/Linux; release: 12; arch: arm64; kernel: 6.12.75+rpt-rpi-2712
- VERSIONS: electron: 41.3.0; used node: 22.21.1; installed node: 22.21.1; npm: 10.9.4; pm2: 6.0.14
- ENV: XDG_SESSION_TYPE: tty; MM_CONFIG_FILE: undefined
WAYLAND_DISPLAY: wayland-0; DISPLAY: undefined; ELECTRON_ENABLE_GPU: undefined
- RAM: total: 8059.06 MB; free: 6932.14 MB; used: 1126.92 MB
- OTHERS: uptime: 65 minutes; timeZone: Asia/Singapore
[2026-05-02 02:40:04.644] [INFO] [utils] Checking config file /home/hsa/MagicMirror/config/config.js ...
[2026-05-02 02:40:04.720] [INFO] [utils] Your configuration file doesn't contain syntax errors :)
[2026-05-02 02:40:04.721] [INFO] [utils] Checking modules structure configuration ...
[2026-05-02 02:40:04.787] [INFO] [utils] Your modules structure configuration doesn't contain errors :)
[2026-05-02 02:40:04.788] [LOG] [app] Loading module helpers ...
[2026-05-02 02:40:04.788] [LOG] [app] No helper found for module: alert.
[2026-05-02 02:40:04.790] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:04.791] [LOG] [node_helper] Module helper loaded: updatenotification
[2026-05-02 02:40:04.791] [LOG] [app] No helper found for module: clock.
[2026-05-02 02:40:04.891] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:04.891] [LOG] [node_helper] Module helper loaded: MMM-Jast
[2026-05-02 02:40:05.554] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.555] [LOG] [node_helper] Module helper loaded: MMM-GoogleDocs-Notes
[2026-05-02 02:40:05.580] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.580] [LOG] [node_helper] Module helper loaded: newsfeed
[2026-05-02 02:40:05.586] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.586] [LOG] [app] Check MagicMirror² version for node helper 'MMM-NewsAPI' - Minimum version: 2.21.0 - Current version: 2.36.0
[2026-05-02 02:40:05.587] [LOG] [app] Version is ok!
[2026-05-02 02:40:05.587] [LOG] [node_helper] Module helper loaded: MMM-NewsAPI
[2026-05-02 02:40:05.588] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.588] [LOG] [node_helper] Module helper loaded: MMM-MyScoreboard
[2026-05-02 02:40:05.595] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.595] [LOG] [app] Check MagicMirror² version for node helper 'MMM-SoccerLiveScore' - Minimum version: 2.1.0 - Current version: 2.36.0
[2026-05-02 02:40:05.595] [LOG] [app] Version is ok!
[2026-05-02 02:40:05.595] [LOG] [node_helper] Module helper loaded: MMM-SoccerLiveScore
[2026-05-02 02:40:05.688] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.688] [LOG] [node_helper] Module helper loaded: MMM-OneDrive
[2026-05-02 02:40:05.689] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.689] [LOG] [node_helper] Module helper loaded: MMM-CalendarExt3Agenda
[2026-05-02 02:40:05.746] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.746] [LOG] [node_helper] Module helper loaded: calendar
[2026-05-02 02:40:05.747] [LOG] [node_helper] Initializing new module helper ...
[2026-05-02 02:40:05.747] [LOG] [node_helper] Module helper loaded: MMM-CalendarExt3
[2026-05-02 02:40:05.747] [LOG] [app] All module helpers loaded.
[2026-05-02 02:40:05.751] [LOG] [server] Starting server on port 8080 ...
[2026-05-02 02:40:05.760] [ERROR] [unknown] (node:13239) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `electron --trace-deprecation ...` to show where the warning was created)
[13239:0502/024005.762036:ERROR:ui/ozone/platform/wayland/host/wayland_connection.cc:202] Failed to connect to Wayland display: No such file or directory (2)
[13239:0502/024005.762106:ERROR:ui/ozone/platform/wayland/ozone_platform_wayland.cc:281] Failed to initialize Wayland platform
[13239:0502/024005.762122:ERROR:ui/aura/env.cc:246] The platform failed to initialize. Exiting.
/home/hsa/MagicMirror/node_modules/electron/dist/electron exited with signal SIGSEGV
hsa@HSA:~/MagicMirror $
@sdetweil mm is not up
hsa@HSA:~ $ pm2 status
┌────┬────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
├────┼────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
│ 0 │ MagicMirror │ default │ 2.36.0 │ fork │ 12206 │ 15s │ 49 │ online │ 0% │ 2.6mb │ hsa │ disabled │
└────┴────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
hsa@HSA:~ $
done, but mirror no response or whatsoever
hsa@HSA:~ $ cd ~/MagicMirror/installers
hsa@HSA:~/MagicMirror/installers $ curl -sL https://raw.githubusercontent.com/sdetweil/MagicMirror_scripts/refs/heads/master/mm.sh >mm.sh
hsa@HSA:~/MagicMirror/installers $ pm2 stop all
(node:10682) [DEP0044] DeprecationWarning: The `util.isArray` API is deprecated. Please use `Array.isArray()` instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
[PM2] Applying action stopProcessId on app [all](ids: [ 0 ])
[PM2] [all](0) ✓
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name │ mode │ ↺ │ status │ cpu │ memory │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 0 │ MagicMirror │ fork │ 45 │ stopped │ 0% │ 0b │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
hsa@HSA:~/MagicMirror/installers $ pm2 start MagicMirror
(node:10691) [DEP0044] DeprecationWarning: The `util.isArray` API is deprecated. Please use `Array.isArray()` instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
[PM2] Applying action restartProcessId on app [MagicMirror](ids: [ 0 ])
[PM2] [MagicMirror](0) ✓
[PM2] Process successfully started
┌────┬────────────────────┬──────────┬──────┬───────────┬──────────┬──────────┐
│ id │ name │ mode │ ↺ │ status │ cpu │ memory │
├────┼────────────────────┼──────────┼──────┼───────────┼──────────┼──────────┤
│ 0 │ MagicMirror │ fork │ 45 │ online │ 0% │ 2.7mb │
└────┴────────────────────┴──────────┴──────┴───────────┴──────────┴──────────┘
hsa@HSA:~/MagicMirror/installers $
status │ errored │
│ name │ MagicMirror │
│ namespace │ default │
│ version │ 2.36.0 │
│ restarts │ 45 │
│ uptime │ 0 │
│ script path │ /home/hsa/MagicMirror/installers/mm.sh │
│ script args │ N/A │
│ error log path │ /home/hsa/.pm2/logs/MagicMirror-error.log │
│ out log path │ /home/hsa/.pm2/logs/MagicMirror-out.log │
│ pid path │ /home/hsa/.pm2/pids/MagicMirror-0.pid │
│ interpreter │ bash │
│ interpreter args │ N/A │
│ script id │ 0 │
│ exec cwd │ /home/hsa/MagicMirror │
│ exec mode │ fork_mode │
│ node.js version │ N/A │
│ node env │ N/A │
│ watch & reload │ ✘ │
│ unstable restarts │ 0 │
│ created at │ N/A
@sdetweil edited to your mm.sh but same result
hsa@HSA:~/MagicMirror/installers $ cat mm.sh
#!/bin/bash
cd ~/MagicMirror
if [ $(ps -ef | grep -v grep | grep -i -e xway -e labwc | wc -l) -ne 0 ]; then
# if WAYLAND_DISPLAYis set, use it, else set to -0
export WAYLAND_DISPLAY=${WAYLAND_DISPLAY:=wayland-0}
npm run start:wayland
else
DISPLAY=:0 npm run start:x11
fi
hsa@HSA:~/MagicMirror/installers $
hsa@HSA:~/MagicMirror/installers $ cat mm.sh
#!/bin/bash
cd ~/MagicMirror
DISPLAY=:0 npm run start:x11
hsa@HSA:~/MagicMirror/installers $
@sdetweil im on rpi5, ssh from a windows. where do i remove the lines?