Running your Raspberry Pi in “headless” mode, without any keyboard, monitor, or mouse, is important for low-maintenance mobile use or for a “set it and forget it” configuration in your shack.
Problems with WsprryPi on Headless Pi Zero 2W
Until recently, there was an unresolved issue running WsprryPi on a headless Pi Zero 2W where the Pi would lock up as soon as transmission began. This was unfortunate since the Raspberry Pi Zero is a very affordable device for setting up a WSPR beacon
Community Efforts and Workaround
The community, including contributors like Eelco de Graaff (PD1EG), SyCoTechs and mark-orion, spent considerable time investigating the issue. We eventually discovered a workaround: the headless Pi remained stable if an HDMI dummy plug was inserted into the mini HDMI port. This cheap and simple solution allows the Pi Zero to remain small and portable while avoiding the lockup & crashing issue.
Long Term Fix
The ultimate goal is to identify and fix the underlying bug, which is likely related to the direct access by mailbox.c to the GPU on the Pi Zero. One hypothesis is that powering off the HDMI port using Broadcom’s mailbox.c library before transmission starts might prevent the crash.
In the mean time, the HDMI dummy plug is an excellent workaround!