I further tested this:
- goto console, login, then
sudo systemctl set-default multi-user.target
systemctl reboot
After text mode logon, then run
sudo systemctl start graphical.target
I got the graphical logon, and desktop loaded ok this way.
I then change default back to graphical.target, reboot. Got black screen again.