[sane-devel] Unsupported Xerox DocuMate 4830
Lars Urban
lars.urban94 at icloud.com
Fri Dec 26 10:36:02 GMT 2025
Hi there,
I just bought this old scanner for cheap because I like the aesthetics. My goal is to connect it to my server and use the OneTouch functionality to scan documents easily. It’s a Xerox DocuMate 4830 but sometimes listed as Visioneer.
I might try to write a backend but I dont know where to start so here’s info for the „unsupported“ status first.
Below is the output of sane-find-scanner and lsusb.
I’ve also attached a pcap from dumpcap on debian.
Merry Christmas.
Best regards,
Lars

This is sane-find-scanner from sane-backends 1.1.1-debian
# sane-find-scanner will now attempt to detect your scanner. If the
# result is different from what you expected, first make sure your
# scanner is powered up and properly connected to your computer.
searching for SCSI scanners:
checking /dev/scanner... failed to open (Invalid argument)
checking /dev/sg0... failed to open (Invalid argument)
checking /dev/sg1... failed to open (Invalid argument)
checking /dev/sg2... failed to open (Invalid argument)
checking /dev/sg3... failed to open (Invalid argument)
checking /dev/sg4... failed to open (Invalid argument)
checking /dev/sg5... failed to open (Invalid argument)
checking /dev/sg6... failed to open (Invalid argument)
checking /dev/sg7... failed to open (Invalid argument)
checking /dev/sg8... failed to open (Invalid argument)
checking /dev/sg9... failed to open (Invalid argument)
checking /dev/sga... failed to open (Invalid argument)
checking /dev/sgb... failed to open (Invalid argument)
checking /dev/sgc... failed to open (Invalid argument)
checking /dev/sgd... failed to open (Invalid argument)
checking /dev/sge... failed to open (Invalid argument)
checking /dev/sgf... failed to open (Invalid argument)
checking /dev/sgg... failed to open (Invalid argument)
checking /dev/sgh... failed to open (Invalid argument)
checking /dev/sgi... failed to open (Invalid argument)
checking /dev/sgj... failed to open (Invalid argument)
checking /dev/sgk... failed to open (Invalid argument)
checking /dev/sgl... failed to open (Invalid argument)
checking /dev/sgm... failed to open (Invalid argument)
checking /dev/sgn... failed to open (Invalid argument)
checking /dev/sgo... failed to open (Invalid argument)
checking /dev/sgp... failed to open (Invalid argument)
checking /dev/sgq... failed to open (Invalid argument)
checking /dev/sgr... failed to open (Invalid argument)
checking /dev/sgs... failed to open (Invalid argument)
checking /dev/sgt... failed to open (Invalid argument)
checking /dev/sgu... failed to open (Invalid argument)
checking /dev/sgv... failed to open (Invalid argument)
checking /dev/sgw... failed to open (Invalid argument)
checking /dev/sgx... failed to open (Invalid argument)
checking /dev/sgy... failed to open (Invalid argument)
checking /dev/sgz... failed to open (Invalid argument)
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a kernel SCSI driver for your SCSI adapter.
searching for USB scanners:
checking /dev/usb/scanner... failed to open (Invalid argument)
checking /dev/usb/scanner0... failed to open (Invalid argument)
checking /dev/usb/scanner1... failed to open (Invalid argument)
checking /dev/usb/scanner2... failed to open (Invalid argument)
checking /dev/usb/scanner3... failed to open (Invalid argument)
checking /dev/usb/scanner4... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner5... failed to open (Invalid argument)
checking /dev/usb/scanner7... failed to open (Invalid argument)
checking /dev/usb/scanner8... failed to open (Invalid argument)
checking /dev/usb/scanner9... failed to open (Invalid argument)
checking /dev/usb/scanner10... failed to open (Invalid argument)
checking /dev/usb/scanner11... failed to open (Invalid argument)
checking /dev/usb/scanner12... failed to open (Invalid argument)
checking /dev/usb/scanner13... failed to open (Invalid argument)
checking /dev/usb/scanner14... failed to open (Invalid argument)
checking /dev/usb/scanner15... failed to open (Invalid argument)
checking /dev/usbscanner... failed to open (Invalid argument)
checking /dev/usbscanner0... failed to open (Invalid argument)
checking /dev/usbscanner1... failed to open (Invalid argument)
checking /dev/usbscanner2... failed to open (Invalid argument)
checking /dev/usbscanner3... failed to open (Invalid argument)
checking /dev/usbscanner4... failed to open (Invalid argument)
checking /dev/usbscanner5... failed to open (Invalid argument)
checking /dev/usbscanner6... failed to open (Invalid argument)
checking /dev/usbscanner7... failed to open (Invalid argument)
checking /dev/usbscanner8... failed to open (Invalid argument)
checking /dev/usbscanner9... failed to open (Invalid argument)
checking /dev/usbscanner10... failed to open (Invalid argument)
checking /dev/usbscanner11... failed to open (Invalid argument)
checking /dev/usbscanner12... failed to open (Invalid argument)
checking /dev/usbscanner13... failed to open (Invalid argument)
checking /dev/usbscanner14... failed to open (Invalid argument)
checking /dev/usbscanner15... failed to open (Invalid argument)
trying libusb:
<device descriptor of 0x1d6b/0x0003 at 002:001 (Linux 6.1.0-40-amd64 xhci-hcd xHCI Host Controller)>
bLength 18
bDescriptorType 1
bcdUSB 3.10
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 3
bMaxPacketSize0 9
idVendor 0x1D6B
idProduct 0x0003
bcdDevice 6.01
iManufacturer 3 (Linux 6.1.0-40-amd64 xhci-hcd)
iProduct 2 (xHCI Host Controller)
iSerialNumber 1 (0000:00:14.0)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 31
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 224 (Self-poweredRemote Wakeup)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 4
bInterval 12 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x04a7/0x04c3 at 001:008 (Xerox DocuMate 4830)>
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 255
bDeviceSubClass 204
bDeviceProtocol 1
bMaxPacketSize0 64
idVendor 0x04A7
idProduct 0x04C3
bcdDevice 0.01
iManufacturer 1 (Xerox)
iProduct 2 (DocuMate 4830)
iSerialNumber 3 (5CPTY70039)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 39
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 192 (Self-powered)
MaxPower 2 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 0
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 (out 0x01)
bmAttributes 2 (bulk)
wMaxPacketSize 512
bInterval 0 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 (in 0x02)
bmAttributes 2 (bulk)
wMaxPacketSize 512
bInterval 0 ms
bRefresh 0
bSynchAddress 0
<endpoint 2>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 3 (interrupt)
wMaxPacketSize 8
bInterval 8 ms
bRefresh 0
bSynchAddress 0
<trying to find out which USB chip is used>
checking for LM983[1,2,3] ...
this is not a LM983x (bDeviceClass = 255, bInterfaceClass = 0)
checking for GT-6801 ...
this is not a GT-6801 (bcdUSB = 0x200)
checking for GT-6816 ...
this is not a GT-6816 (bDeviceClass = 255, bInterfaceClass = 0)
checking for GLxxx ...
this is not a GL646 (bDeviceClass = 255, bInterfaceClass = 0)
this is not a GLxxx (bDeviceClass = 255, bInterfaceClass = 0)
<Couldn't determine the type of the USB chip (result from sane-backends 1.1.1-debian)>
found possible USB scanner (vendor=0x04a7 [Xerox], product=0x04c3 [DocuMate 4830]) at libusb:001:008
<device descriptor of 0x05e3/0x0610 at 001:007 (USB2.0 Hub)>
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 2
bMaxPacketSize0 64
idVendor 0x05E3
idProduct 0x0610
bcdDevice 50.98
iManufacturer 0 ()
iProduct 1 (USB2.0 Hub)
iSerialNumber 0 ()
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 41
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 224 (Self-poweredRemote Wakeup)
MaxPower 100 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 1
bInterval 12 ms
bRefresh 0
bSynchAddress 0
<altsetting 1>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 2
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 1
bInterval 12 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x8087/0x0a2a at 001:002>
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 224
bDeviceSubClass 1
bDeviceProtocol 1
bMaxPacketSize0 64
idVendor 0x8087
idProduct 0x0A2A
bcdDevice 0.01
iManufacturer 0 ()
iProduct 0 ()
iSerialNumber 0 ()
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 177
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 224 (Self-poweredRemote Wakeup)
MaxPower 100 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 64
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 (out 0x02)
bmAttributes 2 (bulk)
wMaxPacketSize 64
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 2>
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 (in 0x02)
bmAttributes 2 (bulk)
wMaxPacketSize 64
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<interface 1>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 0
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 0
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<altsetting 1>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 9
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 9
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<altsetting 2>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 17
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 17
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<altsetting 3>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 25
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 25
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<altsetting 4>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 33
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 33
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<altsetting 5>
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 224
bInterfaceSubClass 1
bInterfaceProtocol 1
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 (out 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 49
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<endpoint 1>
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 (in 0x03)
bmAttributes 1 (isochronous)
wMaxPacketSize 49
bInterval 1 ms
bRefresh 0
bSynchAddress 0
<device descriptor of 0x1d6b/0x0002 at 001:001 (Linux 6.1.0-40-amd64 xhci-hcd xHCI Host Controller)>
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 9
bDeviceSubClass 0
bDeviceProtocol 1
bMaxPacketSize0 64
idVendor 0x1D6B
idProduct 0x0002
bcdDevice 6.01
iManufacturer 3 (Linux 6.1.0-40-amd64 xhci-hcd)
iProduct 2 (xHCI Host Controller)
iSerialNumber 1 (0000:00:14.0)
bNumConfigurations 1
<configuration 0>
bLength 9
bDescriptorType 2
wTotalLength 25
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0 ()
bmAttributes 224 (Self-poweredRemote Wakeup)
MaxPower 0 mA
<interface 0>
<altsetting 0>
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 9
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0 ()
<endpoint 0>
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 (in 0x01)
bmAttributes 3 (interrupt)
wMaxPacketSize 4
bInterval 12 ms
bRefresh 0
bSynchAddress 0
# Your USB scanner was (probably) detected. It may or may not be supported by
# SANE. Try scanimage -L and read the backend's manpage.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can't be detected by this program.
done
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/sane-devel/attachments/20251226/6ee184d6/attachment-0002.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: XeroxDocumate4830_onConnect.pcapng
Type: application/octet-stream
Size: 12572 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/sane-devel/attachments/20251226/6ee184d6/attachment-0001.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/sane-devel/attachments/20251226/6ee184d6/attachment-0003.htm>
More information about the sane-devel
mailing list