New CIS sensors bought on internet, let's HACK!

A project log for Magic Frame : Turn Everything into a Touch Area

Build your own touch screen solution adapted on your TV by using some CIS or CCD sensors from old scanners

jeanperardeljean.perardel 10/15/2017 at 13:0113 Comments

As I was saying in a previous post, I bought some CIS sensors on Ebay. 

I have already hacked several sensors I found directly in old scanners, but this method is really time consuming... and you never really know what kind of sensors you will find!

So I wanted to find a more "generic" CIS sensor, and this wasn't easy... I ended up buying on Ebay some sensors with the wrong references and no datasheet. 

When I received them, it was the start of a very long day...

I started with some internet research, all the videos and blogs with people playing with CIS sensors (on their oscilloscopes most of the time). I couldn't find any information about those references.

From left to right : CIS front sensor with a cover, CIS back sensor with a cover, CIS front sensor without a cover

I started with the CB376-67901. I bought two of them, so I removed the circuit of the first one to have a better visual access to the lines. This sensor has 14 lines and you need a flat flex scanner cable (you find some in every scanner) and a ZIF connector to build an interface board more easily.  

From left to right : CIS sensor, Flex cable, ZIF connector interface board, breadboard interface, Teensy 3.2.

I was able to identify :

That's a good start, but still 6 Pin left for the : 

Then, I compared them with some CIS I used to hack and I discovered that CIS from the brand HP had the same Pin so far. Interesting! But at that time (2 years ago!) I couldn't make it work... Here is the informations I had : 

Second step, I found an old HP scanner and opened it. And this was an amazing moment : the same plastic package, and it looked as throught it was the same Pin from the one I had so far!! 

So I wired my CB376 CIS sensor directly into the flex connector of the mother board, and I could see the outputs of the CIS on line 1. 

Here is the exact configuration : 

A few lines of code on the Teensy board, and now you have a new sensor to play with!!

The blue signal is the Latch (to help to synchronize), the yellow signal is the analog output. You can see 4 rounded peaks very close to each other, on the yellow signal, it's my 4 fingers.  ^^ I ll upload a video soon! 

I actually damaged one one of the two CB376, some pixels don't work anymore... But I still have one more sensor, and also the possibility to order more! 

I haven't yet succeed at hacking the CE-841. Here is what I can say about it so far : 

I need to work a bit more on this. I ll keep you posted! ;-)


kelvinA wrote 03/05/2024 at 10:18 point

Did you ever persue any further tests with the Q8100-60002? It's the only cheap, abundant and 2400dpi* sensor I can find. 

*Looked at all the compatible printers and they all specify 2400dpi optical resolution.

  Are you sure? yes | no

Andrew wrote 06/06/2022 at 05:54 point

Thanks for your time and devotion to this. Did you end up having any luck with the CE841?  These seem to run at about 30% of the cost of the CB376.  I'm looking at making my own project based on these sensors but the complete lack of technical data (either from the printer vendors in the form of schematics or the manufacturers of the sensors themselves) is leaving me in complete frustration.  I don't have a scope to mess with them.  I tried a sensor I pulled from a random Epson MFC but having limited to no luck with it.  My problem is that I am unsure if the sensor will work for my needs (and I need two identical ones for my project) so not wanting to fork out the inflated price for the CB376 as it may not work, so finding a cheaper sensor would be good for me.  There is also the crazy cheap Q8100-60002 but that is 14 pin so possibly uses LVD.

  Are you sure? yes | no

kelvinA wrote 07/31/2022 at 22:09 point

I'm looking to use the Q8100-60002 for one of my projects. I also lack a scope so I'm not sure what I'll do when I get to that point.

  Are you sure? yes | no

Andrew wrote 07/31/2022 at 22:55 point

I bought a few of the Q8100-60002 and they seem identical to the CB376 above. Although, the Q8100 is supposed to suit a Photosmart C4180 (which I managed to acquire), the ones i got do not work in the printer  - The image comes up all gabled.  

The good news is that i have had at least SOME success with it but I only seem to be able to read about 1/5 of the sensor (if that).  I have not touched it in a few weeks but it does seem that you need the differential signal on pin 7.  I don't think the 'shift' is working properly for me.

