Hey folks, this has been surprisingly hard to search for.
Can you access your BIOS over COM port with consumer motherboards? Is this a thing? It’d be great to use serial console to tweak the machine while I’m away.
I’m curious what level of out-of-band management I can expect with a consumer/gaming motherboard. e.g. the Gigabyte z790 one I’m eyeing.
Do different brands support booting without a monitor, GPU, etc? Do any support bios over serial or in text mode?
I’ve been googling “com port” vs “serial port” plus “VGA” vs “GPU” vs “graphics” plus “BIOS” etc. and downloading motherboard manuals to read, but still not finding anything conclusive.
I did find a person over in BSD land that did some work to enable a serial console on his motherboard to a USB FTDI adapter:
From what I can tell, it’s a matter of the motherboard and EFI and EFI software rather than BSD/linux/windows.
It does seem like it’s possible to get the console output redirected to the COM port or serial device, and perhaps access and EFI shell via a text console.
What I don’t yet understand is if you can modify the same things you can modify in GUI BIOS via the EFI shell or via a text console with any reasonable UX. I’m guessing that’d be difficult or require a lot of reverse engineering.
By my reading, he doesn’t have serial access to change BIOS/EFI setting. He went through a great deal of trouble to get early FreeBSD kernel boot-time messages to go over an add-in serial adapter, on a motherboard that doesn’t have a built-in COM1. No BIOS/EFI access with this method (as PMc said, and fornost agreed-but said this is quite useful for him).
I suspect a lot of motherboard uefi firmwares (“BIOS”) have this as a set of hidden UEFI settings. e.g. Dell Optiplex desktop UEFI firmwares support serial redirection as a hidden setting, which gets automatically turned on when you enable some ME settings (the usual graphical BIOS is replaced by a fully text mode interface even via VGA when this is in effect). Intel’s reference “TianoCore” UEFI firmware implementation supports it, and a lot of firmware (BIOS) vendors use this as the basis of their offerings.
Another answer to this is to use coreboot. With the expert-mode answer being porting coreboot to your board first :-).
When you setup Intel AMT (ME), then activate serial (com) port redirection (e.g. via MeshCommander), and connect to the serial port at boot time (again via MeshCommander etc.), you get firmware (BIOS) serial output, and on the primary display (non-serial) output (e.g. DisplayPort etc.) you briefly get a message saying “HEADLESS MODE OPERATIONAL”.
If you then enter the firmware settings via the serial console, you then get displayed a text mode (instead of the normal Optiplex graphics mode) firmware settings page. IIRC, that works on (at least) Optiplex 7070 (and I think 5040 as well), I haven’t tried other models. If you’d like to see what’s getting set up, then I suppose you could try dumping all of the UEFI NVRAM variables (settings) before and then immediately after enabling that, and comparing them for differences.