Virtual serial port support is provided by templates number 3, 8, and 10. Note that template 3 works with Microsoft Windows 10 without the need for special drivers and INF files. Other host operating systems work with all three templates. Both usb_template(4) and umodem(4) kernel modules must be loaded.
To enable USB device mode serial ports, add those lines
to /etc/ttys
:
ttyU0 "/usr/libexec/getty 3wire" vt100 onifconsole secure ttyU1 "/usr/libexec/getty 3wire" vt100 onifconsole secure
Then add these lines to
/etc/devd.conf
:
notify 100 { match "system" "DEVFS"; match "subsystem" "CDEV"; match "type" "CREATE"; match "cdev" "ttyU[0-9]+"; action "/sbin/init q"; };
Reload the configuration if devd(8) is already running:
#
service devd restart
Make sure the necessary modules are loaded and the
correct template is set at boot by adding
those lines to /boot/loader.conf
,
creating it if it does not already exist:
umodem_load="YES" hw.usb.template=3
To load the module and set the template without rebooting use:
#
kldload umodem
#
sysctl hw.usb.template=3
To connect to a board configured to provide USB device
mode serial ports, connect the USB host, such as a laptop, to
the boards USB OTG or USB client port. Use
pstat -t
on the host to list the terminal
lines. Near the end of the list you should see a USB serial
port, eg "ttyU0". To open the connection, use:
#
cu -l /dev/ttyU0
After pressing the Enter key a few times you will see a login prompt.
To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, to the boards USB OTG or USB client port. To open the connection, use:
#
cu -l /dev/cu.usbmodemFreeBSD1
To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, to the boards USB OTG or USB client port. To open the connection, use:
#
minicom -D /dev/ttyACM0
To connect to a board configured to provide USB device mode serial ports, connect the USB host, such as a laptop, to the boards USB OTG or USB client port. To open a connection you will need a serial terminal program, such as PuTTY. To check the COM port name used by Windows, run Device Manager, expand "Ports (COM & LPT)". You will see a name similar to "USB Serial Device (COM4)". Run serial terminal program of your choice, for example PuTTY. In the PuTTY dialog set "Connection type" to "Serial", type the COMx obtained from Device Manager in the "Serial line" dialog box and click Open.
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.