Hello, I spend a bit of time on the mysterious HRP 8701 chip found in a number of scanners. I have the Compeye Simplex 1236C scanner myself which contains this chip in addition to the PowerVision 8630 C1L, a USB to parallel port converter. I made a log of the USB data send and received when doing a preview scan using USB sniffer.
Fortunately, the PowerVision 8630 chip has been implemented in SANE. Therefore I used the specifications of this chip to process the log file and output the data send to and received from the HRP 8701. The resulting file, the original log file, and the script can be found on a page I created: http://www.liacs.nl/~rbrijder/sane/hrp8701.html. My question is: When looking at the postprocessed log file, does anybody notice any similarities with other chips (which may have a SANE backend already)?? A few features can be seen immediately and are given below. Please reply if you think this chip is similar to something else. Finally, on the SANE website a page is devoted to this (and other similar) scanners. It is said that the scanner implements the HP protocol using SCSI-over-parport and will work over the parport using the ppscsi and epst modules http://penguin-breeder.org/kernel/download/. I couldn't get the scanner to work, and based on the postprocessed log file I think it is unlikely that the HP protocol is used. Can anyone confirm that it does or does not work? Some properties of this chip ---------------------------- There are two special registers (these registers I think belong to the PV8630): the status register and the mode register. In the log the status register has always value 0xa0. The mode registers determines the type of data transfer. Value 0x12 means normal transfer, and value 0x16 means bulk transfer. Also, value 0x13 is sometimes used. The normal registers are numbered from 0x00 to 0x19 (thus 25 registers in total). Although 0x08, 0x14, and 0x15 were not used in the log (maybe never?). The meaning of a few of the registers is given below. The syntax is "register number: register function". * 0: interface to ADC (which in my case is the LM9820) * 1: used for bulk read of scanned data * 5: MSB is busy signal? * 6: used for bulk write * 7: used for bulk write Thanks, Robert