I have been using a logic analyzer to read the signal from the printer and re-create that with an ESP32 but I think the ESP32 is too slow to create a good enough signal for the inverted signal.  I have purchased an inverting buffer to try but not yet had a chance.

For my intended application, I'm not convinced I can get it to read fast enough but its still on the todo list to get it working. 

  Are you sure? yes | no

kelvinA wrote 07/31/2022 at 23:57 point

Nice to know that any data at all can be obtained from these cheap sensors. Could you tell me what the PCB dimensions are (L*W*H) and if it can be removed from the plastic housing?

  Are you sure? yes | no

Andrew wrote 08/02/2022 at 01:02 point

It can be done but I'd strongly advise against removing it from the holder.  The wires to the ICs on the board are microscopic and exposed. You will snap them from simply touching them.  It also has a fine light filter to ensure linear/parallel detection of light. The board dimensions are about 13x231mm

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 23:18 point

This site has some Contact Image Sensor modules and industrial line scan cameras with high scan rates.

I also considered seeing what it would cost to make a PCB with the sensors laid out to order from smaller diode arrays.  If you are interested I will look more.

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 23:14 point

That Weihai Hualing list mentions CameraLink. The specification is at  I expect to see twisted pair differential signals more and more.  Low Voltage Differential Signaling.  I think it better to buy new and future CIS and learn them, than to spend time on obsolete and undocumented.

The CIS market is growing.  Here is a note about that that also lists the key manufacturers.  I contacted Mitsubishi Electric but their manager is out of town.

Mitsubishi Electric

ROHM Semiconductor
ON Semiconductor
Lite-On Semiconductor
CMOS Sensor Inc.
Tichawa Vision

Here are the ROHM sensors -  They say single channel analog out.  So there are LOTS of fast ADC interfaces that can be used. Sounds like you are already familiar with some of that.  I like SDR methods because of the active community and the FFT tools.  These are analog signals ultimately

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 23:02 point

I found that the Brother DS520 is TWAIN/WIA and so is that MUNBYN.  If we can find ways to use them that way, it would be nice, but everyone seems to make their own version, so better to talk to the sensors directly, write the interface then make applications on top of that.  Java might be worth looking at.  I mostly use Javascript (have done a lot of camera and microphone work), but also and a bit of Visual Studio C and Visual Studio Code.  If you can get the raw data onto a disk that linux can see, it is not hard to read it.  NodeJs can watch a directory for new files.  Or just store them in a known format and process later.  Not sure what you are trying to do with these.  Kind of tired.

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 22:57 point

I am looking for ways to talk to the CIS sensors so I can read them at maximum line scan rates.  In these descriptions, you will find rates in kHz (thousands of scan lines per second) or in microseconds per line.  I will buy you some CIS sensors, if you can help me get data from them.  I want to see if they are picking up magnetic noise.  So I am looking for more bits per color and faster lines per seconds (to improve statistics).  I want to run them for days at a time, no illumination, or as close to uniform and stable illumination as possible.  I have windows and linux.  I have Raspberry Pi, Jetson nano, arduino, ESP32.  Have oscilloscope but my eyes are getting too bad for small work.  Programming and statistics for more than 50 years.  If you need something ask.  If you can find any CIS with real documentation, it is easier to buy than spend time hacking to save a few dollars.  If we work together we might find it easier.

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 22:48 point

Weihai Hualing OptoElectronics offers CIS.  Their CIS formats are listed at and the image of the table is

  Are you sure? yes | no

RichardCollins wrote 09/13/2021 at 22:45 point

Bought a MUNBYN DS001 that contains 216 mm (8.5 inch) 900 DPI sensor.  lite-semi bought out by Plano TX.  The list of CIS formats from is at  

  Are you sure? yes | no

tubbiya wrote 07/14/2021 at 09:55 point

hi,I have a color scanner project, can we work with you on this? The scanner will scan in color. it will be like sean hodgins' image sensor or a4 scanner. or WhatsApp +905327099681

  Are you sure? yes | no