Linux drivers for SE401, SE402 and EP800 based USB webcams

And ONLY for Linux, NOT windows!

This is the home of the 'se401' and the 'epcam' linux drivers look in the table bellow which driver you need:
Aox se401 cameraSE401se401
Endpoints SE402SE402epcam
Endpoints EP800EP800epcam
Philips PCVC665 USB VGA webcam 'Vesta Fun'SE401se401
Kensington VideoCAM PC Camera Model 67014SE401se401
Kensington VideoCAM PC Camera Model 67015SE401se401
Kensington VideoCAM PC Camera Model 67016SE401se401
Kensington VideoCAM PC Camera Model 67017SE401se401
Spypen ActorSE402epcam
Rimax Slim MulticamSE402epcam
Creative PD1001EP800epcam
Chicony DC-100EP800epcam
Concord Eye-Q EasySE402epcam

The SE401, SE402 and EP800 chips are made by EndPoints.
Note that this is not an official endpoints driver.

Some pictures taken with a Philips Vesta Fun camera:

Me - 320x240
My fish - 640x480
More fish - 640x480


The epcam driver is still a work in progress... don't expect much from it

It has been a while since version 0.6... Sorry for that.... Version 0.7 now supports the 2.6 kernel.
epcam-linux-2.6.1.rxq3.diff (v0.7, patch against 2.6.1 but should apply to later kernels too.)
epcam-0.6.diff(patch against 2.4.20)
epcam-0.5.diff(patch against 2.4.20pre5)
epcam-0.4.diff(patch against 2.4.20pre5)

The se401 driver is now part of the main kernel tree, updates will be done there! You will find it in the later 2.4 kernels.

Old releases:


Changes between 0.19 and 0.20:
- Fix for proper left row in bayer decoder.
- Small fixes for uhci.


Changes between 0.18 and 0.19:
- Better bayer decoder that works for all sizes.
- Better resetlevel adjustment.


Changes between 0.17 and 0.18:
- All sizes that fit on the sensor work without compression.
- Restart capturing when getting to many errors.
- Big cleanup.


Changes between 0.16 and 0.17:
- Fixed hang on PPC systems
- Changed SE401_NUMSBUF to 1 to enable the driver to work with usb-uhci
(ohci users can set this to for example 8 for higher framerates)


Changes between 0.15 and 0.16:
- Bayer decoder should now work for _all_ sizes (really this time :)
- Fix size setting for 200x152 (this change might also break 200x152 support...)


Changes between 0.14 and 0.15:
- Changed bayer format decoding, should fix rolling pictures and almost doubles the framerate.


Changes between 0.13 and 0.14:
- Moved video decoding out of irq function.
- flickerless mode (use flickerless=50 or flickerless=60 when loading the module)


Changes between 0.12 and 0.13:
- Image enhancement (you can turn it on and off using 'whiteness' controls).
- Removed old 'irq while not streaming' error message.


Changes between 0.11 and 0.12:
- Use queued bulk transfers.
- Make v4l names shorter than 32 characters.


Changes between 0.10 and 0.11:
- Image settings cleanup.
- Compiles under 2.4.0-test12 and 2.2.18
(Only 2.4.0-test12 tested)


Changes between 0.09 and 0.10:
- Minor fix for eternal sleep on first open.


Changes between 0.08 and 0.09:
- Really (?) fixed size setting this time
- fixed image settings
- Fixed dissappearing bulk transfers.


Changes between 0.07 and 0.08:
- Bad packets shouldn't cause system freezes
- Added device id tables
- Optimized bayer decoding a little bit.


Changes between 0.06 and 0.07:
- Changed size selecting to support more than 3 sizes.
- Xawtv works (ugly hack)


Changes between 0.05 and 0.06:
- fixed /proc ifdefs
- changed resubmitting urbs (data pump still sucks, but should be slightly better)
- setting clipcount to zero in VIDIOCGWIN
- should compile on 2.2 kernels with usb


Changes between 0.04 and 0.05:
- fixed /proc info for minors larger than 9
- rewrote JungGa decompressor (should be somewhat faster)
- much better data handling


Changes between 0.03 and 0.04:
- Auto reset level calculation
- fixed 'se401_get_feature'


Changes between 0.02 and 0.03:
- Better checks for bad JangGu frames
- Replaced junga with JangGu, got to learn to read :)
- Hot unplugging while streaming video fixed.