Hi all,
I found this older archived thread while working on basically the same problem:
Sophos lcdproc: "sdeclcd: cannot release IO-permission for 0x378!" (https://forum.opnsense.org/index.php?topic=47027.0)
Since the old thread is archived and can't be replied to anymore, I thought I'd leave the solution here for anyone ending up there through search :)
I recently went pretty deep down the rabbit hole with a
Sophos SG 210 Rev.3 and finally got the original front LCD
including all four buttons working properly on current OPNsense.
Tested setup:- Sophos SG 210 Rev.3
- OPNsense 26.7.3_8
- FreeBSD 15.1-RELEASE-p3
- Original Sophos LCD/front panel
- LCDproc using hd44780
- ConnectionType=ezio
- 2400 baud
- All 4 front buttons working
The interesting part is that, at least on my SG 210 Rev.3,
sdeclcd wasn't actually the correct solution.The bigger problem was UART2.
The NCT6779D Super-I/O had UART2 configured at:
0x2f8
while the Intel PCH serial routing exposed the second UART at:
0x3e8
Because of that mismatch, FreeBSD never created a usable second serial device for the LCD.
After safely remapping UART2 from
0x2f8 → 0x3e8, bridging it through a PTY and using LCDproc with the HD44780/EZIO driver, the display started working properly — including the keypad.
Full documentation / source:GitHub – Sophos SG210 Rev.3 LCD for OPNsense (https://github.com/Nusoaheisl/opnsense-sophos-sg210-rev3-lcd)
Discussion and additional hardware information:Reddit – r/opnsense discussion (https://www.reddit.com/r/opnsense/comments/1w5n6fh/guide_sophos_sg_210_rev3_front_lcd_all_4_buttons/)
The current version has also survived:
- normal reboots
- a full OPNsense update
- another reboot after the update
So far it's been completely stable on my unit.
I deliberately only claim compatibility with the
SG 210 Rev.3, because that's the hardware I can physically verify.
Other SG/XG models and revisions use different LCD hardware/layouts, although I'm currently collecting more information about those as well.
I also have a second identical SG 210 now, so I'm planning to use that as a dedicated test box for the next step: turning this into a proper BSD/OPNsense package instead of having people manually install files and maintain a custom syshook.
Hopefully this helps anyone still trying to get the original Sophos front panel working :)