The generic kernel supplied on the FreeBSD CDROM is not configured for the tw523. So you most likely need to reconfigure a kernel with:
device tw0 at isa? port 0x378 tty irq 7 vector twintrwhere the value for the port and irq are those of your parallel port hardware.
See the Kernel Configuration section of the FreeBSD HandBook for more specific instructions on building a kernel.
The irq should match your parallel port and your configuration of lpt0. For more flexibility you can list tw0 before lpt0 in your kernel config file and the kernel will detect which device is present upon booting. The tw0 will only probe successfully if it sees a 60Hz signal from the tw523. If instead you have a printer plugged in, the tw0 probe will fail and the lpt0 would then succeed. You do have to reboot if you switch between plugging in the the tw523 and plugging in a printer, but you don't have to reconfigure anything.
The transmitter side of the driver is polled, which can be cpu
intensive, but this only occurs when you send X10 commands. The
receiver side is interrupt driven and thus has very low overhead. So
the driver can have a transient impact on performance when sending
commands but otherwise should not slow the system down at all. See
the tw
man page for more info.
You will also have to add a device handle to the directory /dev. In FreeBSD 2.1 all you have to do is:
/dev/MAKEDEV tw0 or mknod /dev/tw0 c 19 0
The tw driver comes with its own daemon, "xten", but that will not be
discussed here as it is not intended for use with the RcDaemon package.
See the xten
man page for more details on this daemon.