Skip to content

Instantly share code, notes, and snippets.

@dreamcat4
Last active August 29, 2015 14:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dreamcat4/d28a6daf78b1ad2ec663 to your computer and use it in GitHub Desktop.
Save dreamcat4/d28a6daf78b1ad2ec663 to your computer and use it in GitHub Desktop.
How to Install CX88 drivers on FreeBSD, FreeNAS / NAS4Free / pfSense, with Finch v1.25 - http://dreamcat4.github.io/finch/

NOTE: I don't own this device. Please report back any problems / corrections.

Cx88 How-To (Hauppage WinTV HVR-4000)

These devices need their own special kernel module, and do not use webcamd. Namely, this driver supports the Hauppauge WinTV HVR-4000 and similar chipset devices. More information about these devices is available from the cx88 wiki page. You can also find the cx88 listed in the FreeBSD WebcamCompat page.

This howto configures the necessary cx88 kernel modules to be loaded by Finch. You will need to follow the steps here. Most of these commands can just be copy-pasted. The Kernel modules must be installed directly in Finch's chroot. That can't be done in a jail.

Update Finch

Update finch to version 1.25 or newer.

# Finch users should first update to get the latest fixes
[ "$(echo "$(finch --shortver) >= 1.25" | bc)" = 1 ] || sudo finch update -y

# Enter the finch chroot environment, as root
sudo finch chroot

Install cx88 kernel modules

# Update local pkgng database, to avoid 'failed checksum' for 'pkg install'
pkg update -f

# Download the cuse4bsd kernel module from pkgng
ASSUME_ALWAYS_YES="yes" pkg install "cx88"

# Finch users: Configure kldload to start the necessary kernel modules on boot up
# (other users should edit their loader.conf file instead).

# For CX23880/1/2/3-based PCI cards
sysrc "kldload_modules=$(sysrc -n kldload_modules) cuse4bsd cx88mpeg"

# For CX23885/7/8-based PCIe cards
sysrc "kldload_modules=$(sysrc -n kldload_modules) cuse4bsd cx23885 cx23885avfw"

# Enable, start kldload system service
sysrc "kldload_enable=YES"
service "kldload" start

# Check that the kernel modules are loaded
kldstat
ls /dev/dvb
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment