[Bug] Black screen after upgrade to MagicMirror² 2.38.0 on Raspberry Pi 3 with Electron 44.4.5
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 43/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- electron, javascript, node.js, raspberry-pi
- Ambito
- desktop, embedded-iot
Direzione di ricerca
No source file is named; start with package.json, package-lock.json, and the node --run start entry point. Reproduce the Electron 44.4.5 versus 42.6.0 comparison on the Raspberry Pi under Wayland and X11, then inspect the renderer and display behavior. Done means the supported Electron version keeps the interface visible while the HTTP service remains healthy.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Environment
System:
- Raspberry Pi 3 Model B Plus Rev 1.3
- Debian GNU/Linux 13 (trixie)
- Architecture: arm64
- Kernel: 6.18.50+rpt-rpi-v8
- Time zone: Europe/Berlin
MagicMirror system information from the failing Electron 44.4.5 run:
[2026-10-01 19:29:40.974] [INFO] [systeminformation]
#### System Information ####
- MM: version: v2.38.0; git: f138f5b6; branch: master
- SYSTEM: manufacturer: Raspberry Pi Foundation; model: Raspberry Pi 3 Model B Plus Rev 1.3; virtual: false
- OS: platform: linux; distro: Debian GNU/Linux; release: 13; arch: arm64; kernel: 6.18.50+rpt-rpi-v8
- VERSIONS: electron: 44.4.5; used node: 24.21.0; installed node: 24.21.0; npm: 11.19.0; pm2:
- ENV: XDG_SESSION_TYPE: wayland; MM_CONFIG_FILE: undefined
WAYLAND_DISPLAY: wayland-0; DISPLAY: :0; ELECTRON_ENABLE_GPU: undefined
- RAM: total: 905.04 MB; free: 422.97 MB; used: 482.07 MB
- OTHERS: uptime: 899 minutes; timeZone: Europe/Berlin
Full MagicMirror commit:
f138f5b690ceab6450f55c852ac81d268363f563
Which start option are you using?
node --run start
Are you using PM2?
No
Module
None
Have you tried disabling other modules?
- Yes
- No
Have you searched if someone else has already reported the issue on the forum or in the issues?
- Yes
What did you do?
I upgraded an existing working MagicMirror installation from v2.37.0 to v2.38.0.
After the upgrade, the installation contained Electron 44.4.5 as specified by MagicMirror v2.38.0.
Test A - Electron 44.4.5
I started MagicMirror normally using the existing systemd user service:
systemctl --user start magicmirror.service
The underlying start command is:
node --run start
MagicMirror starts successfully on the server side. The configuration check passes, module helpers load, and the HTTP server starts on port 8080.
The local HTTP endpoint responds successfully:
HTTP 200
However, on the monitor connected directly to the Raspberry Pi:
- a small part of the MagicMirror interface appears very briefly,
- the display then becomes black,
- only the mouse pointer remains visible,
- no Electron renderer process remains.
After about one minute:
=== ELECTRON ===
44.4.5
=== HTTP ===
HTTP 200
=== RENDERER ===
KEIN RENDERER
The MagicMirror service itself remains active.
Test B - same setup with Electron 42.6.0
Without changing MagicMirror, its configuration, the OS, the display setup or the start method, I changed only Electron:
npm install --no-save --package-lock=false [email protected]
The installed Electron version was then:
42.6.0
I restarted the same MagicMirror service:
systemctl --user restart magicmirror.service
With Electron 42.6.0:
- the MagicMirror interface appears and remains visible,
- the HTTP endpoint returns HTTP 200,
- the service remains active,
- an Electron renderer process is present.
Example renderer process:
/home/remote/MagicMirror/node_modules/electron/dist/electron --type=renderer ... --ozone-platform=wayland --disable-gpu-compositing ...
I repeated the Electron 44.4.5 test afterwards by restoring the dependency from MagicMirror v2.38.0:
npm install
This restored Electron 44.4.5 and reproduced the same black-screen behavior again:
- interface appears only very briefly,
- screen becomes black,
- mouse pointer remains visible,
- HTTP still returns 200,
- no renderer process remains.
I then changed only Electron back to 42.6.0 and the display worked again.
Comparison
| MagicMirror | Electron | HTTP | Renderer | Display |
|---|---|---|---|---|
| 2.38.0 | 44.4.5 | 200 | absent | black after brief flash |
| 2.38.0 | 42.6.0 | 200 | present | works normally |
What did you expect to happen?
MagicMirror v2.38.0 should display the interface normally on the monitor connected to the Raspberry Pi when started with the supported Wayland start path.
What actually happened?
With Electron 44.4.5, the MagicMirror backend starts successfully, but the Electron frontend does not remain visible.
The interface flashes briefly and then the screen becomes black. Only the mouse pointer remains visible.
The HTTP server continues to respond with HTTP 200 and the MagicMirror service remains active, but no Electron --type=renderer process remains.
Changing only Electron from 44.4.5 to 42.6.0 makes the same MagicMirror v2.38.0 installation work normally again.
The only recurring Electron-related log message seen during startup was:
ERROR:media/gpu/vaapi/vaapi_wrapper.cc:1801] vaInitialize failed: unknown libva error
No kernel OOM, segmentation fault or Electron/Chromium coredump was found during the failing test.
Additional comments
The issue is reproducible by changing only the Electron version on the same MagicMirror v2.38.0 installation.
Working temporary workaround:
npm install --no-save --package-lock=false [email protected]
This does not modify package.json or package-lock.json.
I also tested node --run start:x11 with Electron 44.4.5. The screen remained completely black, so in this setup the issue was not resolved by switching from the Wayland start option to X11.
The observable A/B result is:
- Electron 44.4.5: backend works, HTTP 200, no renderer remains, black screen.
- Electron 42.6.0: backend works, renderer is present, interface remains visible.
I have not confirmed the underlying Electron/Chromium cause.
Network / HTTP
MagicMirror is running its HTTP server on port 8080.
During the failing Electron 44.4.5 test, the local server remained reachable:
http://127.0.0.1:8080/
HTTP 200
Participation
- I am willing to submit a pull request for this change.
- Lingua principale
- JavaScript
- Stelle
- 24.1k
- Fork
- 4.6k
- Merge medio
- 15h 21m
- PR unite (30g)
- 26
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di MagicMirrorOrg/MagicMirror
-
enhancement PR Welcome
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
MagicMirrorOrg/MagicMirror#3808 · 23 commenti · 2 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
arm32 is dead (sadly)Apertadependencies not ours
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
MagicMirrorOrg/MagicMirror#3796 · 30 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Proposal: Wiki RestructureForse di nuovo libera @KristjanESPERANTO l’ha presa 146 giorni fa e non c’è nessuna pull request aperta. Apertaunder development under investigation
MagicMirrorOrg/MagicMirror#2545 · 24 commenti · 2 assegnatari ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di MagicMirrorOrg/MagicMirror
Issue simili
-
data
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 74/100
gaseous-project/hasheous#637 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
gramps-project/gramps-web#1549 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
change request evaluating
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
sindresorhus/eslint-plugin-unicorn#3907 ·
I maintainer di solito rispondono entro 1 giorno
-
Priority: Low Production Type: Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
GrottoCenter/grottocenter-api#1903 ·
I maintainer di solito rispondono entro 1 giorno