热度 27
2014-1-25 18:44
6015 次阅读|
0 个评论
Inspired from Charlieb000 : http://icrontic.com/discussion/93568/reusing-card-reader-from-mp180-cannon-printer One of my friends had a Canon inkjet printer which was out of order. Due to the very high cost of inks, he decided not to repair it but to take the parts apart... Fig. Disassembling the printer, plastics and metals would be dumped into recycle areas There was a card reader module which I thought it might be re-used. Fig. The card reader module, which used to read SD card, CF card, etc. (Edges of the PCB were already cut by me) Looking for information on the Internet, I found Charlieb000's post. In the post, the pins had been identified mostly so it made me more confident of modifying the module... A plastic case were drawn by Autodesk Inventor, and made by 3D printing. Fig. The case and cover drawn in Inventor Fig. The printed case and cover (I forgot to draw screw mounts, anyway the PCB could be fixed by heat glue) I did not like the 3mm green LED, so I would replace it. I found that there was already a transistor Q2 with resistor R31 for driving the LED, so I would desolder the LED and replace the resistor. Fig. The 3mm status LED, driving transistor Q2 and resistor R31. Fig. Basic components needed PCB: for mounting the AMS1117-3.3 regulator USB Cable: for connecting to PC LED and 100 Ohm resistor: replace signal LED 10uF Cap: decoupling cap for regulator Fig. The torn USB wire and cut PCB (only one small piece would be enough) Fig. Soldered wire for LED and components on PCB After soldering all the parts (according to the pin assignments from Charlieb000), I connected to the computer via a USB hub (Controller is GL850G), see my machine configuration below. Fig. My machine USB configuration To my surprise, the card reader could sometime be recognised, but sometimes could not... I guessed it was a 'startup' problem... Since from Charlieb000, the read cable had to be connected to 3.25V (or 3.3V), so it was guessed to be an 'Enable' or a 'reset' pin which was ACTIVE HIGH. Then a 10K resistor and a 10uF pull-down capacitor was connected. Afterwards, every time the card reader connected to the usb hub were successfully recognised However, when it is connected directly to the Intel's or TI's root hub, it could not be recognised... Nothing happened, sometimes a message box showing 'USB device not recognised' appeared. After struggling for some time, the terminating resistors, R1 and R2, were checked to be 100-Ohm. From my memory, usually USB signals were not terminated with such 'large' resistance. Hence, they were replaced by two 22-Ohm resistors. Fig. Resistors R1 and R2 were both changed to be 22-Ohm (I did not have such small resistors, so the outlook was not good) And... everything worked! The card reader could be detected when connected to any ports (Intel, TI's root hub or via GL850G) Below shows the schematic. Fig. Connection of card reader to PC Fig. The card reader was fixed into the case by heat glue and the case was sealed by strong instant glue. Fig. New USB card reader from old parts! Fig. USB Hub connected to a smart phone via OTG The white LED was so bright! I felt I was so lucky to have the problems solved... just by luck! 1. The reader could sometimes be recognised - solved by using a RC circuit to delay the startup 2. The reader could not recognised by some USB host controller - replaced the USB signal termination resistors Cheers.