Hi all. I'm running in to a rather frustrating issue and I'm hoping someone could provide some pointers for where to look next.
I've acquired a small, low power system that used to be a VPN appliance from the late 2010's. It is based on a Supermicro X10SBA-L motherboard with a Celeron J1900 CPU. I've attempted to install the most recent version of FreeBSD that will seem to run on it, which so far is 13.3. 14.x doesn't seem to like booting on this system for some reason.
Console redirection is enabled in the BIOS and I can see the boot messages through a terminal running on my Mac when connected to the serial port, so that all appears to be fine. I can also interact with the boot process in a limited way through the serial terminal, e.g. at the beastie boot screen I can pause it and change options etc, so all appears fine up to this stage.
The issue comes after boot when I reach the login prompt. At this point it is a bit random as to what happens next. Sometimes I will get the login prompt including the full line of text stating FreeBSD and the hostname. Sometimes I'll only get part of this line. Sometimes I can input a couple of characters of a username, and othertimes not. Here's an example of the output following a couple of boots showing how inconsistent it is:
In the first case I was able to enter "ro" as part of the "root" username. In the second case it didn't finish printing the first line of text. In the third case it did, but never displayed the login prompt. And so on.
As for setting up things like /boot/loader.conf, I have followed countless guides, all of which say basically the same thing, but for completeness, here is my current /boot/loader.conf for my latest incarnation of testing:
I've tried booting in "UEFI mode" and using "efi" instead of "vidconsole".
I've tried various settings in /etc/ttys from different speeds, "std.x" and "3wire.x", and even "Pc". The tty is set to "on" rather than the default "onifconsole". Running "kill -HUP 1" after making changes to /etc/ttys doesnt change anything, and the login prompt is never produced again (I'm unsure whether it should...)
I've also made sure I am running the latest BIOS on the motherboard, and tried different serial ports (there are 4 built-in to choose from). I've tried disabling console redirection in the BIOS in case something at that level was messing with the serial port.
I thought maybe it was a flow control issue, perhaps in the tx direction towards my terminal. But if I, e.g. plug and unplug a keyboard then I can see some messages transmitted to the terminal saying that a USB device has been connected and disconnected, so it can still clearly queue more data for transmission. And this is the case after the login prompt has frozen.
I've even tried an older version of FreeBSD as well, such as 12.0 which is more of the vintage of the machine, but no change in behaviour. For giggles I installed the latest greatest Ubuntu as a test and it has no issues with serial console.
Regardless of what is happening with the serial console, the machine is always perfectly responsive and usable on the video console with a USB keyboard, and over the network using ssh. I would like to have the serial console working because the VGA port is covered up by the front bezel of the case once the motherboard is installed in the chassis, making it very painful to access if needed (it basically requires full disassembly).
I'm at my limit of ideas for things to try or what to do, and so I'm reaching out for further help. Of all of the platforms I have run FreeBSD on in the past I have never had so much trouble with the serial console as with this machine...!
Can anyone suggest anything else?
Thanks!
I've acquired a small, low power system that used to be a VPN appliance from the late 2010's. It is based on a Supermicro X10SBA-L motherboard with a Celeron J1900 CPU. I've attempted to install the most recent version of FreeBSD that will seem to run on it, which so far is 13.3. 14.x doesn't seem to like booting on this system for some reason.
Console redirection is enabled in the BIOS and I can see the boot messages through a terminal running on my Mac when connected to the serial port, so that all appears to be fine. I can also interact with the boot process in a limited way through the serial terminal, e.g. at the beastie boot screen I can pause it and change options etc, so all appears fine up to this stage.
The issue comes after boot when I reach the login prompt. At this point it is a bit random as to what happens next. Sometimes I will get the login prompt including the full line of text stating FreeBSD and the hostname. Sometimes I'll only get part of this line. Sometimes I can input a couple of characters of a username, and othertimes not. Here's an example of the output following a couple of boots showing how inconsistent it is:
Code:
FreeBSD/amd64 (pulse) (ttyu0)
login: ro
FreeBSD/amd64
FreeBSD/amd64 (pulse) (ttyu0)
In the first case I was able to enter "ro" as part of the "root" username. In the second case it didn't finish printing the first line of text. In the third case it did, but never displayed the login prompt. And so on.
As for setting up things like /boot/loader.conf, I have followed countless guides, all of which say basically the same thing, but for completeness, here is my current /boot/loader.conf for my latest incarnation of testing:
Code:
boot_multicons="YES"
boot_serial="YES"
comconsole_speed="115200"
console="vidconsole,comconsole"
I've tried booting in "UEFI mode" and using "efi" instead of "vidconsole".
I've tried various settings in /etc/ttys from different speeds, "std.x" and "3wire.x", and even "Pc". The tty is set to "on" rather than the default "onifconsole". Running "kill -HUP 1" after making changes to /etc/ttys doesnt change anything, and the login prompt is never produced again (I'm unsure whether it should...)
I've also made sure I am running the latest BIOS on the motherboard, and tried different serial ports (there are 4 built-in to choose from). I've tried disabling console redirection in the BIOS in case something at that level was messing with the serial port.
I thought maybe it was a flow control issue, perhaps in the tx direction towards my terminal. But if I, e.g. plug and unplug a keyboard then I can see some messages transmitted to the terminal saying that a USB device has been connected and disconnected, so it can still clearly queue more data for transmission. And this is the case after the login prompt has frozen.
I've even tried an older version of FreeBSD as well, such as 12.0 which is more of the vintage of the machine, but no change in behaviour. For giggles I installed the latest greatest Ubuntu as a test and it has no issues with serial console.
Regardless of what is happening with the serial console, the machine is always perfectly responsive and usable on the video console with a USB keyboard, and over the network using ssh. I would like to have the serial console working because the VGA port is covered up by the front bezel of the case once the motherboard is installed in the chassis, making it very painful to access if needed (it basically requires full disassembly).
I'm at my limit of ideas for things to try or what to do, and so I'm reaching out for further help. Of all of the platforms I have run FreeBSD on in the past I have never had so much trouble with the serial console as with this machine...!

Can anyone suggest anything else?
Thanks!